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