feat: 🎸 Add worker mirage mocks (#1217)

✅ Closes: ICU-5240
This commit is contained in:
Zhihe Li authored and GitHub committed 2022-07-28 14:57:53 -04:00
1 parent a84e8c693e
commit 2b58e82d6d
5 files changed
+64

No files matched your search

+11
View File
@@ -622,6 +622,17 @@ export default function () {
this.patch('/managed-groups/:id');
this.del('/managed-groups/:id');
// worker
this.get(
'/workers',
({ workers }, { queryParams: { scope_id: scopeId } }) => {
return workers.where({ scopeId });
}
);
this.get('/worker/:id');
this.patch('/worker/:id');
/* Uncomment the following line and the Response import above
* Then change the response code to simulate error responses.
* this.get('/scopes', () => new Response(505));
+25
View File
@@ -0,0 +1,25 @@
import factory from '../generated/factories/user';
import permissions from '../helpers/permissions';
import generateId from '../helpers/id';
import { random } from 'faker';
const types = ['pki', 'kms'];
const tags = ['dev', random.word(), random.word()];
export default factory.extend({
id: () => generateId('w_'),
authorized_actions: () =>
permissions.authorizedActionsFor('worker') || [
'no-op',
'read',
'update',
'delete',
],
type: (i) => types[i % types.length],
canonical_tags: () => ({
type: tags,
}),
config_tags: () => ({
type: tags,
}),
});
@@ -0,0 +1,17 @@
import { Factory } from 'ember-cli-mirage';
import { random, date, datatype, internet } from 'faker';
/**
* GeneratedUserModelFactory
* User contains all fields related to a User resource
*/
export default Factory.extend({
name: () => random.words(),
description: () => random.words(),
created_time: () => date.recent(),
updated_time: () => date.recent(),
version: () => datatype.number(),
address: () => `${internet.ipv6()}${internet.port()}`,
last_status_time: () => date.recent(),
active_connection_count: () => datatype.number(),
});
+6
View File
@@ -0,0 +1,6 @@
import { belongsTo } from 'ember-cli-mirage';
import Model from './base';
export default Model.extend({
scope: belongsTo(),
});
+5
View File
@@ -0,0 +1,5 @@
import ApplicationSerializer from './application';
export default ApplicationSerializer.extend({
modelName: 'worker',
});