linear-react-components-ui 1.0.3 → 1.0.4
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/lib/alerts/alert.spec.js +133 -0
- package/lib/assets/styles/hint.scss +9 -0
- package/lib/avatar/avatar.spec.js +190 -0
- package/lib/badge/badge.spec.js +127 -0
- package/lib/buttons/SpinnerLoading.js +230 -0
- package/lib/buttons/buttons.spec.js +504 -0
- package/lib/calendar/calendar.spec.js +171 -0
- package/lib/checkbox/checkbox.spec.js +215 -0
- package/lib/checkbox/index.js +6 -3
- package/lib/dialog/dialog.spec.js +488 -0
- package/lib/drawer/Content.d.ts +1 -0
- package/lib/drawer/Drawer.d.ts +1 -0
- package/lib/drawer/Drawer.js +6 -3
- package/lib/drawer/Drawer.spec.js +258 -0
- package/lib/drawer/Header.d.ts +1 -0
- package/lib/drawer/helpers.d.ts +1 -0
- package/lib/drawer/index.d.ts +1 -0
- package/lib/drawer/types.d.ts +2 -1
- package/lib/dropdown/dropdown.spec.js +168 -0
- package/lib/fieldset/fieldset.spec.js +329 -0
- package/lib/form/form.spec.js +293 -0
- package/lib/gridlayout/gridLayout.spec.js +169 -0
- package/lib/hint/index.d.ts +6 -0
- package/lib/hint/index.js +25 -0
- package/lib/hint/types.d.ts +11 -0
- package/lib/hint/types.js +5 -0
- package/lib/icons/icons.spec.js +86 -0
- package/lib/inputs/base/InputTextBase.js +6 -3
- package/lib/inputs/base/base.spec.js +690 -0
- package/lib/inputs/base/index.js +1 -0
- package/lib/inputs/color/color_input.spec.js +174 -0
- package/lib/inputs/date/date.spec.js +354 -0
- package/lib/inputs/date/helper.js +16 -0
- package/lib/inputs/inputHOC.d.ts +2 -1
- package/lib/inputs/mask/helpers.d.ts +2 -1
- package/lib/inputs/mask/imaskHOC.d.ts +2 -1
- package/lib/inputs/mask/input_mask.spec.js +607 -0
- package/lib/inputs/number/BaseNumber.d.ts +2 -1
- package/lib/inputs/number/Currency.d.ts +2 -1
- package/lib/inputs/number/Decimal.d.ts +2 -1
- package/lib/inputs/number/index.d.ts +2 -1
- package/lib/inputs/number/numberfield.spec.js +215 -0
- package/lib/inputs/number/types.d.ts +2 -1
- package/lib/inputs/search/index.d.ts +2 -1
- package/lib/inputs/search/index.js +14 -12
- package/lib/inputs/search/search_input.spec.js +209 -0
- package/lib/inputs/select/ActionButtons.d.ts +2 -1
- package/lib/inputs/select/Dropdown.d.ts +2 -1
- package/lib/inputs/select/helper.d.ts +2 -1
- package/lib/inputs/select/index.d.ts +1 -1
- package/lib/inputs/select/multiple/Selecteds.d.ts +1 -1
- package/lib/inputs/select/multiple/index.d.ts +1 -1
- package/lib/inputs/select/select.spec.js +391 -0
- package/lib/inputs/select/simple/index.d.ts +1 -1
- package/lib/inputs/select/types.d.ts +2 -7
- package/lib/inputs/text/textfield.spec.js +215 -0
- package/lib/inputs/textarea/textarea.spec.js +59 -0
- package/lib/inputs/types.d.ts +9 -3
- package/lib/labelMessages/labelMessages.spec.js +176 -0
- package/lib/labels/label.spec.js +162 -0
- package/lib/list/list.spec.js +768 -0
- package/lib/menus/float/float-menu.spec.js +221 -0
- package/lib/menus/sidenav/sidenav.spec.js +379 -0
- package/lib/panel/panel.spec.js +216 -0
- package/lib/popover/popover.spec.js +146 -0
- package/lib/progress/progress.spec.js +86 -0
- package/lib/radio/radio.spec.js +189 -0
- package/lib/spinner/spinner.spec.js +152 -0
- package/lib/split/split.spec.js +151 -0
- package/lib/table/table.spec.js +352 -0
- package/lib/tabs/tabs.spec.js +349 -0
- package/lib/toolbar/toolbar.spec.js +394 -0
- package/lib/tooltip/tooltip.spec.js +203 -0
- package/lib/treeview/treeview.spec.js +279 -0
- package/lib/uitour/uitour.spec.js +176 -0
- package/package.json +1 -1
|
@@ -0,0 +1,329 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _react = _interopRequireDefault(require("react"));
|
|
4
|
+
|
|
5
|
+
var _react2 = require("@testing-library/react");
|
|
6
|
+
|
|
7
|
+
require("@testing-library/jest-dom/extend-expect");
|
|
8
|
+
|
|
9
|
+
var _index = _interopRequireDefault(require("./index"));
|
|
10
|
+
|
|
11
|
+
var _gridlayout = require("../gridlayout");
|
|
12
|
+
|
|
13
|
+
var _text = _interopRequireDefault(require("../inputs/text"));
|
|
14
|
+
|
|
15
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
16
|
+
|
|
17
|
+
describe('Fieldset', function () {
|
|
18
|
+
var fieldset = function fieldset(propsArgument) {
|
|
19
|
+
return /*#__PURE__*/_react["default"].createElement(_index["default"], propsArgument, /*#__PURE__*/_react["default"].createElement(_gridlayout.GridRow, {
|
|
20
|
+
template: "columns",
|
|
21
|
+
style: {
|
|
22
|
+
marginBottom: 20
|
|
23
|
+
}
|
|
24
|
+
}, /*#__PURE__*/_react["default"].createElement(_text["default"], {
|
|
25
|
+
required: true,
|
|
26
|
+
name: "nome",
|
|
27
|
+
value: "XPTO",
|
|
28
|
+
label: "Nome",
|
|
29
|
+
gridLayout: "12 12 12 12"
|
|
30
|
+
})));
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
var sessionStorageMock = function sessionStorageMock() {
|
|
34
|
+
var store = {};
|
|
35
|
+
return {
|
|
36
|
+
getItem: function getItem(key) {
|
|
37
|
+
return store[key] || null;
|
|
38
|
+
},
|
|
39
|
+
setItem: function setItem(key, value) {
|
|
40
|
+
store[key] = value.toString();
|
|
41
|
+
},
|
|
42
|
+
removeItem: function removeItem(key) {
|
|
43
|
+
delete store[key];
|
|
44
|
+
},
|
|
45
|
+
clear: function clear() {
|
|
46
|
+
store = {};
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
var storePermissionAttrMock = function storePermissionAttrMock() {
|
|
52
|
+
Object.defineProperty(window, 'sessionStorage', {
|
|
53
|
+
value: sessionStorageMock()
|
|
54
|
+
});
|
|
55
|
+
var permissionMock = {
|
|
56
|
+
SG_SEGURANCA: [{
|
|
57
|
+
nome: 'Autorização',
|
|
58
|
+
codigo: 'SG_SEGURANCA_AUTORIZACAO',
|
|
59
|
+
permissoes: [{
|
|
60
|
+
codigo: 'SG_SEGURANCA_AUTORIZACAO_RECURSOS'
|
|
61
|
+
}],
|
|
62
|
+
itens: []
|
|
63
|
+
}]
|
|
64
|
+
};
|
|
65
|
+
sessionStorage.setItem('permissionsStorage', JSON.stringify(permissionMock));
|
|
66
|
+
};
|
|
67
|
+
|
|
68
|
+
it('should render correctly', function () {
|
|
69
|
+
var _render = (0, _react2.render)(fieldset()),
|
|
70
|
+
container = _render.container;
|
|
71
|
+
|
|
72
|
+
var gridRow = container.querySelector('.-withinput.grid-container');
|
|
73
|
+
var textField = container.querySelector('.textinput.text-align-left');
|
|
74
|
+
expect(container.firstChild).toHaveClass('fieldset-component');
|
|
75
|
+
expect(gridRow).toBeTruthy();
|
|
76
|
+
expect(textField).toBeTruthy();
|
|
77
|
+
expect(textField.name).toBe('nome');
|
|
78
|
+
expect(textField.value).toBe('XPTO');
|
|
79
|
+
});
|
|
80
|
+
it('should apply customClass', function () {
|
|
81
|
+
var customClass = 'testecustomclass';
|
|
82
|
+
|
|
83
|
+
var _render2 = (0, _react2.render)(fieldset({
|
|
84
|
+
customClass: customClass
|
|
85
|
+
})),
|
|
86
|
+
container = _render2.container;
|
|
87
|
+
|
|
88
|
+
expect(container.firstChild).toHaveClass(customClass);
|
|
89
|
+
});
|
|
90
|
+
it('should apply template', function () {
|
|
91
|
+
var template = 'columns';
|
|
92
|
+
|
|
93
|
+
var _render3 = (0, _react2.render)(fieldset({
|
|
94
|
+
template: template
|
|
95
|
+
})),
|
|
96
|
+
container = _render3.container;
|
|
97
|
+
|
|
98
|
+
var contentFieldSet = container.querySelector('.contentfieldset');
|
|
99
|
+
expect(contentFieldSet).toHaveClass("-template".concat(template));
|
|
100
|
+
});
|
|
101
|
+
it('should render title', function () {
|
|
102
|
+
var _render4 = (0, _react2.render)(fieldset({
|
|
103
|
+
title: 'Teste'
|
|
104
|
+
})),
|
|
105
|
+
container = _render4.container;
|
|
106
|
+
|
|
107
|
+
var fieldsetTitle = container.querySelector('.legend');
|
|
108
|
+
expect(fieldsetTitle).toBeTruthy();
|
|
109
|
+
expect(fieldsetTitle).toHaveTextContent('Teste');
|
|
110
|
+
});
|
|
111
|
+
it('should apply titleAlign', function () {
|
|
112
|
+
var titleAlign = 'right';
|
|
113
|
+
|
|
114
|
+
var _render5 = (0, _react2.render)(fieldset({
|
|
115
|
+
titleAlign: titleAlign,
|
|
116
|
+
title: 'Teste titleAlign'
|
|
117
|
+
})),
|
|
118
|
+
container = _render5.container;
|
|
119
|
+
|
|
120
|
+
var fieldsetTitle = container.querySelector('.legend');
|
|
121
|
+
expect(fieldsetTitle.align).toBe(titleAlign);
|
|
122
|
+
});
|
|
123
|
+
it('should apply titleCustomClass', function () {
|
|
124
|
+
var titleCustomClass = 'titleCustomClass';
|
|
125
|
+
|
|
126
|
+
var _render6 = (0, _react2.render)(fieldset({
|
|
127
|
+
titleCustomClass: titleCustomClass,
|
|
128
|
+
title: 'Teste titleCustomClass'
|
|
129
|
+
})),
|
|
130
|
+
container = _render6.container;
|
|
131
|
+
|
|
132
|
+
var fieldsetTitle = container.querySelector('.legend');
|
|
133
|
+
expect(fieldsetTitle).toHaveClass(titleCustomClass);
|
|
134
|
+
});
|
|
135
|
+
it('should apply colsCount', function () {
|
|
136
|
+
var colsCount = 4;
|
|
137
|
+
|
|
138
|
+
var _render7 = (0, _react2.render)(fieldset({
|
|
139
|
+
template: 'columns',
|
|
140
|
+
colsCount: colsCount
|
|
141
|
+
})),
|
|
142
|
+
container = _render7.container;
|
|
143
|
+
|
|
144
|
+
var contentFieldSet = container.querySelector('.contentfieldset.-templatecolumns');
|
|
145
|
+
expect(contentFieldSet).toHaveStyle("grid-template-columns: repeat(".concat(colsCount, ", 1fr)"));
|
|
146
|
+
});
|
|
147
|
+
it('should apply rowsCount', function () {
|
|
148
|
+
var rowsCount = 4;
|
|
149
|
+
|
|
150
|
+
var _render8 = (0, _react2.render)(fieldset({
|
|
151
|
+
template: 'rows',
|
|
152
|
+
rowsCount: rowsCount
|
|
153
|
+
})),
|
|
154
|
+
container = _render8.container;
|
|
155
|
+
|
|
156
|
+
var contentFieldSet = container.querySelector('.contentfieldset.-templaterows');
|
|
157
|
+
expect(contentFieldSet).toHaveStyle("grid-template-rows: repeat(".concat(rowsCount, ", 1fr)"));
|
|
158
|
+
});
|
|
159
|
+
it('should apply style', function () {
|
|
160
|
+
var style = {
|
|
161
|
+
paddingTop: '10px',
|
|
162
|
+
marginBottom: '10px'
|
|
163
|
+
};
|
|
164
|
+
|
|
165
|
+
var _render9 = (0, _react2.render)(fieldset({
|
|
166
|
+
style: style
|
|
167
|
+
})),
|
|
168
|
+
container = _render9.container;
|
|
169
|
+
|
|
170
|
+
expect(container.firstChild).toHaveStyle(style);
|
|
171
|
+
});
|
|
172
|
+
it('should apply styleContent', function () {
|
|
173
|
+
var styleContent = {
|
|
174
|
+
paddingTop: '10px',
|
|
175
|
+
marginBottom: '10px'
|
|
176
|
+
};
|
|
177
|
+
|
|
178
|
+
var _render10 = (0, _react2.render)(fieldset({
|
|
179
|
+
styleContent: styleContent
|
|
180
|
+
})),
|
|
181
|
+
container = _render10.container;
|
|
182
|
+
|
|
183
|
+
var contentFieldSet = container.querySelector('.contentfieldset');
|
|
184
|
+
expect(contentFieldSet).toHaveStyle(styleContent);
|
|
185
|
+
});
|
|
186
|
+
it('should apply styleTitle', function () {
|
|
187
|
+
var styleTitle = {
|
|
188
|
+
paddingTop: '10px',
|
|
189
|
+
marginBottom: '10px'
|
|
190
|
+
};
|
|
191
|
+
|
|
192
|
+
var _render11 = (0, _react2.render)(fieldset({
|
|
193
|
+
title: 'Teste',
|
|
194
|
+
styleTitle: styleTitle
|
|
195
|
+
})),
|
|
196
|
+
container = _render11.container;
|
|
197
|
+
|
|
198
|
+
var fieldsetTitle = container.querySelector('.legend');
|
|
199
|
+
expect(fieldsetTitle).toHaveStyle(styleTitle);
|
|
200
|
+
});
|
|
201
|
+
describe('prop type', function () {
|
|
202
|
+
it('should apply -primary css class', function () {
|
|
203
|
+
var type = 'primary';
|
|
204
|
+
|
|
205
|
+
var _render12 = (0, _react2.render)(fieldset({
|
|
206
|
+
type: type
|
|
207
|
+
})),
|
|
208
|
+
container = _render12.container;
|
|
209
|
+
|
|
210
|
+
expect(container.firstChild).toHaveClass("-".concat(type));
|
|
211
|
+
});
|
|
212
|
+
it('should apply -danger css class', function () {
|
|
213
|
+
var type = 'danger';
|
|
214
|
+
|
|
215
|
+
var _render13 = (0, _react2.render)(fieldset({
|
|
216
|
+
type: type
|
|
217
|
+
})),
|
|
218
|
+
container = _render13.container;
|
|
219
|
+
|
|
220
|
+
expect(container.firstChild).toHaveClass("-".concat(type));
|
|
221
|
+
});
|
|
222
|
+
it('should apply -success css class', function () {
|
|
223
|
+
var type = 'success';
|
|
224
|
+
|
|
225
|
+
var _render14 = (0, _react2.render)(fieldset({
|
|
226
|
+
type: type
|
|
227
|
+
})),
|
|
228
|
+
container = _render14.container;
|
|
229
|
+
|
|
230
|
+
expect(container.firstChild).toHaveClass("-".concat(type));
|
|
231
|
+
});
|
|
232
|
+
it('should apply -warning css class', function () {
|
|
233
|
+
var type = 'warning';
|
|
234
|
+
|
|
235
|
+
var _render15 = (0, _react2.render)(fieldset({
|
|
236
|
+
type: type
|
|
237
|
+
})),
|
|
238
|
+
container = _render15.container;
|
|
239
|
+
|
|
240
|
+
expect(container.firstChild).toHaveClass("-".concat(type));
|
|
241
|
+
});
|
|
242
|
+
it('should apply -info css class', function () {
|
|
243
|
+
var type = 'info';
|
|
244
|
+
|
|
245
|
+
var _render16 = (0, _react2.render)(fieldset({
|
|
246
|
+
type: type
|
|
247
|
+
})),
|
|
248
|
+
container = _render16.container;
|
|
249
|
+
|
|
250
|
+
expect(container.firstChild).toHaveClass("-".concat(type));
|
|
251
|
+
});
|
|
252
|
+
});
|
|
253
|
+
it('prop hasError should apply -witherror css class', function () {
|
|
254
|
+
var _render17 = (0, _react2.render)(fieldset({
|
|
255
|
+
hasError: true
|
|
256
|
+
})),
|
|
257
|
+
container = _render17.container;
|
|
258
|
+
|
|
259
|
+
expect(container.firstChild).toHaveClass('-witherror');
|
|
260
|
+
});
|
|
261
|
+
describe('prop gridCols', function () {
|
|
262
|
+
var gridCols = '4';
|
|
263
|
+
it('should wrapp subject within Grid component', function () {
|
|
264
|
+
var _render18 = (0, _react2.render)(fieldset({
|
|
265
|
+
gridCols: gridCols
|
|
266
|
+
})),
|
|
267
|
+
container = _render18.container;
|
|
268
|
+
|
|
269
|
+
expect(container.firstChild).toHaveClass('grid-container');
|
|
270
|
+
});
|
|
271
|
+
it('should apply into Grid component', function () {
|
|
272
|
+
var _render19 = (0, _react2.render)(fieldset({
|
|
273
|
+
gridCols: gridCols
|
|
274
|
+
})),
|
|
275
|
+
container = _render19.container;
|
|
276
|
+
|
|
277
|
+
expect(container.firstChild).toHaveClass("col-xs-".concat(gridCols));
|
|
278
|
+
});
|
|
279
|
+
});
|
|
280
|
+
describe('prop permissionAttr', function () {
|
|
281
|
+
beforeEach(function () {
|
|
282
|
+
window.sessionStorage.clear();
|
|
283
|
+
});
|
|
284
|
+
it('should allow default subject rendering', function () {
|
|
285
|
+
storePermissionAttrMock();
|
|
286
|
+
|
|
287
|
+
var _render20 = (0, _react2.render)(fieldset({
|
|
288
|
+
permissionAttr: {
|
|
289
|
+
module: 'SG_SEGURANCA',
|
|
290
|
+
feature: 'SG_SEGURANCA_AUTORIZACAO',
|
|
291
|
+
operation: 'SG_SEGURANCA_AUTORIZACAO_RECURSOS',
|
|
292
|
+
onDenied: 'unvisible'
|
|
293
|
+
}
|
|
294
|
+
})),
|
|
295
|
+
container = _render20.container;
|
|
296
|
+
|
|
297
|
+
expect(container.firstChild).toHaveClass('fieldset-component');
|
|
298
|
+
expect(container.querySelector('.no-permission-component')).not.toBeInTheDocument();
|
|
299
|
+
});
|
|
300
|
+
it('should turn subject unvisible', function () {
|
|
301
|
+
storePermissionAttrMock();
|
|
302
|
+
(0, _react2.render)(fieldset({
|
|
303
|
+
permissionAttr: {
|
|
304
|
+
module: 'SG_XPTO',
|
|
305
|
+
feature: 'SG_SEGURANCA_AUTORIZACAO',
|
|
306
|
+
operation: 'SG_SEGURANCA_AUTORIZACAO_RECURSOS',
|
|
307
|
+
onDenied: 'unvisible'
|
|
308
|
+
}
|
|
309
|
+
}));
|
|
310
|
+
expect(document.querySelector('.fieldset-component')).not.toBeInTheDocument();
|
|
311
|
+
});
|
|
312
|
+
it('should hide subject content', function () {
|
|
313
|
+
storePermissionAttrMock();
|
|
314
|
+
|
|
315
|
+
var _render21 = (0, _react2.render)(fieldset({
|
|
316
|
+
permissionAttr: {
|
|
317
|
+
module: 'SG_XPTO',
|
|
318
|
+
feature: 'SG_SEGURANCA_AUTORIZACAO',
|
|
319
|
+
operation: 'SG_SEGURANCA_AUTORIZACAO_RECURSOS',
|
|
320
|
+
onDenied: 'hideContent'
|
|
321
|
+
}
|
|
322
|
+
})),
|
|
323
|
+
container = _render21.container;
|
|
324
|
+
|
|
325
|
+
expect(container.firstChild).toHaveClass('fieldset-component');
|
|
326
|
+
expect(container.querySelector('.no-permission-component')).toBeInTheDocument();
|
|
327
|
+
});
|
|
328
|
+
});
|
|
329
|
+
});
|
|
@@ -0,0 +1,293 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
|
4
|
+
|
|
5
|
+
var _react = _interopRequireDefault(require("react"));
|
|
6
|
+
|
|
7
|
+
var _react2 = require("@testing-library/react");
|
|
8
|
+
|
|
9
|
+
require("babel-polyfill");
|
|
10
|
+
|
|
11
|
+
require("@testing-library/jest-dom");
|
|
12
|
+
|
|
13
|
+
var _ = _interopRequireWildcard(require("."));
|
|
14
|
+
|
|
15
|
+
var _text = _interopRequireDefault(require("../inputs/text"));
|
|
16
|
+
|
|
17
|
+
var _checkbox = _interopRequireDefault(require("../checkbox"));
|
|
18
|
+
|
|
19
|
+
var _select = _interopRequireDefault(require("../inputs/select"));
|
|
20
|
+
|
|
21
|
+
var _number = _interopRequireDefault(require("../inputs/number"));
|
|
22
|
+
|
|
23
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
24
|
+
|
|
25
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
26
|
+
|
|
27
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
28
|
+
|
|
29
|
+
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
30
|
+
|
|
31
|
+
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
32
|
+
|
|
33
|
+
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
34
|
+
|
|
35
|
+
var mockOnSubmit = jest.fn();
|
|
36
|
+
var mockHandlerSubmit = jest.fn();
|
|
37
|
+
var data = {
|
|
38
|
+
status: [0],
|
|
39
|
+
nome: 'Gustavo',
|
|
40
|
+
idade: '4'
|
|
41
|
+
};
|
|
42
|
+
var mockSelectOptions = [{
|
|
43
|
+
id: 0,
|
|
44
|
+
name: 'Ativo'
|
|
45
|
+
}, {
|
|
46
|
+
id: 1,
|
|
47
|
+
name: 'Inativo'
|
|
48
|
+
}, {
|
|
49
|
+
id: 2,
|
|
50
|
+
name: 'Excluído'
|
|
51
|
+
}];
|
|
52
|
+
|
|
53
|
+
var mockForm = function mockForm(props, fieldProps, fieldArrayProps) {
|
|
54
|
+
return /*#__PURE__*/_react["default"].createElement(_["default"], _extends({
|
|
55
|
+
dataSource: data,
|
|
56
|
+
onSubmit: mockOnSubmit,
|
|
57
|
+
handlerSubmit: mockHandlerSubmit,
|
|
58
|
+
customClass: "mock-form",
|
|
59
|
+
style: {
|
|
60
|
+
marginBottom: '10px'
|
|
61
|
+
}
|
|
62
|
+
}, props), /*#__PURE__*/_react["default"].createElement(_.Field, _extends({
|
|
63
|
+
label: "Nome",
|
|
64
|
+
component: _text["default"],
|
|
65
|
+
name: "nome",
|
|
66
|
+
externalMessagesErrors: ['External Message Errors']
|
|
67
|
+
}, fieldProps)), /*#__PURE__*/_react["default"].createElement(_.Field, {
|
|
68
|
+
label: "Endereco Valido",
|
|
69
|
+
component: _checkbox["default"],
|
|
70
|
+
name: "endereco.valido",
|
|
71
|
+
componentType: "Checkbox",
|
|
72
|
+
fieldId: "fooo"
|
|
73
|
+
}), /*#__PURE__*/_react["default"].createElement(_.FieldArray, _extends({
|
|
74
|
+
label: "Status",
|
|
75
|
+
name: "status",
|
|
76
|
+
idKey: "id",
|
|
77
|
+
descriptionKey: "name",
|
|
78
|
+
multiple: true,
|
|
79
|
+
labelContainerStyle: {
|
|
80
|
+
height: 200
|
|
81
|
+
},
|
|
82
|
+
dataSource: mockSelectOptions,
|
|
83
|
+
component: _select["default"],
|
|
84
|
+
valuePropName: "values",
|
|
85
|
+
changePropName: "onChange",
|
|
86
|
+
bordered: true
|
|
87
|
+
}, fieldArrayProps)), /*#__PURE__*/_react["default"].createElement(_.FieldNumber, {
|
|
88
|
+
label: "Idade",
|
|
89
|
+
component: _number["default"],
|
|
90
|
+
scale: 3,
|
|
91
|
+
name: "idade"
|
|
92
|
+
}));
|
|
93
|
+
};
|
|
94
|
+
|
|
95
|
+
describe('Form', function () {
|
|
96
|
+
it('should render correctly', function () {
|
|
97
|
+
var _render = (0, _react2.render)(mockForm()),
|
|
98
|
+
container = _render.container;
|
|
99
|
+
|
|
100
|
+
expect(container.firstChild).toBeTruthy();
|
|
101
|
+
});
|
|
102
|
+
it('should apply custom class', function () {
|
|
103
|
+
var _render2 = (0, _react2.render)(mockForm()),
|
|
104
|
+
container = _render2.container;
|
|
105
|
+
|
|
106
|
+
expect(container.firstChild).toHaveClass('mock-form');
|
|
107
|
+
});
|
|
108
|
+
it('should apply style', function () {
|
|
109
|
+
var _render3 = (0, _react2.render)(mockForm()),
|
|
110
|
+
container = _render3.container;
|
|
111
|
+
|
|
112
|
+
expect(container.firstChild).toHaveStyle('margin-bottom: 10px;');
|
|
113
|
+
});
|
|
114
|
+
it('should render with dataSource', function () {
|
|
115
|
+
var mockOnDataChange = jest.fn();
|
|
116
|
+
|
|
117
|
+
var _render4 = (0, _react2.render)(mockForm({
|
|
118
|
+
onDataChange: mockOnDataChange
|
|
119
|
+
})),
|
|
120
|
+
getByDisplayValue = _render4.getByDisplayValue;
|
|
121
|
+
|
|
122
|
+
_react2.fireEvent.change(getByDisplayValue('Gustavo'), {
|
|
123
|
+
target: {
|
|
124
|
+
value: 'Foo'
|
|
125
|
+
}
|
|
126
|
+
});
|
|
127
|
+
|
|
128
|
+
expect(mockOnDataChange).toHaveBeenCalledWith(_extends({}, data));
|
|
129
|
+
});
|
|
130
|
+
it('should submit form', function () {
|
|
131
|
+
var _render5 = (0, _react2.render)(mockForm()),
|
|
132
|
+
container = _render5.container;
|
|
133
|
+
|
|
134
|
+
_react2.fireEvent.submit(container.querySelector('.form-component'));
|
|
135
|
+
|
|
136
|
+
expect(mockHandlerSubmit).toHaveBeenCalled();
|
|
137
|
+
});
|
|
138
|
+
it('should submit on press enter', function () {
|
|
139
|
+
var _render6 = (0, _react2.render)(mockForm()),
|
|
140
|
+
container = _render6.container;
|
|
141
|
+
|
|
142
|
+
_react2.fireEvent.keyUp(container.querySelector('.form-component'), {
|
|
143
|
+
key: 'Enter',
|
|
144
|
+
code: 'Enter',
|
|
145
|
+
keyCode: '13',
|
|
146
|
+
charCode: '13'
|
|
147
|
+
});
|
|
148
|
+
|
|
149
|
+
expect(mockHandlerSubmit).toHaveBeenCalled();
|
|
150
|
+
});
|
|
151
|
+
it('should change form data', function () {
|
|
152
|
+
var mockOnDataChange = jest.fn();
|
|
153
|
+
|
|
154
|
+
var _render7 = (0, _react2.render)(mockForm({
|
|
155
|
+
onDataChange: mockOnDataChange
|
|
156
|
+
})),
|
|
157
|
+
getByDisplayValue = _render7.getByDisplayValue;
|
|
158
|
+
|
|
159
|
+
_react2.fireEvent.change(getByDisplayValue('Foo'), {
|
|
160
|
+
target: {
|
|
161
|
+
value: 'Gustavo'
|
|
162
|
+
}
|
|
163
|
+
});
|
|
164
|
+
|
|
165
|
+
expect(mockOnDataChange).toHaveBeenCalledWith(_extends({}, data));
|
|
166
|
+
});
|
|
167
|
+
it('should execute handlerValidates', function () {
|
|
168
|
+
var mockOnDataChange = jest.fn();
|
|
169
|
+
var mockHandlerValidates = jest.fn();
|
|
170
|
+
|
|
171
|
+
var _render8 = (0, _react2.render)(mockForm({
|
|
172
|
+
onDataChange: mockOnDataChange,
|
|
173
|
+
handlerValidates: mockHandlerValidates
|
|
174
|
+
})),
|
|
175
|
+
getByDisplayValue = _render8.getByDisplayValue;
|
|
176
|
+
|
|
177
|
+
_react2.fireEvent.change(getByDisplayValue('Gustavo'), {
|
|
178
|
+
target: {
|
|
179
|
+
value: 'XPTO'
|
|
180
|
+
}
|
|
181
|
+
});
|
|
182
|
+
|
|
183
|
+
expect(mockHandlerValidates).toHaveBeenCalled();
|
|
184
|
+
});
|
|
185
|
+
it('should execute handlerReset', function () {
|
|
186
|
+
var mockHandlerReset = jest.fn();
|
|
187
|
+
(0, _react2.render)(mockForm({
|
|
188
|
+
handlerReset: mockHandlerReset
|
|
189
|
+
}));
|
|
190
|
+
expect(mockHandlerReset).toHaveBeenCalled();
|
|
191
|
+
});
|
|
192
|
+
it('should apply disabled', function () {
|
|
193
|
+
var mockHandlerReset = jest.fn();
|
|
194
|
+
(0, _react2.render)(mockForm({
|
|
195
|
+
disabled: true,
|
|
196
|
+
handlerReset: mockHandlerReset
|
|
197
|
+
}));
|
|
198
|
+
expect(mockHandlerReset).not.toHaveBeenCalled();
|
|
199
|
+
});
|
|
200
|
+
});
|
|
201
|
+
describe('Field', function () {
|
|
202
|
+
describe('Default & Number', function () {
|
|
203
|
+
it('should field has name', function () {
|
|
204
|
+
var _render9 = (0, _react2.render)(mockForm()),
|
|
205
|
+
getByDisplayValue = _render9.getByDisplayValue;
|
|
206
|
+
|
|
207
|
+
expect(getByDisplayValue('XPTO')).toHaveAttribute('name', 'nome');
|
|
208
|
+
});
|
|
209
|
+
it('should render component', function () {
|
|
210
|
+
var _render10 = (0, _react2.render)(mockForm()),
|
|
211
|
+
container = _render10.container;
|
|
212
|
+
|
|
213
|
+
expect(container.firstChild).toContainElement(container.querySelector('.textinput'));
|
|
214
|
+
});
|
|
215
|
+
it('should execute callback on field change', function () {
|
|
216
|
+
var mockOnChange = jest.fn();
|
|
217
|
+
|
|
218
|
+
var _render11 = (0, _react2.render)(mockForm({}, {
|
|
219
|
+
onChange: mockOnChange
|
|
220
|
+
})),
|
|
221
|
+
getByDisplayValue = _render11.getByDisplayValue;
|
|
222
|
+
|
|
223
|
+
_react2.fireEvent.change(getByDisplayValue('XPTO'), {
|
|
224
|
+
target: {
|
|
225
|
+
value: 'Gustavo'
|
|
226
|
+
}
|
|
227
|
+
});
|
|
228
|
+
|
|
229
|
+
expect(mockOnChange).toHaveBeenCalled();
|
|
230
|
+
});
|
|
231
|
+
it('should render label', function () {
|
|
232
|
+
var _render12 = (0, _react2.render)(mockForm()),
|
|
233
|
+
container = _render12.container;
|
|
234
|
+
|
|
235
|
+
expect(container.firstChild).toHaveTextContent('Nome');
|
|
236
|
+
});
|
|
237
|
+
it('should apply validators', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {
|
|
238
|
+
var _render13, container;
|
|
239
|
+
|
|
240
|
+
return regeneratorRuntime.wrap(function _callee$(_context) {
|
|
241
|
+
while (1) {
|
|
242
|
+
switch (_context.prev = _context.next) {
|
|
243
|
+
case 0:
|
|
244
|
+
_render13 = (0, _react2.render)(mockForm()), container = _render13.container;
|
|
245
|
+
expect(container.querySelector('.errormessages')).toHaveTextContent('External Message Errors');
|
|
246
|
+
|
|
247
|
+
case 2:
|
|
248
|
+
case "end":
|
|
249
|
+
return _context.stop();
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
}, _callee);
|
|
253
|
+
})));
|
|
254
|
+
it('should apply fieldId', function () {
|
|
255
|
+
var _render14 = (0, _react2.render)(mockForm()),
|
|
256
|
+
container = _render14.container;
|
|
257
|
+
|
|
258
|
+
expect(container.querySelector('#fooo')).toBeInTheDocument();
|
|
259
|
+
});
|
|
260
|
+
});
|
|
261
|
+
describe('Array', function () {
|
|
262
|
+
it('should apply bordered', function () {
|
|
263
|
+
var _render15 = (0, _react2.render)(mockForm()),
|
|
264
|
+
container = _render15.container;
|
|
265
|
+
|
|
266
|
+
expect(container.querySelector('.arraycontainer')).toHaveClass('-bordered');
|
|
267
|
+
});
|
|
268
|
+
it('should apply labelContainerStyle', function () {
|
|
269
|
+
var _render16 = (0, _react2.render)(mockForm()),
|
|
270
|
+
container = _render16.container;
|
|
271
|
+
|
|
272
|
+
expect(container.querySelector('.arraycontainer')).toHaveStyle('height: 200px;');
|
|
273
|
+
});
|
|
274
|
+
it('should apply grid columns', function () {
|
|
275
|
+
var _render17 = (0, _react2.render)(mockForm({}, {}, {
|
|
276
|
+
cols: '12 12 12 12'
|
|
277
|
+
})),
|
|
278
|
+
container = _render17.container;
|
|
279
|
+
|
|
280
|
+
expect(container.querySelector('.grid-container')).toBeInTheDocument();
|
|
281
|
+
expect(container.querySelector('.grid-container')).toHaveClass('col-xs-12 col-sm-12 col-md-12 col-lg-12');
|
|
282
|
+
expect(container.querySelector('.grid-container')).toContainElement(container.querySelector('.arraycontainer'));
|
|
283
|
+
});
|
|
284
|
+
it('should apply skipLabel', function () {
|
|
285
|
+
var _render18 = (0, _react2.render)(mockForm({}, {}, {
|
|
286
|
+
skipLabel: true
|
|
287
|
+
})),
|
|
288
|
+
container = _render18.container;
|
|
289
|
+
|
|
290
|
+
expect(container.querySelector('.arraycontainer')).not.toBeInTheDocument();
|
|
291
|
+
});
|
|
292
|
+
});
|
|
293
|
+
});
|