diff options
| author | Marak <[email protected]> | 2021-02-08 23:40:31 -0500 |
|---|---|---|
| committer | GitHub <[email protected]> | 2021-02-08 23:40:31 -0500 |
| commit | e3af59ca0440a8bd043392a9147a366df0d10804 (patch) | |
| tree | 4fd1a6121a3a6ee6e06fe7477db7a0a1baafac76 | |
| parent | 649e552a7d73db8f4079de96038d7de12f7afd8c (diff) | |
| parent | 9dc301f22680ff7edaf0c0b68e001281ff4b9ac7 (diff) | |
| download | faker-e3af59ca0440a8bd043392a9147a366df0d10804.tar.xz faker-e3af59ca0440a8bd043392a9147a366df0d10804.zip | |
Merge pull request #775 from borel/master
Get x dates between two dates
| -rw-r--r-- | lib/date.js | 22 | ||||
| -rw-r--r-- | test/date.unit.js | 13 |
2 files changed, 35 insertions, 0 deletions
diff --git a/lib/date.js b/lib/date.js index 081ddab5..5a7626b4 100644 --- a/lib/date.js +++ b/lib/date.js @@ -70,6 +70,28 @@ var _Date = function (faker) { return newDate; }; + /** + * betweens + * + * @method faker.date.between + * @param {date} from + * @param {date} to + */ + self.betweens = function (from, to, num) { + if (typeof num == 'undefined') { num = 3; } + var newDates = []; + var fromMilli = Date.parse(from); + var dateOffset = (Date.parse(to) - fromMilli) / ( num + 1 ); + var lastDate = from + for (var i = 0; i < num; i++) { + fromMilli = Date.parse(lastDate); + lastDate = new Date(fromMilli + dateOffset) + newDates.push(lastDate) + } + return newDates; + }; + + /** * recent * diff --git a/test/date.unit.js b/test/date.unit.js index c3f4eb6c..c4569d54 100644 --- a/test/date.unit.js +++ b/test/date.unit.js @@ -115,6 +115,19 @@ describe("date.js", function () { }); }); + describe("betweens()", function () { + it("returns an array of 3 dates ( by default ) of sorted randoms dates between the dates given", function () { + + var from = new Date(1990, 5, 7, 9, 11, 0, 0); + var to = new Date(2000, 6, 8, 10, 12, 0, 0); + + var dates = faker.date.betweens(from, to ); + + assert.ok(dates[0] > from && dates[0] < to); + assert.ok(dates[1] > dates[0] && dates[2] > dates[1]); + }); + }); + describe("month()", function () { it("returns random value from date.month.wide array by default", function () { var month = faker.date.month(); |
