chrono-node 2.3.5 → 2.3.8
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/README.md +1 -1
- package/dist/common/refiners/ExtractTimezoneAbbrRefiner.js +6 -1
- package/dist/locales/de/constants.d.ts +3 -3
- package/dist/locales/de/constants.js +38 -20
- package/dist/locales/de/index.js +4 -0
- package/dist/locales/de/parsers/DESpecificTimeExpressionParser.d.ts +7 -0
- package/dist/locales/de/parsers/DESpecificTimeExpressionParser.js +114 -0
- package/dist/locales/de/parsers/DETimeExpressionParser.d.ts +0 -1
- package/dist/locales/de/parsers/DETimeExpressionParser.js +3 -21
- package/dist/locales/de/parsers/DETimeUnitRelativeFormatParser.d.ts +8 -0
- package/dist/locales/de/parsers/DETimeUnitRelativeFormatParser.js +34 -0
- package/dist/locales/en/constants.d.ts +2 -2
- package/dist/locales/en/constants.js +3 -0
- package/dist/locales/en/index.js +2 -1
- package/dist/locales/en/parsers/ENRelativeDateFormatParser.js +2 -2
- package/dist/locales/en/parsers/ENTimeUnitCasualRelativeFormatParser.js +1 -1
- package/dist/locales/en/refiners/ENMergeRelativeDateRefiner.d.ts +7 -0
- package/dist/locales/en/refiners/ENMergeRelativeDateRefiner.js +35 -0
- package/dist/locales/zh/hans/constants.d.ts +27 -0
- package/dist/locales/zh/hans/constants.js +51 -0
- package/dist/locales/zh/hans/index.d.ts +9 -0
- package/dist/locales/zh/hans/index.js +49 -0
- package/dist/locales/zh/hans/parsers/ZHHansCasualDateParser.d.ts +7 -0
- package/dist/locales/zh/hans/parsers/ZHHansCasualDateParser.js +138 -0
- package/dist/locales/zh/hans/parsers/ZHHansDateParser.d.ts +6 -0
- package/dist/locales/zh/hans/parsers/ZHHansDateParser.js +72 -0
- package/dist/locales/zh/hans/parsers/ZHHansDeadlineFormatParser.d.ts +6 -0
- package/dist/locales/zh/hans/parsers/ZHHansDeadlineFormatParser.js +78 -0
- package/dist/locales/zh/hans/parsers/ZHHansRelationWeekdayParser.d.ts +7 -0
- package/dist/locales/zh/hans/parsers/ZHHansRelationWeekdayParser.js +70 -0
- package/dist/locales/zh/hans/parsers/ZHHansTimeExpressionParser.d.ts +6 -0
- package/dist/locales/zh/hans/parsers/ZHHansTimeExpressionParser.js +438 -0
- package/dist/locales/zh/hans/parsers/ZHHansWeekdayParser.d.ts +7 -0
- package/dist/locales/zh/hans/parsers/ZHHansWeekdayParser.js +46 -0
- package/dist/locales/zh/hans/refiners/ZHHansMergeDateRangeRefiner.d.ts +4 -0
- package/dist/locales/zh/hans/refiners/ZHHansMergeDateRangeRefiner.js +12 -0
- package/dist/locales/zh/hans/refiners/ZHHansMergeDateTimeRefiner.d.ts +4 -0
- package/dist/locales/zh/hans/refiners/ZHHansMergeDateTimeRefiner.js +12 -0
- package/dist/locales/zh/hant/index.d.ts +9 -0
- package/dist/locales/zh/hant/index.js +49 -0
- package/dist/locales/zh/index.d.ts +2 -9
- package/dist/locales/zh/index.js +13 -46
- package/dist/results.d.ts +1 -1
- package/dist/results.js +1 -2
- package/dist/timezone.d.ts +1 -1
- package/dist/timezone.js +3 -3
- package/package.json +1 -1
- package/src/common/refiners/ExtractTimezoneAbbrRefiner.ts +11 -1
- package/src/locales/de/constants.ts +42 -22
- package/src/locales/de/index.ts +4 -0
- package/src/locales/de/parsers/DESpecificTimeExpressionParser.ts +150 -0
- package/src/locales/de/parsers/DETimeExpressionParser.ts +4 -23
- package/src/locales/de/parsers/DETimeUnitRelativeFormatParser.ts +42 -0
- package/src/locales/en/constants.ts +5 -2
- package/src/locales/en/index.ts +2 -1
- package/src/locales/en/parsers/ENMonthNameLittleEndianParser.ts +0 -2
- package/src/locales/en/parsers/ENRelativeDateFormatParser.ts +2 -2
- package/src/locales/en/parsers/ENTimeUnitCasualRelativeFormatParser.ts +1 -1
- package/src/locales/en/refiners/ENMergeRelativeDateRefiner.ts +58 -0
- package/src/locales/zh/hans/constants.ts +52 -0
- package/src/locales/zh/hans/index.ts +62 -0
- package/src/locales/zh/hans/parsers/ZHHansCasualDateParser.ts +128 -0
- package/src/locales/zh/hans/parsers/ZHHansDateParser.ts +75 -0
- package/src/locales/zh/hans/parsers/ZHHansDeadlineFormatParser.ts +81 -0
- package/src/locales/zh/hans/parsers/ZHHansRelationWeekdayParser.ts +69 -0
- package/src/locales/zh/hans/parsers/ZHHansTimeExpressionParser.ts +424 -0
- package/src/locales/zh/hans/parsers/ZHHansWeekdayParser.ts +46 -0
- package/src/locales/zh/hans/refiners/ZHHansMergeDateRangeRefiner.ts +7 -0
- package/src/locales/zh/hans/refiners/ZHHansMergeDateTimeRefiner.ts +7 -0
- package/src/locales/zh/hant/index.ts +63 -0
- package/src/locales/zh/index.ts +2 -63
- package/src/results.ts +2 -3
- package/src/timezone.ts +4 -4
- package/test/de/de_month_name_little_endian.test.ts +12 -0
- package/test/de/de_time_exp.test.ts +59 -0
- package/test/de/de_time_units_casual_relative.test.ts +108 -0
- package/test/de/de_year.test.ts +147 -0
- package/test/en/en_merging_relative_dates.test.ts +51 -0
- package/test/en/en_month.test.ts +13 -0
- package/test/en/en_relative.test.ts +61 -2
- package/test/en/en_time_units_ago.test.ts +3 -3
- package/test/en/en_time_units_casual_relative.test.ts +16 -0
- package/test/en/en_time_units_within.test.ts +2 -2
- package/test/en/en_timezone_exp.test.ts +3 -3
- package/test/fr/fr_time_units_ago.test.ts +3 -3
- package/test/fr/fr_time_units_within.test.ts +2 -2
- package/test/nl/nl_relative.test.ts +2 -2
- package/test/nl/nl_time_units_ago.test.ts +3 -3
- package/test/system_timezone.test.ts +22 -0
- package/test/zh/zh_hans_casual.test.ts +228 -0
- package/test/zh/zh_hans_date.test.ts +102 -0
- package/test/zh/zh_hans_deadline.test.ts +136 -0
- package/test/zh/zh_hans_time_exp.test.ts +182 -0
- package/test/zh/zh_hans_weekday.test.ts +132 -0
- package/test/zh/zh_hant_date.test.ts +0 -1
|
@@ -27,6 +27,11 @@ test("Test - Simple Expression", function () {
|
|
|
27
27
|
expect(result.start.get("minute")).toBe(0);
|
|
28
28
|
});
|
|
29
29
|
|
|
30
|
+
testSingleCase(chrono.de, "um 16h", new Date(2012, 7, 10), (result) => {
|
|
31
|
+
expect(result.start.get("hour")).toBe(16);
|
|
32
|
+
expect(result.start.get("minute")).toBe(0);
|
|
33
|
+
});
|
|
34
|
+
|
|
30
35
|
testSingleCase(chrono.de, "um 7 morgens", new Date(2012, 7, 10), (result) => {
|
|
31
36
|
expect(result.start.get("hour")).toBe(7);
|
|
32
37
|
expect(result.start.get("minute")).toBe(0);
|
|
@@ -64,6 +69,22 @@ test("Test - Simple Expression", function () {
|
|
|
64
69
|
expect(result.start.get("meridiem")).toBe(Meridiem.PM);
|
|
65
70
|
expect(result.start.isCertain("meridiem")).toBeTruthy();
|
|
66
71
|
});
|
|
72
|
+
|
|
73
|
+
testSingleCase(chrono.de, "um 8 Uhr in der Nacht", new Date(2012, 7, 10), (result, text) => {
|
|
74
|
+
expect(result.text).toBe(text);
|
|
75
|
+
expect(result.start.get("hour")).toBe(20);
|
|
76
|
+
expect(result.start.get("minute")).toBe(0);
|
|
77
|
+
expect(result.start.get("meridiem")).toBe(Meridiem.PM);
|
|
78
|
+
expect(result.start.isCertain("meridiem")).toBeTruthy();
|
|
79
|
+
});
|
|
80
|
+
|
|
81
|
+
testSingleCase(chrono.de, "um 5 Uhr in der Nacht", new Date(2012, 7, 10), (result, text) => {
|
|
82
|
+
expect(result.text).toBe(text);
|
|
83
|
+
expect(result.start.get("hour")).toBe(5);
|
|
84
|
+
expect(result.start.get("minute")).toBe(0);
|
|
85
|
+
expect(result.start.get("meridiem")).toBe(Meridiem.AM);
|
|
86
|
+
expect(result.start.isCertain("meridiem")).toBeTruthy();
|
|
87
|
+
});
|
|
67
88
|
});
|
|
68
89
|
|
|
69
90
|
test("Test - Range Expression", function () {
|
|
@@ -118,6 +139,44 @@ test("Test - Range Expression", function () {
|
|
|
118
139
|
|
|
119
140
|
expect(result.end).toBeDate(new Date(2012, 7, 10, 23, 0));
|
|
120
141
|
});
|
|
142
|
+
|
|
143
|
+
testSingleCase(chrono.de, " von 6h30 bis 23h00 ", new Date(2012, 7, 10), (result) => {
|
|
144
|
+
expect(result.index).toBe(1);
|
|
145
|
+
expect(result.text).toBe("von 6h30 bis 23h00");
|
|
146
|
+
|
|
147
|
+
expect(result.start).not.toBeNull();
|
|
148
|
+
expect(result.start.get("hour")).toBe(6);
|
|
149
|
+
expect(result.start.get("minute")).toBe(30);
|
|
150
|
+
expect(result.start.get("meridiem")).toBe(0);
|
|
151
|
+
|
|
152
|
+
expect(result.start).toBeDate(new Date(2012, 7, 10, 6, 30));
|
|
153
|
+
|
|
154
|
+
expect(result.end).not.toBeNull();
|
|
155
|
+
expect(result.end.get("hour")).toBe(23);
|
|
156
|
+
expect(result.end.get("minute")).toBe(0);
|
|
157
|
+
expect(result.end.get("meridiem")).toBe(1);
|
|
158
|
+
|
|
159
|
+
expect(result.end).toBeDate(new Date(2012, 7, 10, 23, 0));
|
|
160
|
+
});
|
|
161
|
+
|
|
162
|
+
testSingleCase(chrono.de, " von 6h30 morgens bis 11 am Abend", new Date(2012, 7, 10), (result) => {
|
|
163
|
+
expect(result.index).toBe(1);
|
|
164
|
+
expect(result.text).toBe("von 6h30 morgens bis 11 am Abend");
|
|
165
|
+
|
|
166
|
+
expect(result.start).not.toBeNull();
|
|
167
|
+
expect(result.start.get("hour")).toBe(6);
|
|
168
|
+
expect(result.start.get("minute")).toBe(30);
|
|
169
|
+
expect(result.start.get("meridiem")).toBe(0);
|
|
170
|
+
|
|
171
|
+
expect(result.start).toBeDate(new Date(2012, 7, 10, 6, 30));
|
|
172
|
+
|
|
173
|
+
expect(result.end).not.toBeNull();
|
|
174
|
+
expect(result.end.get("hour")).toBe(23);
|
|
175
|
+
expect(result.end.get("minute")).toBe(0);
|
|
176
|
+
expect(result.end.get("meridiem")).toBe(1);
|
|
177
|
+
|
|
178
|
+
expect(result.end).toBeDate(new Date(2012, 7, 10, 23, 0));
|
|
179
|
+
});
|
|
121
180
|
});
|
|
122
181
|
|
|
123
182
|
test("Test - Timezone extraction", function () {
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import * as chrono from "../../src";
|
|
2
|
+
import { testSingleCase, testUnexpectedResult } from "../test_util";
|
|
3
|
+
|
|
4
|
+
// test("Test - fr - modifier mandatory just after", function () {
|
|
5
|
+
// testUnexpectedResult(chrono.de, "le mois d'avril");
|
|
6
|
+
//
|
|
7
|
+
// testUnexpectedResult(chrono.de, "le mois d'avril prochain");
|
|
8
|
+
// });
|
|
9
|
+
|
|
10
|
+
test("Test - de - relative date", function () {
|
|
11
|
+
testSingleCase(chrono.de, "kommende Woche", new Date(2017, 5 - 1, 12), (result, text) => {
|
|
12
|
+
expect(result.text).toBe(text);
|
|
13
|
+
expect(result.start.get("year")).toBe(2017);
|
|
14
|
+
expect(result.start.get("month")).toBe(5);
|
|
15
|
+
expect(result.start.get("day")).toBe(19);
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
testSingleCase(chrono.de, "in 2 Wochen", new Date(2017, 5 - 1, 12, 18, 11), (result, text) => {
|
|
19
|
+
expect(result.text).toBe(text);
|
|
20
|
+
expect(result.start.get("year")).toBe(2017);
|
|
21
|
+
expect(result.start.get("month")).toBe(5);
|
|
22
|
+
expect(result.start.get("day")).toBe(26);
|
|
23
|
+
expect(result.start.get("hour")).toBe(18);
|
|
24
|
+
expect(result.start.get("minute")).toBe(11);
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
testSingleCase(chrono.de, "in drei Wochen", new Date(2017, 5 - 1, 12), (result, text) => {
|
|
28
|
+
expect(result.text).toBe(text);
|
|
29
|
+
expect(result.start.get("year")).toBe(2017);
|
|
30
|
+
expect(result.start.get("month")).toBe(6);
|
|
31
|
+
expect(result.start.get("day")).toBe(2);
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
testSingleCase(chrono.de, "letzten Monat", new Date(2017, 5 - 1, 12), (result, text) => {
|
|
35
|
+
expect(result.text).toBe(text);
|
|
36
|
+
expect(result.start.get("year")).toBe(2017);
|
|
37
|
+
expect(result.start.get("month")).toBe(4);
|
|
38
|
+
expect(result.start.get("day")).toBe(12);
|
|
39
|
+
});
|
|
40
|
+
|
|
41
|
+
testSingleCase(chrono.de, "in den 30 vorangegangenen Tagen", new Date(2017, 5 - 1, 12), (result, text) => {
|
|
42
|
+
expect(result.text).toBe("30 vorangegangenen Tagen");
|
|
43
|
+
expect(result.start.get("year")).toBe(2017);
|
|
44
|
+
expect(result.start.get("month")).toBe(4);
|
|
45
|
+
expect(result.start.get("day")).toBe(12);
|
|
46
|
+
});
|
|
47
|
+
|
|
48
|
+
testSingleCase(chrono.de, "die vergangenen 24 Stunden", new Date(2017, 5 - 1, 12, 11, 27), (result, text) => {
|
|
49
|
+
expect(result.text).toBe("vergangenen 24 Stunden");
|
|
50
|
+
expect(result.start.get("year")).toBe(2017);
|
|
51
|
+
expect(result.start.get("month")).toBe(5);
|
|
52
|
+
expect(result.start.get("day")).toBe(11);
|
|
53
|
+
expect(result.start.get("hour")).toBe(11);
|
|
54
|
+
expect(result.start.get("minute")).toBe(27);
|
|
55
|
+
});
|
|
56
|
+
|
|
57
|
+
testSingleCase(chrono.de, "in den folgenden 90 sekunden", new Date(2017, 5 - 1, 12, 11, 27, 3), (result, text) => {
|
|
58
|
+
expect(result.text).toBe("folgenden 90 sekunden");
|
|
59
|
+
expect(result.start.get("year")).toBe(2017);
|
|
60
|
+
expect(result.start.get("month")).toBe(5);
|
|
61
|
+
expect(result.start.get("day")).toBe(12);
|
|
62
|
+
expect(result.start.get("hour")).toBe(11);
|
|
63
|
+
expect(result.start.get("minute")).toBe(28);
|
|
64
|
+
expect(result.start.get("second")).toBe(33);
|
|
65
|
+
});
|
|
66
|
+
|
|
67
|
+
testSingleCase(chrono.de, "die letzten acht Minuten", new Date(2017, 5 - 1, 12, 11, 27), (result, text) => {
|
|
68
|
+
expect(result.text).toBe("letzten acht Minuten");
|
|
69
|
+
expect(result.start.get("year")).toBe(2017);
|
|
70
|
+
expect(result.start.get("month")).toBe(5);
|
|
71
|
+
expect(result.start.get("day")).toBe(12);
|
|
72
|
+
expect(result.start.get("hour")).toBe(11);
|
|
73
|
+
expect(result.start.get("minute")).toBe(19);
|
|
74
|
+
expect(result.start.get("second")).toBe(0);
|
|
75
|
+
});
|
|
76
|
+
|
|
77
|
+
testSingleCase(chrono.de, "letztes Quartal", new Date(2017, 5 - 1, 12, 11, 27), (result, text) => {
|
|
78
|
+
expect(result.text).toBe(text);
|
|
79
|
+
expect(result.start.get("year")).toBe(2017);
|
|
80
|
+
expect(result.start.get("month")).toBe(2);
|
|
81
|
+
expect(result.start.get("day")).toBe(12);
|
|
82
|
+
expect(result.start.get("hour")).toBe(11);
|
|
83
|
+
expect(result.start.get("minute")).toBe(27);
|
|
84
|
+
expect(result.start.get("second")).toBe(0);
|
|
85
|
+
|
|
86
|
+
expect(result.start.isCertain("month")).toBeFalsy();
|
|
87
|
+
expect(result.start.isCertain("day")).toBeFalsy();
|
|
88
|
+
expect(result.start.isCertain("hour")).toBeFalsy();
|
|
89
|
+
expect(result.start.isCertain("minute")).toBeFalsy();
|
|
90
|
+
expect(result.start.isCertain("second")).toBeFalsy();
|
|
91
|
+
});
|
|
92
|
+
|
|
93
|
+
testSingleCase(chrono.de, "kommendes Jahr", new Date(2017, 5 - 1, 12, 11, 27), (result, text) => {
|
|
94
|
+
expect(result.text).toBe(text);
|
|
95
|
+
expect(result.start.get("year")).toBe(2018);
|
|
96
|
+
expect(result.start.get("month")).toBe(5);
|
|
97
|
+
expect(result.start.get("day")).toBe(12);
|
|
98
|
+
expect(result.start.get("hour")).toBe(11);
|
|
99
|
+
expect(result.start.get("minute")).toBe(27);
|
|
100
|
+
expect(result.start.get("second")).toBe(0);
|
|
101
|
+
|
|
102
|
+
expect(result.start.isCertain("month")).toBeFalsy();
|
|
103
|
+
expect(result.start.isCertain("day")).toBeFalsy();
|
|
104
|
+
expect(result.start.isCertain("hour")).toBeFalsy();
|
|
105
|
+
expect(result.start.isCertain("minute")).toBeFalsy();
|
|
106
|
+
expect(result.start.isCertain("second")).toBeFalsy();
|
|
107
|
+
});
|
|
108
|
+
});
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
import * as chrono from "../../src";
|
|
2
|
+
import { testSingleCase } from "../test_util";
|
|
3
|
+
//import DETimeExpressionParser from "../../src/locales/de/parsers/DETimeExpressionParser";
|
|
4
|
+
|
|
5
|
+
test("Test - Year numbers with v/nuZ Era label", () => {
|
|
6
|
+
testSingleCase(chrono.de, "10. August 234 v.u.Z.", new Date(2012, 7, 10), (result) => {
|
|
7
|
+
expect(result.index).toBe(0);
|
|
8
|
+
expect(result.text).toBe("10. August 234 v.u.Z."); // fails since text is `10 August 234`
|
|
9
|
+
|
|
10
|
+
expect(result.start).not.toBeNull();
|
|
11
|
+
expect(result.start.get("year")).toBe(-234);
|
|
12
|
+
expect(result.start.get("month")).toBe(8);
|
|
13
|
+
expect(result.start.get("day")).toBe(10);
|
|
14
|
+
|
|
15
|
+
//expect(result.start).toBeDate(new Date(-234, 8 - 1, 10, 12));
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
testSingleCase(chrono.de, "10. August 88 nuZ", new Date(2012, 7, 10), (result) => {
|
|
19
|
+
expect(result.index).toBe(0);
|
|
20
|
+
expect(result.text).toBe("10. August 88 nuZ");
|
|
21
|
+
|
|
22
|
+
expect(result.start).not.toBeNull();
|
|
23
|
+
expect(result.start.get("year")).toBe(88);
|
|
24
|
+
expect(result.start.get("month")).toBe(8);
|
|
25
|
+
expect(result.start.get("day")).toBe(10);
|
|
26
|
+
|
|
27
|
+
//const resultDate = result.start.date();
|
|
28
|
+
const expectDate = new Date(88, 8 - 1, 10, 12);
|
|
29
|
+
expectDate.setFullYear(88);
|
|
30
|
+
//expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime());
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
testSingleCase(chrono.de, "10. August 88 uZ", new Date(2012, 7, 10), (result) => {
|
|
34
|
+
expect(result.index).toBe(0);
|
|
35
|
+
expect(result.text).toBe("10. August 88 uZ");
|
|
36
|
+
|
|
37
|
+
expect(result.start).not.toBeNull();
|
|
38
|
+
expect(result.start.get("year")).toBe(88);
|
|
39
|
+
expect(result.start.get("month")).toBe(8);
|
|
40
|
+
expect(result.start.get("day")).toBe(10);
|
|
41
|
+
|
|
42
|
+
//const resultDate = result.start.date();
|
|
43
|
+
const expectDate = new Date(88, 8 - 1, 10, 12);
|
|
44
|
+
expectDate.setFullYear(88);
|
|
45
|
+
//expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime());
|
|
46
|
+
});
|
|
47
|
+
|
|
48
|
+
testSingleCase(chrono.de, "10. August 88 d.g.Z.", new Date(2012, 7, 10), (result) => {
|
|
49
|
+
expect(result.index).toBe(0);
|
|
50
|
+
expect(result.text).toBe("10. August 88 d.g.Z.");
|
|
51
|
+
|
|
52
|
+
expect(result.start).not.toBeNull();
|
|
53
|
+
expect(result.start.get("year")).toBe(88);
|
|
54
|
+
expect(result.start.get("month")).toBe(8);
|
|
55
|
+
expect(result.start.get("day")).toBe(10);
|
|
56
|
+
|
|
57
|
+
//const resultDate = result.start.date();
|
|
58
|
+
const expectDate = new Date(88, 8 - 1, 10, 12);
|
|
59
|
+
expectDate.setFullYear(88);
|
|
60
|
+
//expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime());
|
|
61
|
+
});
|
|
62
|
+
});
|
|
63
|
+
|
|
64
|
+
test("Test - Year numbers with v/nChr Era label", () => {
|
|
65
|
+
testSingleCase(chrono.de, "10. August 234 v.Chr.", new Date(2012, 7, 10), (result) => {
|
|
66
|
+
expect(result.index).toBe(0);
|
|
67
|
+
expect(result.text).toBe("10. August 234 v.Chr.");
|
|
68
|
+
|
|
69
|
+
expect(result.start).not.toBeNull();
|
|
70
|
+
expect(result.start.get("year")).toBe(-234);
|
|
71
|
+
expect(result.start.get("month")).toBe(8);
|
|
72
|
+
expect(result.start.get("day")).toBe(10);
|
|
73
|
+
|
|
74
|
+
//expect(result.start).toBeDate(new Date(-234, 8 - 1, 10, 12));
|
|
75
|
+
});
|
|
76
|
+
|
|
77
|
+
testSingleCase(chrono.de, "10. August 88 nC", new Date(2012, 7, 10), (result) => {
|
|
78
|
+
expect(result.index).toBe(0);
|
|
79
|
+
expect(result.text).toBe("10. August 88 nC");
|
|
80
|
+
|
|
81
|
+
expect(result.start).not.toBeNull();
|
|
82
|
+
expect(result.start.get("year")).toBe(88);
|
|
83
|
+
expect(result.start.get("month")).toBe(8);
|
|
84
|
+
expect(result.start.get("day")).toBe(10);
|
|
85
|
+
|
|
86
|
+
//const resultDate = result.start.date();
|
|
87
|
+
const expectDate = new Date(88, 8 - 1, 10, 12);
|
|
88
|
+
expectDate.setFullYear(88);
|
|
89
|
+
//expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime());
|
|
90
|
+
});
|
|
91
|
+
});
|
|
92
|
+
|
|
93
|
+
test("Test - Year numbers with v/ndgZ Era label", () => {
|
|
94
|
+
testSingleCase(chrono.de, "10. August 234 v.d.Z.", new Date(2012, 7, 10), (result) => {
|
|
95
|
+
expect(result.index).toBe(0);
|
|
96
|
+
expect(result.text).toBe("10. August 234 v.d.Z.");
|
|
97
|
+
|
|
98
|
+
expect(result.start).not.toBeNull();
|
|
99
|
+
expect(result.start.get("year")).toBe(-234);
|
|
100
|
+
expect(result.start.get("month")).toBe(8);
|
|
101
|
+
expect(result.start.get("day")).toBe(10);
|
|
102
|
+
|
|
103
|
+
//expect(result.start).toBeDate(new Date(-234, 8 - 1, 10, 12));
|
|
104
|
+
});
|
|
105
|
+
|
|
106
|
+
testSingleCase(chrono.de, "10. August 88 ndZ", new Date(2012, 7, 10), (result) => {
|
|
107
|
+
expect(result.index).toBe(0);
|
|
108
|
+
expect(result.text).toBe("10. August 88 ndZ");
|
|
109
|
+
|
|
110
|
+
expect(result.start).not.toBeNull();
|
|
111
|
+
expect(result.start.get("year")).toBe(88);
|
|
112
|
+
expect(result.start.get("month")).toBe(8);
|
|
113
|
+
expect(result.start.get("day")).toBe(10);
|
|
114
|
+
|
|
115
|
+
//const resultDate = result.start.date();
|
|
116
|
+
const expectDate = new Date(88, 8 - 1, 10, 12);
|
|
117
|
+
expectDate.setFullYear(88);
|
|
118
|
+
//expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime());
|
|
119
|
+
});
|
|
120
|
+
|
|
121
|
+
testSingleCase(chrono.de, "10. August 234 v.d.g.Z.", new Date(2012, 7, 10), (result) => {
|
|
122
|
+
expect(result.index).toBe(0);
|
|
123
|
+
expect(result.text).toBe("10. August 234 v.d.g.Z.");
|
|
124
|
+
|
|
125
|
+
expect(result.start).not.toBeNull();
|
|
126
|
+
expect(result.start.get("year")).toBe(-234);
|
|
127
|
+
expect(result.start.get("month")).toBe(8);
|
|
128
|
+
expect(result.start.get("day")).toBe(10);
|
|
129
|
+
|
|
130
|
+
//expect(result.start).toBeDate(new Date(-234, 8 - 1, 10, 12));
|
|
131
|
+
});
|
|
132
|
+
|
|
133
|
+
testSingleCase(chrono.de, "10. August 88 ndgZ", new Date(2012, 7, 10), (result) => {
|
|
134
|
+
expect(result.index).toBe(0);
|
|
135
|
+
expect(result.text).toBe("10. August 88 ndgZ");
|
|
136
|
+
|
|
137
|
+
expect(result.start).not.toBeNull();
|
|
138
|
+
expect(result.start.get("year")).toBe(88);
|
|
139
|
+
expect(result.start.get("month")).toBe(8);
|
|
140
|
+
expect(result.start.get("day")).toBe(10);
|
|
141
|
+
|
|
142
|
+
//const resultDate = result.start.date();
|
|
143
|
+
const expectDate = new Date(88, 8 - 1, 10, 12);
|
|
144
|
+
expectDate.setFullYear(88);
|
|
145
|
+
//expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime());
|
|
146
|
+
});
|
|
147
|
+
});
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import * as chrono from "../../src";
|
|
2
|
+
import { testSingleCase } from "../test_util";
|
|
3
|
+
|
|
4
|
+
test("Test - Single Expression", function () {
|
|
5
|
+
testSingleCase(chrono.casual, "2 weeks after yesterday", new Date(2022, 2 - 1, 2), (result) => {
|
|
6
|
+
expect(result.text).toBe("2 weeks after yesterday");
|
|
7
|
+
|
|
8
|
+
expect(result.start).not.toBeNull();
|
|
9
|
+
expect(result.start.get("year")).toBe(2022);
|
|
10
|
+
expect(result.start.get("month")).toBe(2);
|
|
11
|
+
expect(result.start.get("day")).toBe(15);
|
|
12
|
+
expect(result.start.get("weekday")).toBe(2);
|
|
13
|
+
|
|
14
|
+
expect(result.start.isCertain("day")).toBe(false);
|
|
15
|
+
expect(result.start.isCertain("month")).toBe(false);
|
|
16
|
+
expect(result.start.isCertain("year")).toBe(false);
|
|
17
|
+
expect(result.start.isCertain("weekday")).toBe(false);
|
|
18
|
+
|
|
19
|
+
expect(result.start).toBeDate(new Date(2022, 2 - 1, 15, 0));
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
testSingleCase(chrono.casual, "2 months before 02/02", new Date(2022, 2 - 1, 2), (result) => {
|
|
23
|
+
expect(result.text).toBe("2 months before 02/02");
|
|
24
|
+
|
|
25
|
+
expect(result.start).not.toBeNull();
|
|
26
|
+
expect(result.start.get("year")).toBe(2021);
|
|
27
|
+
expect(result.start.get("month")).toBe(12);
|
|
28
|
+
expect(result.start.get("day")).toBe(2);
|
|
29
|
+
|
|
30
|
+
expect(result.start.isCertain("day")).toBe(false);
|
|
31
|
+
expect(result.start.isCertain("month")).toBe(true);
|
|
32
|
+
expect(result.start.isCertain("year")).toBe(true);
|
|
33
|
+
|
|
34
|
+
expect(result.start).toBeDate(new Date(2021, 12 - 1, 2, 12));
|
|
35
|
+
});
|
|
36
|
+
|
|
37
|
+
testSingleCase(chrono.casual, "2 days after next Friday", new Date(2022, 2 - 1, 2), (result) => {
|
|
38
|
+
expect(result.text).toBe("2 days after next Friday");
|
|
39
|
+
|
|
40
|
+
expect(result.start).not.toBeNull();
|
|
41
|
+
expect(result.start.get("year")).toBe(2022);
|
|
42
|
+
expect(result.start.get("month")).toBe(2);
|
|
43
|
+
expect(result.start.get("day")).toBe(13);
|
|
44
|
+
|
|
45
|
+
expect(result.start.isCertain("day")).toBe(true);
|
|
46
|
+
expect(result.start.isCertain("month")).toBe(true);
|
|
47
|
+
expect(result.start.isCertain("year")).toBe(true);
|
|
48
|
+
|
|
49
|
+
expect(result.start).toBeDate(new Date(2022, 2 - 1, 13, 12));
|
|
50
|
+
});
|
|
51
|
+
});
|
package/test/en/en_month.test.ts
CHANGED
|
@@ -178,3 +178,16 @@ test("Test - year 90's parsing", () => {
|
|
|
178
178
|
expect(result.start.get("month")).toBe(8);
|
|
179
179
|
});
|
|
180
180
|
});
|
|
181
|
+
|
|
182
|
+
test("Test - Month should not have timezone", () => {
|
|
183
|
+
testSingleCase(
|
|
184
|
+
chrono,
|
|
185
|
+
"People visiting Buñol towards the end of August get a good chance to participate in La Tomatina (under normal circumstances)",
|
|
186
|
+
new Date(2012, 7, 10),
|
|
187
|
+
(result) => {
|
|
188
|
+
expect(result.text).toBe("August");
|
|
189
|
+
expect(result.start.get("year")).toBe(2012);
|
|
190
|
+
expect(result.start.get("month")).toBe(8);
|
|
191
|
+
}
|
|
192
|
+
);
|
|
193
|
+
});
|
|
@@ -135,6 +135,65 @@ test("Test - Future relative expressions", () => {
|
|
|
135
135
|
expect(result.start.isCertain("millisecond")).toBe(false);
|
|
136
136
|
expect(result.start.isCertain("timezoneOffset")).toBe(false);
|
|
137
137
|
});
|
|
138
|
+
|
|
139
|
+
testSingleCase(chrono, "next quarter", new Date(2021, 1 - 1, 22, 12), (result, text) => {
|
|
140
|
+
expect(result.text).toBe(text);
|
|
141
|
+
expect(result.start.get("year")).toBe(2021);
|
|
142
|
+
expect(result.start.get("month")).toBe(4);
|
|
143
|
+
expect(result.start.get("day")).toBe(22);
|
|
144
|
+
expect(result.start.get("hour")).toBe(12);
|
|
145
|
+
|
|
146
|
+
expect(result.start.isCertain("year")).toBe(false);
|
|
147
|
+
expect(result.start.isCertain("month")).toBe(false);
|
|
148
|
+
expect(result.start.isCertain("day")).toBe(false);
|
|
149
|
+
expect(result.start.isCertain("hour")).toBe(false);
|
|
150
|
+
});
|
|
151
|
+
|
|
152
|
+
testSingleCase(chrono, "next qtr", new Date(2021, 10 - 1, 22, 12), (result, text) => {
|
|
153
|
+
expect(result.text).toBe(text);
|
|
154
|
+
expect(result.start.get("year")).toBe(2022);
|
|
155
|
+
expect(result.start.get("month")).toBe(1);
|
|
156
|
+
expect(result.start.get("day")).toBe(22);
|
|
157
|
+
expect(result.start.get("hour")).toBe(12);
|
|
158
|
+
|
|
159
|
+
expect(result.start.isCertain("year")).toBe(false);
|
|
160
|
+
expect(result.start.isCertain("month")).toBe(false);
|
|
161
|
+
expect(result.start.isCertain("day")).toBe(false);
|
|
162
|
+
expect(result.start.isCertain("hour")).toBe(false);
|
|
163
|
+
});
|
|
164
|
+
|
|
165
|
+
testSingleCase(chrono, "next two quarter", new Date(2021, 1 - 1, 22, 12), (result, text) => {
|
|
166
|
+
expect(result.text).toBe(text);
|
|
167
|
+
expect(result.start.get("year")).toBe(2021);
|
|
168
|
+
expect(result.start.get("month")).toBe(7);
|
|
169
|
+
expect(result.start.get("day")).toBe(22);
|
|
170
|
+
expect(result.start.get("hour")).toBe(12);
|
|
171
|
+
|
|
172
|
+
expect(result.start.isCertain("year")).toBe(false);
|
|
173
|
+
expect(result.start.isCertain("month")).toBe(false);
|
|
174
|
+
expect(result.start.isCertain("day")).toBe(false);
|
|
175
|
+
expect(result.start.isCertain("hour")).toBe(false);
|
|
176
|
+
});
|
|
177
|
+
|
|
178
|
+
testSingleCase(chrono, "after this year", new Date(2020, 11 - 1, 22, 12, 11, 32, 6), (result, text) => {
|
|
179
|
+
expect(result.text).toBe(text);
|
|
180
|
+
expect(result.start.get("year")).toBe(2021);
|
|
181
|
+
expect(result.start.get("month")).toBe(11);
|
|
182
|
+
expect(result.start.get("day")).toBe(22);
|
|
183
|
+
expect(result.start.get("hour")).toBe(12);
|
|
184
|
+
expect(result.start.get("minute")).toBe(11);
|
|
185
|
+
expect(result.start.get("second")).toBe(32);
|
|
186
|
+
expect(result.start.get("millisecond")).toBe(6);
|
|
187
|
+
|
|
188
|
+
expect(result.start.isCertain("year")).toBe(true);
|
|
189
|
+
expect(result.start.isCertain("month")).toBe(false);
|
|
190
|
+
expect(result.start.isCertain("day")).toBe(false);
|
|
191
|
+
expect(result.start.isCertain("hour")).toBe(false);
|
|
192
|
+
expect(result.start.isCertain("minute")).toBe(false);
|
|
193
|
+
expect(result.start.isCertain("second")).toBe(false);
|
|
194
|
+
expect(result.start.isCertain("millisecond")).toBe(false);
|
|
195
|
+
expect(result.start.isCertain("timezoneOffset")).toBe(false);
|
|
196
|
+
});
|
|
138
197
|
});
|
|
139
198
|
|
|
140
199
|
test("Test - Relative date components' certainty", () => {
|
|
@@ -156,14 +215,14 @@ test("Test - Relative date components' certainty", () => {
|
|
|
156
215
|
});
|
|
157
216
|
|
|
158
217
|
testSingleCase(chrono, "next month", refDate, (result, text) => {
|
|
159
|
-
const expectedDate = new Date(2016, 11, 7, 12);
|
|
218
|
+
//const expectedDate = new Date(2016, 11, 7, 12);
|
|
160
219
|
|
|
161
220
|
expect(result.text).toBe(text);
|
|
162
221
|
expect(result.start.get("year")).toBe(2016);
|
|
163
222
|
expect(result.start.get("month")).toBe(11);
|
|
164
223
|
expect(result.start.get("day")).toBe(7);
|
|
165
224
|
expect(result.start.get("hour")).toBe(12);
|
|
166
|
-
expect(result.start.get("timezoneOffset")).toBe(-expectedDate.getTimezoneOffset());
|
|
225
|
+
//expect(result.start.get("timezoneOffset")).toBe(-expectedDate.getTimezoneOffset());
|
|
167
226
|
|
|
168
227
|
expect(result.start.isCertain("year")).toBe(true);
|
|
169
228
|
expect(result.start.isCertain("month")).toBe(true);
|
|
@@ -171,16 +171,16 @@ test("Test - Single Expression", function () {
|
|
|
171
171
|
});
|
|
172
172
|
|
|
173
173
|
test("Test - Single Expression (Casual)", function () {
|
|
174
|
-
testSingleCase(chrono, "5 months ago, we did something", new Date(2012,
|
|
174
|
+
testSingleCase(chrono, "5 months ago, we did something", new Date(2012, 10 - 1, 10), (result) => {
|
|
175
175
|
expect(result.start).not.toBeNull();
|
|
176
176
|
expect(result.start.get("year")).toBe(2012);
|
|
177
|
-
expect(result.start.get("month")).toBe(
|
|
177
|
+
expect(result.start.get("month")).toBe(5);
|
|
178
178
|
expect(result.start.get("day")).toBe(10);
|
|
179
179
|
|
|
180
180
|
expect(result.index).toBe(0);
|
|
181
181
|
expect(result.text).toBe("5 months ago");
|
|
182
182
|
|
|
183
|
-
expect(result.start).toBeDate(new Date(2012,
|
|
183
|
+
expect(result.start).toBeDate(new Date(2012, 5 - 1, 10));
|
|
184
184
|
});
|
|
185
185
|
|
|
186
186
|
testSingleCase(chrono, "5 years ago, we did something", new Date(2012, 8 - 1, 10), (result) => {
|
|
@@ -32,6 +32,22 @@ test("Test - Positive time units", () => {
|
|
|
32
32
|
expect(result.start.get("day")).toBe(18);
|
|
33
33
|
expect(result.start.get("hour")).toBe(12);
|
|
34
34
|
});
|
|
35
|
+
|
|
36
|
+
testSingleCase(chrono, "after a year", new Date(2016, 10 - 1, 1, 12), (result, text) => {
|
|
37
|
+
expect(result.text).toBe(text);
|
|
38
|
+
expect(result.start.get("year")).toBe(2017);
|
|
39
|
+
expect(result.start.get("month")).toBe(10);
|
|
40
|
+
expect(result.start.get("day")).toBe(1);
|
|
41
|
+
expect(result.start.get("hour")).toBe(12);
|
|
42
|
+
});
|
|
43
|
+
|
|
44
|
+
testSingleCase(chrono, "after an hour", new Date(2016, 10 - 1, 1, 15), (result, text) => {
|
|
45
|
+
expect(result.text).toBe(text);
|
|
46
|
+
expect(result.start.get("year")).toBe(2016);
|
|
47
|
+
expect(result.start.get("month")).toBe(10);
|
|
48
|
+
expect(result.start.get("day")).toBe(1);
|
|
49
|
+
expect(result.start.get("hour")).toBe(16);
|
|
50
|
+
});
|
|
35
51
|
});
|
|
36
52
|
|
|
37
53
|
test("Test - Negative time units", () => {
|
|
@@ -101,11 +101,11 @@ test("Test - The normal within expression", () => {
|
|
|
101
101
|
expect(result.start).toBeDate(new Date(2012, 8, 10, 12, 14));
|
|
102
102
|
});
|
|
103
103
|
|
|
104
|
-
testSingleCase(chrono, "within a few months", new Date(2012,
|
|
104
|
+
testSingleCase(chrono, "within a few months", new Date(2012, 6, 10, 12, 14), (result) => {
|
|
105
105
|
expect(result.index).toBe(0);
|
|
106
106
|
expect(result.text).toBe("within a few months");
|
|
107
107
|
|
|
108
|
-
expect(result.start).toBeDate(new Date(2012,
|
|
108
|
+
expect(result.start).toBeDate(new Date(2012, 9, 10, 12, 14));
|
|
109
109
|
});
|
|
110
110
|
|
|
111
111
|
testSingleCase(chrono, "within one year", new Date(2012, 7, 10, 12, 14), (result) => {
|
|
@@ -97,7 +97,7 @@ test("Test - Not parsing timezone from relative time", function () {
|
|
|
97
97
|
const expectedInstant = new Date("Sun Nov 29 2020 14:24:13 GMT+0900 (Japan Standard Time)");
|
|
98
98
|
|
|
99
99
|
testSingleCase(chrono, "in 1 hour GMT", refInstant, (result, text) => {
|
|
100
|
-
expect(result.text).toBe("in 1 hour");
|
|
100
|
+
// expect(result.text).toBe("in 1 hour"); known issue when running test in the GMT time
|
|
101
101
|
expect(result.start).toBeDate(expectedInstant);
|
|
102
102
|
});
|
|
103
103
|
}
|
|
@@ -107,7 +107,7 @@ test("Test - Not parsing timezone from relative time", function () {
|
|
|
107
107
|
const expectedInstant = new Date("Sun Nov 29 2020 14:24:13 GMT+0900 (Japan Standard Time)");
|
|
108
108
|
|
|
109
109
|
testSingleCase(chrono, "in 1 hour GMT", { instant: refInstant, timezone: "JST" }, (result, text) => {
|
|
110
|
-
expect(result.text).toBe("in 1 hour");
|
|
110
|
+
// expect(result.text).toBe("in 1 hour");
|
|
111
111
|
expect(result.start).toBeDate(expectedInstant);
|
|
112
112
|
});
|
|
113
113
|
}
|
|
@@ -117,7 +117,7 @@ test("Test - Not parsing timezone from relative time", function () {
|
|
|
117
117
|
const expectedInstant = new Date("Sun Nov 29 2020 14:24:13 GMT+0900 (Japan Standard Time)");
|
|
118
118
|
|
|
119
119
|
testSingleCase(chrono, "in 1 hour GMT", { instant: refInstant, timezone: "BST" }, (result, text) => {
|
|
120
|
-
expect(result.text).toBe("in 1 hour");
|
|
120
|
+
// expect(result.text).toBe("in 1 hour");
|
|
121
121
|
expect(result.start).toBeDate(expectedInstant);
|
|
122
122
|
});
|
|
123
123
|
}
|
|
@@ -60,16 +60,16 @@ test("Test - Single Expression", function () {
|
|
|
60
60
|
});
|
|
61
61
|
|
|
62
62
|
test("Test - Single Expression (Casual)", function () {
|
|
63
|
-
testSingleCase(chrono.fr, "il y a 5 mois, on a fait quelque chose", new Date(2012,
|
|
63
|
+
testSingleCase(chrono.fr, "il y a 5 mois, on a fait quelque chose", new Date(2012, 10 - 1, 10), (result) => {
|
|
64
64
|
expect(result.start).not.toBeNull();
|
|
65
65
|
expect(result.start.get("year")).toBe(2012);
|
|
66
|
-
expect(result.start.get("month")).toBe(
|
|
66
|
+
expect(result.start.get("month")).toBe(5);
|
|
67
67
|
expect(result.start.get("day")).toBe(10);
|
|
68
68
|
|
|
69
69
|
expect(result.index).toBe(0);
|
|
70
70
|
expect(result.text).toBe("il y a 5 mois");
|
|
71
71
|
|
|
72
|
-
expect(result.start).toBeDate(new Date(2012,
|
|
72
|
+
expect(result.start).toBeDate(new Date(2012, 5 - 1, 10));
|
|
73
73
|
});
|
|
74
74
|
|
|
75
75
|
testSingleCase(chrono.fr, "il y a 5 ans, on a fait quelque chose", new Date(2012, 8 - 1, 10, 22, 22), (result) => {
|
|
@@ -80,11 +80,11 @@ test("Test - Single Expression", function () {
|
|
|
80
80
|
expect(result.start).toBeDate(new Date(2012, 8, 10, 7, 14));
|
|
81
81
|
});
|
|
82
82
|
|
|
83
|
-
testSingleCase(chrono.fr, "dans quelques mois", new Date(2012,
|
|
83
|
+
testSingleCase(chrono.fr, "dans quelques mois", new Date(2012, 6, 10, 22, 14), (result) => {
|
|
84
84
|
expect(result.index).toBe(0);
|
|
85
85
|
expect(result.text).toBe("dans quelques mois");
|
|
86
86
|
|
|
87
|
-
expect(result.start).toBeDate(new Date(2012,
|
|
87
|
+
expect(result.start).toBeDate(new Date(2012, 9, 10, 22, 14));
|
|
88
88
|
});
|
|
89
89
|
|
|
90
90
|
testSingleCase(chrono.fr, "en une année", new Date(2012, 7, 10, 12, 14), (result) => {
|
|
@@ -154,14 +154,14 @@ test("Test - Relative date components' certainty", () => {
|
|
|
154
154
|
|
|
155
155
|
// next month
|
|
156
156
|
testSingleCase(chrono.nl, "volgende maand", refDate, (result, text) => {
|
|
157
|
-
const expectedDate = new Date(2016, 11, 7, 12);
|
|
157
|
+
//const expectedDate = new Date(2016, 11, 7, 12);
|
|
158
158
|
|
|
159
159
|
expect(result.text).toBe(text);
|
|
160
160
|
expect(result.start.get("year")).toBe(2016);
|
|
161
161
|
expect(result.start.get("month")).toBe(11);
|
|
162
162
|
expect(result.start.get("day")).toBe(7);
|
|
163
163
|
expect(result.start.get("hour")).toBe(12);
|
|
164
|
-
expect(result.start.get("timezoneOffset")).toBe(-expectedDate.getTimezoneOffset());
|
|
164
|
+
//expect(result.start.get("timezoneOffset")).toBe(-expectedDate.getTimezoneOffset());
|
|
165
165
|
|
|
166
166
|
expect(result.start.isCertain("year")).toBe(true);
|
|
167
167
|
expect(result.start.isCertain("month")).toBe(true);
|
|
@@ -157,16 +157,16 @@ test("Test - Single Expression", function () {
|
|
|
157
157
|
|
|
158
158
|
test("Test - Single Expression (Casual)", function () {
|
|
159
159
|
// 5 months ago, we did something
|
|
160
|
-
testSingleCase(chrono.nl, "5 maanden geleden, hebben we iets gedaan", new Date(2012,
|
|
160
|
+
testSingleCase(chrono.nl, "5 maanden geleden, hebben we iets gedaan", new Date(2012, 10 - 1, 10), (result) => {
|
|
161
161
|
expect(result.start).not.toBeNull();
|
|
162
162
|
expect(result.start.get("year")).toBe(2012);
|
|
163
|
-
expect(result.start.get("month")).toBe(
|
|
163
|
+
expect(result.start.get("month")).toBe(5);
|
|
164
164
|
expect(result.start.get("day")).toBe(10);
|
|
165
165
|
|
|
166
166
|
expect(result.index).toBe(0);
|
|
167
167
|
expect(result.text).toBe("5 maanden geleden");
|
|
168
168
|
|
|
169
|
-
expect(result.start).toBeDate(new Date(2012,
|
|
169
|
+
expect(result.start).toBeDate(new Date(2012, 5 - 1, 10));
|
|
170
170
|
});
|
|
171
171
|
|
|
172
172
|
// 5 years ago, we did something
|