@@ -6,10 +6,11 @@ import { ja } from 'date-fns/locale';
6
6
import Datepicker from '../../src/Vue3DatePicker/Vue3DatePicker.vue' ;
7
7
import DatepickerMenu from '../../src/Vue3DatePicker/components/DatepickerMenu.vue' ;
8
8
import Calendar from '../../src/Vue3DatePicker/components/Calendar.vue' ;
9
+ import TimePicker from '../../src/Vue3DatePicker/components/TimePicker/TimePicker.vue' ;
10
+ import MonthYearInput from '../../src/Vue3DatePicker/components/MonthYearInput.vue' ;
9
11
import ActionRow from '../../src/Vue3DatePicker/components/ActionRow.vue' ;
10
12
11
- import { getNextMonthYear } from '../../src/Vue3DatePicker/utils/date-utils' ;
12
- import { setSeconds , addMonths } from 'date-fns' ;
13
+ import { setSeconds } from 'date-fns' ;
13
14
14
15
const format = ( date : Date ) : string => {
15
16
return `Selected year is ${ date . getFullYear ( ) } ` ;
@@ -26,10 +27,10 @@ describe('Logic connection', () => {
26
27
27
28
const menu : VueWrapper < any > = dp . findComponent ( DatepickerMenu ) ;
28
29
29
- expect ( menu . vm . month ) . toEqual ( date . getMonth ( ) ) ;
30
- expect ( menu . vm . year ) . toEqual ( date . getFullYear ( ) ) ;
31
- expect ( menu . vm . monthNext ) . toEqual ( getNextMonthYear ( date ) . month ) ;
32
- expect ( menu . vm . yearNext ) . toEqual ( getNextMonthYear ( date ) . year ) ;
30
+ await menu . vm . $nextTick ( ) ;
31
+
32
+ expect ( menu . vm . month ( 0 ) ) . toEqual ( date . getMonth ( ) ) ;
33
+ expect ( menu . vm . year ( 0 ) ) . toEqual ( date . getFullYear ( ) ) ;
33
34
expect ( menu . vm . hours ) . toEqual ( date . getHours ( ) ) ;
34
35
expect ( menu . vm . minutes ) . toEqual ( date . getMinutes ( ) ) ;
35
36
} ) ;
@@ -92,28 +93,6 @@ describe('Logic connection', () => {
92
93
expect ( menu . vm . internalModelValue [ 1 ] ) . toEqual ( end ) ;
93
94
} ) ;
94
95
95
- it ( 'Should select range from 2 calendars' , async ( ) => {
96
- const start = setSeconds ( addDays ( new Date ( ) , 1 ) , 0 ) ;
97
- const end = setSeconds ( addMonths ( start , 1 ) , 0 ) ;
98
- const dp = mount ( Datepicker , { props : { modelValue : null , range : true , multiCalendars : true } } ) ;
99
-
100
- dp . vm . openMenu ( ) ;
101
-
102
- await dp . vm . $nextTick ( ) ;
103
-
104
- const menu : VueWrapper < any > = dp . findComponent ( DatepickerMenu ) ;
105
- const calendar = menu . findComponent ( Calendar ) ;
106
-
107
- calendar . vm . $emit ( 'selectDate' , { value : start , current : true } ) ;
108
- await calendar . vm . $nextTick ( ) ;
109
- calendar . vm . $emit ( 'selectDate' , { value : end , current : true } , true ) ;
110
- await calendar . vm . $nextTick ( ) ;
111
-
112
- expect ( menu . vm . internalModelValue ) . toHaveLength ( 2 ) ;
113
- expect ( menu . vm . internalModelValue [ 0 ] ) . toEqual ( start ) ;
114
- expect ( menu . vm . internalModelValue [ 1 ] ) . toEqual ( end ) ;
115
- } ) ;
116
-
117
96
it ( 'Should select auto range' , async ( ) => {
118
97
const start = setSeconds ( new Date ( ) , 0 ) ;
119
98
const end = setSeconds ( addDays ( start , 7 ) , 0 ) ;
@@ -144,11 +123,11 @@ describe('Logic connection', () => {
144
123
await dp . vm . $nextTick ( ) ;
145
124
146
125
const menu : VueWrapper < any > = dp . findComponent ( DatepickerMenu ) ;
147
- const calendar = menu . findComponent ( Calendar ) ;
148
- calendar . vm . $emit ( 'update:hours' , val ) ;
149
- await calendar . vm . $nextTick ( ) ;
150
- calendar . vm . $emit ( 'update:minutes' , val ) ;
151
- await calendar . vm . $nextTick ( ) ;
126
+ const timePicker = menu . findComponent ( TimePicker ) ;
127
+ timePicker . vm . $emit ( 'update:hours' , val ) ;
128
+ await timePicker . vm . $nextTick ( ) ;
129
+ timePicker . vm . $emit ( 'update:minutes' , val ) ;
130
+ await timePicker . vm . $nextTick ( ) ;
152
131
153
132
expect ( menu . vm . internalModelValue . getHours ( ) ) . toEqual ( val ) ;
154
133
expect ( menu . vm . internalModelValue . getMinutes ( ) ) . toEqual ( val ) ;
@@ -165,11 +144,11 @@ describe('Logic connection', () => {
165
144
await dp . vm . $nextTick ( ) ;
166
145
167
146
const menu : VueWrapper < any > = dp . findComponent ( DatepickerMenu ) ;
168
- const calendar = menu . findComponent ( Calendar ) ;
169
- calendar . vm . $emit ( 'update:hours' , [ start . getHours ( ) , val ] ) ;
170
- await calendar . vm . $nextTick ( ) ;
171
- calendar . vm . $emit ( 'update:minutes' , [ val , end . getMinutes ( ) ] ) ;
172
- await calendar . vm . $nextTick ( ) ;
147
+ const timePicker = menu . findComponent ( TimePicker ) ;
148
+ timePicker . vm . $emit ( 'update:hours' , [ start . getHours ( ) , val ] ) ;
149
+ await timePicker . vm . $nextTick ( ) ;
150
+ timePicker . vm . $emit ( 'update:minutes' , [ val , end . getMinutes ( ) ] ) ;
151
+ await timePicker . vm . $nextTick ( ) ;
173
152
174
153
expect ( menu . vm . internalModelValue [ 1 ] . getHours ( ) ) . toEqual ( val ) ;
175
154
expect ( menu . vm . internalModelValue [ 0 ] . getMinutes ( ) ) . toEqual ( val ) ;
@@ -184,10 +163,10 @@ describe('Logic connection', () => {
184
163
await dp . vm . $nextTick ( ) ;
185
164
186
165
const menu : VueWrapper < any > = dp . findComponent ( DatepickerMenu ) ;
187
- const calendar = menu . findComponent ( Calendar ) ;
188
- calendar . vm . $emit ( 'update:month' , month ) ;
166
+ const monthYearInput = menu . findComponent ( MonthYearInput ) ;
167
+ monthYearInput . vm . $emit ( 'update:month' , month ) ;
189
168
190
- expect ( menu . vm . month ) . toEqual ( month ) ;
169
+ expect ( menu . vm . month ( 0 ) ) . toEqual ( month ) ;
191
170
} ) ;
192
171
193
172
it ( 'Should set year' , async ( ) => {
@@ -199,18 +178,18 @@ describe('Logic connection', () => {
199
178
await dp . vm . $nextTick ( ) ;
200
179
201
180
const menu : VueWrapper < any > = dp . findComponent ( DatepickerMenu ) ;
202
- const calendar = menu . findComponent ( Calendar ) ;
203
- calendar . vm . $emit ( 'update:year' , year ) ;
181
+ const monthYearInput = menu . findComponent ( MonthYearInput ) ;
182
+ monthYearInput . vm . $emit ( 'update:year' , year ) ;
204
183
205
- expect ( menu . vm . year ) . toEqual ( year ) ;
184
+ expect ( menu . vm . year ( 0 ) ) . toEqual ( year ) ;
206
185
} ) ;
207
186
208
187
it ( 'Should format with custom function' , async ( ) => {
209
188
const selected = new Date ( ) ;
210
189
211
190
const dp = mount ( Datepicker , { props : { modelValue : null , format } } ) ;
212
191
213
- await dp . vm . openMenu ( ) ;
192
+ dp . vm . openMenu ( ) ;
214
193
215
194
await dp . vm . $nextTick ( ) ;
216
195
0 commit comments