faker 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.jshintignore +3 -0
- package/.jshintrc +87 -0
- package/.npmignore +16 -0
- package/.travis.yml +5 -0
- package/BUILD/BUILD.js +139 -0
- package/BUILD/Mustache.js +296 -0
- package/BUILD/docs.js +62 -0
- package/BUILD/main.js +60 -0
- package/MIT-LICENSE.txt +20 -0
- package/Makefile +26 -0
- package/Readme.md +46 -0
- package/examples/bigDataSet.json +1 -0
- package/examples/browser_test.html +40 -0
- package/examples/dataSet.json +1 -0
- package/examples/index.html +77 -0
- package/examples/js/faker.js +730 -0
- package/examples/js/jquery.js +154 -0
- package/examples/js/prettyPrint.js +712 -0
- package/examples/library_test.js +9 -0
- package/examples/node_generateSet.js +20 -0
- package/examples/node_min_test.js +9 -0
- package/faker.js +730 -0
- package/index.js +31 -0
- package/lib/address.js +100 -0
- package/lib/company.js +36 -0
- package/lib/date.js +42 -0
- package/lib/definitions.js +1398 -0
- package/lib/helpers.js +124 -0
- package/lib/image.js +58 -0
- package/lib/internet.js +53 -0
- package/lib/lorem.js +45 -0
- package/lib/name.js +34 -0
- package/lib/phone_number.js +16 -0
- package/lib/random.js +106 -0
- package/lib/tree.js +69 -0
- package/lib/version.js +0 -0
- package/logo.png +0 -0
- package/minfaker.js +35 -0
- package/package.json +25 -0
- package/test/address.unit.js +293 -0
- package/test/all.functional.js +47 -0
- package/test/browser.unit.html +28 -0
- package/test/company.unit.js +110 -0
- package/test/date.unit.js +65 -0
- package/test/helpers.unit.js +62 -0
- package/test/image.unit.js +108 -0
- package/test/internet.unit.js +92 -0
- package/test/lorem.unit.js +178 -0
- package/test/mocha.opts +5 -0
- package/test/name.unit.js +87 -0
- package/test/phone_number.unit.js +29 -0
- package/test/run.js +68 -0
- package/test/support/chai.js +3403 -0
- package/test/support/sinon-1.5.2.js +4153 -0
- package/test/support/walk_dir.js +43 -0
- package/test/tree.unit.js +108 -0
package/index.js
ADDED
@@ -0,0 +1,31 @@
|
|
1
|
+
/*
|
2
|
+
|
3
|
+
this index.js file is used for including the faker library as a CommonJS module, instead of a bundle
|
4
|
+
|
5
|
+
you can include the faker library into your existing node.js application by requiring the entire /faker directory
|
6
|
+
|
7
|
+
var faker = require(./faker);
|
8
|
+
var randomName = faker.Name.findName();
|
9
|
+
|
10
|
+
you can also simply include the "faker.js" file which is the auto-generated bundled version of the faker library
|
11
|
+
|
12
|
+
var faker = require(./customAppPath/faker);
|
13
|
+
var randomName = faker.Name.findName();
|
14
|
+
|
15
|
+
|
16
|
+
if you plan on modifying the faker library you should be performing your changes in the /lib/ directory
|
17
|
+
|
18
|
+
*/
|
19
|
+
|
20
|
+
exports.Name = require('./lib/name');
|
21
|
+
exports.Address = require('./lib/address');
|
22
|
+
exports.PhoneNumber = require('./lib/phone_number');
|
23
|
+
exports.Internet = require('./lib/internet');
|
24
|
+
exports.Company = require('./lib/company');
|
25
|
+
exports.Image = require('./lib/image');
|
26
|
+
exports.Lorem = require('./lib/lorem');
|
27
|
+
exports.Helpers = require('./lib/helpers');
|
28
|
+
exports.Tree = require('./lib/tree');
|
29
|
+
exports.Date = require('./lib/date');
|
30
|
+
exports.random = require('./lib/random');
|
31
|
+
exports.definitions = require('./lib/definitions');
|
package/lib/address.js
ADDED
@@ -0,0 +1,100 @@
|
|
1
|
+
var Helpers = require('./helpers');
|
2
|
+
var faker = require('../index');
|
3
|
+
var definitions = require('../lib/definitions');
|
4
|
+
|
5
|
+
var address = {
|
6
|
+
zipCode: function () {
|
7
|
+
return Helpers.replaceSymbolWithNumber(faker.random.array_element(["#####", '#####-####']));
|
8
|
+
},
|
9
|
+
|
10
|
+
zipCodeFormat: function (format) {
|
11
|
+
return Helpers.replaceSymbolWithNumber(["#####", '#####-####'][format]);
|
12
|
+
},
|
13
|
+
|
14
|
+
city: function () {
|
15
|
+
var result;
|
16
|
+
switch (faker.random.number(4)) {
|
17
|
+
case 0:
|
18
|
+
result = faker.random.city_prefix() + " " + faker.random.first_name() + faker.random.city_suffix();
|
19
|
+
break;
|
20
|
+
case 1:
|
21
|
+
result = faker.random.city_prefix() + " " + faker.random.first_name();
|
22
|
+
break;
|
23
|
+
case 2:
|
24
|
+
result = faker.random.first_name() + faker.random.city_suffix();
|
25
|
+
break;
|
26
|
+
case 3:
|
27
|
+
result = faker.random.last_name() + faker.random.city_suffix();
|
28
|
+
break;
|
29
|
+
}
|
30
|
+
return result;
|
31
|
+
},
|
32
|
+
|
33
|
+
streetName: function () {
|
34
|
+
var result;
|
35
|
+
switch (faker.random.number(2)) {
|
36
|
+
case 0:
|
37
|
+
result = faker.random.last_name() + " " + faker.random.street_suffix();
|
38
|
+
break;
|
39
|
+
case 1:
|
40
|
+
result = faker.random.first_name() + " " + faker.random.street_suffix();
|
41
|
+
break;
|
42
|
+
}
|
43
|
+
return result;
|
44
|
+
},
|
45
|
+
|
46
|
+
//
|
47
|
+
// TODO: change all these methods that accept a boolean to instead accept an options hash.
|
48
|
+
//
|
49
|
+
streetAddress: function (useFullAddress) {
|
50
|
+
if (useFullAddress === undefined) { useFullAddress = false; }
|
51
|
+
var address = "";
|
52
|
+
switch (faker.random.number(3)) {
|
53
|
+
case 0:
|
54
|
+
address = Helpers.replaceSymbolWithNumber("#####") + " " + this.streetName();
|
55
|
+
break;
|
56
|
+
case 1:
|
57
|
+
address = Helpers.replaceSymbolWithNumber("####") + " " + this.streetName();
|
58
|
+
break;
|
59
|
+
case 2:
|
60
|
+
address = Helpers.replaceSymbolWithNumber("###") + " " + this.streetName();
|
61
|
+
break;
|
62
|
+
}
|
63
|
+
return useFullAddress ? (address + " " + this.secondaryAddress()) : address;
|
64
|
+
},
|
65
|
+
|
66
|
+
secondaryAddress: function () {
|
67
|
+
return Helpers.replaceSymbolWithNumber(faker.random.array_element(
|
68
|
+
[
|
69
|
+
'Apt. ###',
|
70
|
+
'Suite ###'
|
71
|
+
]
|
72
|
+
));
|
73
|
+
},
|
74
|
+
|
75
|
+
brState: function (useAbbr) {
|
76
|
+
return useAbbr ? faker.random.br_state_abbr() : faker.random.br_state();
|
77
|
+
},
|
78
|
+
|
79
|
+
ukCounty: function () {
|
80
|
+
return faker.random.uk_county();
|
81
|
+
},
|
82
|
+
|
83
|
+
ukCountry: function () {
|
84
|
+
return faker.random.uk_country();
|
85
|
+
},
|
86
|
+
|
87
|
+
usState: function (useAbbr) {
|
88
|
+
return useAbbr ? faker.random.us_state_abbr() : faker.random.us_state();
|
89
|
+
},
|
90
|
+
|
91
|
+
latitude: function () {
|
92
|
+
return (faker.random.number(180 * 10000) / 10000.0 - 90.0).toFixed(4);
|
93
|
+
},
|
94
|
+
|
95
|
+
longitude: function () {
|
96
|
+
return (faker.random.number(360 * 10000) / 10000.0 - 180.0).toFixed(4);
|
97
|
+
}
|
98
|
+
};
|
99
|
+
|
100
|
+
module.exports = address;
|
package/lib/company.js
ADDED
@@ -0,0 +1,36 @@
|
|
1
|
+
var faker = require('../index');
|
2
|
+
|
3
|
+
var company = {
|
4
|
+
suffixes: function () {
|
5
|
+
return ["Inc", "and Sons", "LLC", "Group", "and Daughters"];
|
6
|
+
},
|
7
|
+
|
8
|
+
companyName: function (format) {
|
9
|
+
switch ((format ? format : faker.random.number(3))) {
|
10
|
+
case 0:
|
11
|
+
return faker.Name.lastName() + " " + this.companySuffix();
|
12
|
+
case 1:
|
13
|
+
return faker.Name.lastName() + "-" + faker.Name.lastName();
|
14
|
+
case 2:
|
15
|
+
return faker.Name.lastName() + ", " + faker.Name.lastName() + " and " + faker.Name.lastName();
|
16
|
+
}
|
17
|
+
},
|
18
|
+
|
19
|
+
companySuffix: function () {
|
20
|
+
return faker.random.array_element(this.suffixes());
|
21
|
+
},
|
22
|
+
|
23
|
+
catchPhrase: function () {
|
24
|
+
return faker.random.catch_phrase_adjective() + " " +
|
25
|
+
faker.random.catch_phrase_descriptor() + " " +
|
26
|
+
faker.random.catch_phrase_noun();
|
27
|
+
},
|
28
|
+
|
29
|
+
bs: function () {
|
30
|
+
return faker.random.bs_adjective() + " " +
|
31
|
+
faker.random.bs_buzz() + " " +
|
32
|
+
faker.random.bs_noun();
|
33
|
+
}
|
34
|
+
};
|
35
|
+
|
36
|
+
module.exports = company;
|
package/lib/date.js
ADDED
@@ -0,0 +1,42 @@
|
|
1
|
+
var faker = require('../index');
|
2
|
+
|
3
|
+
var date = {
|
4
|
+
|
5
|
+
past: function (years, refDate) {
|
6
|
+
var date = (refDate) ? new Date(Date.parse(refDate)) : new Date();
|
7
|
+
|
8
|
+
var past = date.getTime();
|
9
|
+
past -= faker.random.number(years) * 365 * 3600 * 1000; // some time from now to N years ago, in milliseconds
|
10
|
+
date.setTime(past)
|
11
|
+
|
12
|
+
return date.toJSON();
|
13
|
+
},
|
14
|
+
|
15
|
+
future: function (years, refDate) {
|
16
|
+
var date = (refDate) ? new Date(Date.parse(refDate)) : new Date();
|
17
|
+
var future = date.getTime();
|
18
|
+
future += faker.random.number(years) * 365 * 3600 * 1000; // some time from now to N years later, in milliseconds
|
19
|
+
date.setTime(future)
|
20
|
+
|
21
|
+
return date.toJSON();
|
22
|
+
},
|
23
|
+
|
24
|
+
between: function(from, to) {
|
25
|
+
var fromMilli = Date.parse(from);
|
26
|
+
var dateOffset = faker.random.number(Date.parse(to) - fromMilli);
|
27
|
+
|
28
|
+
var newDate = new Date(fromMilli + dateOffset);
|
29
|
+
|
30
|
+
return newDate.toJSON();
|
31
|
+
},
|
32
|
+
|
33
|
+
recent: function (days) {
|
34
|
+
var date = new Date();
|
35
|
+
var future = date.getTime();
|
36
|
+
future -= faker.random.number(days) * 3600 * 1000; // some time from now to N days ago, in milliseconds
|
37
|
+
date.setTime(future)
|
38
|
+
|
39
|
+
return date.toJSON();
|
40
|
+
}
|
41
|
+
};
|
42
|
+
module.exports = date;
|