aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTyler <[email protected]>2017-10-15 13:50:41 -0700
committerTyler <[email protected]>2017-10-15 13:50:41 -0700
commit3303c7ea863695afe8febbb312d108b03ae2c51d (patch)
treefe70aa9b9dbc438e06f083641cb46c4da42c65e1
parentef6bec454298f9582ba84dcdd661001586401e60 (diff)
downloadfaker-3303c7ea863695afe8febbb312d108b03ae2c51d.tar.xz
faker-3303c7ea863695afe8febbb312d108b03ae2c51d.zip
update vin to return randomly generated vin and update tests
-rw-r--r--lib/vehicle.js9
-rw-r--r--test/vehicle.unit.js9
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}$/));
});
});