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
|
@@ -1,224 +1,339 @@
|
|
|
1
|
-
|
|
2
|
-
import { testSingleCase } from '../test_util';
|
|
1
|
+
var chrono = require('../../src/chrono');
|
|
3
2
|
|
|
4
3
|
|
|
5
4
|
test("Test - Single Expression", function() {
|
|
6
5
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
expect(result.
|
|
14
|
-
expect(result.
|
|
15
|
-
|
|
16
|
-
expect(result.start).
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
expect(result.index).toBe(5)
|
|
34
|
-
expect(result.text).toBe('
|
|
35
|
-
|
|
36
|
-
expect(result.start).not.toBeNull()
|
|
37
|
-
expect(result.start.get('year')).toBe(
|
|
38
|
-
expect(result.start.get('month')).toBe(
|
|
39
|
-
expect(result.start.get('day')).toBe(
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
expect(result.
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
expect(result.
|
|
58
|
-
expect(result.
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
expect(
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
expect(result.
|
|
73
|
-
|
|
74
|
-
expect(result.start
|
|
75
|
-
expect(result.start.get('
|
|
76
|
-
|
|
77
|
-
expect(result.start).
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
expect(result.
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
expect(result.
|
|
95
|
-
expect(result.
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
expect(
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
expect(result.
|
|
110
|
-
expect(result.
|
|
111
|
-
|
|
112
|
-
expect(result.start
|
|
113
|
-
|
|
114
|
-
expect(result.start).
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
expect(
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
expect(result.
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
expect(result.start).
|
|
134
|
-
expect(result.start.get('
|
|
135
|
-
expect(result.start.get('
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
expect(result.
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
6
|
+
var text = "主な株主(2012年3月31日現在)";
|
|
7
|
+
var results = chrono.parse(text, new Date(2012,8-1,10));
|
|
8
|
+
expect(results.length).toBe(1)
|
|
9
|
+
|
|
10
|
+
var result = results[0];
|
|
11
|
+
if (result) {
|
|
12
|
+
expect(result.index).toBe(5)
|
|
13
|
+
expect(result.text).toBe('2012年3月31日')
|
|
14
|
+
|
|
15
|
+
expect(result.start).not.toBeNull()
|
|
16
|
+
expect(result.start.get('year')).toBe(2012)
|
|
17
|
+
expect(result.start.get('month')).toBe(3)
|
|
18
|
+
expect(result.start.get('day')).toBe(31)
|
|
19
|
+
|
|
20
|
+
var resultDate = result.start.date();
|
|
21
|
+
var expectDate = new Date(2012, 3-1, 31, 12);
|
|
22
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
var text = "主な株主(2012年9月3日現在)";
|
|
27
|
+
var results = chrono.parse(text, new Date(2012,8-1,10));
|
|
28
|
+
expect(results.length).toBe(1)
|
|
29
|
+
|
|
30
|
+
var result = results[0];
|
|
31
|
+
if (result) {
|
|
32
|
+
expect(result.index).toBe(5)
|
|
33
|
+
expect(result.text).toBe('2012年9月3日')
|
|
34
|
+
|
|
35
|
+
expect(result.start).not.toBeNull()
|
|
36
|
+
expect(result.start.get('year')).toBe(2012)
|
|
37
|
+
expect(result.start.get('month')).toBe(9)
|
|
38
|
+
expect(result.start.get('day')).toBe(3)
|
|
39
|
+
|
|
40
|
+
var resultDate = result.start.date();
|
|
41
|
+
var expectDate = new Date(2012, 9-1, 3, 12);
|
|
42
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
var text = "主な株主(2020年2月29日現在)";
|
|
46
|
+
var results = chrono.parse(text, new Date(2019,8-1,10));
|
|
47
|
+
expect(results.length).toBe(1)
|
|
48
|
+
|
|
49
|
+
var result = results[0];
|
|
50
|
+
if (result) {
|
|
51
|
+
expect(result.index).toBe(5)
|
|
52
|
+
expect(result.text).toBe('2020年2月29日')
|
|
53
|
+
|
|
54
|
+
expect(result.start).not.toBeNull()
|
|
55
|
+
expect(result.start.get('year')).toBe(2020)
|
|
56
|
+
expect(result.start.get('month')).toBe(2)
|
|
57
|
+
expect(result.start.get('day')).toBe(29)
|
|
58
|
+
|
|
59
|
+
var resultDate = result.start.date();
|
|
60
|
+
var expectDate = new Date(2020, 2-1, 29, 12);
|
|
61
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
var text = "主な株主(9月3日現在)";
|
|
65
|
+
var results = chrono.parse(text, new Date(2012,8-1,10));
|
|
66
|
+
expect(results.length).toBe(1)
|
|
67
|
+
|
|
68
|
+
var result = results[0];
|
|
69
|
+
if (result) {
|
|
70
|
+
expect(result.index).toBe(5)
|
|
71
|
+
expect(result.text).toBe('9月3日')
|
|
72
|
+
|
|
73
|
+
expect(result.start).not.toBeNull()
|
|
74
|
+
expect(result.start.get('year')).toBe(2012)
|
|
75
|
+
expect(result.start.get('month')).toBe(9)
|
|
76
|
+
expect(result.start.get('day')).toBe(3)
|
|
77
|
+
|
|
78
|
+
var resultDate = result.start.date();
|
|
79
|
+
var expectDate = new Date(2012, 9-1, 3, 12);
|
|
80
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
var text = "主な株主(平成26年12月29日)";
|
|
84
|
+
var results = chrono.parse(text, new Date(2012,8-1,10));
|
|
85
|
+
expect(results.length).toBe(1)
|
|
86
|
+
|
|
87
|
+
var result = results[0];
|
|
88
|
+
if (result) {
|
|
89
|
+
expect(result.index).toBe(5)
|
|
90
|
+
expect(result.text).toBe('平成26年12月29日')
|
|
91
|
+
|
|
92
|
+
expect(result.start).not.toBeNull()
|
|
93
|
+
expect(result.start.get('year')).toBe(2014)
|
|
94
|
+
expect(result.start.get('month')).toBe(12)
|
|
95
|
+
expect(result.start.get('day')).toBe(29)
|
|
96
|
+
|
|
97
|
+
var resultDate = result.start.date();
|
|
98
|
+
var expectDate = new Date(2014, 12-1, 29, 12);
|
|
99
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
var text = "主な株主(昭和64年1月7日)";
|
|
103
|
+
var results = chrono.parse(text, new Date(2012,8-1,10));
|
|
104
|
+
expect(results.length).toBe(1)
|
|
105
|
+
|
|
106
|
+
var result = results[0];
|
|
107
|
+
if (result) {
|
|
108
|
+
expect(result.index).toBe(5)
|
|
109
|
+
expect(result.text).toBe('昭和64年1月7日')
|
|
110
|
+
|
|
111
|
+
expect(result.start).not.toBeNull()
|
|
112
|
+
expect(result.start.get('year')).toBe(1989)
|
|
113
|
+
expect(result.start.get('month')).toBe(1)
|
|
114
|
+
expect(result.start.get('day')).toBe(7)
|
|
115
|
+
|
|
116
|
+
var resultDate = result.start.date();
|
|
117
|
+
var expectDate = new Date(1989, 1-1, 7, 12);
|
|
118
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
|
|
122
|
+
var text = "主な株主(令和元年5月1日)";
|
|
123
|
+
var results = chrono.parse(text, new Date(2012,8-1,10));
|
|
124
|
+
expect(results.length).toBe(1)
|
|
125
|
+
|
|
126
|
+
var result = results[0];
|
|
127
|
+
if (result) {
|
|
128
|
+
expect(result.index).toBe(5)
|
|
129
|
+
expect(result.text).toBe('令和元年5月1日')
|
|
130
|
+
|
|
131
|
+
expect(result.start).not.toBeNull()
|
|
132
|
+
expect(result.start.get('year')).toBe(2019)
|
|
133
|
+
expect(result.start.get('month')).toBe(5)
|
|
134
|
+
expect(result.start.get('day')).toBe(1)
|
|
135
|
+
|
|
136
|
+
var resultDate = result.start.date();
|
|
137
|
+
var expectDate = new Date(2019, 5-1, 1, 12);
|
|
138
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
var text = "主な株主(令和2年5月1日)";
|
|
142
|
+
var results = chrono.parse(text, new Date(2012,8-1,10));
|
|
143
|
+
expect(results.length).toBe(1)
|
|
144
|
+
|
|
145
|
+
var result = results[0];
|
|
146
|
+
if (result) {
|
|
147
|
+
expect(result.index).toBe(5)
|
|
148
|
+
expect(result.text).toBe('令和2年5月1日')
|
|
149
|
+
|
|
150
|
+
expect(result.start).not.toBeNull()
|
|
151
|
+
expect(result.start.knownValues.year).toBe(2020)
|
|
152
|
+
expect(result.start.get('month')).toBe(5)
|
|
153
|
+
expect(result.start.get('day')).toBe(1)
|
|
154
|
+
|
|
155
|
+
var resultDate = result.start.date();
|
|
156
|
+
var expectDate = new Date(2020, 5-1, 1, 12);
|
|
157
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
var text = "主な株主(同年7月27日)";
|
|
161
|
+
var results = chrono.parse(text, new Date(2012,8-1,10));
|
|
162
|
+
expect(results.length).toBe(1)
|
|
163
|
+
|
|
164
|
+
var result = results[0];
|
|
165
|
+
if (result) {
|
|
166
|
+
expect(result.index).toBe(5)
|
|
167
|
+
expect(result.text).toBe('同年7月27日')
|
|
168
|
+
|
|
169
|
+
expect(result.start).not.toBeNull()
|
|
170
|
+
expect(result.start.get('year')).toBe(2012)
|
|
171
|
+
expect(result.start.get('month')).toBe(7)
|
|
172
|
+
expect(result.start.get('day')).toBe(27)
|
|
173
|
+
|
|
174
|
+
var resultDate = result.start.date();
|
|
175
|
+
var expectDate = new Date(2012, 7-1, 27, 12);
|
|
176
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
var text = "主な株主(本年7月27日)";
|
|
180
|
+
var results = chrono.parse(text, new Date(2012,8-1,10));
|
|
181
|
+
expect(results.length).toBe(1)
|
|
182
|
+
|
|
183
|
+
var result = results[0];
|
|
184
|
+
if (result) {
|
|
185
|
+
expect(result.index).toBe(5)
|
|
186
|
+
expect(result.text).toBe('本年7月27日')
|
|
187
|
+
|
|
188
|
+
expect(result.start).not.toBeNull()
|
|
189
|
+
expect(result.start.get('year')).toBe(2012)
|
|
190
|
+
expect(result.start.get('month')).toBe(7)
|
|
191
|
+
expect(result.start.get('day')).toBe(27)
|
|
192
|
+
|
|
193
|
+
var resultDate = result.start.date();
|
|
194
|
+
var expectDate = new Date(2012, 7-1, 27, 12);
|
|
195
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
var text = "主な株主(今年7月27日)";
|
|
199
|
+
var results = chrono.parse(text, new Date(2012,8-1,10));
|
|
200
|
+
expect(results.length).toBe(1)
|
|
201
|
+
|
|
202
|
+
var result = results[0];
|
|
203
|
+
if (result) {
|
|
204
|
+
expect(result.index).toBe(5)
|
|
205
|
+
expect(result.text).toBe('今年7月27日')
|
|
206
|
+
|
|
207
|
+
expect(result.start).not.toBeNull()
|
|
208
|
+
expect(result.start.get('year')).toBe(2012)
|
|
209
|
+
expect(result.start.get('month')).toBe(7)
|
|
210
|
+
expect(result.start.get('day')).toBe(27)
|
|
211
|
+
|
|
212
|
+
var resultDate = result.start.date();
|
|
213
|
+
var expectDate = new Date(2012, 7-1, 27, 12);
|
|
214
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
var text = "主な株主(今年11月27日)";
|
|
218
|
+
var results = chrono.parse(text, new Date(2012,1-1,10));
|
|
219
|
+
expect(results.length).toBe(1)
|
|
220
|
+
|
|
221
|
+
var result = results[0];
|
|
222
|
+
if (result) {
|
|
223
|
+
expect(result.index).toBe(5)
|
|
224
|
+
expect(result.text).toBe('今年11月27日')
|
|
225
|
+
|
|
226
|
+
expect(result.start).not.toBeNull()
|
|
227
|
+
expect(result.start.get('year')).toBe(2012)
|
|
228
|
+
expect(result.start.get('month')).toBe(11)
|
|
229
|
+
expect(result.start.get('day')).toBe(27)
|
|
230
|
+
|
|
231
|
+
var resultDate = result.start.date();
|
|
232
|
+
var expectDate = new Date(2012, 11-1, 27, 12);
|
|
233
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
234
|
+
}
|
|
152
235
|
});
|
|
153
236
|
|
|
154
237
|
|
|
155
238
|
test("Test - Single Expression without year", function() {
|
|
156
239
|
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
expect(result.
|
|
164
|
-
expect(result.
|
|
165
|
-
|
|
166
|
-
expect(result.start).
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
expect(
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
240
|
+
var text = "7月27日";
|
|
241
|
+
var results = chrono.parse(text, new Date(2012,8-1,10));
|
|
242
|
+
expect(results.length).toBe(1)
|
|
243
|
+
|
|
244
|
+
var result = results[0];
|
|
245
|
+
if (result) {
|
|
246
|
+
expect(result.index).toBe(0)
|
|
247
|
+
expect(result.text).toBe('7月27日')
|
|
248
|
+
|
|
249
|
+
expect(result.start).not.toBeNull()
|
|
250
|
+
expect(result.start.get('year')).toBe(2012)
|
|
251
|
+
expect(result.start.get('month')).toBe(7)
|
|
252
|
+
expect(result.start.get('day')).toBe(27)
|
|
253
|
+
|
|
254
|
+
var resultDate = result.start.date();
|
|
255
|
+
var expectDate = new Date(2012, 7-1, 27, 12);
|
|
256
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
var text = "11月27日";
|
|
260
|
+
var results = chrono.parse(text, new Date(2012,1-1,10));
|
|
261
|
+
expect(results.length).toBe(1)
|
|
262
|
+
|
|
263
|
+
var result = results[0];
|
|
264
|
+
if (result) {
|
|
265
|
+
expect(result.index).toBe(0)
|
|
266
|
+
expect(result.text).toBe('11月27日')
|
|
267
|
+
|
|
268
|
+
expect(result.start).not.toBeNull()
|
|
269
|
+
expect(result.start.get('year')).toBe(2011)
|
|
270
|
+
expect(result.start.get('month')).toBe(11)
|
|
271
|
+
expect(result.start.get('day')).toBe(27)
|
|
272
|
+
|
|
273
|
+
var resultDate = result.start.date();
|
|
274
|
+
var expectDate = new Date(2011, 11-1, 27, 12);
|
|
275
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
276
|
+
}
|
|
180
277
|
});
|
|
181
278
|
|
|
182
279
|
|
|
183
280
|
test("Test - Range Expression", function() {
|
|
184
281
|
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
expect(result.
|
|
192
|
-
expect(result.
|
|
193
|
-
|
|
194
|
-
expect(result.start).
|
|
195
|
-
|
|
196
|
-
expect(result.
|
|
197
|
-
expect(result.
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
expect(
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
expect(result.
|
|
206
|
-
expect(result.
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
expect(
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
expect(result.
|
|
221
|
-
|
|
282
|
+
var text = "2013年12月26日-2014年1月7日";
|
|
283
|
+
var results = chrono.parse(text, new Date(2012,8-1,10));
|
|
284
|
+
expect(results.length).toBe(1)
|
|
285
|
+
|
|
286
|
+
var result = results[0];
|
|
287
|
+
if (result) {
|
|
288
|
+
expect(result.index).toBe(0)
|
|
289
|
+
expect(result.text).toBe('2013年12月26日-2014年1月7日')
|
|
290
|
+
|
|
291
|
+
expect(result.start).not.toBeNull()
|
|
292
|
+
expect(result.start.get('year')).toBe(2013)
|
|
293
|
+
expect(result.start.get('month')).toBe(12)
|
|
294
|
+
expect(result.start.get('day')).toBe(26)
|
|
295
|
+
|
|
296
|
+
var resultDate = result.start.date();
|
|
297
|
+
var expectDate = new Date(2013, 12-1, 26, 12);
|
|
298
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
299
|
+
|
|
300
|
+
expect(result.end).not.toBeNull()
|
|
301
|
+
expect(result.end.get('year')).toBe(2014)
|
|
302
|
+
expect(result.end.get('month')).toBe(1)
|
|
303
|
+
expect(result.end.get('day')).toBe(7)
|
|
304
|
+
|
|
305
|
+
var resultDate = result.end.date();
|
|
306
|
+
var expectDate = new Date(2014, 1-1, 7, 12);
|
|
307
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
308
|
+
}
|
|
309
|
+
|
|
310
|
+
var text = "2013年12月26日ー2014年1月7日";
|
|
311
|
+
var results = chrono.parse(text, new Date(2012,8-1,10));
|
|
312
|
+
expect(results.length).toBe(1)
|
|
313
|
+
|
|
314
|
+
var result = results[0];
|
|
315
|
+
if (result) {
|
|
316
|
+
expect(result.index).toBe(0)
|
|
317
|
+
expect(result.text).toBe('2013年12月26日ー2014年1月7日')
|
|
318
|
+
|
|
319
|
+
expect(result.start).not.toBeNull()
|
|
320
|
+
expect(result.start.get('year')).toBe(2013)
|
|
321
|
+
expect(result.start.get('month')).toBe(12)
|
|
322
|
+
expect(result.start.get('day')).toBe(26)
|
|
323
|
+
|
|
324
|
+
var resultDate = result.start.date();
|
|
325
|
+
var expectDate = new Date(2013, 12-1, 26, 12);
|
|
326
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
327
|
+
|
|
328
|
+
expect(result.end).not.toBeNull()
|
|
329
|
+
expect(result.end.get('year')).toBe(2014)
|
|
330
|
+
expect(result.end.get('month')).toBe(1)
|
|
331
|
+
expect(result.end.get('day')).toBe(7)
|
|
332
|
+
|
|
333
|
+
var resultDate = result.end.date();
|
|
334
|
+
var expectDate = new Date(2014, 1-1, 7, 12);
|
|
335
|
+
expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
|
|
336
|
+
}
|
|
222
337
|
|
|
223
338
|
|
|
224
339
|
});
|
package/test/nl/nl.test.js
CHANGED
|
@@ -1,25 +1,23 @@
|
|
|
1
|
-
|
|
2
|
-
import { testSingleCase } from '../test_util';
|
|
3
|
-
|
|
1
|
+
const chrono = require('../../src/chrono');
|
|
4
2
|
test('Test - Random text', function() {
|
|
5
3
|
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
4
|
+
let text = "Datum: 15-mrt-20";
|
|
5
|
+
let results = chrono.nl.parse(text);
|
|
6
|
+
expect(results.length).toBe(1);
|
|
7
|
+
expect(results[0].index).toBe(7);
|
|
8
|
+
// expect(results[0].text).toBe('15-mrt-2020');
|
|
9
|
+
expect(results[0].start.get('day')).toBe(15);
|
|
10
|
+
expect(results[0].start.get('month')).toBe(3);
|
|
11
|
+
expect(results[0].start.get('year')).toBe(2020);
|
|
15
12
|
|
|
16
|
-
testSingleCase(chrono.nl, '9:00 tot 17:00, dinsdag 20 mei 2013', (result) => {
|
|
17
13
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
14
|
+
text = "9:00 tot 17:00, dinsdag 20 mei 2013";
|
|
15
|
+
results = chrono.nl.parse(text);
|
|
16
|
+
expect(results.length).toBe(1);
|
|
17
|
+
expect(results[0].start.get('hour')).toBe(9);
|
|
18
|
+
expect(results[0].end.get('hour')).toBe(17);
|
|
19
|
+
expect(results[0].end.get('meridiem')).toBe(1);
|
|
20
|
+
expect(results[0].end.get('day')).toBe(20);
|
|
21
|
+
expect(results[0].end.get('month')).toBe(5);
|
|
22
|
+
expect(results[0].end.get('year')).toBe(2013);
|
|
25
23
|
});
|