|
1 | 1 | import { fireEvent, render } from '@testing-library/react';
|
2 | 2 | import { resetWarned } from '@rc-component/util/lib/warning';
|
3 | 3 | import React from 'react';
|
4 |
| -import { DayPicker, getDay, openPicker, selectCell, findCell } from './util/commonUtil'; |
| 4 | +import dayjs from 'dayjs'; |
| 5 | +import { DayPicker, getDay, openPicker, selectCell } from './util/commonUtil'; |
5 | 6 |
|
6 | 7 | describe('Picker.Time', () => {
|
7 | 8 | beforeEach(() => {
|
@@ -68,4 +69,49 @@ describe('Picker.Time', () => {
|
68 | 69 | fireEvent.mouseEnter(getColCell(4, 1));
|
69 | 70 | expect(container.querySelector('input')).toHaveValue('1990-09-03 12:00:00.000 PM');
|
70 | 71 | });
|
| 72 | + |
| 73 | + it('hover should not update preview value in input when showPreviewValue is false', async () => { |
| 74 | + const { container } = render( |
| 75 | + <DayPicker |
| 76 | + showTime={{ |
| 77 | + showMillisecond: true, |
| 78 | + use12Hours: true, |
| 79 | + }} |
| 80 | + showPreviewValue={false} |
| 81 | + defaultValue={dayjs('1990-09-03 01:02:03')} |
| 82 | + />, |
| 83 | + ); |
| 84 | + openPicker(container); |
| 85 | + |
| 86 | + const getColCell = (colIndex: number, cellIndex: number) => { |
| 87 | + const column = document.querySelectorAll('.rc-picker-time-panel-column')[colIndex]; |
| 88 | + const cell = column.querySelectorAll('.rc-picker-time-panel-cell-inner')[cellIndex]; |
| 89 | + |
| 90 | + return cell; |
| 91 | + }; |
| 92 | + |
| 93 | + // Hour |
| 94 | + fireEvent.mouseEnter(getColCell(0, 3)); |
| 95 | + expect(container.querySelector('input')).toHaveValue('1990-09-03 01:02:03.000 AM'); |
| 96 | + |
| 97 | + // Let test for mouse leave |
| 98 | + fireEvent.mouseLeave(getColCell(0, 3)); |
| 99 | + expect(container.querySelector('input')).toHaveValue('1990-09-03 01:02:03.000 AM'); |
| 100 | + |
| 101 | + // Minute |
| 102 | + fireEvent.mouseEnter(getColCell(1, 2)); |
| 103 | + expect(container.querySelector('input')).toHaveValue('1990-09-03 01:02:03.000 AM'); |
| 104 | + |
| 105 | + // Second |
| 106 | + fireEvent.mouseEnter(getColCell(2, 1)); |
| 107 | + expect(container.querySelector('input')).toHaveValue('1990-09-03 01:02:03.000 AM'); |
| 108 | + |
| 109 | + // Millisecond |
| 110 | + fireEvent.mouseEnter(getColCell(3, 1)); |
| 111 | + expect(container.querySelector('input')).toHaveValue('1990-09-03 01:02:03.000 AM'); |
| 112 | + |
| 113 | + // Meridiem |
| 114 | + fireEvent.mouseEnter(getColCell(4, 1)); |
| 115 | + expect(container.querySelector('input')).toHaveValue('1990-09-03 01:02:03.000 AM'); |
| 116 | + }); |
71 | 117 | });
|
0 commit comments