mockgen
$ npm install mockgen --save
using chance.js wrapper for generating semi-random values
const MockGen = require('mockgen'); const generateMyMock = MockGen((chance) => ({ // basic bool: chance.bool(), character: chance.character(), floating: chance.floating(), integer: chance.integer(), natural: chance.natural(), string: chance.string(), // text paragraph: chance.paragraph(), sentence: chance.sentence(), syllable: chance.syllable(), word: chance.word(), // person age: chance.age(), birthday: chance.birthday(), cf: chance.cf(), cpf: chance.cpf(), first: chance.first(), gender: chance.gender(), last: chance.last(), name: chance.name(), prefix: chance.prefix(), ssn: chance.ssn(), suffix: chance.suffix(), // mobile android_id: chance.android_id(), apple_token: chance.apple_token(), bb_pin: chance.bb_pin(), wp7_anid: chance.wp7_anid(), wp8_anid2: chance.wp8_anid2(), // web avatar: chance.avatar(), color: chance.color(), domain: chance.domain(), email: chance.email(), fbid: chance.fbid(), google_analytics: chance.google_analytics(), hashtag: chance.hashtag(), ip: chance.ip(), ipv6: chance.ipv6(), klout: chance.klout(), tld: chance.tld(), twitter: chance.twitter(), url: chance.url(), //Location address: chance.address(), altitude: chance.altitude(), areacode: chance.areacode(), city: chance.city(), coordinates: chance.coordinates(), country: chance.country(), depth: chance.depth(), geohash: chance.geohash(), latitude: chance.latitude(), longitude: chance.longitude(), phone: chance.phone(), postal: chance.postal(), province: chance.province(), state: chance.state(), street: chance.street(), zip: chance.zip(), // Time ampm: chance.ampm(), date: chance.date(), hammertime: chance.hammertime(), hour: chance.hour(), millisecond: chance.millisecond(), minute: chance.minute(), month: chance.month(), second: chance.second(), //timestamp: chance.timestamp(), -- DO NOT USE THIS function. timezone: chance.timezone(), year: chance.year(), // Finance cc: chance.cc(), cc_type: chance.cc_type(), currency: chance.currency(), currency_pair: chance.currency_pair(), dollar: chance.dollar(), euro: chance.euro(), exp: chance.exp(), exp_month: chance.exp_month(), exp_year: chance.exp_year(), // helpers pickone: chance.pickone([ '123', '234', '345', '456', '567' ]), pickset: chance.pickset([ '123', '234', '345', '456', '567' ], 3), shuffle: chance.shuffle([ '123', '234', '345', '456', '567' ]), d4: chance.d4(), d6: chance.d6(), d8: chance.d8(), d10: chance.d10(), d12: chance.d12(), d20: chance.d20(), d30: chance.d30(), d100: chance.d100(), guid: chance.guid(), hash: chance.hash(), n: chance.n(chance.state(), 30), normal: chance.normal(), radio: chance.radio(), rpg: chance.rpg('3d10'), tv: chance.tv(), unique: chance.unique(chance.state(), 5), $stepOneOf1: chance.$stepOneOf(1, 2, 3, 4, 5), // every cycle of generating cursor increment predictable (it is not random) $optional1: chance.$optional(chance.integer(), null), // chance to be integer or null $optional2: chance.$optional(chance.integer()) // chance to be integer or null (by default)})); generateMyMock.version(); // some hash of generator version. it depends from definitions const result = generateMyMock.generate(); // generateconst results = generateMyMock.generate(100); // generate 100 items