github.com/manicqin/nomad@v0.9.5/ui/mirage/factories/token.js (about)

     1  import { Factory } from 'ember-cli-mirage';
     2  import faker from 'nomad-ui/mirage/faker';
     3  
     4  export default Factory.extend({
     5    id: () => faker.random.uuid(),
     6    accessorId() {
     7      return this.id;
     8    },
     9    secretId: () => faker.random.uuid(),
    10    name: () => faker.name.findName(),
    11    global: () => faker.random.boolean(),
    12    type: i => (i === 0 ? 'management' : 'client'),
    13  
    14    afterCreate(token, server) {
    15      const policyIds = Array(faker.random.number({ min: 1, max: 5 }))
    16        .fill(0)
    17        .map(() => faker.hacker.verb())
    18        .uniq();
    19  
    20      policyIds.forEach(policy => {
    21        const dbPolicy = server.db.policies.find(policy);
    22        if (!dbPolicy) {
    23          server.create('policy', { id: policy });
    24        }
    25      });
    26  
    27      token.update({ policyIds });
    28    },
    29  });