github.com/anth0d/nomad@v0.0.0-20221214183521-ae3a0a2cad06/ui/mirage/factories/recommendation.js (about) 1 import { Factory } from 'ember-cli-mirage'; 2 3 import faker from 'nomad-ui/mirage/faker'; 4 5 const REF_TIME = new Date(); 6 7 export default Factory.extend({ 8 submitTime: () => faker.date.past(2 / 365, REF_TIME) * 1000000, 9 10 afterCreate(recommendation) { 11 const base = 12 recommendation.resource === 'CPU' 13 ? recommendation.task.resources.CPU 14 : recommendation.task.resources.MemoryMB; 15 const recommendDecrease = faker.random.boolean(); 16 const directionMultiplier = recommendDecrease ? -1 : 1; 17 18 const value = base + Math.floor(base * 0.5) * directionMultiplier; 19 20 const min = faker.random.number({ min: 5, max: value * 0.4 }); 21 const max = faker.random.number({ min: value * 0.6, max: value }); 22 const p99 = faker.random.number({ min: min + (max - min) * 0.8, max }); 23 const mean = faker.random.number({ min, max: p99 }); 24 const median = faker.random.number({ min, max: p99 }); 25 26 recommendation.update({ 27 stats: { min, max, p99, mean, median }, 28 value, 29 }); 30 }, 31 });