diff options
| author | Marak <[email protected]> | 2021-02-02 19:15:48 -0500 |
|---|---|---|
| committer | GitHub <[email protected]> | 2021-02-02 19:15:48 -0500 |
| commit | b43af173890776ff58ef3dd0b67481a7d3e04816 (patch) | |
| tree | d48a6efe2c89784cb31a705a0bd83f1742499652 | |
| parent | a17e38077e32ce5be10e1854349a05cead7b5e89 (diff) | |
| parent | 51ec3946aa9644259c54e346bc58756543f679dd (diff) | |
| download | faker-b43af173890776ff58ef3dd0b67481a7d3e04816.tar.xz faker-b43af173890776ff58ef3dd0b67481a7d3e04816.zip | |
Merge pull request #1021 from strobelt/allowZeroAsRandomSeed
Allow zero as random seed
| -rw-r--r-- | lib/random.js | 15 | ||||
| -rw-r--r-- | test/random.unit.js | 6 |
2 files changed, 13 insertions, 8 deletions
diff --git a/lib/random.js b/lib/random.js index 5afd27e2..f959440d 100644 --- a/lib/random.js +++ b/lib/random.js @@ -5,15 +5,14 @@ var mersenne = require('../vendor/mersenne'); * @namespace faker.random */ function Random (faker, seed) { - // Use a user provided seed if it exists - if (seed) { - if (Array.isArray(seed) && seed.length) { - mersenne.seed_array(seed); - } - else { - mersenne.seed(seed); - } + // Use a user provided seed if it is an array or number + if (Array.isArray(seed) && seed.length) { + mersenne.seed_array(seed); } + else if(!isNaN(seed)) { + mersenne.seed(seed); + } + /** * returns a single random number based on a max number or range * diff --git a/test/random.unit.js b/test/random.unit.js index cdeb07f1..39ef4a0f 100644 --- a/test/random.unit.js +++ b/test/random.unit.js @@ -85,6 +85,12 @@ describe("random.js", function () { assert.equal(name, 'Eva Jenkins'); }) + it('should return deterministic results when seeded with 0', function() { + faker.seed(0); + var name = faker.name.findName(); + assert.strictEqual(name, 'Lola Sporer'); + }) + it('should return deterministic results when seeded with array - one element', function() { faker.seed([10]); var name = faker.name.findName(); |
