github.com/hspak/nomad@v0.7.2-0.20180309000617-bc4ae22a39a5/ui/mirage/factories/token.js (about)

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