@reltio/components 1.4.1956 → 1.4.1957
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/AttributesFiltersBuilder/AttributesFiltersBuilder.js +1 -1
- package/cjs/AttributesFiltersBuilder/helpers.d.ts +1 -1
- package/cjs/AttributesFiltersBuilder/helpers.js +25 -22
- package/cjs/AttributesFiltersButton/AttributesFiltersButton.js +1 -1
- package/cjs/AttributesFiltersButton/components/ActionButtons/styles.js +2 -2
- package/cjs/AttributesFiltersButton/styles.d.ts +1 -1
- package/cjs/AttributesFiltersButton/styles.js +10 -7
- package/cjs/CustomDateRangeEditor/CustomDateRangeEditor.js +1 -1
- package/cjs/DateIntervalSelector/DateIntervalSelector.js +1 -1
- package/cjs/DateRangeSelector/DateRangeSelector.d.ts +9 -0
- package/cjs/DateRangeSelector/DateRangeSelector.js +144 -0
- package/cjs/DateRangeSelector/DateRangeSelector.specs.js +294 -0
- package/cjs/DateRangeSelector/index.d.ts +1 -0
- package/cjs/DateRangeSelector/index.js +5 -0
- package/cjs/DateRangeSelector/styles.d.ts +1 -0
- package/cjs/DateRangeSelector/styles.js +30 -0
- package/cjs/features/activity-log/ActivityFilterEditor/components/DateRangeSelector/DateRangeSelector.js +3 -108
- package/cjs/features/activity-log/ActivityFilterEditor/components/DateRangeSelector/styles.d.ts +1 -1
- package/cjs/features/activity-log/ActivityFilterEditor/components/DateRangeSelector/styles.js +0 -54
- package/cjs/index.d.ts +1 -0
- package/cjs/index.js +6 -4
- package/esm/AttributesFiltersBuilder/AttributesFiltersBuilder.js +2 -2
- package/esm/AttributesFiltersBuilder/helpers.d.ts +1 -1
- package/esm/AttributesFiltersBuilder/helpers.js +24 -21
- package/esm/AttributesFiltersButton/AttributesFiltersButton.js +1 -1
- package/esm/AttributesFiltersButton/components/ActionButtons/styles.js +2 -2
- package/esm/AttributesFiltersButton/styles.d.ts +1 -1
- package/esm/AttributesFiltersButton/styles.js +10 -7
- package/esm/CustomDateRangeEditor/CustomDateRangeEditor.js +1 -1
- package/esm/DateIntervalSelector/DateIntervalSelector.js +1 -1
- package/esm/DateRangeSelector/DateRangeSelector.d.ts +9 -0
- package/esm/DateRangeSelector/DateRangeSelector.js +114 -0
- package/esm/DateRangeSelector/DateRangeSelector.specs.js +289 -0
- package/esm/DateRangeSelector/index.d.ts +1 -0
- package/esm/DateRangeSelector/index.js +1 -0
- package/esm/DateRangeSelector/styles.d.ts +1 -0
- package/esm/DateRangeSelector/styles.js +27 -0
- package/esm/features/activity-log/ActivityFilterEditor/components/DateRangeSelector/DateRangeSelector.js +3 -85
- package/esm/features/activity-log/ActivityFilterEditor/components/DateRangeSelector/styles.d.ts +1 -1
- package/esm/features/activity-log/ActivityFilterEditor/components/DateRangeSelector/styles.js +0 -54
- package/esm/index.d.ts +1 -0
- package/esm/index.js +1 -0
- package/package.json +2 -2
- package/cjs/features/activity-log/ActivityFilterEditor/components/DateRangeSelector/DateRangeSelector.specs.js +0 -185
- package/esm/features/activity-log/ActivityFilterEditor/components/DateRangeSelector/DateRangeSelector.specs.js +0 -180
- /package/cjs/{features/activity-log/ActivityFilterEditor/components/DateRangeSelector → DateRangeSelector}/DateRangeSelector.specs.d.ts +0 -0
- /package/esm/{features/activity-log/ActivityFilterEditor/components/DateRangeSelector → DateRangeSelector}/DateRangeSelector.specs.d.ts +0 -0
|
@@ -1,185 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __assign = (this && this.__assign) || function () {
|
|
3
|
-
__assign = Object.assign || function(t) {
|
|
4
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
-
s = arguments[i];
|
|
6
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
-
t[p] = s[p];
|
|
8
|
-
}
|
|
9
|
-
return t;
|
|
10
|
-
};
|
|
11
|
-
return __assign.apply(this, arguments);
|
|
12
|
-
};
|
|
13
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
var react_1 = __importDefault(require("react"));
|
|
18
|
-
var enzyme_1 = require("enzyme");
|
|
19
|
-
var test_utils_1 = require("react-dom/test-utils");
|
|
20
|
-
var mdm_sdk_1 = require("@reltio/mdm-sdk");
|
|
21
|
-
var FormControlLabel_1 = __importDefault(require("@mui/material/FormControlLabel"));
|
|
22
|
-
var RadioGroup_1 = __importDefault(require("@mui/material/RadioGroup"));
|
|
23
|
-
var Typography_1 = __importDefault(require("@mui/material/Typography"));
|
|
24
|
-
var CustomDateRangeEditor_1 = require("../../../../../CustomDateRangeEditor");
|
|
25
|
-
var DateIntervalSelector_1 = require("../../../../../DateIntervalSelector");
|
|
26
|
-
var DateRangeSelector_1 = require("./DateRangeSelector");
|
|
27
|
-
describe('DateRangeSelector tests', function () {
|
|
28
|
-
var value = {
|
|
29
|
-
type: mdm_sdk_1.DateRangeTypes.WITHIN,
|
|
30
|
-
period: [4, 'month']
|
|
31
|
-
};
|
|
32
|
-
var defaultProps = {
|
|
33
|
-
value: value,
|
|
34
|
-
onChange: jest.fn()
|
|
35
|
-
};
|
|
36
|
-
afterEach(function () {
|
|
37
|
-
jest.clearAllMocks();
|
|
38
|
-
});
|
|
39
|
-
it('should render correct default state', function () {
|
|
40
|
-
var wrapper = (0, enzyme_1.shallow)(react_1.default.createElement(DateRangeSelector_1.DateRangeSelector, __assign({}, defaultProps)));
|
|
41
|
-
expect(wrapper.find(Typography_1.default).filterWhere(function (component) { return component.text() === 'Date'; }).length).toBe(1);
|
|
42
|
-
var radioGroup = wrapper.find(RadioGroup_1.default);
|
|
43
|
-
expect(radioGroup.length).toBe(1);
|
|
44
|
-
expect(radioGroup.prop('value')).toBe(defaultProps.value.type);
|
|
45
|
-
var withinOption = wrapper.find('.dateOptionWithin');
|
|
46
|
-
var agoOption = wrapper.find('.dateOptionAgo');
|
|
47
|
-
var betweenOption = wrapper.find('.dateOption');
|
|
48
|
-
expect(withinOption.length).toBe(1);
|
|
49
|
-
expect(withinOption.find(FormControlLabel_1.default).prop('value')).toBe(mdm_sdk_1.DateRangeTypes.WITHIN);
|
|
50
|
-
expect(agoOption.length).toBe(1);
|
|
51
|
-
expect(agoOption.find(FormControlLabel_1.default).prop('value')).toBe(mdm_sdk_1.DateRangeTypes.AGO);
|
|
52
|
-
expect(betweenOption.length).toBe(1);
|
|
53
|
-
expect(betweenOption.find(FormControlLabel_1.default).prop('value')).toBe(mdm_sdk_1.DateRangeTypes.BETWEEN);
|
|
54
|
-
});
|
|
55
|
-
it('should call props.onChange when type is changed to ago', function () {
|
|
56
|
-
var wrapper = (0, enzyme_1.shallow)(react_1.default.createElement(DateRangeSelector_1.DateRangeSelector, __assign({}, defaultProps)));
|
|
57
|
-
var radioGroup = wrapper.find(RadioGroup_1.default);
|
|
58
|
-
(0, test_utils_1.act)(function () {
|
|
59
|
-
var _a;
|
|
60
|
-
var changeEvent = { target: { value: mdm_sdk_1.DateRangeTypes.AGO } };
|
|
61
|
-
(_a = radioGroup.prop('onChange')) === null || _a === void 0 ? void 0 : _a(changeEvent, mdm_sdk_1.DateRangeTypes.AGO);
|
|
62
|
-
});
|
|
63
|
-
wrapper.update();
|
|
64
|
-
var agoValue = {
|
|
65
|
-
type: mdm_sdk_1.DateRangeTypes.AGO,
|
|
66
|
-
period: [null, 'minutes']
|
|
67
|
-
};
|
|
68
|
-
expect(defaultProps.onChange).toHaveBeenCalledWith(agoValue);
|
|
69
|
-
});
|
|
70
|
-
it('should call props.onChange when type is changed to between', function () {
|
|
71
|
-
var wrapper = (0, enzyme_1.shallow)(react_1.default.createElement(DateRangeSelector_1.DateRangeSelector, __assign({}, defaultProps)));
|
|
72
|
-
var radioGroup = wrapper.find(RadioGroup_1.default);
|
|
73
|
-
(0, test_utils_1.act)(function () {
|
|
74
|
-
var _a;
|
|
75
|
-
var changeEvent = { target: { value: mdm_sdk_1.DateRangeTypes.BETWEEN } };
|
|
76
|
-
(_a = radioGroup.prop('onChange')) === null || _a === void 0 ? void 0 : _a(changeEvent, mdm_sdk_1.DateRangeTypes.BETWEEN);
|
|
77
|
-
});
|
|
78
|
-
wrapper.update();
|
|
79
|
-
var betweenValue = {
|
|
80
|
-
type: mdm_sdk_1.DateRangeTypes.BETWEEN,
|
|
81
|
-
period: [null, null]
|
|
82
|
-
};
|
|
83
|
-
expect(defaultProps.onChange).toHaveBeenCalledWith(betweenValue);
|
|
84
|
-
});
|
|
85
|
-
it('should call props.onChange when type is changed to between', function () {
|
|
86
|
-
var agoValue = {
|
|
87
|
-
type: mdm_sdk_1.DateRangeTypes.AGO,
|
|
88
|
-
period: [4, 'month']
|
|
89
|
-
};
|
|
90
|
-
var props = {
|
|
91
|
-
value: agoValue,
|
|
92
|
-
onChange: jest.fn()
|
|
93
|
-
};
|
|
94
|
-
var wrapper = (0, enzyme_1.shallow)(react_1.default.createElement(DateRangeSelector_1.DateRangeSelector, __assign({}, props)));
|
|
95
|
-
var radioGroup = wrapper.find(RadioGroup_1.default);
|
|
96
|
-
(0, test_utils_1.act)(function () {
|
|
97
|
-
var _a;
|
|
98
|
-
var changeEvent = { target: { value: mdm_sdk_1.DateRangeTypes.WITHIN } };
|
|
99
|
-
(_a = radioGroup.prop('onChange')) === null || _a === void 0 ? void 0 : _a(changeEvent, mdm_sdk_1.DateRangeTypes.WITHIN);
|
|
100
|
-
});
|
|
101
|
-
wrapper.update();
|
|
102
|
-
var withinValue = {
|
|
103
|
-
type: mdm_sdk_1.DateRangeTypes.WITHIN,
|
|
104
|
-
period: [null, 'minutes']
|
|
105
|
-
};
|
|
106
|
-
expect(props.onChange).toHaveBeenCalledWith(withinValue);
|
|
107
|
-
});
|
|
108
|
-
it('should call props.onChange when within period is changed', function () {
|
|
109
|
-
var wrapper = (0, enzyme_1.shallow)(react_1.default.createElement(DateRangeSelector_1.DateRangeSelector, __assign({}, defaultProps)));
|
|
110
|
-
var withinOption = wrapper.find('.dateOptionWithin');
|
|
111
|
-
(0, test_utils_1.act)(function () {
|
|
112
|
-
withinOption.find(DateIntervalSelector_1.DateIntervalSelector).prop('onChange')([3, 'days']);
|
|
113
|
-
});
|
|
114
|
-
wrapper.update();
|
|
115
|
-
var newValue = {
|
|
116
|
-
type: mdm_sdk_1.DateRangeTypes.WITHIN,
|
|
117
|
-
period: [3, 'days']
|
|
118
|
-
};
|
|
119
|
-
expect(defaultProps.onChange).toHaveBeenCalledWith(newValue);
|
|
120
|
-
});
|
|
121
|
-
it('should call props.onChange when ago period is changed', function () {
|
|
122
|
-
var agoValue = {
|
|
123
|
-
type: mdm_sdk_1.DateRangeTypes.AGO,
|
|
124
|
-
period: [4, 'month']
|
|
125
|
-
};
|
|
126
|
-
var props = {
|
|
127
|
-
value: agoValue,
|
|
128
|
-
onChange: jest.fn()
|
|
129
|
-
};
|
|
130
|
-
var wrapper = (0, enzyme_1.shallow)(react_1.default.createElement(DateRangeSelector_1.DateRangeSelector, __assign({}, props)));
|
|
131
|
-
var agoOption = wrapper.find('.dateOptionAgo');
|
|
132
|
-
(0, test_utils_1.act)(function () {
|
|
133
|
-
agoOption.find(DateIntervalSelector_1.DateIntervalSelector).prop('onChange')([17, 'days']);
|
|
134
|
-
});
|
|
135
|
-
wrapper.update();
|
|
136
|
-
var newValue = {
|
|
137
|
-
type: mdm_sdk_1.DateRangeTypes.AGO,
|
|
138
|
-
period: [17, 'days']
|
|
139
|
-
};
|
|
140
|
-
expect(props.onChange).toHaveBeenCalledWith(newValue);
|
|
141
|
-
});
|
|
142
|
-
it('should call props.onChange when between period is changed', function () {
|
|
143
|
-
var betweenValue = {
|
|
144
|
-
type: mdm_sdk_1.DateRangeTypes.BETWEEN,
|
|
145
|
-
period: [new Date(123), new Date(456)]
|
|
146
|
-
};
|
|
147
|
-
var props = {
|
|
148
|
-
value: betweenValue,
|
|
149
|
-
onChange: jest.fn()
|
|
150
|
-
};
|
|
151
|
-
var wrapper = (0, enzyme_1.shallow)(react_1.default.createElement(DateRangeSelector_1.DateRangeSelector, __assign({}, props)));
|
|
152
|
-
var betweenOption = wrapper.find('.dateOption');
|
|
153
|
-
(0, test_utils_1.act)(function () {
|
|
154
|
-
betweenOption.find(CustomDateRangeEditor_1.CustomDateRangeEditor).prop('onChange')([new Date(234), new Date(567)]);
|
|
155
|
-
});
|
|
156
|
-
wrapper.update();
|
|
157
|
-
var newValue = {
|
|
158
|
-
type: mdm_sdk_1.DateRangeTypes.BETWEEN,
|
|
159
|
-
period: [new Date(234), new Date(567)]
|
|
160
|
-
};
|
|
161
|
-
expect(props.onChange).toHaveBeenCalledWith(newValue);
|
|
162
|
-
});
|
|
163
|
-
it('should render correctly if value is null', function () {
|
|
164
|
-
var wrapper = (0, enzyme_1.shallow)(react_1.default.createElement(DateRangeSelector_1.DateRangeSelector, __assign({}, defaultProps, { value: null })));
|
|
165
|
-
expect(wrapper.find(RadioGroup_1.default).prop('value')).toBe(null);
|
|
166
|
-
expect(wrapper.find('.dateOptionWithin').find(DateIntervalSelector_1.DateIntervalSelector).prop('interval')).toEqual([
|
|
167
|
-
null,
|
|
168
|
-
'minutes'
|
|
169
|
-
]);
|
|
170
|
-
expect(wrapper.find('.dateOptionAgo').find(DateIntervalSelector_1.DateIntervalSelector).prop('interval')).toEqual([null, 'minutes']);
|
|
171
|
-
expect(wrapper.find('.dateOption').find(CustomDateRangeEditor_1.CustomDateRangeEditor).prop('values')).toEqual([null, null]);
|
|
172
|
-
});
|
|
173
|
-
it('should apply null value from props correctly', function () {
|
|
174
|
-
var wrapper = (0, enzyme_1.mount)(react_1.default.createElement(DateRangeSelector_1.DateRangeSelector, __assign({}, defaultProps)));
|
|
175
|
-
wrapper.setProps({ value: null });
|
|
176
|
-
wrapper.update();
|
|
177
|
-
expect(wrapper.find(RadioGroup_1.default).prop('value')).toBe(null);
|
|
178
|
-
expect(wrapper.find('.dateOptionWithin').find(DateIntervalSelector_1.DateIntervalSelector).prop('interval')).toEqual([
|
|
179
|
-
null,
|
|
180
|
-
'minutes'
|
|
181
|
-
]);
|
|
182
|
-
expect(wrapper.find('.dateOptionAgo').find(DateIntervalSelector_1.DateIntervalSelector).prop('interval')).toEqual([null, 'minutes']);
|
|
183
|
-
expect(wrapper.find('.dateOption').find(CustomDateRangeEditor_1.CustomDateRangeEditor).prop('values')).toEqual([null, null]);
|
|
184
|
-
});
|
|
185
|
-
});
|
|
@@ -1,180 +0,0 @@
|
|
|
1
|
-
var __assign = (this && this.__assign) || function () {
|
|
2
|
-
__assign = Object.assign || function(t) {
|
|
3
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
-
s = arguments[i];
|
|
5
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
-
t[p] = s[p];
|
|
7
|
-
}
|
|
8
|
-
return t;
|
|
9
|
-
};
|
|
10
|
-
return __assign.apply(this, arguments);
|
|
11
|
-
};
|
|
12
|
-
import React from 'react';
|
|
13
|
-
import { mount, shallow } from 'enzyme';
|
|
14
|
-
import { act } from 'react-dom/test-utils';
|
|
15
|
-
import { DateRangeTypes } from '@reltio/mdm-sdk';
|
|
16
|
-
import FormControlLabel from '@mui/material/FormControlLabel';
|
|
17
|
-
import RadioGroup from '@mui/material/RadioGroup';
|
|
18
|
-
import Typography from '@mui/material/Typography';
|
|
19
|
-
import { CustomDateRangeEditor } from '../../../../../CustomDateRangeEditor';
|
|
20
|
-
import { DateIntervalSelector } from '../../../../../DateIntervalSelector';
|
|
21
|
-
import { DateRangeSelector } from './DateRangeSelector';
|
|
22
|
-
describe('DateRangeSelector tests', function () {
|
|
23
|
-
var value = {
|
|
24
|
-
type: DateRangeTypes.WITHIN,
|
|
25
|
-
period: [4, 'month']
|
|
26
|
-
};
|
|
27
|
-
var defaultProps = {
|
|
28
|
-
value: value,
|
|
29
|
-
onChange: jest.fn()
|
|
30
|
-
};
|
|
31
|
-
afterEach(function () {
|
|
32
|
-
jest.clearAllMocks();
|
|
33
|
-
});
|
|
34
|
-
it('should render correct default state', function () {
|
|
35
|
-
var wrapper = shallow(React.createElement(DateRangeSelector, __assign({}, defaultProps)));
|
|
36
|
-
expect(wrapper.find(Typography).filterWhere(function (component) { return component.text() === 'Date'; }).length).toBe(1);
|
|
37
|
-
var radioGroup = wrapper.find(RadioGroup);
|
|
38
|
-
expect(radioGroup.length).toBe(1);
|
|
39
|
-
expect(radioGroup.prop('value')).toBe(defaultProps.value.type);
|
|
40
|
-
var withinOption = wrapper.find('.dateOptionWithin');
|
|
41
|
-
var agoOption = wrapper.find('.dateOptionAgo');
|
|
42
|
-
var betweenOption = wrapper.find('.dateOption');
|
|
43
|
-
expect(withinOption.length).toBe(1);
|
|
44
|
-
expect(withinOption.find(FormControlLabel).prop('value')).toBe(DateRangeTypes.WITHIN);
|
|
45
|
-
expect(agoOption.length).toBe(1);
|
|
46
|
-
expect(agoOption.find(FormControlLabel).prop('value')).toBe(DateRangeTypes.AGO);
|
|
47
|
-
expect(betweenOption.length).toBe(1);
|
|
48
|
-
expect(betweenOption.find(FormControlLabel).prop('value')).toBe(DateRangeTypes.BETWEEN);
|
|
49
|
-
});
|
|
50
|
-
it('should call props.onChange when type is changed to ago', function () {
|
|
51
|
-
var wrapper = shallow(React.createElement(DateRangeSelector, __assign({}, defaultProps)));
|
|
52
|
-
var radioGroup = wrapper.find(RadioGroup);
|
|
53
|
-
act(function () {
|
|
54
|
-
var _a;
|
|
55
|
-
var changeEvent = { target: { value: DateRangeTypes.AGO } };
|
|
56
|
-
(_a = radioGroup.prop('onChange')) === null || _a === void 0 ? void 0 : _a(changeEvent, DateRangeTypes.AGO);
|
|
57
|
-
});
|
|
58
|
-
wrapper.update();
|
|
59
|
-
var agoValue = {
|
|
60
|
-
type: DateRangeTypes.AGO,
|
|
61
|
-
period: [null, 'minutes']
|
|
62
|
-
};
|
|
63
|
-
expect(defaultProps.onChange).toHaveBeenCalledWith(agoValue);
|
|
64
|
-
});
|
|
65
|
-
it('should call props.onChange when type is changed to between', function () {
|
|
66
|
-
var wrapper = shallow(React.createElement(DateRangeSelector, __assign({}, defaultProps)));
|
|
67
|
-
var radioGroup = wrapper.find(RadioGroup);
|
|
68
|
-
act(function () {
|
|
69
|
-
var _a;
|
|
70
|
-
var changeEvent = { target: { value: DateRangeTypes.BETWEEN } };
|
|
71
|
-
(_a = radioGroup.prop('onChange')) === null || _a === void 0 ? void 0 : _a(changeEvent, DateRangeTypes.BETWEEN);
|
|
72
|
-
});
|
|
73
|
-
wrapper.update();
|
|
74
|
-
var betweenValue = {
|
|
75
|
-
type: DateRangeTypes.BETWEEN,
|
|
76
|
-
period: [null, null]
|
|
77
|
-
};
|
|
78
|
-
expect(defaultProps.onChange).toHaveBeenCalledWith(betweenValue);
|
|
79
|
-
});
|
|
80
|
-
it('should call props.onChange when type is changed to between', function () {
|
|
81
|
-
var agoValue = {
|
|
82
|
-
type: DateRangeTypes.AGO,
|
|
83
|
-
period: [4, 'month']
|
|
84
|
-
};
|
|
85
|
-
var props = {
|
|
86
|
-
value: agoValue,
|
|
87
|
-
onChange: jest.fn()
|
|
88
|
-
};
|
|
89
|
-
var wrapper = shallow(React.createElement(DateRangeSelector, __assign({}, props)));
|
|
90
|
-
var radioGroup = wrapper.find(RadioGroup);
|
|
91
|
-
act(function () {
|
|
92
|
-
var _a;
|
|
93
|
-
var changeEvent = { target: { value: DateRangeTypes.WITHIN } };
|
|
94
|
-
(_a = radioGroup.prop('onChange')) === null || _a === void 0 ? void 0 : _a(changeEvent, DateRangeTypes.WITHIN);
|
|
95
|
-
});
|
|
96
|
-
wrapper.update();
|
|
97
|
-
var withinValue = {
|
|
98
|
-
type: DateRangeTypes.WITHIN,
|
|
99
|
-
period: [null, 'minutes']
|
|
100
|
-
};
|
|
101
|
-
expect(props.onChange).toHaveBeenCalledWith(withinValue);
|
|
102
|
-
});
|
|
103
|
-
it('should call props.onChange when within period is changed', function () {
|
|
104
|
-
var wrapper = shallow(React.createElement(DateRangeSelector, __assign({}, defaultProps)));
|
|
105
|
-
var withinOption = wrapper.find('.dateOptionWithin');
|
|
106
|
-
act(function () {
|
|
107
|
-
withinOption.find(DateIntervalSelector).prop('onChange')([3, 'days']);
|
|
108
|
-
});
|
|
109
|
-
wrapper.update();
|
|
110
|
-
var newValue = {
|
|
111
|
-
type: DateRangeTypes.WITHIN,
|
|
112
|
-
period: [3, 'days']
|
|
113
|
-
};
|
|
114
|
-
expect(defaultProps.onChange).toHaveBeenCalledWith(newValue);
|
|
115
|
-
});
|
|
116
|
-
it('should call props.onChange when ago period is changed', function () {
|
|
117
|
-
var agoValue = {
|
|
118
|
-
type: DateRangeTypes.AGO,
|
|
119
|
-
period: [4, 'month']
|
|
120
|
-
};
|
|
121
|
-
var props = {
|
|
122
|
-
value: agoValue,
|
|
123
|
-
onChange: jest.fn()
|
|
124
|
-
};
|
|
125
|
-
var wrapper = shallow(React.createElement(DateRangeSelector, __assign({}, props)));
|
|
126
|
-
var agoOption = wrapper.find('.dateOptionAgo');
|
|
127
|
-
act(function () {
|
|
128
|
-
agoOption.find(DateIntervalSelector).prop('onChange')([17, 'days']);
|
|
129
|
-
});
|
|
130
|
-
wrapper.update();
|
|
131
|
-
var newValue = {
|
|
132
|
-
type: DateRangeTypes.AGO,
|
|
133
|
-
period: [17, 'days']
|
|
134
|
-
};
|
|
135
|
-
expect(props.onChange).toHaveBeenCalledWith(newValue);
|
|
136
|
-
});
|
|
137
|
-
it('should call props.onChange when between period is changed', function () {
|
|
138
|
-
var betweenValue = {
|
|
139
|
-
type: DateRangeTypes.BETWEEN,
|
|
140
|
-
period: [new Date(123), new Date(456)]
|
|
141
|
-
};
|
|
142
|
-
var props = {
|
|
143
|
-
value: betweenValue,
|
|
144
|
-
onChange: jest.fn()
|
|
145
|
-
};
|
|
146
|
-
var wrapper = shallow(React.createElement(DateRangeSelector, __assign({}, props)));
|
|
147
|
-
var betweenOption = wrapper.find('.dateOption');
|
|
148
|
-
act(function () {
|
|
149
|
-
betweenOption.find(CustomDateRangeEditor).prop('onChange')([new Date(234), new Date(567)]);
|
|
150
|
-
});
|
|
151
|
-
wrapper.update();
|
|
152
|
-
var newValue = {
|
|
153
|
-
type: DateRangeTypes.BETWEEN,
|
|
154
|
-
period: [new Date(234), new Date(567)]
|
|
155
|
-
};
|
|
156
|
-
expect(props.onChange).toHaveBeenCalledWith(newValue);
|
|
157
|
-
});
|
|
158
|
-
it('should render correctly if value is null', function () {
|
|
159
|
-
var wrapper = shallow(React.createElement(DateRangeSelector, __assign({}, defaultProps, { value: null })));
|
|
160
|
-
expect(wrapper.find(RadioGroup).prop('value')).toBe(null);
|
|
161
|
-
expect(wrapper.find('.dateOptionWithin').find(DateIntervalSelector).prop('interval')).toEqual([
|
|
162
|
-
null,
|
|
163
|
-
'minutes'
|
|
164
|
-
]);
|
|
165
|
-
expect(wrapper.find('.dateOptionAgo').find(DateIntervalSelector).prop('interval')).toEqual([null, 'minutes']);
|
|
166
|
-
expect(wrapper.find('.dateOption').find(CustomDateRangeEditor).prop('values')).toEqual([null, null]);
|
|
167
|
-
});
|
|
168
|
-
it('should apply null value from props correctly', function () {
|
|
169
|
-
var wrapper = mount(React.createElement(DateRangeSelector, __assign({}, defaultProps)));
|
|
170
|
-
wrapper.setProps({ value: null });
|
|
171
|
-
wrapper.update();
|
|
172
|
-
expect(wrapper.find(RadioGroup).prop('value')).toBe(null);
|
|
173
|
-
expect(wrapper.find('.dateOptionWithin').find(DateIntervalSelector).prop('interval')).toEqual([
|
|
174
|
-
null,
|
|
175
|
-
'minutes'
|
|
176
|
-
]);
|
|
177
|
-
expect(wrapper.find('.dateOptionAgo').find(DateIntervalSelector).prop('interval')).toEqual([null, 'minutes']);
|
|
178
|
-
expect(wrapper.find('.dateOption').find(CustomDateRangeEditor).prop('values')).toEqual([null, null]);
|
|
179
|
-
});
|
|
180
|
-
});
|
|
File without changes
|