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.
Files changed (69) hide show
  1. package/dist/chrono.js +711 -809
  2. package/dist/chrono.js.map +1 -1
  3. package/dist/chrono.min.js +1 -1
  4. package/dist/chrono.min.js.map +1 -1
  5. package/package.json +1 -1
  6. package/src/chrono.js +57 -59
  7. package/src/options.js +30 -29
  8. package/src/parsers/en/ENDeadlineFormatParser.js +9 -9
  9. package/src/result.js +119 -119
  10. package/test/de/de.test.js +36 -51
  11. package/test/de/de_casual.test.js +242 -141
  12. package/test/de/de_dash.test.js +5 -8
  13. package/test/de/de_deadline.test.js +151 -47
  14. package/test/de/de_little_endian.test.js +207 -58
  15. package/test/de/de_time_ago.test.js +167 -52
  16. package/test/de/de_time_exp.test.js +135 -121
  17. package/test/de/de_weekday.test.js +94 -31
  18. package/test/en/en.test.js +118 -89
  19. package/test/en/en_casual.test.js +149 -134
  20. package/test/en/en_dash.test.js +17 -11
  21. package/test/en/en_deadline.test.js +93 -69
  22. package/test/en/en_inter_std.test.js +28 -7
  23. package/test/en/en_little_endian.test.js +76 -26
  24. package/test/en/en_middle_endian.test.js +63 -21
  25. package/test/en/en_month.test.js +6 -2
  26. package/test/en/en_option_forward.test.js +120 -112
  27. package/test/en/en_relative.test.js +155 -172
  28. package/test/en/en_slash.test.js +156 -115
  29. package/test/en/en_time_ago.test.js +61 -21
  30. package/test/en/en_time_exp.test.js +228 -209
  31. package/test/en/en_time_from_now.test.js +70 -24
  32. package/test/en/en_time_later.test.js +16 -6
  33. package/test/en/en_weekday.test.js +39 -13
  34. package/test/es/es_casual.test.js +143 -120
  35. package/test/es/es_dash.test.js +7 -8
  36. package/test/es/es_deadline.test.js +69 -35
  37. package/test/es/es_little_endian.test.js +250 -145
  38. package/test/es/es_slash.test.js +17 -12
  39. package/test/es/es_time_ago.test.js +21 -7
  40. package/test/es/es_time_exp.test.js +154 -160
  41. package/test/fr/fr_casual.test.js +153 -124
  42. package/test/fr/fr_dash.test.js +13 -6
  43. package/test/fr/fr_deadline.test.js +163 -44
  44. package/test/fr/fr_little_endian.test.js +262 -81
  45. package/test/fr/fr_relative.test.js +188 -196
  46. package/test/fr/fr_slash.test.js +41 -14
  47. package/test/fr/fr_time_ago.test.js +30 -10
  48. package/test/fr/fr_time_exp.test.js +619 -567
  49. package/test/fr/fr_weekday.test.js +24 -8
  50. package/test/ja/ja_casual.test.js +41 -26
  51. package/test/ja/ja_standard.test.js +322 -207
  52. package/test/nl/nl.test.js +18 -20
  53. package/test/nl/nl_dash.test.js +26 -26
  54. package/test/nl/nl_little_endian.test.js +100 -51
  55. package/test/nl/nl_time_exp.test.js +37 -13
  56. package/test/nl/nl_weekday.test.js +39 -13
  57. package/test/pt/pt_casual.test.js +222 -156
  58. package/test/pt/pt_dash.test.js +7 -6
  59. package/test/pt/pt_deadline.test.js +51 -17
  60. package/test/pt/pt_little_endian.test.js +251 -144
  61. package/test/pt/pt_slash.test.js +38 -25
  62. package/test/pt/pt_time_ago.test.js +128 -80
  63. package/test/pt/pt_time_exp.test.js +191 -173
  64. package/test/test_util.js +1 -5
  65. package/test/zh/zh_hant_casual.test.js +184 -87
  66. package/test/zh/zh_hant_date.test.js +109 -75
  67. package/test/zh/zh_hant_deadline.test.js +131 -41
  68. package/test/zh/zh_hant_time_exp.test.js +184 -141
  69. package/test/zh/zh_hant_weekday.test.js +64 -22
@@ -1,89 +1,137 @@
1
- import * as chrono from '../../src/chrono';
2
- import { testSingleCase } from '../test_util';
1
+ var chrono = require('../../src/chrono');
3
2
 
4
3
  test("Test - Single Expression", function() {
5
4
 
6
- testSingleCase(chrono, 'há 5 dias, fizemos algo', new Date(2012,7,10), (result) => {
7
- expect(result.start).not.toBeNull();
8
- expect(result.start.get('year')).toBe(2012);
9
- expect(result.start.get('month')).toBe(8);
10
- expect(result.start.get('day')).toBe(5);
11
-
12
- expect(result.index).toBe(0);
13
- expect(result.text).toBe('há 5 dias');
14
-
15
- expect(result.start).toBeDate(new Date(2012, 8-1, 5, 12));
16
- });
17
-
18
- testSingleCase(chrono, 'há 10 dias, fizemos algo', new Date(2012,7,10), (result) => {
19
- expect(result.start).not.toBeNull();
20
- expect(result.start.get('year')).toBe(2012);
21
- expect(result.start.get('month')).toBe(7);
22
- expect(result.start.get('day')).toBe(31);
23
-
24
- expect(result.index).toBe(0);
25
- expect(result.text).toBe('há 10 dias');
26
-
27
- expect(result.start).toBeDate(new Date(2012, 7-1, 31, 12));
28
- });
29
-
30
-
31
- testSingleCase(chrono, 'há 15 minutos', new Date(2012,7,10,12,14), (result) => {
32
- expect(result.index).toBe(0);
33
- expect(result.text).toBe('há 15 minutos');
34
- expect(result.start.get('hour')).toBe(11);
35
- expect(result.start.get('minute')).toBe(59);
36
-
37
- expect(result.start).toBeDate(new Date(2012,7,10,11,59));
38
- });
39
-
40
- testSingleCase(chrono, ' há 12 horas', new Date(2012,7,10,12,14), (result) => {
41
- expect(result.index).toBe(3);
42
- expect(result.text).toBe('há 12 horas');
43
- expect(result.start.get('hour')).toBe(0);
44
- expect(result.start.get('minute')).toBe(14);
45
-
46
- expect(result.start).toBeDate(new Date(2012,7,10,0,14));
47
- });
5
+ var text = "há 5 dias, fizemos algo";
6
+ var results = chrono.parse(text, new Date(2012,7,10));
7
+ expect(results.length).toBe(1)
8
+
9
+ var result = results[0];
10
+ if(result){
11
+ expect(result.start).not.toBeNull()
12
+ expect(result.start.get('year')).toBe(2012)
13
+ expect(result.start.get('month')).toBe(8)
14
+ expect(result.start.get('day')).toBe(5)
15
+
16
+ expect(result.index).toBe(0)
17
+ expect(result.text).toBe('há 5 dias')
18
+
19
+ var resultDate = result.start.date();
20
+ var expectDate = new Date(2012, 8-1, 5, 12);
21
+ expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
22
+ }
23
+
24
+ var text = "há 10 dias, fizemos algo";
25
+ var results = chrono.parse(text, new Date(2012,7,10));
26
+ expect(results.length).toBe(1)
27
+
28
+ var result = results[0];
29
+ if(result){
30
+ expect(result.start).not.toBeNull()
31
+ expect(result.start.get('year')).toBe(2012)
32
+ expect(result.start.get('month')).toBe(7)
33
+ expect(result.start.get('day')).toBe(31)
34
+
35
+ expect(result.index).toBe(0)
36
+ expect(result.text).toBe('há 10 dias')
37
+
38
+ var resultDate = result.start.date();
39
+ var expectDate = new Date(2012, 7-1, 31, 12);
40
+ expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
41
+ }
42
+
43
+
44
+ var text = "há 15 minutos";
45
+ var results = chrono.parse(text, new Date(2012,7,10,12,14));
46
+ expect(results.length).toBe(1)
47
+
48
+ var result = results[0];
49
+ if(result){
50
+ expect(result.index).toBe(0)
51
+ expect(result.text).toBe('há 15 minutos')
52
+ expect(result.start.get('hour')).toBe(11)
53
+ expect(result.start.get('minute')).toBe(59)
54
+
55
+ var resultDate = result.start.date();
56
+ var expectDate = new Date(2012,7,10,11,59);
57
+ expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
58
+ }
59
+
60
+ var text = " há 12 horas";
61
+ var results = chrono.parse(text, new Date(2012,7,10,12,14));
62
+ expect(results.length).toBe(1)
63
+
64
+ var result = results[0];
65
+ if(result){
66
+ expect(result.index).toBe(3)
67
+ expect(result.text).toBe('há 12 horas')
68
+ expect(result.start.get('hour')).toBe(0)
69
+ expect(result.start.get('minute')).toBe(14)
70
+
71
+ var resultDate = result.start.date();
72
+ var expectDate = new Date(2012,7,10,0,14);
73
+ expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
74
+ }
48
75
  });
49
76
 
50
77
 
51
78
  test("Test - Single Expression (Casual)", function() {
52
79
 
53
- testSingleCase(chrono, 'há 5 meses, fizemos algo', new Date(2012, 8-1,10), (result) => {
54
- expect(result.start).not.toBeNull();
55
- expect(result.start.get('year')).toBe(2012);
56
- expect(result.start.get('month')).toBe(3);
57
- expect(result.start.get('day')).toBe(10);
58
-
59
- expect(result.index).toBe(0);
60
- expect(result.text).toBe('há 5 meses');
61
-
62
- expect(result.start).toBeDate(new Date(2012, 3-1, 10, 12));
63
- });
64
-
65
- testSingleCase(chrono, 'há 5 anos, fizemos algo', new Date(2012, 8-1,10), (result) => {
66
- expect(result.start).not.toBeNull();
67
- expect(result.start.get('year')).toBe(2007);
68
- expect(result.start.get('month')).toBe(8);
69
- expect(result.start.get('day')).toBe(10);
70
-
71
- expect(result.index).toBe(0);
72
- expect(result.text).toBe('há 5 anos');
73
-
74
- expect(result.start).toBeDate(new Date(2007, 8-1, 10, 12));
75
- });
76
-
77
-
78
- testSingleCase(chrono, 'há uma semana, fizemos algo', new Date(2012, 8-1, 3), (result) => {
79
- expect(result.start).not.toBeNull();
80
- expect(result.start.get('year')).toBe(2012);
81
- expect(result.start.get('month')).toBe(7);
82
- expect(result.start.get('day')).toBe(27);
83
-
84
- expect(result.index).toBe(0);
85
- expect(result.text).toBe('há uma semana');
86
-
87
- expect(result.start).toBeDate(new Date(2012, 7-1, 27, 12));
88
- });
80
+ var text = "há 5 meses, fizemos algo";
81
+ var results = chrono.parse(text, new Date(2012, 8-1,10));
82
+ expect(results.length).toBe(1)
83
+
84
+ var result = results[0];
85
+ if(result){
86
+ expect(result.start).not.toBeNull()
87
+ expect(result.start.get('year')).toBe(2012)
88
+ expect(result.start.get('month')).toBe(3)
89
+ expect(result.start.get('day')).toBe(10)
90
+
91
+ expect(result.index).toBe(0)
92
+ expect(result.text).toBe('há 5 meses')
93
+
94
+ var resultDate = result.start.date();
95
+ var expectDate = new Date(2012, 3-1, 10, 12);
96
+ expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
97
+ }
98
+
99
+ var text = "há 5 anos, fizemos algo";
100
+ var results = chrono.parse(text, new Date(2012, 8-1,10));
101
+ expect(results.length).toBe(1)
102
+
103
+ var result = results[0];
104
+ if(result){
105
+ expect(result.start).not.toBeNull()
106
+ expect(result.start.get('year')).toBe(2007)
107
+ expect(result.start.get('month')).toBe(8)
108
+ expect(result.start.get('day')).toBe(10)
109
+
110
+ expect(result.index).toBe(0)
111
+ expect(result.text).toBe('há 5 anos')
112
+
113
+ var resultDate = result.start.date();
114
+ var expectDate = new Date(2007, 8-1, 10, 12);
115
+ expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
116
+ }
117
+
118
+
119
+ var text = "há uma semana, fizemos algo";
120
+ var results = chrono.parse(text, new Date(2012, 8-1, 3));
121
+ expect(results.length).toBe(1)
122
+
123
+ var result = results[0];
124
+ if(result){
125
+ expect(result.start).not.toBeNull()
126
+ expect(result.start.get('year')).toBe(2012)
127
+ expect(result.start.get('month')).toBe(7)
128
+ expect(result.start.get('day')).toBe(27)
129
+
130
+ expect(result.index).toBe(0)
131
+ expect(result.text).toBe('há uma semana')
132
+
133
+ var resultDate = result.start.date();
134
+ var expectDate = new Date(2012, 7-1, 27, 12);
135
+ expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
136
+ }
89
137
  });
@@ -1,19 +1,25 @@
1
- import * as chrono from '../../src/chrono';
2
- import { testSingleCase } from '../test_util';
1
+ var chrono = require('../../src/chrono');
3
2
 
4
3
  test("Test - Single Expression", function() {
5
4
 
6
5
 
7
- testSingleCase(chrono.pt, 'Ficaremos às 6.13 AM', new Date(2012,7,10), (result) => {
8
- expect(result.index).toBe(10);
9
- expect(result.text).toBe('às 6.13 AM');
6
+ var text = "Ficaremos às 6.13 AM";
7
+ var results = chrono.pt.parse(text, new Date(2012,7,10));
8
+ expect(results.length).toBe(1)
10
9
 
11
- expect(result.start).not.toBeNull();
12
- expect(result.start.get('hour')).toBe(6);
13
- expect(result.start.get('minute')).toBe(13);
10
+ var result = results[0];
11
+ if(result){
12
+ expect(result.index).toBe(10)
13
+ expect(result.text).toBe('às 6.13 AM')
14
14
 
15
- expect(result.start).toBeDate(new Date(2012, 7, 10, 6, 13));
16
- });
15
+ expect(result.start).not.toBeNull()
16
+ expect(result.start.get('hour')).toBe(6)
17
+ expect(result.start.get('minute')).toBe(13)
18
+
19
+ var resultDate = result.start.date();
20
+ var expectDate = new Date(2012, 7, 10, 6, 13);
21
+ expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
22
+ }
17
23
 
18
24
 
19
25
 
@@ -21,202 +27,214 @@ test("Test - Single Expression", function() {
21
27
 
22
28
  test("Test - Range Expression", function() {
23
29
 
24
- testSingleCase(chrono.pt, '8:10 - 12.32', new Date(2012,7,10), (result) => {
25
- expect(result.index).toBe(0);
26
- expect(result.text).toBe('8:10 - 12.32');
27
-
28
- expect(result.start).not.toBeNull();
29
- expect(result.start.get('hour')).toBe(8);
30
- expect(result.start.get('minute')).toBe(10);
31
-
32
- expect(result.start.isCertain('day')).toBe(false);
33
- expect(result.start.isCertain('month')).toBe(false);
34
- expect(result.start.isCertain('year')).toBe(false);
35
- expect(result.start.isCertain('hour')).toBe(true);
36
- expect(result.start.isCertain('minute')).toBe(true);
37
- expect(result.start.isCertain('second')).toBe(false);
38
- expect(result.start.isCertain('millisecond')).toBe(false);
39
-
40
- expect(result.start).toBeDate(new Date(2012, 7, 10, 8, 10));
41
-
42
- expect(result.end).not.toBeNull();
43
- expect(result.end.get('hour')).toBe(12);
44
- expect(result.end.get('minute')).toBe(32);
45
-
46
- expect(result.end.isCertain('day')).toBe(false);
47
- expect(result.end.isCertain('month')).toBe(false);
48
- expect(result.end.isCertain('year')).toBe(false);
49
- expect(result.end.isCertain('hour')).toBe(true);
50
- expect(result.end.isCertain('minute')).toBe(true);
51
- expect(result.end.isCertain('second')).toBe(false);
52
- expect(result.end.isCertain('millisecond')).toBe(false);
53
-
54
- expect(result.end).toBeDate(new Date(2012, 7, 10, 12, 32));
55
- });
56
-
57
- testSingleCase(chrono.pt, ' de 6:30pm a 11:00pm ', new Date(2012,7,10), (result) => {
58
- expect(result.index).toBe(1);
59
- expect(result.text).toBe('de 6:30pm a 11:00pm');
60
-
61
- expect(result.start).not.toBeNull();
62
- expect(result.start.get('hour')).toBe(18);
63
- expect(result.start.get('minute')).toBe(30);
64
- expect(result.start.get('meridiem')).toBe(1);
65
-
66
- expect(result.start).toBeDate(new Date(2012, 7, 10, 18, 30));
67
-
68
- expect(result.end).not.toBeNull();
69
- expect(result.end.get('hour')).toBe(23);
70
- expect(result.end.get('minute')).toBe(0);
71
- expect(result.end.get('meridiem')).toBe(1);
72
-
73
- expect(result.end).toBeDate(new Date(2012, 7, 10, 23, 0));
74
- });
30
+ var text = "8:10 - 12.32";
31
+ var results = chrono.pt.parse(text, new Date(2012,7,10));
32
+ expect(results.length).toBe(1)
33
+
34
+ var result = results[0];
35
+ if(result){
36
+ expect(result.index).toBe(0)
37
+ expect(result.text).toBe('8:10 - 12.32')
38
+
39
+ expect(result.start).not.toBeNull()
40
+ expect(result.start.get('hour')).toBe(8)
41
+ expect(result.start.get('minute')).toBe(10)
42
+
43
+ expect(result.start.isCertain('day')).toBe(false)
44
+ expect(result.start.isCertain('month')).toBe(false)
45
+ expect(result.start.isCertain('year')).toBe(false)
46
+ expect(result.start.isCertain('hour')).toBe(true)
47
+ expect(result.start.isCertain('minute')).toBe(true)
48
+ expect(result.start.isCertain('second')).toBe(false)
49
+ expect(result.start.isCertain('millisecond')).toBe(false)
50
+
51
+ var resultDate = result.start.date();
52
+ var expectDate = new Date(2012, 7, 10, 8, 10);
53
+ expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
54
+
55
+ expect(result.end).not.toBeNull()
56
+ expect(result.end.get('hour')).toBe(12)
57
+ expect(result.end.get('minute')).toBe(32)
58
+
59
+ expect(result.end.isCertain('day')).toBe(false)
60
+ expect(result.end.isCertain('month')).toBe(false)
61
+ expect(result.end.isCertain('year')).toBe(false)
62
+ expect(result.end.isCertain('hour')).toBe(true)
63
+ expect(result.end.isCertain('minute')).toBe(true)
64
+ expect(result.end.isCertain('second')).toBe(false)
65
+ expect(result.end.isCertain('millisecond')).toBe(false)
66
+
67
+ var resultDate = result.end.date();
68
+ var expectDate = new Date(2012, 7, 10, 12, 32);
69
+ expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
70
+ }
71
+
72
+ var text = " de 6:30pm a 11:00pm ";
73
+ var results = chrono.pt.parse(text, new Date(2012,7,10));
74
+ expect(results.length).toBe(1)
75
+
76
+ var result = results[0];
77
+ if(result){
78
+ expect(result.index).toBe(1)
79
+ expect(result.text).toBe('de 6:30pm a 11:00pm')
80
+
81
+ expect(result.start).not.toBeNull()
82
+ expect(result.start.get('hour')).toBe(18)
83
+ expect(result.start.get('minute')).toBe(30)
84
+ expect(result.start.get('meridiem')).toBe(1)
85
+
86
+ var resultDate = result.start.date();
87
+ var expectDate = new Date(2012, 7, 10, 18, 30);
88
+ expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
89
+
90
+ expect(result.end).not.toBeNull()
91
+ expect(result.end.get('hour')).toBe(23)
92
+ expect(result.end.get('minute')).toBe(0)
93
+ expect(result.end.get('meridiem')).toBe(1)
94
+
95
+ var resultDate = result.end.date();
96
+ var expectDate = new Date(2012, 7, 10, 23, 0);
97
+ expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
98
+ }
75
99
 
76
100
  });
77
101
 
78
102
  test("Test - Date + Time Expression", function() {
79
103
 
80
- testSingleCase(chrono.pt, 'Algo passou em 10 de Agosto de 2012 10:12:59 pm', new Date(2012,7,10), (result) => {
81
- expect(result.index).toBe(15);
82
- expect(result.text).toBe('10 de Agosto de 2012 10:12:59 pm');
104
+ var text = "Algo passou em 10 de Agosto de 2012 10:12:59 pm";
105
+ var results = chrono.pt.parse(text, new Date(2012,7,10));
106
+ expect(results.length).toBe(1)
83
107
 
84
- expect(result.start.get('year')).toBe(2012);
85
- expect(result.start.get('month')).toBe(8);
86
- expect(result.start.get('day')).toBe(10);
87
- expect(result.start.get('hour')).toBe(22);
88
- expect(result.start.get('minute')).toBe(12);
89
- expect(result.start.get('second')).toBe(59);
90
- expect(result.start.get('millisecond')).toBe(0);
91
- expect(result.start.isCertain('millisecond')).toBe(false);
108
+ var result = results[0];
109
+ if(result){
110
+ expect(result.index).toBe(15)
111
+ expect(result.text).toBe('10 de Agosto de 2012 10:12:59 pm')
92
112
 
93
- expect(result.start).toBeDate(new Date(2012, 8-1, 10, 22, 12, 59));
94
- });
113
+ expect(result.start.get('year')).toBe(2012)
114
+ expect(result.start.get('month')).toBe(8)
115
+ expect(result.start.get('day')).toBe(10)
116
+ expect(result.start.get('hour')).toBe(22)
117
+ expect(result.start.get('minute')).toBe(12)
118
+ expect(result.start.get('second')).toBe(59)
119
+ expect(result.start.get('millisecond')).toBe(0)
120
+ expect(result.start.isCertain('millisecond')).toBe(false)
95
121
 
96
- });
122
+ var resultDate = result.start.date();
123
+ var expectDate = new Date(2012, 8-1, 10, 22, 12, 59);
124
+ expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
125
+ }
126
+
127
+ })
97
128
 
98
129
 
99
130
  test("Test - Time Expression's Meridiem imply", function() {
100
131
 
101
- testSingleCase(chrono.pt, 'hoje de 1pm a 3', new Date(2012,7,10), (result) => {
102
- expect(result.index).toBe(0);
103
- expect(result.text).toBe('hoje de 1pm a 3');
104
-
105
- expect(result.start.get('year')).toBe(2012);
106
- expect(result.start.get('month')).toBe(8);
107
- expect(result.start.get('day')).toBe(10);
108
- expect(result.start.get('hour')).toBe(13);
109
- expect(result.start.get('minute')).toBe(0);
110
- expect(result.start.get('second')).toBe(0);
111
- expect(result.start.get('millisecond')).toBe(0);
112
- expect(result.start.get('meridiem')).toBe(1);
113
- expect(result.start.isCertain('meridiem')).toBe(true);
114
-
115
- expect(result.end.get('year')).toBe(2012);
116
- expect(result.end.get('month')).toBe(8);
117
- expect(result.end.get('day')).toBe(11);
118
- expect(result.end.get('hour')).toBe(3);
119
- expect(result.end.get('minute')).toBe(0);
120
- expect(result.end.get('second')).toBe(0);
121
- expect(result.end.get('millisecond')).toBe(0);
132
+ var text = "hoje de 1pm a 3";
133
+ var results = chrono.pt.parse(text, new Date(2012,7,10));
134
+ expect(results.length).toBe(1)
135
+
136
+ var result = results[0];
137
+ if (result) {
138
+ expect(result.index).toBe(0)
139
+ expect(result.text).toBe('hoje de 1pm a 3')
140
+
141
+ expect(result.start.get('year')).toBe(2012)
142
+ expect(result.start.get('month')).toBe(8)
143
+ expect(result.start.get('day')).toBe(10)
144
+ expect(result.start.get('hour')).toBe(13)
145
+ expect(result.start.get('minute')).toBe(0)
146
+ expect(result.start.get('second')).toBe(0)
147
+ expect(result.start.get('millisecond')).toBe(0)
148
+ expect(result.start.get('meridiem')).toBe(1)
149
+ expect(result.start.isCertain('meridiem')).toBe(true)
150
+
151
+ expect(result.end.get('year')).toBe(2012)
152
+ expect(result.end.get('month')).toBe(8)
153
+ expect(result.end.get('day')).toBe(11)
154
+ expect(result.end.get('hour')).toBe(3)
155
+ expect(result.end.get('minute')).toBe(0)
156
+ expect(result.end.get('second')).toBe(0)
157
+ expect(result.end.get('millisecond')).toBe(0)
122
158
  expect(result.end.isCertain('meridiem')).toBe(false)
123
- });
124
- });
159
+ }
160
+ })
125
161
 
126
162
 
127
163
  test("Test - Random date + time expression", function() {
128
164
 
129
- testSingleCase(chrono.pt, 'segunda 4/29/2013 630-930am', (result, text) => {
130
-
131
- expect(result.text).toBe(text);
132
- });
133
-
134
- testSingleCase(chrono.pt, 'terça 5/1/2013 1115am', (result, text) => {
135
-
136
- expect(result.text).toBe(text);
137
- });
165
+ var text = "segunda 4/29/2013 630-930am";
166
+ var result = chrono.pt.parse(text)[0];
167
+ expect(result.text).toBe(text)
138
168
 
139
- testSingleCase(chrono.pt, 'quarta 5/3/2013 1230pm', (result, text) => {
169
+ var text = "terça 5/1/2013 1115am";
170
+ var result = chrono.pt.parse(text)[0];
171
+ expect(result.text).toBe(text)
140
172
 
141
- expect(result.text).toBe(text);
142
- });
173
+ var text = "quarta 5/3/2013 1230pm";
174
+ var result = chrono.pt.parse(text)[0];
175
+ expect(result.text).toBe(text)
143
176
 
144
177
 
145
- testSingleCase(chrono.pt, 'domingo 5/6/2013 750am-910am', (result, text) => {
178
+ var text = "domingo 5/6/2013 750am-910am";
179
+ var result = chrono.pt.parse(text)[0];
180
+ expect(result.text).toBe(text)
146
181
 
147
- expect(result.text).toBe(text);
148
- });
182
+ var text = "segunda-feira 5/13/2013 630-930am";
183
+ var result = chrono.pt.parse(text)[0];
184
+ expect(result.text).toBe(text)
149
185
 
150
- testSingleCase(chrono.pt, 'segunda-feira 5/13/2013 630-930am', (result, text) => {
186
+ var text = "quarta-feira 5/15/2013 1030am";
187
+ var result = chrono.pt.parse(text)[0];
188
+ expect(result.text).toBe(text)
151
189
 
152
- expect(result.text).toBe(text);
153
- });
190
+ var text = "quinta 6/21/2013 2:30";
191
+ var result = chrono.pt.parse(text)[0];
192
+ expect(result.text).toBe(text)
154
193
 
155
- testSingleCase(chrono.pt, 'quarta-feira 5/15/2013 1030am', (result, text) => {
194
+ var text = "terça-feira 7/2/2013 1-230 pm";
195
+ var result = chrono.pt.parse(text)[0];
196
+ expect(result.text).toBe(text)
156
197
 
157
- expect(result.text).toBe(text);
158
- });
198
+ var text = "Segunda-feira, 6/24/2013, 7:00pm - 8:30pm";
199
+ var result = chrono.pt.parse(text)[0];
200
+ expect(result.text).toBe(text)
159
201
 
160
- testSingleCase(chrono.pt, 'quinta 6/21/2013 2:30', (result, text) => {
202
+ var text = "Quinta6/20/2013 from 7:00 PM to 10:00 PM";
203
+ var result = chrono.pt.parse(text)[0];
204
+ expect(result.text).toBe(text)
161
205
 
162
- expect(result.text).toBe(text);
163
- });
206
+ var text = "Quarta, 3 Julho de 2013 às 2pm";
207
+ var result = chrono.pt.parse(text)[0];
208
+ expect(result.text).toBe(text)
164
209
 
165
- testSingleCase(chrono.pt, 'terça-feira 7/2/2013 1-230 pm', (result, text) => {
166
210
 
167
- expect(result.text).toBe(text);
168
- });
211
+ var text = "6pm";
212
+ var result = chrono.pt.parse(text)[0];
213
+ expect(result.text).toBe(text)
169
214
 
170
- testSingleCase(chrono.pt, 'Segunda-feira, 6/24/2013, 7:00pm - 8:30pm', (result, text) => {
215
+ var text = "6 pm";
216
+ var result = chrono.pt.parse(text)[0];
217
+ expect(result.text).toBe(text)
171
218
 
172
- expect(result.text).toBe(text);
173
- });
219
+ var text = "7-10pm";
220
+ var result = chrono.pt.parse(text)[0];
221
+ expect(result.text).toBe(text)
174
222
 
175
- testSingleCase(chrono.pt, 'Quinta6/20/2013 from 7:00 PM to 10:00 PM', (result, text) => {
223
+ var text = "11.1pm";
224
+ var result = chrono.pt.parse(text)[0];
225
+ expect(result.text).toBe(text)
176
226
 
177
- expect(result.text).toBe(text);
178
- });
227
+ var text = "às 12";
228
+ var result = chrono.pt.parse(text)[0];
229
+ expect(result.text).toBe(text)
179
230
 
180
- testSingleCase(chrono.pt, 'Quarta, 3 Julho de 2013 às 2pm', (result, text) => {
231
+ var text = "ao meio-dia";
232
+ var result = chrono.pt.parse(text)[0];
233
+ expect(result.text).toBe(text)
234
+ expect(result.start.get('hour')).toBe(12)
235
+ expect(result.start.get('hour')).toBe(12)
181
236
 
182
- expect(result.text).toBe(text);
183
- });
184
-
185
-
186
- testSingleCase(chrono.pt, '6pm', (result, text) => {
187
-
188
- expect(result.text).toBe(text);
189
- });
190
-
191
- testSingleCase(chrono.pt, '6 pm', (result, text) => {
192
-
193
- expect(result.text).toBe(text);
194
- });
195
-
196
- testSingleCase(chrono.pt, '7-10pm', (result, text) => {
197
-
198
- expect(result.text).toBe(text);
199
- });
200
-
201
- testSingleCase(chrono.pt, '11.1pm', (result, text) => {
202
-
203
- expect(result.text).toBe(text);
204
- });
205
-
206
- testSingleCase(chrono.pt, 'às 12', (result, text) => {
207
-
208
- expect(result.text).toBe(text);
209
- });
210
-
211
- testSingleCase(chrono.pt, 'ao meio-dia', (result, text) => {
212
-
213
- expect(result.text).toBe(text);
214
- expect(result.start.get('hour')).toBe(12);
215
- expect(result.start.get('hour')).toBe(12);
216
- });
217
-
218
- testSingleCase(chrono.pt, 'a meia-noite', (result, text) => {
219
-
220
- expect(result.text).toBe(text)
221
- });
222
- });
237
+ var text = "a meia-noite";
238
+ var result = chrono.pt.parse(text)[0];
239
+ expect(result.text).toBe(text)
240
+ })
package/test/test_util.js CHANGED
@@ -15,11 +15,7 @@ export function testSingleCase(chrono, text, refDateOrResultCheck, optionOrResul
15
15
  const results = chrono.parse(text, refDateOrResultCheck, optionOrResultCheck);
16
16
  expect(results).toBeSingleOnText(text);
17
17
 
18
-
19
- if (resultCheck) {
20
- resultCheck(results[0], text);
21
- }
22
-
18
+ resultCheck(results[0], text);
23
19
  }
24
20
 
25
21
  export function testWithExpectedDate(chrono, text, expectedDate) {