chrono-node 1.4.7 → 1.4.9
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/dist/chrono.js +711 -809
- package/dist/chrono.js.map +1 -1
- package/dist/chrono.min.js +1 -1
- package/dist/chrono.min.js.map +1 -1
- package/package.json +1 -1
- package/src/chrono.js +57 -59
- package/src/options.js +30 -29
- package/src/parsers/en/ENDeadlineFormatParser.js +9 -9
- package/src/result.js +119 -119
- package/test/de/de.test.js +36 -51
- package/test/de/de_casual.test.js +242 -141
- package/test/de/de_dash.test.js +5 -8
- package/test/de/de_deadline.test.js +151 -47
- package/test/de/de_little_endian.test.js +207 -58
- package/test/de/de_time_ago.test.js +167 -52
- package/test/de/de_time_exp.test.js +135 -121
- package/test/de/de_weekday.test.js +94 -31
- package/test/en/en.test.js +118 -89
- package/test/en/en_casual.test.js +149 -134
- package/test/en/en_dash.test.js +17 -11
- package/test/en/en_deadline.test.js +93 -69
- package/test/en/en_inter_std.test.js +28 -7
- package/test/en/en_little_endian.test.js +76 -26
- package/test/en/en_middle_endian.test.js +63 -21
- package/test/en/en_month.test.js +6 -2
- package/test/en/en_option_forward.test.js +120 -112
- package/test/en/en_relative.test.js +155 -172
- package/test/en/en_slash.test.js +156 -115
- package/test/en/en_time_ago.test.js +61 -21
- package/test/en/en_time_exp.test.js +228 -209
- package/test/en/en_time_from_now.test.js +70 -24
- package/test/en/en_time_later.test.js +16 -6
- package/test/en/en_weekday.test.js +39 -13
- package/test/es/es_casual.test.js +143 -120
- package/test/es/es_dash.test.js +7 -8
- package/test/es/es_deadline.test.js +69 -35
- package/test/es/es_little_endian.test.js +250 -145
- package/test/es/es_slash.test.js +17 -12
- package/test/es/es_time_ago.test.js +21 -7
- package/test/es/es_time_exp.test.js +154 -160
- package/test/fr/fr_casual.test.js +153 -124
- package/test/fr/fr_dash.test.js +13 -6
- package/test/fr/fr_deadline.test.js +163 -44
- package/test/fr/fr_little_endian.test.js +262 -81
- package/test/fr/fr_relative.test.js +188 -196
- package/test/fr/fr_slash.test.js +41 -14
- package/test/fr/fr_time_ago.test.js +30 -10
- package/test/fr/fr_time_exp.test.js +619 -567
- package/test/fr/fr_weekday.test.js +24 -8
- package/test/ja/ja_casual.test.js +41 -26
- package/test/ja/ja_standard.test.js +322 -207
- package/test/nl/nl.test.js +18 -20
- package/test/nl/nl_dash.test.js +26 -26
- package/test/nl/nl_little_endian.test.js +100 -51
- package/test/nl/nl_time_exp.test.js +37 -13
- package/test/nl/nl_weekday.test.js +39 -13
- package/test/pt/pt_casual.test.js +222 -156
- package/test/pt/pt_dash.test.js +7 -6
- package/test/pt/pt_deadline.test.js +51 -17
- package/test/pt/pt_little_endian.test.js +251 -144
- package/test/pt/pt_slash.test.js +38 -25
- package/test/pt/pt_time_ago.test.js +128 -80
- package/test/pt/pt_time_exp.test.js +191 -173
- package/test/test_util.js +1 -5
- package/test/zh/zh_hant_casual.test.js +184 -87
- package/test/zh/zh_hant_date.test.js +109 -75
- package/test/zh/zh_hant_deadline.test.js +131 -41
- package/test/zh/zh_hant_time_exp.test.js +184 -141
- package/test/zh/zh_hant_weekday.test.js +64 -22
|
@@ -12,7 +12,9 @@ test("Test - Single Expression", function() {
|
|
|
12
12
|
expect(result.index).toBe(29);
|
|
13
13
|
expect(result.text).toBe('July 2017');
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
var resultDate = result.start.date();
|
|
16
|
+
var expectDate = new Date(2017, 7-1, 1, 12);
|
|
17
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
16
18
|
});
|
|
17
19
|
|
|
18
20
|
testSingleCase(chrono, 'She is leaving in August.', new Date(2012,7,10), (result) => {
|
|
@@ -24,7 +26,9 @@ test("Test - Single Expression", function() {
|
|
|
24
26
|
expect(result.index).toBe(18);
|
|
25
27
|
expect(result.text).toBe('August');
|
|
26
28
|
|
|
27
|
-
|
|
29
|
+
var resultDate = result.start.date();
|
|
30
|
+
var expectDate = new Date(2012, 8-1, 1, 12);
|
|
31
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
28
32
|
});
|
|
29
33
|
|
|
30
34
|
testSingleCase(chrono, 'I am arriving sometime in August, 2012, probably.', new Date(2012,7,10), (result) => {
|
|
@@ -36,7 +40,9 @@ test("Test - Single Expression", function() {
|
|
|
36
40
|
expect(result.index).toBe(26);
|
|
37
41
|
expect(result.text).toBe('August, 2012');
|
|
38
42
|
|
|
39
|
-
|
|
43
|
+
var resultDate = result.start.date();
|
|
44
|
+
var expectDate = new Date(2012, 8-1, 1, 12);
|
|
45
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
40
46
|
});
|
|
41
47
|
|
|
42
48
|
testSingleCase(chrono, 'August 10, 2012', new Date(2012,7,10), (result) => {
|
|
@@ -48,7 +54,9 @@ test("Test - Single Expression", function() {
|
|
|
48
54
|
expect(result.index).toBe(0);
|
|
49
55
|
expect(result.text).toBe('August 10, 2012');
|
|
50
56
|
|
|
51
|
-
|
|
57
|
+
var resultDate = result.start.date();
|
|
58
|
+
var expectDate = new Date(2012, 8-1, 10, 12);
|
|
59
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
52
60
|
});
|
|
53
61
|
|
|
54
62
|
testSingleCase(chrono, 'Nov 12, 2011', new Date(2012,7,10), (result) => {
|
|
@@ -60,7 +68,9 @@ test("Test - Single Expression", function() {
|
|
|
60
68
|
expect(result.index).toBe(0);
|
|
61
69
|
expect(result.text).toBe('Nov 12, 2011');
|
|
62
70
|
|
|
63
|
-
|
|
71
|
+
var resultDate = result.start.date();
|
|
72
|
+
var expectDate = new Date(2011, 11-1, 12, 12);
|
|
73
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
64
74
|
});
|
|
65
75
|
|
|
66
76
|
testSingleCase(chrono, 'The Deadline is August 10', new Date(2012,7,10), (result) => {
|
|
@@ -72,7 +82,9 @@ test("Test - Single Expression", function() {
|
|
|
72
82
|
expect(result.index).toBe(16);
|
|
73
83
|
expect(result.text).toBe('August 10');
|
|
74
84
|
|
|
75
|
-
|
|
85
|
+
var resultDate = result.start.date();
|
|
86
|
+
var expectDate = new Date(2012, 8-1, 10, 12);
|
|
87
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
76
88
|
});
|
|
77
89
|
|
|
78
90
|
|
|
@@ -80,14 +92,18 @@ test("Test - Single Expression", function() {
|
|
|
80
92
|
expect(result.index).toBe(16);
|
|
81
93
|
expect(result.text).toBe('August 10 2555 BE');
|
|
82
94
|
|
|
83
|
-
|
|
95
|
+
var resultDate = result.start.date();
|
|
96
|
+
var expectDate = new Date(2012, 8-1, 10, 12);
|
|
97
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
84
98
|
});
|
|
85
99
|
|
|
86
100
|
testSingleCase(chrono, 'The Deadline is August 10, 345 BC', new Date(2012,7,10), (result) => {
|
|
87
101
|
expect(result.index).toBe(16);
|
|
88
102
|
expect(result.text).toBe('August 10, 345 BC');
|
|
89
103
|
|
|
90
|
-
|
|
104
|
+
var resultDate = result.start.date();
|
|
105
|
+
var expectDate = new Date(-345, 8-1, 10, 12);
|
|
106
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
91
107
|
});
|
|
92
108
|
|
|
93
109
|
testSingleCase(chrono, 'The Deadline is August 10, 8 AD', new Date(2012,7,10), (result) => {
|
|
@@ -110,7 +126,9 @@ test("Test - Single Expression", function() {
|
|
|
110
126
|
expect(result.start.get('day')).toBe(10);
|
|
111
127
|
expect(result.start.get('weekday')).toBe(2);
|
|
112
128
|
|
|
113
|
-
|
|
129
|
+
var resultDate = result.start.date();
|
|
130
|
+
var expectDate = new Date(2013, 1-1, 10, 12);
|
|
131
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
114
132
|
});
|
|
115
133
|
|
|
116
134
|
testSingleCase(chrono, 'Sun, Mar. 6, 2016', new Date(2012,7,10), (result) => {
|
|
@@ -184,7 +202,9 @@ test("Test - Range expression", function() {
|
|
|
184
202
|
expect(result.start.get('month')).toBe(8);
|
|
185
203
|
expect(result.start.get('day')).toBe(10);
|
|
186
204
|
|
|
187
|
-
|
|
205
|
+
var resultDate = result.start.date();
|
|
206
|
+
var expectDate = new Date(2012, 8-1, 10, 12);
|
|
207
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime());
|
|
188
208
|
|
|
189
209
|
|
|
190
210
|
expect(result.end).not.toBeNull();
|
|
@@ -192,7 +212,9 @@ test("Test - Range expression", function() {
|
|
|
192
212
|
expect(result.end.get('month')).toBe(8);
|
|
193
213
|
expect(result.end.get('day')).toBe(22);
|
|
194
214
|
|
|
195
|
-
|
|
215
|
+
var resultDate = result.end.date();
|
|
216
|
+
var expectDate = new Date(2012, 8-1, 22, 12);
|
|
217
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
196
218
|
});
|
|
197
219
|
|
|
198
220
|
|
|
@@ -206,7 +228,9 @@ test("Test - Range expression", function() {
|
|
|
206
228
|
expect(result.start.get('month')).toBe(8);
|
|
207
229
|
expect(result.start.get('day')).toBe(10);
|
|
208
230
|
|
|
209
|
-
|
|
231
|
+
var resultDate = result.start.date();
|
|
232
|
+
var expectDate = new Date(2012, 8-1, 10, 12);
|
|
233
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime());
|
|
210
234
|
|
|
211
235
|
|
|
212
236
|
expect(result.end).not.toBeNull();
|
|
@@ -214,7 +238,9 @@ test("Test - Range expression", function() {
|
|
|
214
238
|
expect(result.end.get('month')).toBe(8);
|
|
215
239
|
expect(result.end.get('day')).toBe(22);
|
|
216
240
|
|
|
217
|
-
|
|
241
|
+
var resultDate = result.end.date();
|
|
242
|
+
var expectDate = new Date(2012, 8-1, 22, 12);
|
|
243
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
218
244
|
});
|
|
219
245
|
|
|
220
246
|
|
|
@@ -228,7 +254,9 @@ test("Test - Range expression", function() {
|
|
|
228
254
|
expect(result.start.get('month')).toBe(8);
|
|
229
255
|
expect(result.start.get('day')).toBe(10);
|
|
230
256
|
|
|
231
|
-
|
|
257
|
+
var resultDate = result.start.date();
|
|
258
|
+
var expectDate = new Date(2012, 8-1, 10, 12);
|
|
259
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime());
|
|
232
260
|
|
|
233
261
|
|
|
234
262
|
expect(result.end).not.toBeNull();
|
|
@@ -236,7 +264,9 @@ test("Test - Range expression", function() {
|
|
|
236
264
|
expect(result.end.get('month')).toBe(11);
|
|
237
265
|
expect(result.end.get('day')).toBe(12);
|
|
238
266
|
|
|
239
|
-
|
|
267
|
+
var resultDate = result.end.date();
|
|
268
|
+
var expectDate = new Date(2012, 11-1, 12, 12);
|
|
269
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
240
270
|
});
|
|
241
271
|
|
|
242
272
|
testSingleCase(chrono, 'Aug 10 to Nov 12', new Date(2012,7,10), (result) => {
|
|
@@ -249,7 +279,9 @@ test("Test - Range expression", function() {
|
|
|
249
279
|
expect(result.start.get('month')).toBe(8);
|
|
250
280
|
expect(result.start.get('day')).toBe(10);
|
|
251
281
|
|
|
252
|
-
|
|
282
|
+
var resultDate = result.start.date();
|
|
283
|
+
var expectDate = new Date(2012, 8-1, 10, 12);
|
|
284
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime());
|
|
253
285
|
|
|
254
286
|
|
|
255
287
|
expect(result.end).not.toBeNull();
|
|
@@ -257,7 +289,9 @@ test("Test - Range expression", function() {
|
|
|
257
289
|
expect(result.end.get('month')).toBe(11);
|
|
258
290
|
expect(result.end.get('day')).toBe(12);
|
|
259
291
|
|
|
260
|
-
|
|
292
|
+
var resultDate = result.end.date();
|
|
293
|
+
var expectDate = new Date(2012, 11-1, 12, 12);
|
|
294
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
261
295
|
});
|
|
262
296
|
|
|
263
297
|
|
|
@@ -271,7 +305,9 @@ test("Test - Range expression", function() {
|
|
|
271
305
|
expect(result.start.get('month')).toBe(8);
|
|
272
306
|
expect(result.start.get('day')).toBe(10);
|
|
273
307
|
|
|
274
|
-
|
|
308
|
+
var resultDate = result.start.date();
|
|
309
|
+
var expectDate = new Date(2013, 8-1, 10, 12);
|
|
310
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime());
|
|
275
311
|
|
|
276
312
|
|
|
277
313
|
expect(result.end).not.toBeNull();
|
|
@@ -279,7 +315,9 @@ test("Test - Range expression", function() {
|
|
|
279
315
|
expect(result.end.get('month')).toBe(11);
|
|
280
316
|
expect(result.end.get('day')).toBe(12);
|
|
281
317
|
|
|
282
|
-
|
|
318
|
+
var resultDate = result.end.date();
|
|
319
|
+
var expectDate = new Date(2013, 11-1, 12, 12);
|
|
320
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
283
321
|
});
|
|
284
322
|
|
|
285
323
|
|
|
@@ -293,7 +331,9 @@ test("Test - Range expression", function() {
|
|
|
293
331
|
expect(result.start.get('month')).toBe(8);
|
|
294
332
|
expect(result.start.get('day')).toBe(10);
|
|
295
333
|
|
|
296
|
-
|
|
334
|
+
var resultDate = result.start.date();
|
|
335
|
+
var expectDate = new Date(2011, 8-1, 10, 12);
|
|
336
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime());
|
|
297
337
|
|
|
298
338
|
|
|
299
339
|
expect(result.end).not.toBeNull();
|
|
@@ -301,7 +341,9 @@ test("Test - Range expression", function() {
|
|
|
301
341
|
expect(result.end.get('month')).toBe(11);
|
|
302
342
|
expect(result.end.get('day')).toBe(12);
|
|
303
343
|
|
|
304
|
-
|
|
344
|
+
var resultDate = result.end.date();
|
|
345
|
+
var expectDate = new Date(2011, 11-1, 12, 12);
|
|
346
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
305
347
|
});
|
|
306
348
|
});
|
|
307
349
|
|
package/test/en/en_month.test.js
CHANGED
|
@@ -106,7 +106,9 @@ test("Test - Month slash expression", function() {
|
|
|
106
106
|
expect(result.index).toBe(0);
|
|
107
107
|
expect(result.text).toBe('9/2012');
|
|
108
108
|
|
|
109
|
-
|
|
109
|
+
var resultDate = result.start.date();
|
|
110
|
+
var expectDate = new Date(2012, 9-1, 1, 12);
|
|
111
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
110
112
|
});
|
|
111
113
|
|
|
112
114
|
testSingleCase(chrono, '09/2012', new Date(2012,7,10), (result) => {
|
|
@@ -117,7 +119,9 @@ test("Test - Month slash expression", function() {
|
|
|
117
119
|
expect(result.index).toBe(0);
|
|
118
120
|
expect(result.text).toBe('09/2012');
|
|
119
121
|
|
|
120
|
-
|
|
122
|
+
var resultDate = result.start.date();
|
|
123
|
+
var expectDate = new Date(2012, 9-1, 1, 12);
|
|
124
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
121
125
|
});
|
|
122
126
|
|
|
123
127
|
});
|
|
@@ -1,146 +1,154 @@
|
|
|
1
|
-
|
|
2
|
-
import { testSingleCase } from '../test_util';
|
|
3
|
-
|
|
1
|
+
var chrono = require('../../src/chrono');
|
|
4
2
|
|
|
5
3
|
test("Test - Year Guessing", function() {
|
|
6
4
|
|
|
7
5
|
// Parsing "January" on February (2016-02-15)
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
6
|
+
var text = "January 1st";
|
|
7
|
+
|
|
8
|
+
var result = chrono.casual.parse(text, new Date(2016, 2-1, 15))[0];
|
|
9
|
+
|
|
10
|
+
if (result) {
|
|
11
|
+
expect(result.start.get('year')).toBe(2016);
|
|
12
|
+
expect(result.start.get('month')).toBe(1);
|
|
13
|
+
expect(result.start.get('day')).toBe(1);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
var result = chrono.casual.parse(text, new Date(2016, 2-1, 15), {forwardDate: true})[0];
|
|
17
|
+
|
|
18
|
+
if (result) {
|
|
19
|
+
expect(result.start.get('year')).toBe(2017);
|
|
20
|
+
expect(result.start.get('month')).toBe(1);
|
|
21
|
+
expect(result.start.get('day')).toBe(1);
|
|
22
|
+
}
|
|
23
23
|
});
|
|
24
24
|
|
|
25
25
|
test("Test - Year Guessing (Range)", function() {
|
|
26
26
|
|
|
27
27
|
// Parsing "February" on March (2016-02-15)
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
28
|
+
var text = "22-23 Feb at 7pm";
|
|
29
|
+
|
|
30
|
+
var result = chrono.casual.parse(text, new Date(2016, 3-1, 15))[0];
|
|
31
|
+
|
|
32
|
+
if (result) {
|
|
33
|
+
expect(result.start.get('year')).toBe(2016);
|
|
34
|
+
expect(result.start.get('month')).toBe(2);
|
|
35
|
+
expect(result.start.get('day')).toBe(22);
|
|
36
|
+
expect(result.start.get('hour')).toBe(19);
|
|
37
|
+
|
|
38
|
+
expect(result.end.get('year')).toBe(2016);
|
|
39
|
+
expect(result.end.get('month')).toBe(2);
|
|
40
|
+
expect(result.end.get('day')).toBe(23);
|
|
41
|
+
expect(result.end.get('hour')).toBe(19);
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
var result = chrono.casual.parse(text, new Date(2016, 3-1, 15), {forwardDate: true})[0];
|
|
45
|
+
|
|
46
|
+
if (result) {
|
|
47
|
+
expect(result.start.get('year')).toBe(2017);
|
|
48
|
+
expect(result.start.get('month')).toBe(2);
|
|
49
|
+
expect(result.start.get('day')).toBe(22);
|
|
50
|
+
expect(result.start.get('hour')).toBe(19);
|
|
51
|
+
|
|
52
|
+
expect(result.end.get('year')).toBe(2017);
|
|
53
|
+
expect(result.end.get('month')).toBe(2);
|
|
54
|
+
expect(result.end.get('day')).toBe(23);
|
|
55
|
+
expect(result.end.get('hour')).toBe(19);
|
|
56
|
+
}
|
|
57
57
|
});
|
|
58
58
|
|
|
59
59
|
test("Test - Year Guessing (Fixed)", function() {
|
|
60
60
|
|
|
61
61
|
// Parsing "February" on March (2016-02-15)
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
62
|
+
var text = "22-23 Feb 2016 at 7pm";
|
|
63
|
+
var result = chrono.casual.parse(text, new Date(2016, 3-1, 15), {forwardDate: true})[0];
|
|
64
|
+
|
|
65
|
+
if (result) {
|
|
66
|
+
expect(result.start.get('year')).toBe(2016);
|
|
67
|
+
expect(result.start.get('month')).toBe(2);
|
|
68
|
+
expect(result.start.get('day')).toBe(22);
|
|
69
|
+
expect(result.start.get('hour')).toBe(19);
|
|
70
|
+
|
|
71
|
+
expect(result.end.get('year')).toBe(2016);
|
|
72
|
+
expect(result.end.get('month')).toBe(2);
|
|
73
|
+
expect(result.end.get('day')).toBe(23);
|
|
74
|
+
expect(result.end.get('hour')).toBe(19);
|
|
75
|
+
}
|
|
75
76
|
});
|
|
76
77
|
|
|
77
78
|
test("Test - Weekday Guessing", function() {
|
|
78
79
|
|
|
79
80
|
// Parsing "Monday" on Thursday (2012-08-09)
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
81
|
+
var text = "Monday";
|
|
82
|
+
|
|
83
|
+
var result = chrono.casual.parse(text, new Date(2012, 8-1, 9))[0];
|
|
84
|
+
|
|
85
|
+
if (result) {
|
|
86
|
+
expect(result.start.get('year')).toBe(2012);
|
|
87
|
+
expect(result.start.get('month')).toBe(8);
|
|
88
|
+
expect(result.start.get('day')).toBe(6);
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
var result = chrono.casual.parse(text, new Date(2012, 8-1, 9), {forwardDate: true})[0];
|
|
92
|
+
|
|
93
|
+
if (result) {
|
|
94
|
+
expect(result.start.get('year')).toBe(2012);
|
|
95
|
+
expect(result.start.get('month')).toBe(8);
|
|
96
|
+
expect(result.start.get('day')).toBe(13);
|
|
97
|
+
}
|
|
94
98
|
});
|
|
95
99
|
|
|
96
100
|
|
|
97
101
|
test("Test - Weekday Guessing (Range)", function() {
|
|
98
102
|
|
|
99
103
|
// Parsing "Monday to Wednesday" on Thursday (2012-08-09)
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
104
|
+
var text = "Monday - Wednesday";
|
|
105
|
+
|
|
106
|
+
var result = chrono.casual.parse(text, new Date(2012, 8-1, 9))[0];
|
|
107
|
+
|
|
108
|
+
if (result) {
|
|
109
|
+
expect(result.start.get('year')).toBe(2012);
|
|
110
|
+
expect(result.start.get('month')).toBe(8);
|
|
111
|
+
expect(result.start.get('day')).toBe(6);
|
|
112
|
+
|
|
113
|
+
expect(result.end.get('year')).toBe(2012);
|
|
114
|
+
expect(result.end.get('month')).toBe(8);
|
|
115
|
+
expect(result.end.get('day')).toBe(8);
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
var result = chrono.casual.parse(text, new Date(2012, 8-1, 9), {forwardDate: true})[0];
|
|
119
|
+
|
|
120
|
+
if (result) {
|
|
121
|
+
expect(result.start.get('year')).toBe(2012);
|
|
122
|
+
expect(result.start.get('month')).toBe(8);
|
|
123
|
+
expect(result.start.get('day')).toBe(13);
|
|
124
|
+
|
|
125
|
+
expect(result.end.get('year')).toBe(2012);
|
|
126
|
+
expect(result.end.get('month')).toBe(8);
|
|
127
|
+
expect(result.end.get('day')).toBe(15);
|
|
128
|
+
}
|
|
123
129
|
});
|
|
124
130
|
|
|
125
131
|
|
|
126
132
|
test("Test - Weekday Guessing (Fixed)", function() {
|
|
127
133
|
|
|
128
134
|
// Parsing "Monday" on Thursday (2012-08-09)
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
135
|
+
var text = "Monday last week";
|
|
136
|
+
|
|
137
|
+
var result = chrono.casual.parse(text, new Date(2012, 8-1, 9))[0];
|
|
138
|
+
|
|
139
|
+
if (result) {
|
|
140
|
+
expect(result.start.get('year')).toBe(2012);
|
|
141
|
+
expect(result.start.get('month')).toBe(7);
|
|
142
|
+
expect(result.start.get('day')).toBe(30);
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
var result = chrono.casual.parse(text, new Date(2012, 8-1, 9), {forwardDate: true})[0];
|
|
146
|
+
|
|
147
|
+
if (result) {
|
|
148
|
+
expect(result.start.get('year')).toBe(2012);
|
|
149
|
+
expect(result.start.get('month')).toBe(7);
|
|
150
|
+
expect(result.start.get('day')).toBe(30);
|
|
151
|
+
}
|
|
144
152
|
});
|
|
145
153
|
|
|
146
154
|
|