diff options
| author | Tyler <[email protected]> | 2017-10-15 13:50:41 -0700 |
|---|---|---|
| committer | Tyler <[email protected]> | 2017-10-15 13:50:41 -0700 |
| commit | 3303c7ea863695afe8febbb312d108b03ae2c51d (patch) | |
| tree | fe70aa9b9dbc438e06f083641cb46c4da42c65e1 | |
| parent | ef6bec454298f9582ba84dcdd661001586401e60 (diff) | |
| download | faker-3303c7ea863695afe8febbb312d108b03ae2c51d.tar.xz faker-3303c7ea863695afe8febbb312d108b03ae2c51d.zip | |
update vin to return randomly generated vin and update tests
| -rw-r--r-- | lib/vehicle.js | 9 | ||||
| -rw-r--r-- | test/vehicle.unit.js | 9 |
2 files changed, 10 insertions, 8 deletions
diff --git a/lib/vehicle.js b/lib/vehicle.js index 43f4248c..82b6e37f 100644 --- a/lib/vehicle.js +++ b/lib/vehicle.js @@ -83,11 +83,16 @@ var Vehicle = function (faker) { * @method faker.vehicle.vin */ self.vin = function () { - return faker.random.arrayElement(faker.definitions.vehicle.vin); + return ( + faker.random.alphaNumeric(10) + + faker.random.alpha({ count: 1, upcase: true }) + + faker.random.alphaNumeric(1) + + faker.random.number({ min: 10000, max: 100000}) // return five digit # + ).toUpperCase() }; self.vin.schema = { - "description": "Generates a VIN number.", + "description": "Generates a valid VIN number.", "sampleResults": ["YV1MH682762184654", "3C7WRMBJ2EG208836"] }; diff --git a/test/vehicle.unit.js b/test/vehicle.unit.js index 6552c393..1d9802e8 100644 --- a/test/vehicle.unit.js +++ b/test/vehicle.unit.js @@ -46,12 +46,9 @@ describe("vehicle.js", function () { }); describe("vin()", function () { - it("returns a vin number", function () { - sinon.stub(faker.vehicle, 'vin').returns('YV1MH682762184654'); - var vin = faker.vehicle.vin(); - - assert.equal(vin, 'YV1MH682762184654'); - faker.vehicle.vin.restore(); + it("returns valid vin number", function () { + var vin = faker.vehicle.vin(); + assert.ok(vin.match(/^[A-Z0-9]{10}[A-Z]{1}[A-Z0-9]{1}\d{5}$/)); }); }); |
