messages.map(message => { randomAmount({ max: 5 }, () => { const user = faker.random.arrayElement(users); reactions.push(generateReaction(user.id, message.id)); }); });
channels.forEach(channel => { const community = communities.find( community => community.id === channel.communityId ); if (community.deletedAt) return; randomAmount({ max: 10 }, () => { const creator = faker.random.arrayElement(users); const thread = generateThread(channel.communityId, channel.id, creator.id); threads.push(thread); }); });
threads.forEach(thread => { const channel = channels.find(channel => channel.id === thread.channelId); const threadMessages = []; randomAmount({ max: 10 }, () => { const sender = faker.random.arrayElement(users); const message = generateMessage(sender.id, thread.id, 'story'); messages.push(message); threadMessages.push(message); }); });
// Accounts const createAccount = user => { const account = new Account({ type: faker.random.arrayElement(['basic', 'premium']), owner: user._id, isActive: faker.random.boolean(), sortcode: faker.finance.mask(6, false, false), number: faker.finance.mask(8, false, false), currency: faker.finance.currencyCode(), balance: faker.finance.amount(1, 10000, 2) }); return account.save(); }
const randomCreditCard = () => faker.random.arrayElement([ '4539500804082916', '5228863946709660', '371913267625163' ])
const defineMessage = (participants, numMessages) => { const generateMessage = count => ({ uuid: faker.random.uuid(), from: faker.random.arrayElement(participants), text: faker.lorem.sentence(), sentAt: faker.date.recent(), }); const messages = times(numMessages)(generateMessage).sort((a, b) => moment(a.sentAt).isBefore(moment(b.sentAt))); return messages; }
// Transfers const createTransfer = (user, sourceAccountId) => { const transfer = new Transfer({ type: faker.random.arrayElement(['normal', 'turbo']), payeeName: `${faker.name.firstName()} ${faker.name.lastName()}`, date: faker.date.between('2020-01-01', '2020-12-31'), amount: faker.finance.amount(1, 2500, 2), status: faker.random.arrayElement(['planned', 'done']), reference: faker.lorem.words(3).substring(0, 20), sourceAccountId, sender: user._id, recipient: mongoose.Types.ObjectId() }); return transfer.save(); }
const generate = count => _.range(count).map((val, index) => { const birthAt = faker.date.between( moment() .subtract(10, "year") .toDate(), moment() .subtract(1, "year") .toDate() ); const age = now.diff(moment(birthAt), "year"); return { id: faker.random.uuid(), name: faker.name.lastName(), tag: faker.random.arrayElement(["CAT", "DOG"]), owner: faker.name.firstName(), grade: faker.random.number({ min: 1, max: 5 }), age, birthAt: birthAt.toISOString(), }; })
email: faker.internet.email(), password: faker.internet.password(), gender: faker.random.arrayElement(["male", "female"]), }).add();
email: faker.internet.email(), password: faker.internet.password(), gender: faker.random.arrayElement(["male", "female"]), }).add(); email: faker.internet.email(), password: faker.internet.password(), gender: faker.random.arrayElement(["male", "female"]), }).add();
email: faker.internet.email(), password: faker.internet.password(), gender: faker.random.arrayElement(["male", "female"]), }).add(); email: faker.internet.email(), password: faker.internet.password(), gender: faker.random.arrayElement(["male", "female"]), }).add();
email: faker.internet.email(), password: faker.internet.password(), gender: faker.random.arrayElement(["male", "female"]), }).add(); email: faker.internet.email(), password: faker.internet.password(), gender: faker.random.arrayElement(["male", "female"]), }).add();
const defineMessage = (participants, numMessages) => { const generateMessage = count => ({ uuid: faker.random.uuid(), from: faker.random.arrayElement(participants), text: faker.lorem.sentence(), sentAt: faker.date.recent(), }); const messages = times(numMessages)(generateMessage).sort((a, b) => moment(a.sentAt).isBefore(moment(b.sentAt))); return messages; }
const defineMessage = (participants, numMessages) => { const generateMessage = count => ({ uuid: faker.random.uuid(), from: faker.random.arrayElement(participants), text: faker.lorem.sentence(), sentAt: faker.date.recent(), }); const messages = times(numMessages)(generateMessage).sort((a, b) => moment(a.sentAt).isBefore(moment(b.sentAt))); return messages; }
const generate = count => _.range(count).map((val, index) => { const birthAt = faker.date.between( moment() .subtract(10, "year") .toDate(), moment() .subtract(1, "year") .toDate() ); const age = now.diff(moment(birthAt), "year"); return { id: faker.random.uuid(), name: faker.name.lastName(), tag: faker.random.arrayElement(["CAT", "DOG"]), owner: faker.name.firstName(), grade: faker.random.number({ min: 1, max: 5 }), age, birthAt: birthAt.toISOString(), }; })