1
- /* eslint-disable */
2
- import expect from 'expect ' ;
1
+ import React from 'react' ;
2
+ import { shallow } from 'enzyme ' ;
3
3
import theme from '../theme.css' ;
4
- import { DatePickerDialog } from '../DatePicker' ;
5
- import utils from '../../utils/testing' ;
4
+ import { DatePickerDialog , Calendar } from '../DatePicker' ;
6
5
7
6
describe ( 'DatePickerDialog' , ( ) => {
8
7
describe ( '#on mount' , ( ) => {
9
8
it ( 'passes value through to calendar if no maxDate/minDate specified' , ( ) => {
10
9
const value = new Date ( 2016 , 1 , 1 ) ;
11
- const wrapper = utils . shallowRenderComponent ( DatePickerDialog , { theme, value } ) ;
12
- expect ( getDatePassedToCalendar ( wrapper ) ) . toBe ( value ) ;
10
+ const wrapper = shallow ( < DatePickerDialog theme = { theme } value = { value } /> ) ;
11
+ expect ( wrapper . find ( Calendar ) . props ( ) . selectedDate ) . toBe ( value ) ;
13
12
} ) ;
14
13
15
14
describe ( 'when minDate but not maxDate specified' , ( ) => {
16
15
const minDate = new Date ( 2016 , 1 , 2 ) ;
17
16
18
17
it ( 'passes through a value after minDate' , ( ) => {
19
18
const value = new Date ( 2016 , 1 , 3 ) ;
20
- const wrapper = utils . shallowRenderComponent ( DatePickerDialog , { theme, value , minDate } ) ;
21
- expect ( getDatePassedToCalendar ( wrapper ) ) . toBe ( value ) ;
19
+ const wrapper = shallow ( < DatePickerDialog theme = { theme } minDate = { minDate } value = { value } /> ) ;
20
+ expect ( wrapper . find ( Calendar ) . props ( ) . selectedDate ) . toBe ( value ) ;
22
21
} ) ;
23
22
24
23
it ( 'sanitises a value before minDate to minDate' , ( ) => {
25
- const wrapper = utils . shallowRenderComponent ( DatePickerDialog , {
26
- theme, value : new Date ( 2016 , 1 , 1 ) , minDate,
27
- } ) ;
28
- expect ( getDatePassedToCalendar ( wrapper ) ) . toBe ( minDate ) ;
24
+ const wrapper = shallow (
25
+ < DatePickerDialog
26
+ theme = { theme }
27
+ minDate = { minDate }
28
+ value = { new Date ( 2016 , 1 , 1 ) }
29
+ /> ,
30
+ ) ;
31
+ expect ( wrapper . find ( Calendar ) . props ( ) . selectedDate ) . toBe ( minDate ) ;
29
32
} ) ;
30
33
} ) ;
31
34
@@ -34,15 +37,25 @@ describe('DatePickerDialog', () => {
34
37
35
38
it ( 'passes through a value before maxDate' , ( ) => {
36
39
const value = new Date ( 2016 , 1 , 1 ) ;
37
- const wrapper = utils . shallowRenderComponent ( DatePickerDialog , { theme, value, maxDate } ) ;
38
- expect ( getDatePassedToCalendar ( wrapper ) ) . toBe ( value ) ;
40
+ const wrapper = shallow (
41
+ < DatePickerDialog
42
+ theme = { theme }
43
+ maxDate = { maxDate }
44
+ value = { value }
45
+ /> ,
46
+ ) ;
47
+ expect ( wrapper . find ( Calendar ) . props ( ) . selectedDate ) . toBe ( value ) ;
39
48
} ) ;
40
49
41
50
it ( 'sanitises a value after maxDate to maxDate' , ( ) => {
42
- const wrapper = utils . shallowRenderComponent ( DatePickerDialog , {
43
- theme, value : new Date ( 2016 , 1 , 3 ) , maxDate,
44
- } ) ;
45
- expect ( getDatePassedToCalendar ( wrapper ) ) . toBe ( maxDate ) ;
51
+ const wrapper = shallow (
52
+ < DatePickerDialog
53
+ theme = { theme }
54
+ maxDate = { maxDate }
55
+ value = { new Date ( 2016 , 1 , 3 ) }
56
+ /> ,
57
+ ) ;
58
+ expect ( wrapper . find ( Calendar ) . props ( ) . selectedDate ) . toBe ( maxDate ) ;
46
59
} ) ;
47
60
} ) ;
48
61
@@ -51,34 +64,41 @@ describe('DatePickerDialog', () => {
51
64
const maxDate = new Date ( 2016 , 1 , 4 ) ;
52
65
53
66
it ( 'sanitises value to minDate if value is before minDate' , ( ) => {
54
- const wrapper = utils . shallowRenderComponent ( DatePickerDialog , {
55
- theme,
56
- value : new Date ( 2016 , 1 , 1 ) ,
57
- minDate,
58
- maxDate,
59
- } ) ;
60
- expect ( getDatePassedToCalendar ( wrapper ) ) . toBe ( minDate ) ;
67
+ const wrapper = shallow (
68
+ < DatePickerDialog
69
+ theme = { theme }
70
+ minDate = { minDate }
71
+ maxDate = { maxDate }
72
+ value = { new Date ( 2016 , 1 , 1 ) }
73
+ /> ,
74
+ ) ;
75
+ expect ( wrapper . find ( Calendar ) . props ( ) . selectedDate ) . toBe ( minDate ) ;
61
76
} ) ;
62
77
63
78
it ( 'sanitises value to maxDate if value is after maxDate' , ( ) => {
64
- const wrapper = utils . shallowRenderComponent ( DatePickerDialog , {
65
- theme,
66
- value : new Date ( 2016 , 1 , 5 ) ,
67
- minDate,
68
- maxDate,
69
- } ) ;
70
- expect ( getDatePassedToCalendar ( wrapper ) ) . toBe ( maxDate ) ;
79
+ const wrapper = shallow (
80
+ < DatePickerDialog
81
+ theme = { theme }
82
+ minDate = { minDate }
83
+ maxDate = { maxDate }
84
+ value = { new Date ( 2016 , 1 , 5 ) }
85
+ /> ,
86
+ ) ;
87
+ expect ( wrapper . find ( Calendar ) . props ( ) . selectedDate ) . toBe ( maxDate ) ;
71
88
} ) ;
72
89
73
90
it ( 'doesn\'t sanitise when value is between maxDate/minDate' , ( ) => {
74
91
const value = new Date ( 2016 , 1 , 3 ) ;
75
- const wrapper = utils . shallowRenderComponent ( DatePickerDialog , { theme, value, minDate, maxDate } ) ;
76
- expect ( getDatePassedToCalendar ( wrapper ) ) . toBe ( value ) ;
92
+ const wrapper = shallow (
93
+ < DatePickerDialog
94
+ theme = { theme }
95
+ minDate = { minDate }
96
+ maxDate = { maxDate }
97
+ value = { value }
98
+ /> ,
99
+ ) ;
100
+ expect ( wrapper . find ( Calendar ) . props ( ) . selectedDate ) . toBe ( value ) ;
77
101
} ) ;
78
102
} ) ;
79
-
80
- function getDatePassedToCalendar ( wrapper ) {
81
- return wrapper . props . children [ 1 ] . props . children . props . selectedDate ;
82
- }
83
103
} ) ;
84
104
} ) ;
0 commit comments