@@ -9,14 +9,14 @@ describe('Select', () => {
9
9
let container ;
10
10
11
11
function renderPicker ( props ) {
12
- const showSecond = true ;
13
- const format = 'HH:mm:ss' ;
12
+ const showMillisecond = true ;
13
+ const format = 'HH:mm:ss:SS ' ;
14
14
15
15
return mount (
16
16
< TimePicker
17
17
format = { format }
18
- showSecond = { showSecond }
19
- defaultValue = { moment ( '01:02:04' , format ) }
18
+ showMillisecond = { showMillisecond }
19
+ defaultValue = { moment ( '01:02:04:05 ' , format ) }
20
20
{ ...props }
21
21
/> ,
22
22
) ;
@@ -80,6 +80,7 @@ describe('Select', () => {
80
80
hourStep : 5 ,
81
81
minuteStep : 15 ,
82
82
secondStep : 21 ,
83
+ millisecondStep : 30 ,
83
84
} ) ;
84
85
clickInput ( picker ) ;
85
86
@@ -88,6 +89,7 @@ describe('Select', () => {
88
89
const hourSelector = selectors . at ( 0 ) ;
89
90
const minuteSelector = selectors . at ( 1 ) ;
90
91
const secondSelector = selectors . at ( 2 ) ;
92
+ const millisecondSelector = selectors . at ( 3 ) ;
91
93
92
94
const hours = hourSelector . find ( 'li' ) . map ( node => node . text ( ) ) ;
93
95
expect ( hours ) . toEqual ( [ '00' , '05' , '10' , '15' , '20' ] ) ;
@@ -97,6 +99,9 @@ describe('Select', () => {
97
99
98
100
const seconds = secondSelector . find ( 'li' ) . map ( node => node . text ( ) ) ;
99
101
expect ( seconds ) . toEqual ( [ '00' , '21' , '42' ] ) ;
102
+
103
+ const milliseconds = millisecondSelector . find ( 'li' ) . map ( node => node . text ( ) ) ;
104
+ expect ( milliseconds ) . toEqual ( [ '00' , '30' , '60' , '90' ] ) ;
100
105
} ) ;
101
106
} ) ;
102
107
@@ -108,7 +113,7 @@ describe('Select', () => {
108
113
clickInput ( picker ) ;
109
114
expect ( picker . state ( ) . open ) . toBeTruthy ( ) ;
110
115
111
- expect ( picker . find ( '.rc-time-picker-panel-select' ) . length ) . toBe ( 3 ) ;
116
+ expect ( picker . find ( '.rc-time-picker-panel-select' ) . length ) . toBe ( 4 ) ;
112
117
} ) ;
113
118
} ) ;
114
119
@@ -123,13 +128,13 @@ describe('Select', () => {
123
128
clickInput ( picker ) ;
124
129
125
130
expect ( picker . state ( ) . open ) . toBeTruthy ( ) ;
126
- matchAll ( picker , '01:02:04' ) ;
131
+ matchAll ( picker , '01:02:04:05 ' ) ;
127
132
128
133
clickSelectItem ( picker , 0 , 19 ) ;
129
134
130
135
expect ( onChange ) . toBeCalled ( ) ;
131
136
expect ( onChange . mock . calls [ 0 ] [ 0 ] . hour ( ) ) . toBe ( 19 ) ;
132
- matchAll ( picker , '19:02:04' ) ;
137
+ matchAll ( picker , '19:02:04:05 ' ) ;
133
138
expect ( picker . state ( ) . open ) . toBeTruthy ( ) ;
134
139
} ) ;
135
140
@@ -143,13 +148,13 @@ describe('Select', () => {
143
148
clickInput ( picker ) ;
144
149
145
150
expect ( picker . state ( ) . open ) . toBeTruthy ( ) ;
146
- matchAll ( picker , '01:02:04' ) ;
151
+ matchAll ( picker , '01:02:04:05 ' ) ;
147
152
148
153
clickSelectItem ( picker , 1 , 19 ) ;
149
154
150
155
expect ( onChange ) . toBeCalled ( ) ;
151
156
expect ( onChange . mock . calls [ 0 ] [ 0 ] . minute ( ) ) . toBe ( 19 ) ;
152
- matchAll ( picker , '01:19:04' ) ;
157
+ matchAll ( picker , '01:19:04:05 ' ) ;
153
158
expect ( picker . state ( ) . open ) . toBeTruthy ( ) ;
154
159
} ) ;
155
160
@@ -163,13 +168,33 @@ describe('Select', () => {
163
168
clickInput ( picker ) ;
164
169
165
170
expect ( picker . state ( ) . open ) . toBeTruthy ( ) ;
166
- matchAll ( picker , '01:02:04' ) ;
171
+ matchAll ( picker , '01:02:04:05 ' ) ;
167
172
168
173
clickSelectItem ( picker , 2 , 19 ) ;
169
174
170
175
expect ( onChange ) . toBeCalled ( ) ;
171
176
expect ( onChange . mock . calls [ 0 ] [ 0 ] . second ( ) ) . toBe ( 19 ) ;
172
- matchAll ( picker , '01:02:19' ) ;
177
+ matchAll ( picker , '01:02:19:05' ) ;
178
+ expect ( picker . state ( ) . open ) . toBeTruthy ( ) ;
179
+ } ) ;
180
+
181
+ it ( 'millisecond correctly' , async ( ) => {
182
+ const onChange = jest . fn ( ) ;
183
+ const picker = renderPicker ( {
184
+ onChange,
185
+ } ) ;
186
+ expect ( picker . state ( ) . open ) . toBeFalsy ( ) ;
187
+
188
+ clickInput ( picker ) ;
189
+
190
+ expect ( picker . state ( ) . open ) . toBeTruthy ( ) ;
191
+ matchAll ( picker , '01:02:04:05' ) ;
192
+
193
+ clickSelectItem ( picker , 3 , 19 ) ;
194
+
195
+ expect ( onChange ) . toBeCalled ( ) ;
196
+ expect ( onChange . mock . calls [ 0 ] [ 0 ] . millisecond ( ) ) . toBe ( 190 ) ;
197
+ matchAll ( picker , '01:02:04:19' ) ;
173
198
expect ( picker . state ( ) . open ) . toBeTruthy ( ) ;
174
199
} ) ;
175
200
@@ -183,6 +208,7 @@ describe('Select', () => {
183
208
. second ( 0 ) ,
184
209
format : undefined ,
185
210
showSecond : false ,
211
+ showMillisecond : false ,
186
212
use12Hours : true ,
187
213
} ) ;
188
214
expect ( picker . state ( ) . open ) . toBeFalsy ( ) ;
@@ -215,25 +241,25 @@ describe('Select', () => {
215
241
216
242
expect ( picker . state ( ) . open ) . toBeTruthy ( ) ;
217
243
218
- matchAll ( picker , '01:02:04' ) ;
244
+ matchAll ( picker , '01:02:04:05 ' ) ;
219
245
220
246
clickSelectItem ( picker , 1 , 1 ) ;
221
247
222
248
expect ( onChange ) . not . toBeCalled ( ) ;
223
- matchAll ( picker , '01:02:04' ) ;
249
+ matchAll ( picker , '01:02:04:05 ' ) ;
224
250
expect ( picker . state ( ) . open ) . toBeTruthy ( ) ;
225
251
226
252
clickSelectItem ( picker , 2 , 3 ) ;
227
253
228
254
expect ( onChange ) . not . toBeCalled ( ) ;
229
- matchAll ( picker , '01:02:04' ) ;
255
+ matchAll ( picker , '01:02:04:05 ' ) ;
230
256
expect ( picker . state ( ) . open ) . toBeTruthy ( ) ;
231
257
232
258
clickSelectItem ( picker , 1 , 7 ) ;
233
259
234
260
expect ( onChange ) . toBeCalled ( ) ;
235
261
expect ( onChange . mock . calls [ 0 ] [ 0 ] . minute ( ) ) . toBe ( 7 ) ;
236
- matchAll ( picker , '01:07:04' ) ;
262
+ matchAll ( picker , '01:07:04:05 ' ) ;
237
263
expect ( picker . state ( ) . open ) . toBeTruthy ( ) ;
238
264
} ) ;
239
265
@@ -250,21 +276,21 @@ describe('Select', () => {
250
276
clickInput ( picker ) ;
251
277
expect ( picker . state ( ) . open ) . toBeTruthy ( ) ;
252
278
253
- matchAll ( picker , '01:02:04' ) ;
279
+ matchAll ( picker , '01:02:04:05 ' ) ;
254
280
255
281
clickSelectItem ( picker , 0 , 3 ) ;
256
282
257
283
expect ( onChange ) . toBeCalled ( ) ;
258
284
expect ( onChange . mock . calls [ 0 ] [ 0 ] . hour ( ) ) . toBe ( 6 ) ;
259
- matchAll ( picker , '06:02:04' ) ;
285
+ matchAll ( picker , '06:02:04:05 ' ) ;
260
286
expect ( picker . state ( ) . open ) . toBeTruthy ( ) ;
261
287
onChange . mockReset ( ) ;
262
288
263
289
clickSelectItem ( picker , 0 , 4 ) ;
264
290
265
291
expect ( onChange ) . toBeCalled ( ) ;
266
292
expect ( onChange . mock . calls [ 0 ] [ 0 ] . hour ( ) ) . toBe ( 8 ) ;
267
- matchAll ( picker , '08:02:04' ) ;
293
+ matchAll ( picker , '08:02:04:05 ' ) ;
268
294
expect ( picker . state ( ) . open ) . toBeTruthy ( ) ;
269
295
} ) ;
270
296
} ) ;
@@ -278,6 +304,7 @@ describe('Select', () => {
278
304
. minute ( 0 )
279
305
. second ( 0 ) ,
280
306
showSecond : false ,
307
+ showMillisecond : false ,
281
308
format : undefined ,
282
309
} ) ;
283
310
@@ -298,6 +325,7 @@ describe('Select', () => {
298
325
. minute ( 0 )
299
326
. second ( 0 ) ,
300
327
showSecond : false ,
328
+ showMillisecond : false ,
301
329
format : undefined ,
302
330
} ) ;
303
331
expect ( picker . state ( ) . open ) . toBeFalsy ( ) ;
@@ -315,6 +343,7 @@ describe('Select', () => {
315
343
. minute ( 0 )
316
344
. second ( 0 ) ,
317
345
showSecond : false ,
346
+ showMillisecond : false ,
318
347
format : undefined ,
319
348
} ) ;
320
349
expect ( picker . state ( ) . open ) . toBeFalsy ( ) ;
@@ -335,6 +364,7 @@ describe('Select', () => {
335
364
. minute ( 0 )
336
365
. second ( 0 ) ,
337
366
showSecond : false ,
367
+ showMillisecond : false ,
338
368
format : undefined ,
339
369
} ) ;
340
370
@@ -359,6 +389,7 @@ describe('Select', () => {
359
389
. minute ( 0 )
360
390
. second ( 0 ) ,
361
391
showSecond : false ,
392
+ showMillisecond : false ,
362
393
format : 'h:mm A' ,
363
394
} ) ;
364
395
@@ -389,6 +420,7 @@ describe('Select', () => {
389
420
. minute ( 0 )
390
421
. second ( 0 ) ,
391
422
showSecond : false ,
423
+ showMillisecond : false ,
392
424
} ) ;
393
425
394
426
expect ( picker . state ( ) . open ) . toBeFalsy ( ) ;
@@ -439,7 +471,7 @@ describe('Select', () => {
439
471
} ) ;
440
472
441
473
const clearButton = findClearFunc ( picker ) ;
442
- matchValue ( picker , '01:02:04' ) ;
474
+ matchValue ( picker , '01:02:04:05 ' ) ;
443
475
444
476
clearButton . simulate ( 'click' ) ;
445
477
expect ( picker . state ( ) . open ) . toBeFalsy ( ) ;
0 commit comments