diff options
| author | Bryan Donovan <[email protected]> | 2013-01-05 18:52:40 -0800 |
|---|---|---|
| committer | Bryan Donovan <[email protected]> | 2013-01-05 18:52:40 -0800 |
| commit | bf791db741de2e98d7c082c9fb2b80c9bd6094ba (patch) | |
| tree | abe80413e42cfb6ea00f746bd51489fb13087ab1 /test | |
| parent | 2b8a35e21740f75a7db8485ffb1f71008e51c332 (diff) | |
| download | faker-bf791db741de2e98d7c082c9fb2b80c9bd6094ba.tar.xz faker-bf791db741de2e98d7c082c9fb2b80c9bd6094ba.zip | |
adding test/name.unit.js
Diffstat (limited to 'test')
| -rw-r--r-- | test/mocha.opts | 5 | ||||
| -rw-r--r-- | test/name.unit.js | 66 |
2 files changed, 71 insertions, 0 deletions
diff --git a/test/mocha.opts b/test/mocha.opts new file mode 100644 index 00000000..2fc3747d --- /dev/null +++ b/test/mocha.opts @@ -0,0 +1,5 @@ +--reporter spec +--ui bdd +--globals state,newBlocks,params,type,__coverage__ +--timeout 6500 +--slow 200 diff --git a/test/name.unit.js b/test/name.unit.js new file mode 100644 index 00000000..a090ad7e --- /dev/null +++ b/test/name.unit.js @@ -0,0 +1,66 @@ +var assert = require('assert'); +var sinon = require('sinon'); +var Faker = require('../index'); + +describe("name.js", function() { + describe("firstName()", function() { + it("returns a random name from definitions", function(done) { + sinon.stub(Faker.definitions, 'first_name').returns(['foo']); + sinon.spy(Faker.Helpers, 'randomize'); + + var first_name = Faker.Name.firstName(); + + assert.ok(Faker.Helpers.randomize.calledWith(['foo'])); + assert.equal(first_name, 'foo'); + + Faker.definitions.first_name.restore(); + Faker.Helpers.randomize.restore(); + + done(); + }); + }); + + describe("lastName()", function() { + it("returns a random name from definitions", function(done) { + sinon.stub(Faker.definitions, 'last_name').returns(['foo']); + sinon.spy(Faker.Helpers, 'randomize'); + + var last_name = Faker.Name.lastName(); + + assert.ok(Faker.Helpers.randomize.calledWith(['foo'])); + assert.equal(last_name, 'foo'); + + Faker.definitions.last_name.restore(); + Faker.Helpers.randomize.restore(); + + done(); + }); + }); + + describe("findName()", function() { + it("usually returns a first name and last name", function() { + sinon.stub(Faker.Helpers, 'randomNumber').returns(5); + var name = Faker.Name.findName(); + assert.ok(name); + var parts = name.split(' '); + assert.strictEqual(parts.length, 2); + Faker.Helpers.randomNumber.restore(); + }); + + it("occasionally returns a first name and last name with a prefix", function() { + sinon.stub(Faker.Helpers, 'randomNumber').returns(0); + var name = Faker.Name.findName(); + var parts = name.split(' '); + assert.strictEqual(parts.length, 3); + Faker.Helpers.randomNumber.restore(); + }); + + it("occasionally returns a first name and last name with a suffix", function() { + sinon.stub(Faker.Helpers, 'randomNumber').returns(1); + var name = Faker.Name.findName(); + var parts = name.split(' '); + assert.strictEqual(parts.length, 3); + Faker.Helpers.randomNumber.restore(); + }); + }); +}); |
