diff options
| author | Bryan Donovan <[email protected]> | 2013-01-05 19:54:21 -0800 |
|---|---|---|
| committer | Bryan Donovan <[email protected]> | 2013-01-05 19:54:21 -0800 |
| commit | 0b3cfbee64547e7a624c8d8f988c293ed463cf4b (patch) | |
| tree | 46b926661b16b3eb8f911777c2fb8f699d8785f1 /lib | |
| parent | 8a6ad8d2de768aff38e09cda46fc0dfd2d52b2b8 (diff) | |
| download | faker-0b3cfbee64547e7a624c8d8f988c293ed463cf4b.tar.xz faker-0b3cfbee64547e7a624c8d8f988c293ed463cf4b.zip | |
refactoring so we do not need to use Helpers.randomize() everywhere
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/company.js | 21 | ||||
| -rw-r--r-- | lib/helpers.js | 11 | ||||
| -rw-r--r-- | lib/random.js | 34 |
3 files changed, 49 insertions, 17 deletions
diff --git a/lib/company.js b/lib/company.js index 8c9f3a0e..959988fb 100644 --- a/lib/company.js +++ b/lib/company.js @@ -1,35 +1,34 @@ -var Helpers = require('./helpers'); var Name = require('./name'); -var definitions = require('../lib/definitions'); +var random = require('../lib/random'); var company = { suffixes: ["Inc", "and Sons", "LLC", "Group", "and Daughters"], companyName: function (format) { - switch ((format ? format : Helpers.randomNumber(3))) { + switch ((format ? format : random.number(3))) { case 0: return Name.lastName() + " " + this.companySuffix(); case 1: return Name.lastName() + "-" + Name.lastName(); case 2: - return Name.lastName() + "," + Name.lastName() + " and " + Name.lastName(); + return Name.lastName() + ", " + Name.lastName() + " and " + Name.lastName(); } }, companySuffix: function () { - return Helpers.randomize(this.suffixes); + return random.array_rand(this.suffixes); }, catchPhrase: function () { - return Helpers.randomize(definitions.catch_phrase_adjective()) + " " + - Helpers.randomize(definitions.catch_phrase_descriptor()) + " " + - Helpers.randomize(definitions.catch_phrase_noun()); + return random.catch_phrase_adjective() + " " + + random.catch_phrase_descriptor() + " " + + random.catch_phrase_noun(); }, bs: function () { - return Helpers.randomize(definitions.bs_adjective()) + " " + - Helpers.randomize(definitions.bs_buzz()) + " " + - Helpers.randomize(definitions.bs_noun()); + return random.bs_adjective() + " " + + random.bs_buzz() + " " + + random.bs_noun(); } }; diff --git a/lib/helpers.js b/lib/helpers.js index 27824a16..858f2ba8 100644 --- a/lib/helpers.js +++ b/lib/helpers.js @@ -1,15 +1,14 @@ var Faker = require('../Faker'); +var random = require('./random'); -// returns a single random number based on a range +// temporary backword-compatibility exports.randomNumber = function (range) { - var r = Math.floor(Math.random() * range); - return r; + return random.number(range); }; -// takes an array and returns the array randomly sorted +// temporary backword-compatibility exports.randomize = function (array) { - var r = Math.floor(Math.random() * array.length); - return array[r]; + return random.array_rand(array); }; // parses string for a symbol and replace it with a random number from 1-10 diff --git a/lib/random.js b/lib/random.js new file mode 100644 index 00000000..abfba1a4 --- /dev/null +++ b/lib/random.js @@ -0,0 +1,34 @@ +var definitions = require('./definitions'); + +var random = { + // returns a single random number based on a range + number: function (range) { + var r = Math.floor(Math.random() * range); + console.log(r); + return r; + }, + + // takes an array and returns the array randomly sorted + array_rand: function (array) { + var r = Math.floor(Math.random() * array.length); + return array[r]; + } +}; + +var method_names = [ + 'catch_phrase_adjective', + 'catch_phrase_descriptor', + 'catch_phrase_noun', + 'bs_adjective', + 'bs_buzz', + 'bs_noun' +]; + +for (var i = 0; i < method_names.length; i++) { + var method_name = method_names[i]; + random[method_name] = function () { + return random.array_rand(definitions[method_name]()); + }; +} + +module.exports = random; |
