@dxc-technology/halstack-react 0.0.0-c18d61a → 0.0.0-c1a6e05
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/BackgroundColorContext.d.ts +2 -2
- package/BackgroundColorContext.js +1 -1
- package/HalstackContext.d.ts +1329 -5
- package/HalstackContext.js +117 -77
- package/accordion/Accordion.js +13 -24
- package/accordion/Accordion.stories.tsx +102 -13
- package/accordion/Accordion.test.js +1 -1
- package/accordion/types.d.ts +3 -3
- package/accordion-group/AccordionGroup.d.ts +4 -3
- package/accordion-group/AccordionGroup.js +23 -44
- package/accordion-group/AccordionGroup.test.js +1 -1
- package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
- package/accordion-group/AccordionGroupAccordion.js +43 -0
- package/accordion-group/types.d.ts +2 -2
- package/alert/Alert.js +4 -8
- package/alert/Alert.stories.tsx +28 -0
- package/alert/Alert.test.js +1 -1
- package/bleed/Bleed.stories.tsx +1 -0
- package/box/Box.js +3 -5
- package/box/Box.stories.tsx +15 -0
- package/box/Box.test.js +1 -1
- package/bulleted-list/BulletedList.js +4 -2
- package/bulleted-list/BulletedList.stories.tsx +7 -1
- package/bulleted-list/types.d.ts +31 -4
- package/button/Button.js +13 -16
- package/button/Button.stories.tsx +151 -9
- package/button/Button.test.js +1 -1
- package/button/types.d.ts +3 -3
- package/card/Card.js +12 -13
- package/card/Card.stories.tsx +12 -13
- package/card/Card.test.js +1 -1
- package/checkbox/Checkbox.d.ts +2 -2
- package/checkbox/Checkbox.js +18 -17
- package/checkbox/Checkbox.stories.tsx +131 -59
- package/checkbox/Checkbox.test.js +1 -1
- package/checkbox/types.d.ts +6 -2
- package/chip/Chip.js +28 -49
- package/chip/Chip.stories.tsx +121 -26
- package/chip/Chip.test.js +3 -5
- package/common/OpenSans.css +68 -80
- package/common/coreTokens.d.ts +146 -0
- package/common/coreTokens.js +167 -0
- package/common/utils.d.ts +1 -0
- package/common/utils.js +4 -4
- package/common/variables.d.ts +1482 -0
- package/common/variables.js +981 -1129
- package/date-input/Calendar.d.ts +4 -0
- package/date-input/Calendar.js +258 -0
- package/date-input/DateInput.js +134 -237
- package/date-input/DateInput.stories.tsx +199 -33
- package/date-input/DateInput.test.js +494 -138
- package/date-input/DatePicker.d.ts +4 -0
- package/date-input/DatePicker.js +146 -0
- package/date-input/Icons.d.ts +6 -0
- package/date-input/Icons.js +75 -0
- package/date-input/YearPicker.d.ts +4 -0
- package/date-input/YearPicker.js +126 -0
- package/date-input/types.d.ts +51 -0
- package/dialog/Dialog.js +61 -74
- package/dialog/Dialog.stories.tsx +211 -159
- package/dialog/Dialog.test.js +302 -3
- package/dialog/types.d.ts +2 -2
- package/dropdown/Dropdown.js +37 -37
- package/dropdown/Dropdown.stories.tsx +210 -84
- package/dropdown/Dropdown.test.js +20 -24
- package/dropdown/DropdownMenu.js +12 -18
- package/dropdown/DropdownMenuItem.js +4 -17
- package/dropdown/types.d.ts +3 -3
- package/file-input/FileInput.d.ts +2 -2
- package/file-input/FileInput.js +28 -52
- package/file-input/FileInput.stories.tsx +96 -17
- package/file-input/FileInput.test.js +14 -55
- package/file-input/FileItem.d.ts +2 -12
- package/file-input/FileItem.js +29 -41
- package/file-input/types.d.ts +17 -0
- package/flex/Flex.js +4 -2
- package/flex/Flex.stories.tsx +35 -26
- package/flex/types.d.ts +70 -5
- package/footer/Footer.js +6 -8
- package/footer/Footer.stories.tsx +91 -0
- package/footer/Footer.test.js +14 -26
- package/grid/Grid.d.ts +7 -0
- package/grid/Grid.js +91 -0
- package/grid/Grid.stories.tsx +219 -0
- package/grid/types.d.ts +115 -0
- package/header/Header.d.ts +3 -2
- package/header/Header.js +21 -23
- package/header/Header.stories.tsx +149 -6
- package/header/Header.test.js +2 -2
- package/header/types.d.ts +2 -2
- package/heading/Heading.js +1 -1
- package/heading/Heading.test.js +1 -1
- package/inset/Inset.stories.tsx +2 -1
- package/layout/ApplicationLayout.d.ts +3 -3
- package/layout/ApplicationLayout.js +1 -1
- package/layout/types.d.ts +2 -3
- package/link/Link.js +4 -4
- package/link/Link.stories.tsx +60 -0
- package/link/Link.test.js +2 -4
- package/link/types.d.ts +2 -2
- package/main.d.ts +3 -2
- package/main.js +9 -1
- package/{tabs-nav → nav-tabs}/NavTabs.js +1 -1
- package/{tabs-nav → nav-tabs}/NavTabs.stories.tsx +96 -6
- package/{tabs-nav → nav-tabs}/NavTabs.test.js +1 -1
- package/{tabs-nav → nav-tabs}/Tab.js +37 -17
- package/nav-tabs/types.js +5 -0
- package/number-input/NumberInput.test.js +6 -7
- package/package.json +8 -13
- package/paginator/Icons.d.ts +5 -0
- package/paginator/Icons.js +16 -28
- package/paginator/Paginator.js +6 -14
- package/paginator/Paginator.stories.tsx +24 -0
- package/paginator/Paginator.test.js +44 -47
- package/paragraph/Paragraph.d.ts +3 -4
- package/paragraph/Paragraph.js +5 -5
- package/password-input/PasswordInput.test.js +1 -1
- package/progress-bar/ProgressBar.d.ts +2 -2
- package/progress-bar/ProgressBar.js +5 -5
- package/progress-bar/ProgressBar.stories.jsx +35 -2
- package/progress-bar/ProgressBar.test.js +1 -1
- package/progress-bar/types.d.ts +4 -3
- package/quick-nav/QuickNav.stories.tsx +14 -0
- package/radio-group/Radio.js +10 -10
- package/radio-group/RadioGroup.js +8 -10
- package/radio-group/RadioGroup.stories.tsx +131 -18
- package/radio-group/RadioGroup.test.js +1 -1
- package/resultsetTable/Icons.d.ts +7 -0
- package/resultsetTable/Icons.js +51 -0
- package/resultsetTable/ResultsetTable.js +49 -106
- package/resultsetTable/ResultsetTable.stories.tsx +50 -25
- package/resultsetTable/ResultsetTable.test.js +41 -64
- package/resultsetTable/types.d.ts +1 -1
- package/select/Listbox.d.ts +1 -1
- package/select/Listbox.js +5 -34
- package/select/Option.js +11 -24
- package/select/Select.js +56 -35
- package/select/Select.stories.tsx +494 -150
- package/select/Select.test.js +76 -81
- package/select/types.d.ts +2 -2
- package/sidenav/Icons.d.ts +7 -0
- package/sidenav/Icons.js +51 -0
- package/sidenav/Sidenav.d.ts +2 -2
- package/sidenav/Sidenav.js +66 -96
- package/sidenav/Sidenav.stories.tsx +165 -63
- package/sidenav/types.d.ts +21 -18
- package/slider/Slider.d.ts +2 -2
- package/slider/Slider.js +11 -11
- package/slider/Slider.stories.tsx +57 -0
- package/slider/Slider.test.js +1 -1
- package/slider/types.d.ts +6 -2
- package/spinner/Spinner.js +17 -23
- package/spinner/Spinner.stories.jsx +53 -27
- package/spinner/Spinner.test.js +1 -1
- package/switch/Switch.d.ts +3 -3
- package/switch/Switch.js +7 -6
- package/switch/Switch.stories.tsx +33 -0
- package/switch/Switch.test.js +1 -1
- package/switch/types.d.ts +8 -3
- package/table/Table.js +2 -2
- package/table/Table.stories.jsx +80 -1
- package/table/Table.test.js +2 -2
- package/tabs/Tab.js +12 -15
- package/tabs/Tabs.js +11 -17
- package/tabs/Tabs.stories.tsx +45 -5
- package/tabs/Tabs.test.js +4 -5
- package/tabs/types.d.ts +2 -2
- package/tag/Tag.js +7 -9
- package/tag/Tag.stories.tsx +14 -1
- package/tag/Tag.test.js +1 -1
- package/text-input/Suggestion.js +34 -7
- package/text-input/TextInput.js +11 -15
- package/text-input/TextInput.stories.tsx +93 -5
- package/text-input/TextInput.test.js +587 -635
- package/textarea/Textarea.js +3 -4
- package/textarea/Textarea.stories.jsx +60 -1
- package/textarea/Textarea.test.js +2 -4
- package/toggle-group/ToggleGroup.d.ts +2 -2
- package/toggle-group/ToggleGroup.js +7 -4
- package/toggle-group/ToggleGroup.stories.tsx +42 -0
- package/toggle-group/ToggleGroup.test.js +1 -1
- package/toggle-group/types.d.ts +1 -1
- package/typography/Typography.d.ts +2 -2
- package/typography/Typography.js +14 -113
- package/typography/Typography.stories.tsx +1 -1
- package/useTheme.d.ts +1234 -1
- package/useTheme.js +1 -1
- package/useTranslatedLabels.d.ts +84 -1
- package/utils/BaseTypography.d.ts +21 -0
- package/utils/BaseTypography.js +108 -0
- package/utils/FocusLock.d.ts +13 -0
- package/utils/FocusLock.js +138 -0
- package/wizard/Wizard.js +2 -2
- package/wizard/Wizard.stories.tsx +20 -0
- package/wizard/Wizard.test.js +1 -1
- package/wizard/types.d.ts +5 -6
- package/common/RequiredComponent.js +0 -32
- /package/{tabs-nav → grid}/types.js +0 -0
- /package/{tabs-nav → nav-tabs}/NavTabs.d.ts +0 -0
- /package/{tabs-nav → nav-tabs}/Tab.d.ts +0 -0
- /package/{tabs-nav → nav-tabs}/types.d.ts +0 -0
|
@@ -16,7 +16,7 @@ var _react2 = require("@testing-library/react");
|
|
|
16
16
|
|
|
17
17
|
var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
|
|
18
18
|
|
|
19
|
-
var _TextInput = _interopRequireDefault(require("./TextInput"));
|
|
19
|
+
var _TextInput = _interopRequireDefault(require("./TextInput.tsx"));
|
|
20
20
|
|
|
21
21
|
// Mocking DOMRect for Radix Primitive Popover
|
|
22
22
|
global.globalThis = global;
|
|
@@ -57,6 +57,7 @@ global.DOMRect = {
|
|
|
57
57
|
}
|
|
58
58
|
};
|
|
59
59
|
var countries = ["Afghanistan", "Albania", "Algeria", "Andorra", "Angola", "Antigua and Barbuda", "Bahamas", "Bahrain", "Bangladesh", "Barbados", "Cabo Verde", "Cambodia", "Cameroon", "Canada", "Cayman Islands, The", "Central African Republic", "Chad", "Democratic Republic of the Congo", "Dominican Republic", "Dominica", "Denmark", "Djibouti"];
|
|
60
|
+
var specialCharacters = ["/", "\\", "*", "(", ")", "[", "]", "+", "?", "*{[]}|"];
|
|
60
61
|
describe("TextInput component tests", function () {
|
|
61
62
|
test("Renders with correct error aria attributes", function () {
|
|
62
63
|
var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
@@ -401,27 +402,16 @@ describe("TextInput component tests", function () {
|
|
|
401
402
|
value: "Blur test"
|
|
402
403
|
});
|
|
403
404
|
});
|
|
404
|
-
test("Clear action tooltip is correct",
|
|
405
|
-
var _render10,
|
|
405
|
+
test("Clear action tooltip is correct", function () {
|
|
406
|
+
var _render10 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
407
|
+
label: "Input label",
|
|
408
|
+
value: "Text",
|
|
409
|
+
clearable: true
|
|
410
|
+
})),
|
|
411
|
+
getByTitle = _render10.getByTitle;
|
|
406
412
|
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
switch (_context.prev = _context.next) {
|
|
410
|
-
case 0:
|
|
411
|
-
_render10 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
412
|
-
label: "Input label",
|
|
413
|
-
value: "Text",
|
|
414
|
-
clearable: true
|
|
415
|
-
})), getByTitle = _render10.getByTitle;
|
|
416
|
-
expect(getByTitle("Clear field")).toBeTruthy();
|
|
417
|
-
|
|
418
|
-
case 2:
|
|
419
|
-
case "end":
|
|
420
|
-
return _context.stop();
|
|
421
|
-
}
|
|
422
|
-
}
|
|
423
|
-
}, _callee);
|
|
424
|
-
})));
|
|
413
|
+
expect(getByTitle("Clear field")).toBeTruthy();
|
|
414
|
+
});
|
|
425
415
|
test("Clear action onClick cleans the input", function () {
|
|
426
416
|
var _render11 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
427
417
|
label: "Input label",
|
|
@@ -691,113 +681,88 @@ describe("TextInput component tests", function () {
|
|
|
691
681
|
});
|
|
692
682
|
});
|
|
693
683
|
describe("TextInput component synchronous autosuggest tests", function () {
|
|
694
|
-
test("Autosuggest is displayed when the input gains focus",
|
|
695
|
-
var onChange
|
|
684
|
+
test("Autosuggest is displayed when the input gains focus", function () {
|
|
685
|
+
var onChange = jest.fn();
|
|
696
686
|
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
suggestions: countries,
|
|
705
|
-
onChange: onChange
|
|
706
|
-
})), getByRole = _render21.getByRole, getByText = _render21.getByText;
|
|
707
|
-
input = getByRole("combobox");
|
|
687
|
+
var _render21 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
688
|
+
label: "Autocomplete Countries",
|
|
689
|
+
suggestions: countries,
|
|
690
|
+
onChange: onChange
|
|
691
|
+
})),
|
|
692
|
+
getByRole = _render21.getByRole,
|
|
693
|
+
getByText = _render21.getByText;
|
|
708
694
|
|
|
709
|
-
|
|
695
|
+
var input = getByRole("combobox");
|
|
710
696
|
|
|
711
|
-
|
|
712
|
-
expect(list).toBeTruthy();
|
|
713
|
-
expect(getByText("Afghanistan")).toBeTruthy();
|
|
714
|
-
expect(getByText("Albania")).toBeTruthy();
|
|
715
|
-
expect(getByText("Algeria")).toBeTruthy();
|
|
716
|
-
expect(getByText("Andorra")).toBeTruthy();
|
|
697
|
+
_react2.fireEvent.focus(input);
|
|
717
698
|
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
})
|
|
725
|
-
test("Autosuggest is displayed when the user clicks the input",
|
|
726
|
-
var onChange
|
|
699
|
+
var list = getByRole("listbox");
|
|
700
|
+
expect(list).toBeTruthy();
|
|
701
|
+
expect(getByText("Afghanistan")).toBeTruthy();
|
|
702
|
+
expect(getByText("Albania")).toBeTruthy();
|
|
703
|
+
expect(getByText("Algeria")).toBeTruthy();
|
|
704
|
+
expect(getByText("Andorra")).toBeTruthy();
|
|
705
|
+
});
|
|
706
|
+
test("Autosuggest is displayed when the user clicks the input", function () {
|
|
707
|
+
var onChange = jest.fn();
|
|
727
708
|
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
suggestions: countries,
|
|
736
|
-
onChange: onChange
|
|
737
|
-
})), getByRole = _render22.getByRole, getByText = _render22.getByText;
|
|
738
|
-
input = getByRole("combobox");
|
|
709
|
+
var _render22 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
710
|
+
label: "Autocomplete Countries",
|
|
711
|
+
suggestions: countries,
|
|
712
|
+
onChange: onChange
|
|
713
|
+
})),
|
|
714
|
+
getByRole = _render22.getByRole,
|
|
715
|
+
getByText = _render22.getByText;
|
|
739
716
|
|
|
740
|
-
|
|
717
|
+
var input = getByRole("combobox");
|
|
741
718
|
|
|
742
|
-
|
|
743
|
-
expect(list).toBeTruthy();
|
|
744
|
-
expect(getByText("Afghanistan")).toBeTruthy();
|
|
745
|
-
expect(getByText("Albania")).toBeTruthy();
|
|
746
|
-
expect(getByText("Algeria")).toBeTruthy();
|
|
747
|
-
expect(getByText("Andorra")).toBeTruthy();
|
|
719
|
+
_react2.fireEvent.focus(input);
|
|
748
720
|
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
})
|
|
756
|
-
test("Autosuggest is displayed while the user is writing (if closed previously, if it is open stays open)",
|
|
757
|
-
var onChange
|
|
721
|
+
var list = getByRole("listbox");
|
|
722
|
+
expect(list).toBeTruthy();
|
|
723
|
+
expect(getByText("Afghanistan")).toBeTruthy();
|
|
724
|
+
expect(getByText("Albania")).toBeTruthy();
|
|
725
|
+
expect(getByText("Algeria")).toBeTruthy();
|
|
726
|
+
expect(getByText("Andorra")).toBeTruthy();
|
|
727
|
+
});
|
|
728
|
+
test("Autosuggest is displayed while the user is writing (if closed previously, if it is open stays open)", function () {
|
|
729
|
+
var onChange = jest.fn();
|
|
758
730
|
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
|
|
768
|
-
})), getByRole = _render23.getByRole, queryByRole = _render23.queryByRole, getByText = _render23.getByText, getAllByText = _render23.getAllByText;
|
|
769
|
-
input = getByRole("combobox");
|
|
731
|
+
var _render23 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
732
|
+
label: "Autocomplete Countries",
|
|
733
|
+
suggestions: countries,
|
|
734
|
+
onChange: onChange
|
|
735
|
+
})),
|
|
736
|
+
getByRole = _render23.getByRole,
|
|
737
|
+
queryByRole = _render23.queryByRole,
|
|
738
|
+
getByText = _render23.getByText,
|
|
739
|
+
getAllByText = _render23.getAllByText;
|
|
770
740
|
|
|
771
|
-
|
|
741
|
+
var input = getByRole("combobox");
|
|
772
742
|
|
|
773
|
-
|
|
774
|
-
expect(list).toBeTruthy();
|
|
743
|
+
_react2.fireEvent.focus(input);
|
|
775
744
|
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
code: "Esc",
|
|
779
|
-
keyCode: 27,
|
|
780
|
-
charCode: 27
|
|
781
|
-
});
|
|
745
|
+
var list = getByRole("listbox");
|
|
746
|
+
expect(list).toBeTruthy();
|
|
782
747
|
|
|
783
|
-
|
|
748
|
+
_react2.fireEvent.keyDown(input, {
|
|
749
|
+
key: "Esc",
|
|
750
|
+
code: "Esc",
|
|
751
|
+
keyCode: 27,
|
|
752
|
+
charCode: 27
|
|
753
|
+
});
|
|
784
754
|
|
|
785
|
-
|
|
755
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
786
756
|
|
|
787
|
-
|
|
788
|
-
expect(getAllByText("B").length).toBe(4);
|
|
789
|
-
expect(getByText("ahamas")).toBeTruthy();
|
|
790
|
-
expect(getByText("ahrain")).toBeTruthy();
|
|
791
|
-
expect(getByText("angladesh")).toBeTruthy();
|
|
792
|
-
expect(getByText("arbados")).toBeTruthy();
|
|
757
|
+
_userEvent["default"].type(input, "B");
|
|
793
758
|
|
|
794
|
-
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
})
|
|
759
|
+
expect(list).toBeTruthy();
|
|
760
|
+
expect(getAllByText("B").length).toBe(4);
|
|
761
|
+
expect(getByText("ahamas")).toBeTruthy();
|
|
762
|
+
expect(getByText("ahrain")).toBeTruthy();
|
|
763
|
+
expect(getByText("angladesh")).toBeTruthy();
|
|
764
|
+
expect(getByText("arbados")).toBeTruthy();
|
|
765
|
+
});
|
|
801
766
|
test("Autosuggest displays filtered when the input has a default value", function () {
|
|
802
767
|
var _render24 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
803
768
|
label: "Uncontrolled suggestions filtered by default",
|
|
@@ -821,517 +786,510 @@ describe("TextInput component synchronous autosuggest tests", function () {
|
|
|
821
786
|
expect(getByText("3")).toBeTruthy();
|
|
822
787
|
expect(getByText("4")).toBeTruthy();
|
|
823
788
|
});
|
|
824
|
-
test("Autosuggest is not displayed when prop suggestions is an empty array",
|
|
825
|
-
var onChange
|
|
789
|
+
test("Autosuggest is not displayed when prop suggestions is an empty array", function () {
|
|
790
|
+
var onChange = jest.fn();
|
|
826
791
|
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
label: "Autocomplete Countries",
|
|
834
|
-
suggestions: [],
|
|
835
|
-
onChange: onChange
|
|
836
|
-
})), queryByRole = _render25.queryByRole;
|
|
837
|
-
input = queryByRole("textbox");
|
|
792
|
+
var _render25 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
793
|
+
label: "Autocomplete Countries",
|
|
794
|
+
suggestions: [],
|
|
795
|
+
onChange: onChange
|
|
796
|
+
})),
|
|
797
|
+
queryByRole = _render25.queryByRole;
|
|
838
798
|
|
|
839
|
-
|
|
799
|
+
var input = queryByRole("textbox");
|
|
840
800
|
|
|
841
|
-
|
|
801
|
+
_react2.fireEvent.focus(input);
|
|
842
802
|
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
}
|
|
848
|
-
}, _callee5);
|
|
849
|
-
})));
|
|
850
|
-
test("Autosuggest closes the listbox when there are no matches for the user's input", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee6() {
|
|
851
|
-
var onChange, _render26, getByRole, queryByRole, getByText, input, list;
|
|
803
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
804
|
+
});
|
|
805
|
+
test("Autosuggest closes the listbox when there are no matches for the user's input", function () {
|
|
806
|
+
var onChange = jest.fn();
|
|
852
807
|
|
|
853
|
-
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
onChange: onChange
|
|
862
|
-
})), getByRole = _render26.getByRole, queryByRole = _render26.queryByRole, getByText = _render26.getByText;
|
|
863
|
-
input = getByRole("combobox");
|
|
808
|
+
var _render26 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
809
|
+
label: "Autocomplete Countries",
|
|
810
|
+
suggestions: countries,
|
|
811
|
+
onChange: onChange
|
|
812
|
+
})),
|
|
813
|
+
getByRole = _render26.getByRole,
|
|
814
|
+
queryByRole = _render26.queryByRole,
|
|
815
|
+
getByText = _render26.getByText;
|
|
864
816
|
|
|
865
|
-
|
|
817
|
+
var input = getByRole("combobox");
|
|
866
818
|
|
|
867
|
-
|
|
868
|
-
expect(list).toBeTruthy();
|
|
869
|
-
expect(getByText("Afghanistan")).toBeTruthy();
|
|
819
|
+
_react2.fireEvent.focus(input);
|
|
870
820
|
|
|
871
|
-
|
|
821
|
+
var list = getByRole("listbox");
|
|
822
|
+
expect(list).toBeTruthy();
|
|
823
|
+
expect(getByText("Afghanistan")).toBeTruthy();
|
|
872
824
|
|
|
873
|
-
|
|
825
|
+
_userEvent["default"].type(input, "x");
|
|
874
826
|
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
}
|
|
880
|
-
}, _callee6);
|
|
881
|
-
})));
|
|
882
|
-
test("Autosuggest with no matches founded doesn't let the listbox to be opened", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee7() {
|
|
883
|
-
var onChange, _render27, getByRole, queryByRole, getByText, input, list;
|
|
827
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
828
|
+
});
|
|
829
|
+
test("Autosuggest with no matches founded doesn't let the listbox to be opened", function () {
|
|
830
|
+
var onChange = jest.fn();
|
|
884
831
|
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
onChange: onChange
|
|
894
|
-
})), getByRole = _render27.getByRole, queryByRole = _render27.queryByRole, getByText = _render27.getByText;
|
|
895
|
-
input = getByRole("combobox");
|
|
832
|
+
var _render27 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
833
|
+
label: "Autocomplete Countries",
|
|
834
|
+
suggestions: countries,
|
|
835
|
+
onChange: onChange
|
|
836
|
+
})),
|
|
837
|
+
getByRole = _render27.getByRole,
|
|
838
|
+
queryByRole = _render27.queryByRole,
|
|
839
|
+
getByText = _render27.getByText;
|
|
896
840
|
|
|
897
|
-
|
|
841
|
+
var input = getByRole("combobox");
|
|
898
842
|
|
|
899
|
-
|
|
900
|
-
expect(list).toBeTruthy();
|
|
901
|
-
expect(getByText("Afghanistan")).toBeTruthy();
|
|
843
|
+
_react2.fireEvent.focus(input);
|
|
902
844
|
|
|
903
|
-
|
|
845
|
+
var list = getByRole("listbox");
|
|
846
|
+
expect(list).toBeTruthy();
|
|
847
|
+
expect(getByText("Afghanistan")).toBeTruthy();
|
|
904
848
|
|
|
905
|
-
|
|
849
|
+
_userEvent["default"].type(input, "x");
|
|
906
850
|
|
|
907
|
-
|
|
851
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
908
852
|
|
|
909
|
-
|
|
853
|
+
_react2.fireEvent.focus(input);
|
|
910
854
|
|
|
911
|
-
|
|
912
|
-
key: "ArrowUp",
|
|
913
|
-
code: "ArrowUp",
|
|
914
|
-
keyCode: 38,
|
|
915
|
-
charCode: 38
|
|
916
|
-
});
|
|
855
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
917
856
|
|
|
918
|
-
|
|
857
|
+
_react2.fireEvent.keyDown(input, {
|
|
858
|
+
key: "ArrowUp",
|
|
859
|
+
code: "ArrowUp",
|
|
860
|
+
keyCode: 38,
|
|
861
|
+
charCode: 38
|
|
862
|
+
});
|
|
919
863
|
|
|
920
|
-
|
|
921
|
-
key: "ArrowDown",
|
|
922
|
-
code: "ArrowDown",
|
|
923
|
-
keyCode: 40,
|
|
924
|
-
charCode: 40
|
|
925
|
-
});
|
|
864
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
926
865
|
|
|
927
|
-
|
|
866
|
+
_react2.fireEvent.keyDown(input, {
|
|
867
|
+
key: "ArrowDown",
|
|
868
|
+
code: "ArrowDown",
|
|
869
|
+
keyCode: 40,
|
|
870
|
+
charCode: 40
|
|
871
|
+
});
|
|
928
872
|
|
|
929
|
-
|
|
930
|
-
|
|
931
|
-
|
|
932
|
-
|
|
933
|
-
}
|
|
934
|
-
}, _callee7);
|
|
935
|
-
})));
|
|
936
|
-
test("Autosuggest uncontrolled - Suggestion selected by click", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee8() {
|
|
937
|
-
var onChange, _render28, getByRole, getByText, queryByRole, input;
|
|
873
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
874
|
+
});
|
|
875
|
+
test("Autosuggest uncontrolled - Suggestion selected by click", function () {
|
|
876
|
+
var onChange = jest.fn();
|
|
938
877
|
|
|
939
|
-
|
|
940
|
-
|
|
941
|
-
|
|
942
|
-
|
|
943
|
-
|
|
944
|
-
|
|
945
|
-
|
|
946
|
-
|
|
947
|
-
onChange: onChange
|
|
948
|
-
})), getByRole = _render28.getByRole, getByText = _render28.getByText, queryByRole = _render28.queryByRole;
|
|
949
|
-
input = getByRole("combobox");
|
|
878
|
+
var _render28 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
879
|
+
label: "Autocomplete Countries",
|
|
880
|
+
suggestions: countries,
|
|
881
|
+
onChange: onChange
|
|
882
|
+
})),
|
|
883
|
+
getByRole = _render28.getByRole,
|
|
884
|
+
getByText = _render28.getByText,
|
|
885
|
+
queryByRole = _render28.queryByRole;
|
|
950
886
|
|
|
951
|
-
|
|
887
|
+
var input = getByRole("combobox");
|
|
952
888
|
|
|
953
|
-
|
|
889
|
+
_react2.fireEvent.focus(input);
|
|
954
890
|
|
|
955
|
-
|
|
956
|
-
expect(getByText("Alba")).toBeTruthy();
|
|
957
|
-
expect(getByText("nia")).toBeTruthy();
|
|
891
|
+
_userEvent["default"].type(input, "Alba");
|
|
958
892
|
|
|
959
|
-
|
|
893
|
+
expect(onChange).toHaveBeenCalled();
|
|
894
|
+
expect(getByText("Alba")).toBeTruthy();
|
|
895
|
+
expect(getByText("nia")).toBeTruthy();
|
|
960
896
|
|
|
961
|
-
|
|
962
|
-
expect(queryByRole("listbox")).toBeFalsy();
|
|
897
|
+
_userEvent["default"].click(getByRole("option"));
|
|
963
898
|
|
|
964
|
-
|
|
965
|
-
|
|
966
|
-
|
|
967
|
-
|
|
968
|
-
|
|
969
|
-
}, _callee8);
|
|
970
|
-
})));
|
|
971
|
-
test("Autosuggest controlled - Suggestion selected by click", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee9() {
|
|
972
|
-
var onChange, _render29, getByRole, getByText, queryByRole, input;
|
|
899
|
+
expect(input.value).toBe("Albania");
|
|
900
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
901
|
+
});
|
|
902
|
+
test("Autosuggest controlled - Suggestion selected by click", function () {
|
|
903
|
+
var onChange = jest.fn();
|
|
973
904
|
|
|
974
|
-
|
|
975
|
-
|
|
976
|
-
|
|
977
|
-
|
|
978
|
-
|
|
979
|
-
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
|
|
983
|
-
onChange: onChange
|
|
984
|
-
})), getByRole = _render29.getByRole, getByText = _render29.getByText, queryByRole = _render29.queryByRole;
|
|
985
|
-
input = getByRole("combobox");
|
|
905
|
+
var _render29 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
906
|
+
label: "Autocomplete Countries",
|
|
907
|
+
value: "Andor",
|
|
908
|
+
suggestions: countries,
|
|
909
|
+
onChange: onChange
|
|
910
|
+
})),
|
|
911
|
+
getByRole = _render29.getByRole,
|
|
912
|
+
getByText = _render29.getByText,
|
|
913
|
+
queryByRole = _render29.queryByRole;
|
|
986
914
|
|
|
987
|
-
|
|
915
|
+
var input = getByRole("combobox");
|
|
988
916
|
|
|
989
|
-
|
|
990
|
-
expect(getByText("Andor")).toBeTruthy();
|
|
991
|
-
expect(getByText("ra")).toBeTruthy();
|
|
917
|
+
_userEvent["default"].click(getByText("Autocomplete Countries"));
|
|
992
918
|
|
|
993
|
-
|
|
919
|
+
expect(input.value).toBe("Andor");
|
|
920
|
+
expect(getByText("Andor")).toBeTruthy();
|
|
921
|
+
expect(getByText("ra")).toBeTruthy();
|
|
994
922
|
|
|
995
|
-
|
|
996
|
-
value: "Andorra"
|
|
997
|
-
});
|
|
998
|
-
expect(queryByRole("listbox")).toBeFalsy();
|
|
923
|
+
_userEvent["default"].click(getByRole("option"));
|
|
999
924
|
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
|
|
1003
|
-
|
|
1004
|
-
|
|
1005
|
-
|
|
1006
|
-
|
|
1007
|
-
|
|
1008
|
-
var onChange, onBlur, _render30, getByRole, getByText, input;
|
|
925
|
+
expect(onChange).toHaveBeenCalledWith({
|
|
926
|
+
value: "Andorra"
|
|
927
|
+
});
|
|
928
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
929
|
+
});
|
|
930
|
+
test("Autosuggest - Pattern constraint", function () {
|
|
931
|
+
var onChange = jest.fn();
|
|
932
|
+
var onBlur = jest.fn();
|
|
1009
933
|
|
|
1010
|
-
|
|
1011
|
-
|
|
1012
|
-
|
|
1013
|
-
|
|
1014
|
-
|
|
1015
|
-
|
|
1016
|
-
|
|
1017
|
-
|
|
1018
|
-
|
|
1019
|
-
onChange: onChange,
|
|
1020
|
-
onBlur: onBlur,
|
|
1021
|
-
pattern: "^.*(?=.*[a-zA-Z])(?=.*\\d)(?=.*[!&$%&? \"]).*$"
|
|
1022
|
-
})), getByRole = _render30.getByRole, getByText = _render30.getByText;
|
|
1023
|
-
input = getByRole("combobox");
|
|
934
|
+
var _render30 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
935
|
+
label: "Autocomplete Countries",
|
|
936
|
+
suggestions: countries,
|
|
937
|
+
onChange: onChange,
|
|
938
|
+
onBlur: onBlur,
|
|
939
|
+
pattern: "^.*(?=.*[a-zA-Z])(?=.*\\d)(?=.*[!&$%&? \"]).*$"
|
|
940
|
+
})),
|
|
941
|
+
getByRole = _render30.getByRole,
|
|
942
|
+
getByText = _render30.getByText;
|
|
1024
943
|
|
|
1025
|
-
|
|
944
|
+
var input = getByRole("combobox");
|
|
1026
945
|
|
|
1027
|
-
|
|
946
|
+
_react2.fireEvent.focus(input);
|
|
1028
947
|
|
|
1029
|
-
|
|
1030
|
-
expect(getByText("ra")).toBeTruthy();
|
|
948
|
+
_userEvent["default"].type(input, "Andor");
|
|
1031
949
|
|
|
1032
|
-
|
|
950
|
+
expect(getByText("Andor")).toBeTruthy();
|
|
951
|
+
expect(getByText("ra")).toBeTruthy();
|
|
1033
952
|
|
|
1034
|
-
|
|
1035
|
-
value: "Andorra",
|
|
1036
|
-
error: "Please match the format requested."
|
|
1037
|
-
});
|
|
953
|
+
_userEvent["default"].click(getByRole("option"));
|
|
1038
954
|
|
|
1039
|
-
|
|
955
|
+
expect(onChange).toHaveBeenCalledWith({
|
|
956
|
+
value: "Andorra",
|
|
957
|
+
error: "Please match the format requested."
|
|
958
|
+
});
|
|
1040
959
|
|
|
1041
|
-
|
|
1042
|
-
value: "Andorra",
|
|
1043
|
-
error: "Please match the format requested."
|
|
1044
|
-
});
|
|
960
|
+
_react2.fireEvent.blur(input);
|
|
1045
961
|
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
|
|
1054
|
-
var onChange, onBlur, _render31, getByText, getByRole, input;
|
|
962
|
+
expect(onBlur).toHaveBeenCalledWith({
|
|
963
|
+
value: "Andorra",
|
|
964
|
+
error: "Please match the format requested."
|
|
965
|
+
});
|
|
966
|
+
});
|
|
967
|
+
test("Autosuggest - Length constraint", function () {
|
|
968
|
+
var onChange = jest.fn();
|
|
969
|
+
var onBlur = jest.fn();
|
|
1055
970
|
|
|
1056
|
-
|
|
1057
|
-
|
|
1058
|
-
|
|
1059
|
-
|
|
1060
|
-
|
|
1061
|
-
|
|
1062
|
-
|
|
1063
|
-
|
|
1064
|
-
|
|
1065
|
-
|
|
1066
|
-
onBlur: onBlur,
|
|
1067
|
-
minLength: 5,
|
|
1068
|
-
maxLength: 10
|
|
1069
|
-
})), getByText = _render31.getByText, getByRole = _render31.getByRole;
|
|
1070
|
-
input = getByRole("combobox");
|
|
971
|
+
var _render31 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
972
|
+
label: "Autocomplete Countries",
|
|
973
|
+
suggestions: countries,
|
|
974
|
+
onChange: onChange,
|
|
975
|
+
onBlur: onBlur,
|
|
976
|
+
minLength: 5,
|
|
977
|
+
maxLength: 10
|
|
978
|
+
})),
|
|
979
|
+
getByText = _render31.getByText,
|
|
980
|
+
getByRole = _render31.getByRole;
|
|
1071
981
|
|
|
1072
|
-
|
|
982
|
+
var input = getByRole("combobox");
|
|
1073
983
|
|
|
1074
|
-
|
|
984
|
+
_react2.fireEvent.focus(input);
|
|
1075
985
|
|
|
1076
|
-
|
|
1077
|
-
expect(getByText("d")).toBeTruthy();
|
|
986
|
+
_userEvent["default"].type(input, "Cha");
|
|
1078
987
|
|
|
1079
|
-
|
|
988
|
+
expect(getByText("Cha")).toBeTruthy();
|
|
989
|
+
expect(getByText("d")).toBeTruthy();
|
|
1080
990
|
|
|
1081
|
-
|
|
1082
|
-
value: "Cha",
|
|
1083
|
-
error: "Min length 5, max length 10."
|
|
1084
|
-
});
|
|
991
|
+
_userEvent["default"].click(getByRole("option"));
|
|
1085
992
|
|
|
1086
|
-
|
|
993
|
+
expect(onChange).toHaveBeenCalledWith({
|
|
994
|
+
value: "Cha",
|
|
995
|
+
error: "Min length 5, max length 10."
|
|
996
|
+
});
|
|
1087
997
|
|
|
1088
|
-
|
|
1089
|
-
value: "Chad",
|
|
1090
|
-
error: "Min length 5, max length 10."
|
|
1091
|
-
});
|
|
998
|
+
_react2.fireEvent.blur(input);
|
|
1092
999
|
|
|
1093
|
-
|
|
1094
|
-
|
|
1095
|
-
|
|
1096
|
-
|
|
1097
|
-
|
|
1098
|
-
|
|
1099
|
-
|
|
1100
|
-
test("Autosuggest keys: arrow down key opens autosuggest, active first option is selected with Enter and closes the autosuggest", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee12() {
|
|
1101
|
-
var onChange, _render32, getByRole, queryByRole, input, list;
|
|
1000
|
+
expect(onBlur).toHaveBeenCalledWith({
|
|
1001
|
+
value: "Chad",
|
|
1002
|
+
error: "Min length 5, max length 10."
|
|
1003
|
+
});
|
|
1004
|
+
});
|
|
1005
|
+
test("Autosuggest keys: arrow down key opens autosuggest, active first option is selected with Enter and closes the autosuggest", function () {
|
|
1006
|
+
var onChange = jest.fn();
|
|
1102
1007
|
|
|
1103
|
-
|
|
1104
|
-
|
|
1105
|
-
|
|
1106
|
-
|
|
1107
|
-
|
|
1108
|
-
|
|
1109
|
-
|
|
1110
|
-
suggestions: countries,
|
|
1111
|
-
onChange: onChange
|
|
1112
|
-
})), getByRole = _render32.getByRole, queryByRole = _render32.queryByRole;
|
|
1113
|
-
input = getByRole("combobox");
|
|
1008
|
+
var _render32 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1009
|
+
label: "Autocomplete Countries",
|
|
1010
|
+
suggestions: countries,
|
|
1011
|
+
onChange: onChange
|
|
1012
|
+
})),
|
|
1013
|
+
getByRole = _render32.getByRole,
|
|
1014
|
+
queryByRole = _render32.queryByRole;
|
|
1114
1015
|
|
|
1115
|
-
|
|
1116
|
-
key: "ArrowDown",
|
|
1117
|
-
code: "ArrowDown",
|
|
1118
|
-
keyCode: 40,
|
|
1119
|
-
charCode: 40
|
|
1120
|
-
});
|
|
1016
|
+
var input = getByRole("combobox");
|
|
1121
1017
|
|
|
1122
|
-
|
|
1123
|
-
|
|
1018
|
+
_react2.fireEvent.keyDown(input, {
|
|
1019
|
+
key: "ArrowDown",
|
|
1020
|
+
code: "ArrowDown",
|
|
1021
|
+
keyCode: 40,
|
|
1022
|
+
charCode: 40
|
|
1023
|
+
});
|
|
1124
1024
|
|
|
1125
|
-
|
|
1126
|
-
|
|
1127
|
-
|
|
1128
|
-
|
|
1129
|
-
|
|
1130
|
-
|
|
1025
|
+
var list = getByRole("listbox");
|
|
1026
|
+
expect(list).toBeTruthy();
|
|
1027
|
+
|
|
1028
|
+
_react2.fireEvent.keyDown(input, {
|
|
1029
|
+
key: "Enter",
|
|
1030
|
+
code: "Enter",
|
|
1031
|
+
keyCode: 13,
|
|
1032
|
+
charCode: 13
|
|
1033
|
+
});
|
|
1034
|
+
|
|
1035
|
+
expect(input.value).toBe("Afghanistan");
|
|
1036
|
+
expect(queryByRole("list")).toBeFalsy();
|
|
1037
|
+
});
|
|
1038
|
+
test("Autosuggest keys: arrow up key opens autosuggest, active last option is selected with Enter and closes the autosuggest", function () {
|
|
1039
|
+
var onChange = jest.fn();
|
|
1040
|
+
|
|
1041
|
+
var _render33 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1042
|
+
label: "Autocomplete Countries",
|
|
1043
|
+
suggestions: countries,
|
|
1044
|
+
onChange: onChange
|
|
1045
|
+
})),
|
|
1046
|
+
getByRole = _render33.getByRole,
|
|
1047
|
+
queryByRole = _render33.queryByRole;
|
|
1048
|
+
|
|
1049
|
+
var input = getByRole("combobox");
|
|
1050
|
+
|
|
1051
|
+
_react2.fireEvent.keyDown(input, {
|
|
1052
|
+
key: "ArrowUp",
|
|
1053
|
+
code: "ArrowUp",
|
|
1054
|
+
keyCode: 38,
|
|
1055
|
+
charCode: 38
|
|
1056
|
+
});
|
|
1057
|
+
|
|
1058
|
+
var list = getByRole("listbox");
|
|
1059
|
+
expect(list).toBeTruthy();
|
|
1060
|
+
|
|
1061
|
+
_react2.fireEvent.keyDown(input, {
|
|
1062
|
+
key: "Enter",
|
|
1063
|
+
code: "Enter",
|
|
1064
|
+
keyCode: 13,
|
|
1065
|
+
charCode: 13
|
|
1066
|
+
});
|
|
1067
|
+
|
|
1068
|
+
expect(input.value).toBe("Djibouti");
|
|
1069
|
+
expect(queryByRole("list")).toBeFalsy();
|
|
1070
|
+
});
|
|
1071
|
+
test("Autosuggest keys: Esc key closes the autosuggest and cleans the input", function () {
|
|
1072
|
+
var onChange = jest.fn();
|
|
1073
|
+
|
|
1074
|
+
var _render34 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1075
|
+
label: "Autocomplete Countries",
|
|
1076
|
+
suggestions: countries,
|
|
1077
|
+
onChange: onChange
|
|
1078
|
+
})),
|
|
1079
|
+
getByRole = _render34.getByRole,
|
|
1080
|
+
queryByRole = _render34.queryByRole;
|
|
1081
|
+
|
|
1082
|
+
var input = getByRole("combobox");
|
|
1083
|
+
|
|
1084
|
+
_react2.fireEvent.focus(input);
|
|
1085
|
+
|
|
1086
|
+
_userEvent["default"].type(input, "Bangla");
|
|
1087
|
+
|
|
1088
|
+
var list = getByRole("listbox");
|
|
1089
|
+
expect(list).toBeTruthy();
|
|
1090
|
+
|
|
1091
|
+
_react2.fireEvent.keyDown(input, {
|
|
1092
|
+
key: "Esc",
|
|
1093
|
+
code: "Esc",
|
|
1094
|
+
keyCode: 27,
|
|
1095
|
+
charCode: 27
|
|
1096
|
+
});
|
|
1097
|
+
|
|
1098
|
+
expect(input.value).toBe("");
|
|
1099
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
1100
|
+
});
|
|
1101
|
+
test("Autosuggest keys: Enter, if no active suggestion closes the autosuggest", function () {
|
|
1102
|
+
var onChange = jest.fn();
|
|
1103
|
+
|
|
1104
|
+
var _render35 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1105
|
+
label: "Autocomplete Countries",
|
|
1106
|
+
suggestions: countries,
|
|
1107
|
+
onChange: onChange
|
|
1108
|
+
})),
|
|
1109
|
+
getByRole = _render35.getByRole,
|
|
1110
|
+
queryByRole = _render35.queryByRole;
|
|
1111
|
+
|
|
1112
|
+
var input = getByRole("combobox");
|
|
1113
|
+
|
|
1114
|
+
_react2.fireEvent.focus(input);
|
|
1115
|
+
|
|
1116
|
+
var list = getByRole("listbox");
|
|
1117
|
+
expect(list).toBeTruthy();
|
|
1118
|
+
|
|
1119
|
+
_react2.fireEvent.keyDown(input, {
|
|
1120
|
+
key: "Enter",
|
|
1121
|
+
code: "Enter",
|
|
1122
|
+
keyCode: 27,
|
|
1123
|
+
charCode: 27
|
|
1124
|
+
});
|
|
1125
|
+
|
|
1126
|
+
expect(input.value).toBe("");
|
|
1127
|
+
expect(queryByRole("list")).toBeFalsy();
|
|
1128
|
+
});
|
|
1129
|
+
test("Autosuggest complex key secuence: write, arrow up two times, arrow down and select with Enter. Then, clean with Esc.", function () {
|
|
1130
|
+
var onChange = jest.fn();
|
|
1131
|
+
|
|
1132
|
+
var _render36 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1133
|
+
label: "Autocomplete Countries",
|
|
1134
|
+
suggestions: countries,
|
|
1135
|
+
onChange: onChange
|
|
1136
|
+
})),
|
|
1137
|
+
getByRole = _render36.getByRole,
|
|
1138
|
+
queryByRole = _render36.queryByRole;
|
|
1131
1139
|
|
|
1132
|
-
|
|
1133
|
-
expect(queryByRole("list")).toBeFalsy();
|
|
1140
|
+
var input = getByRole("combobox");
|
|
1134
1141
|
|
|
1135
|
-
|
|
1136
|
-
case "end":
|
|
1137
|
-
return _context12.stop();
|
|
1138
|
-
}
|
|
1139
|
-
}
|
|
1140
|
-
}, _callee12);
|
|
1141
|
-
})));
|
|
1142
|
-
test("Autosuggest keys: arrow up key opens autosuggest, active last option is selected with Enter and closes the autosuggest", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee13() {
|
|
1143
|
-
var onChange, _render33, getByRole, queryByRole, input, list;
|
|
1142
|
+
_react2.fireEvent.focus(input);
|
|
1144
1143
|
|
|
1145
|
-
|
|
1146
|
-
while (1) {
|
|
1147
|
-
switch (_context13.prev = _context13.next) {
|
|
1148
|
-
case 0:
|
|
1149
|
-
onChange = jest.fn();
|
|
1150
|
-
_render33 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1151
|
-
label: "Autocomplete Countries",
|
|
1152
|
-
suggestions: countries,
|
|
1153
|
-
onChange: onChange
|
|
1154
|
-
})), getByRole = _render33.getByRole, queryByRole = _render33.queryByRole;
|
|
1155
|
-
input = getByRole("combobox");
|
|
1144
|
+
_userEvent["default"].type(input, "Ba");
|
|
1156
1145
|
|
|
1157
|
-
|
|
1158
|
-
|
|
1159
|
-
|
|
1160
|
-
|
|
1161
|
-
|
|
1162
|
-
|
|
1146
|
+
_react2.fireEvent.keyDown(input, {
|
|
1147
|
+
key: "ArrowUp",
|
|
1148
|
+
code: "ArrowUp",
|
|
1149
|
+
keyCode: 38,
|
|
1150
|
+
charCode: 38
|
|
1151
|
+
});
|
|
1163
1152
|
|
|
1164
|
-
|
|
1165
|
-
|
|
1153
|
+
_react2.fireEvent.keyDown(input, {
|
|
1154
|
+
key: "ArrowUp",
|
|
1155
|
+
code: "ArrowUpp",
|
|
1156
|
+
keyCode: 38,
|
|
1157
|
+
charCode: 38
|
|
1158
|
+
});
|
|
1166
1159
|
|
|
1167
|
-
|
|
1168
|
-
|
|
1169
|
-
|
|
1170
|
-
|
|
1171
|
-
|
|
1172
|
-
|
|
1160
|
+
_react2.fireEvent.keyDown(input, {
|
|
1161
|
+
key: "ArrowDown",
|
|
1162
|
+
code: "ArrowDown",
|
|
1163
|
+
keyCode: 40,
|
|
1164
|
+
charCode: 40
|
|
1165
|
+
});
|
|
1173
1166
|
|
|
1174
|
-
|
|
1175
|
-
|
|
1167
|
+
_react2.fireEvent.keyDown(input, {
|
|
1168
|
+
key: "Enter",
|
|
1169
|
+
code: "Enter",
|
|
1170
|
+
keyCode: 13,
|
|
1171
|
+
charCode: 13
|
|
1172
|
+
});
|
|
1176
1173
|
|
|
1177
|
-
|
|
1178
|
-
|
|
1179
|
-
return _context13.stop();
|
|
1180
|
-
}
|
|
1181
|
-
}
|
|
1182
|
-
}, _callee13);
|
|
1183
|
-
})));
|
|
1184
|
-
test("Autosuggest keys: Esc key closes the autosuggest and cleans the input", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee14() {
|
|
1185
|
-
var onChange, _render34, getByRole, queryByRole, input, list;
|
|
1174
|
+
expect(input.value).toBe("Barbados");
|
|
1175
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
1186
1176
|
|
|
1187
|
-
|
|
1188
|
-
|
|
1189
|
-
|
|
1190
|
-
|
|
1191
|
-
|
|
1192
|
-
|
|
1193
|
-
label: "Autocomplete Countries",
|
|
1194
|
-
suggestions: countries,
|
|
1195
|
-
onChange: onChange
|
|
1196
|
-
})), getByRole = _render34.getByRole, queryByRole = _render34.queryByRole;
|
|
1197
|
-
input = getByRole("combobox");
|
|
1177
|
+
_react2.fireEvent.keyDown(input, {
|
|
1178
|
+
key: "Esc",
|
|
1179
|
+
code: "Esp",
|
|
1180
|
+
keyCode: 27,
|
|
1181
|
+
charCode: 27
|
|
1182
|
+
});
|
|
1198
1183
|
|
|
1199
|
-
|
|
1184
|
+
expect(input.value).toBe("");
|
|
1185
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
1186
|
+
});
|
|
1187
|
+
test("Autosuggest escapes special characters", function () {
|
|
1188
|
+
var onChange = jest.fn();
|
|
1200
1189
|
|
|
1201
|
-
|
|
1190
|
+
var _render37 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1191
|
+
label: "Autocomplete Countries",
|
|
1192
|
+
suggestions: specialCharacters,
|
|
1193
|
+
onChange: onChange
|
|
1194
|
+
})),
|
|
1195
|
+
getAllByText = _render37.getAllByText,
|
|
1196
|
+
getByRole = _render37.getByRole;
|
|
1202
1197
|
|
|
1203
|
-
|
|
1204
|
-
expect(list).toBeTruthy();
|
|
1198
|
+
var input = getByRole("combobox");
|
|
1205
1199
|
|
|
1206
|
-
|
|
1207
|
-
key: "Esc",
|
|
1208
|
-
code: "Esc",
|
|
1209
|
-
keyCode: 27,
|
|
1210
|
-
charCode: 27
|
|
1211
|
-
});
|
|
1200
|
+
_react2.fireEvent.focus(input);
|
|
1212
1201
|
|
|
1213
|
-
|
|
1214
|
-
expect(queryByRole("listbox")).toBeFalsy();
|
|
1202
|
+
var list = getByRole("listbox");
|
|
1215
1203
|
|
|
1216
|
-
|
|
1217
|
-
|
|
1218
|
-
|
|
1219
|
-
}
|
|
1204
|
+
_react2.fireEvent.change(input, {
|
|
1205
|
+
target: {
|
|
1206
|
+
value: "/"
|
|
1220
1207
|
}
|
|
1221
|
-
}
|
|
1222
|
-
})));
|
|
1223
|
-
test("Autosuggest keys: Enter, if no active suggestion closes the autosuggest", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee15() {
|
|
1224
|
-
var onChange, _render35, getByRole, queryByRole, input, list;
|
|
1208
|
+
});
|
|
1225
1209
|
|
|
1226
|
-
|
|
1227
|
-
|
|
1228
|
-
switch (_context15.prev = _context15.next) {
|
|
1229
|
-
case 0:
|
|
1230
|
-
onChange = jest.fn();
|
|
1231
|
-
_render35 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1232
|
-
label: "Autocomplete Countries",
|
|
1233
|
-
suggestions: countries,
|
|
1234
|
-
onChange: onChange
|
|
1235
|
-
})), getByRole = _render35.getByRole, queryByRole = _render35.queryByRole;
|
|
1236
|
-
input = getByRole("combobox");
|
|
1210
|
+
expect(list).toBeTruthy();
|
|
1211
|
+
expect(getAllByText("/").length).toBe(1);
|
|
1237
1212
|
|
|
1238
|
-
|
|
1213
|
+
_react2.fireEvent.change(input, {
|
|
1214
|
+
target: {
|
|
1215
|
+
value: "\\"
|
|
1216
|
+
}
|
|
1217
|
+
});
|
|
1239
1218
|
|
|
1240
|
-
|
|
1241
|
-
|
|
1219
|
+
expect(list).toBeTruthy();
|
|
1220
|
+
expect(getAllByText("\\").length).toBe(1);
|
|
1242
1221
|
|
|
1243
|
-
|
|
1244
|
-
|
|
1245
|
-
|
|
1246
|
-
|
|
1247
|
-
|
|
1248
|
-
});
|
|
1222
|
+
_react2.fireEvent.change(input, {
|
|
1223
|
+
target: {
|
|
1224
|
+
value: "*"
|
|
1225
|
+
}
|
|
1226
|
+
});
|
|
1249
1227
|
|
|
1250
|
-
|
|
1251
|
-
|
|
1228
|
+
expect(list).toBeTruthy();
|
|
1229
|
+
expect(getAllByText("*").length).toBe(2);
|
|
1252
1230
|
|
|
1253
|
-
|
|
1254
|
-
|
|
1255
|
-
|
|
1256
|
-
}
|
|
1231
|
+
_react2.fireEvent.change(input, {
|
|
1232
|
+
target: {
|
|
1233
|
+
value: "("
|
|
1257
1234
|
}
|
|
1258
|
-
}
|
|
1259
|
-
})));
|
|
1260
|
-
test("Autosuggest complex key secuence: write, arrow up two times, arrow down and select with Enter. Then, clean with Esc.", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee16() {
|
|
1261
|
-
var onChange, _render36, getByRole, queryByRole, input;
|
|
1262
|
-
|
|
1263
|
-
return _regenerator["default"].wrap(function _callee16$(_context16) {
|
|
1264
|
-
while (1) {
|
|
1265
|
-
switch (_context16.prev = _context16.next) {
|
|
1266
|
-
case 0:
|
|
1267
|
-
onChange = jest.fn();
|
|
1268
|
-
_render36 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1269
|
-
label: "Autocomplete Countries",
|
|
1270
|
-
suggestions: countries,
|
|
1271
|
-
onChange: onChange
|
|
1272
|
-
})), getByRole = _render36.getByRole, queryByRole = _render36.queryByRole;
|
|
1273
|
-
input = getByRole("combobox");
|
|
1235
|
+
});
|
|
1274
1236
|
|
|
1275
|
-
|
|
1237
|
+
expect(list).toBeTruthy();
|
|
1238
|
+
expect(getAllByText("(").length).toBe(1);
|
|
1276
1239
|
|
|
1277
|
-
|
|
1240
|
+
_react2.fireEvent.change(input, {
|
|
1241
|
+
target: {
|
|
1242
|
+
value: ")"
|
|
1243
|
+
}
|
|
1244
|
+
});
|
|
1278
1245
|
|
|
1279
|
-
|
|
1280
|
-
|
|
1281
|
-
code: "ArrowUp",
|
|
1282
|
-
keyCode: 38,
|
|
1283
|
-
charCode: 38
|
|
1284
|
-
});
|
|
1246
|
+
expect(list).toBeTruthy();
|
|
1247
|
+
expect(getAllByText(")").length).toBe(1);
|
|
1285
1248
|
|
|
1286
|
-
|
|
1287
|
-
|
|
1288
|
-
|
|
1289
|
-
|
|
1290
|
-
|
|
1291
|
-
});
|
|
1249
|
+
_react2.fireEvent.change(input, {
|
|
1250
|
+
target: {
|
|
1251
|
+
value: "["
|
|
1252
|
+
}
|
|
1253
|
+
});
|
|
1292
1254
|
|
|
1293
|
-
|
|
1294
|
-
|
|
1295
|
-
code: "ArrowDown",
|
|
1296
|
-
keyCode: 40,
|
|
1297
|
-
charCode: 40
|
|
1298
|
-
});
|
|
1255
|
+
expect(list).toBeTruthy();
|
|
1256
|
+
expect(getAllByText("[").length).toBe(1);
|
|
1299
1257
|
|
|
1300
|
-
|
|
1301
|
-
|
|
1302
|
-
|
|
1303
|
-
|
|
1304
|
-
|
|
1305
|
-
});
|
|
1258
|
+
_react2.fireEvent.change(input, {
|
|
1259
|
+
target: {
|
|
1260
|
+
value: "]"
|
|
1261
|
+
}
|
|
1262
|
+
});
|
|
1306
1263
|
|
|
1307
|
-
|
|
1308
|
-
|
|
1264
|
+
expect(list).toBeTruthy();
|
|
1265
|
+
expect(getAllByText("]").length).toBe(1);
|
|
1309
1266
|
|
|
1310
|
-
|
|
1311
|
-
|
|
1312
|
-
|
|
1313
|
-
|
|
1314
|
-
|
|
1315
|
-
});
|
|
1267
|
+
_react2.fireEvent.change(input, {
|
|
1268
|
+
target: {
|
|
1269
|
+
value: "+"
|
|
1270
|
+
}
|
|
1271
|
+
});
|
|
1316
1272
|
|
|
1317
|
-
|
|
1318
|
-
|
|
1273
|
+
expect(list).toBeTruthy();
|
|
1274
|
+
expect(getAllByText("+").length).toBe(1);
|
|
1319
1275
|
|
|
1320
|
-
|
|
1321
|
-
|
|
1322
|
-
|
|
1323
|
-
}
|
|
1276
|
+
_react2.fireEvent.change(input, {
|
|
1277
|
+
target: {
|
|
1278
|
+
value: "?"
|
|
1324
1279
|
}
|
|
1325
|
-
}
|
|
1326
|
-
|
|
1280
|
+
});
|
|
1281
|
+
|
|
1282
|
+
expect(list).toBeTruthy();
|
|
1283
|
+
expect(getAllByText("?").length).toBe(1);
|
|
1284
|
+
});
|
|
1327
1285
|
});
|
|
1328
1286
|
describe("TextInput component asynchronous autosuggest tests", function () {
|
|
1329
|
-
test("Autosuggest 'Searching...' message is shown", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function
|
|
1330
|
-
var callbackFunc, onChange,
|
|
1287
|
+
test("Autosuggest 'Searching...' message is shown", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
1288
|
+
var callbackFunc, onChange, _render38, getByRole, getByText, input;
|
|
1331
1289
|
|
|
1332
|
-
return _regenerator["default"].wrap(function
|
|
1290
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
1333
1291
|
while (1) {
|
|
1334
|
-
switch (
|
|
1292
|
+
switch (_context.prev = _context.next) {
|
|
1335
1293
|
case 0:
|
|
1336
1294
|
callbackFunc = jest.fn(function (newValue) {
|
|
1337
1295
|
var result = new Promise(function (resolve) {
|
|
@@ -1344,17 +1302,17 @@ describe("TextInput component asynchronous autosuggest tests", function () {
|
|
|
1344
1302
|
return result;
|
|
1345
1303
|
});
|
|
1346
1304
|
onChange = jest.fn();
|
|
1347
|
-
|
|
1305
|
+
_render38 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1348
1306
|
label: "Autosuggest Countries",
|
|
1349
1307
|
suggestions: callbackFunc,
|
|
1350
1308
|
onChange: onChange
|
|
1351
|
-
})), getByRole =
|
|
1309
|
+
})), getByRole = _render38.getByRole, getByText = _render38.getByText;
|
|
1352
1310
|
input = getByRole("combobox");
|
|
1353
1311
|
|
|
1354
1312
|
_react2.fireEvent.focus(input);
|
|
1355
1313
|
|
|
1356
1314
|
expect(getByRole("listbox")).toBeTruthy();
|
|
1357
|
-
|
|
1315
|
+
_context.next = 8;
|
|
1358
1316
|
return (0, _react2.waitForElementToBeRemoved)(function () {
|
|
1359
1317
|
return getByText("Searching...");
|
|
1360
1318
|
});
|
|
@@ -1367,7 +1325,7 @@ describe("TextInput component asynchronous autosuggest tests", function () {
|
|
|
1367
1325
|
|
|
1368
1326
|
_userEvent["default"].type(input, "Ab");
|
|
1369
1327
|
|
|
1370
|
-
|
|
1328
|
+
_context.next = 15;
|
|
1371
1329
|
return (0, _react2.waitForElementToBeRemoved)(function () {
|
|
1372
1330
|
return getByText("Searching...");
|
|
1373
1331
|
});
|
|
@@ -1393,66 +1351,58 @@ describe("TextInput component asynchronous autosuggest tests", function () {
|
|
|
1393
1351
|
|
|
1394
1352
|
case 19:
|
|
1395
1353
|
case "end":
|
|
1396
|
-
return
|
|
1354
|
+
return _context.stop();
|
|
1397
1355
|
}
|
|
1398
1356
|
}
|
|
1399
|
-
},
|
|
1357
|
+
}, _callee);
|
|
1400
1358
|
})));
|
|
1401
|
-
test("Autosuggest Esc key works while 'Searching...' message is shown",
|
|
1402
|
-
var callbackFunc
|
|
1359
|
+
test("Autosuggest Esc key works while 'Searching...' message is shown", function () {
|
|
1360
|
+
var callbackFunc = jest.fn(function (newValue) {
|
|
1361
|
+
var result = new Promise(function (resolve) {
|
|
1362
|
+
return setTimeout(function () {
|
|
1363
|
+
resolve(newValue ? countries.filter(function (option) {
|
|
1364
|
+
return option.toUpperCase().includes(newValue.toUpperCase());
|
|
1365
|
+
}) : countries);
|
|
1366
|
+
}, 100);
|
|
1367
|
+
});
|
|
1368
|
+
return result;
|
|
1369
|
+
});
|
|
1370
|
+
var onChange = jest.fn();
|
|
1403
1371
|
|
|
1404
|
-
|
|
1405
|
-
|
|
1406
|
-
|
|
1407
|
-
|
|
1408
|
-
|
|
1409
|
-
|
|
1410
|
-
|
|
1411
|
-
|
|
1412
|
-
return option.toUpperCase().includes(newValue.toUpperCase());
|
|
1413
|
-
}) : countries);
|
|
1414
|
-
}, 100);
|
|
1415
|
-
});
|
|
1416
|
-
return result;
|
|
1417
|
-
});
|
|
1418
|
-
onChange = jest.fn();
|
|
1419
|
-
_render38 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1420
|
-
label: "Autosuggest Countries",
|
|
1421
|
-
suggestions: callbackFunc,
|
|
1422
|
-
onChange: onChange
|
|
1423
|
-
})), getByRole = _render38.getByRole, queryByText = _render38.queryByText, queryByRole = _render38.queryByRole;
|
|
1424
|
-
input = getByRole("combobox");
|
|
1372
|
+
var _render39 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1373
|
+
label: "Autosuggest Countries",
|
|
1374
|
+
suggestions: callbackFunc,
|
|
1375
|
+
onChange: onChange
|
|
1376
|
+
})),
|
|
1377
|
+
getByRole = _render39.getByRole,
|
|
1378
|
+
queryByText = _render39.queryByText,
|
|
1379
|
+
queryByRole = _render39.queryByRole;
|
|
1425
1380
|
|
|
1426
|
-
|
|
1381
|
+
var input = getByRole("combobox");
|
|
1427
1382
|
|
|
1428
|
-
|
|
1383
|
+
_react2.fireEvent.focus(input);
|
|
1429
1384
|
|
|
1430
|
-
|
|
1385
|
+
expect(getByRole("listbox")).toBeTruthy();
|
|
1431
1386
|
|
|
1432
|
-
|
|
1433
|
-
key: "Esc",
|
|
1434
|
-
code: "Esc",
|
|
1435
|
-
keyCode: 27,
|
|
1436
|
-
charCode: 27
|
|
1437
|
-
});
|
|
1387
|
+
_userEvent["default"].type(input, "Ab");
|
|
1438
1388
|
|
|
1439
|
-
|
|
1440
|
-
|
|
1441
|
-
|
|
1389
|
+
_react2.fireEvent.keyDown(input, {
|
|
1390
|
+
key: "Esc",
|
|
1391
|
+
code: "Esc",
|
|
1392
|
+
keyCode: 27,
|
|
1393
|
+
charCode: 27
|
|
1394
|
+
});
|
|
1442
1395
|
|
|
1443
|
-
|
|
1444
|
-
|
|
1445
|
-
|
|
1446
|
-
|
|
1447
|
-
|
|
1448
|
-
|
|
1449
|
-
})));
|
|
1450
|
-
test("Autosuggest Esc + arrow down working while 'Searching...' message is shown", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee19() {
|
|
1451
|
-
var callbackFunc, onChange, _render39, getByRole, getByText, queryByText, queryByRole, input, list;
|
|
1396
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
1397
|
+
expect(queryByText("Searching...")).toBeFalsy();
|
|
1398
|
+
expect(input.value).toBe("");
|
|
1399
|
+
});
|
|
1400
|
+
test("Autosuggest Esc + arrow down working while 'Searching...' message is shown", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
|
|
1401
|
+
var callbackFunc, onChange, _render40, getByRole, getByText, queryByText, queryByRole, input, list;
|
|
1452
1402
|
|
|
1453
|
-
return _regenerator["default"].wrap(function
|
|
1403
|
+
return _regenerator["default"].wrap(function _callee2$(_context2) {
|
|
1454
1404
|
while (1) {
|
|
1455
|
-
switch (
|
|
1405
|
+
switch (_context2.prev = _context2.next) {
|
|
1456
1406
|
case 0:
|
|
1457
1407
|
callbackFunc = jest.fn(function (newValue) {
|
|
1458
1408
|
var result = new Promise(function (resolve) {
|
|
@@ -1465,11 +1415,11 @@ describe("TextInput component asynchronous autosuggest tests", function () {
|
|
|
1465
1415
|
return result;
|
|
1466
1416
|
});
|
|
1467
1417
|
onChange = jest.fn();
|
|
1468
|
-
|
|
1418
|
+
_render40 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1469
1419
|
label: "Autosuggest Countries",
|
|
1470
1420
|
suggestions: callbackFunc,
|
|
1471
1421
|
onChange: onChange
|
|
1472
|
-
})), getByRole =
|
|
1422
|
+
})), getByRole = _render40.getByRole, getByText = _render40.getByText, queryByText = _render40.queryByText, queryByRole = _render40.queryByRole;
|
|
1473
1423
|
input = getByRole("combobox");
|
|
1474
1424
|
|
|
1475
1425
|
_react2.fireEvent.focus(input);
|
|
@@ -1498,7 +1448,7 @@ describe("TextInput component asynchronous autosuggest tests", function () {
|
|
|
1498
1448
|
});
|
|
1499
1449
|
|
|
1500
1450
|
expect(list).toBeTruthy();
|
|
1501
|
-
|
|
1451
|
+
_context2.next = 16;
|
|
1502
1452
|
return (0, _react2.waitForElementToBeRemoved)(function () {
|
|
1503
1453
|
return getByText("Searching...");
|
|
1504
1454
|
});
|
|
@@ -1511,17 +1461,17 @@ describe("TextInput component asynchronous autosuggest tests", function () {
|
|
|
1511
1461
|
|
|
1512
1462
|
case 20:
|
|
1513
1463
|
case "end":
|
|
1514
|
-
return
|
|
1464
|
+
return _context2.stop();
|
|
1515
1465
|
}
|
|
1516
1466
|
}
|
|
1517
|
-
},
|
|
1467
|
+
}, _callee2);
|
|
1518
1468
|
})));
|
|
1519
|
-
test("Asynchronous uncontrolled autosuggest test", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function
|
|
1520
|
-
var callbackFunc, onChange,
|
|
1469
|
+
test("Asynchronous uncontrolled autosuggest test", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3() {
|
|
1470
|
+
var callbackFunc, onChange, _render41, getByRole, getByText, input;
|
|
1521
1471
|
|
|
1522
|
-
return _regenerator["default"].wrap(function
|
|
1472
|
+
return _regenerator["default"].wrap(function _callee3$(_context3) {
|
|
1523
1473
|
while (1) {
|
|
1524
|
-
switch (
|
|
1474
|
+
switch (_context3.prev = _context3.next) {
|
|
1525
1475
|
case 0:
|
|
1526
1476
|
callbackFunc = jest.fn(function (newValue) {
|
|
1527
1477
|
var result = new Promise(function (resolve) {
|
|
@@ -1534,18 +1484,18 @@ describe("TextInput component asynchronous autosuggest tests", function () {
|
|
|
1534
1484
|
return result;
|
|
1535
1485
|
});
|
|
1536
1486
|
onChange = jest.fn();
|
|
1537
|
-
|
|
1487
|
+
_render41 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1538
1488
|
label: "Autosuggest Countries",
|
|
1539
1489
|
onChange: onChange,
|
|
1540
1490
|
suggestions: callbackFunc
|
|
1541
|
-
})), getByRole =
|
|
1491
|
+
})), getByRole = _render41.getByRole, getByText = _render41.getByText;
|
|
1542
1492
|
input = getByRole("combobox");
|
|
1543
1493
|
|
|
1544
1494
|
_react2.fireEvent.focus(input);
|
|
1545
1495
|
|
|
1546
1496
|
_userEvent["default"].type(input, "Den");
|
|
1547
1497
|
|
|
1548
|
-
|
|
1498
|
+
_context3.next = 8;
|
|
1549
1499
|
return (0, _react2.waitForElementToBeRemoved)(function () {
|
|
1550
1500
|
return getByText("Searching...");
|
|
1551
1501
|
});
|
|
@@ -1562,17 +1512,17 @@ describe("TextInput component asynchronous autosuggest tests", function () {
|
|
|
1562
1512
|
|
|
1563
1513
|
case 12:
|
|
1564
1514
|
case "end":
|
|
1565
|
-
return
|
|
1515
|
+
return _context3.stop();
|
|
1566
1516
|
}
|
|
1567
1517
|
}
|
|
1568
|
-
},
|
|
1518
|
+
}, _callee3);
|
|
1569
1519
|
})));
|
|
1570
|
-
test("Asynchronous controlled autosuggest test", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function
|
|
1571
|
-
var callbackFunc, onChange,
|
|
1520
|
+
test("Asynchronous controlled autosuggest test", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4() {
|
|
1521
|
+
var callbackFunc, onChange, _render42, getByRole, getByText, queryByRole, input;
|
|
1572
1522
|
|
|
1573
|
-
return _regenerator["default"].wrap(function
|
|
1523
|
+
return _regenerator["default"].wrap(function _callee4$(_context4) {
|
|
1574
1524
|
while (1) {
|
|
1575
|
-
switch (
|
|
1525
|
+
switch (_context4.prev = _context4.next) {
|
|
1576
1526
|
case 0:
|
|
1577
1527
|
callbackFunc = jest.fn(function (newValue) {
|
|
1578
1528
|
var result = new Promise(function (resolve) {
|
|
@@ -1585,45 +1535,47 @@ describe("TextInput component asynchronous autosuggest tests", function () {
|
|
|
1585
1535
|
return result;
|
|
1586
1536
|
});
|
|
1587
1537
|
onChange = jest.fn();
|
|
1588
|
-
|
|
1538
|
+
_render42 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1589
1539
|
label: "Autosuggest Countries",
|
|
1590
1540
|
value: "Denm",
|
|
1591
1541
|
onChange: onChange,
|
|
1592
1542
|
suggestions: callbackFunc
|
|
1593
|
-
})), getByRole =
|
|
1543
|
+
})), getByRole = _render42.getByRole, getByText = _render42.getByText, queryByRole = _render42.queryByRole;
|
|
1594
1544
|
input = getByRole("combobox");
|
|
1545
|
+
expect(input.value).toBe("Denm");
|
|
1595
1546
|
|
|
1596
|
-
|
|
1547
|
+
_userEvent["default"].click(getByText("Autosuggest Countries"));
|
|
1597
1548
|
|
|
1598
|
-
|
|
1549
|
+
_context4.next = 8;
|
|
1599
1550
|
return (0, _react2.waitForElementToBeRemoved)(function () {
|
|
1600
1551
|
return getByText("Searching...");
|
|
1601
1552
|
});
|
|
1602
1553
|
|
|
1603
|
-
case
|
|
1604
|
-
expect(input.value).toBe("Denm");
|
|
1554
|
+
case 8:
|
|
1605
1555
|
expect(getByText("Denmark")).toBeTruthy();
|
|
1606
1556
|
|
|
1607
|
-
|
|
1557
|
+
_react2.fireEvent.focus(getByRole("option"));
|
|
1558
|
+
|
|
1559
|
+
_userEvent["default"].click(getByText("Denmark"));
|
|
1608
1560
|
|
|
1609
1561
|
expect(onChange).toHaveBeenCalledWith({
|
|
1610
1562
|
value: "Denmark"
|
|
1611
1563
|
});
|
|
1612
1564
|
expect(queryByRole("listbox")).toBeFalsy();
|
|
1613
1565
|
|
|
1614
|
-
case
|
|
1566
|
+
case 13:
|
|
1615
1567
|
case "end":
|
|
1616
|
-
return
|
|
1568
|
+
return _context4.stop();
|
|
1617
1569
|
}
|
|
1618
1570
|
}
|
|
1619
|
-
},
|
|
1571
|
+
}, _callee4);
|
|
1620
1572
|
})));
|
|
1621
|
-
test("Asynchronous autosuggest closes the listbox after finishing no matches search", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function
|
|
1622
|
-
var callbackFunc, onChange,
|
|
1573
|
+
test("Asynchronous autosuggest closes the listbox after finishing no matches search", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee5() {
|
|
1574
|
+
var callbackFunc, onChange, _render43, getByText, getByRole, queryByRole, input;
|
|
1623
1575
|
|
|
1624
|
-
return _regenerator["default"].wrap(function
|
|
1576
|
+
return _regenerator["default"].wrap(function _callee5$(_context5) {
|
|
1625
1577
|
while (1) {
|
|
1626
|
-
switch (
|
|
1578
|
+
switch (_context5.prev = _context5.next) {
|
|
1627
1579
|
case 0:
|
|
1628
1580
|
callbackFunc = jest.fn(function (newValue) {
|
|
1629
1581
|
var result = new Promise(function (resolve) {
|
|
@@ -1636,18 +1588,18 @@ describe("TextInput component asynchronous autosuggest tests", function () {
|
|
|
1636
1588
|
return result;
|
|
1637
1589
|
});
|
|
1638
1590
|
onChange = jest.fn();
|
|
1639
|
-
|
|
1591
|
+
_render43 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1640
1592
|
label: "Autosuggest Countries",
|
|
1641
1593
|
onChange: onChange,
|
|
1642
1594
|
suggestions: callbackFunc
|
|
1643
|
-
})), getByText =
|
|
1595
|
+
})), getByText = _render43.getByText, getByRole = _render43.getByRole, queryByRole = _render43.queryByRole;
|
|
1644
1596
|
input = getByRole("combobox");
|
|
1645
1597
|
|
|
1646
1598
|
_react2.fireEvent.focus(input);
|
|
1647
1599
|
|
|
1648
1600
|
_userEvent["default"].type(input, "Example text");
|
|
1649
1601
|
|
|
1650
|
-
|
|
1602
|
+
_context5.next = 8;
|
|
1651
1603
|
return (0, _react2.waitForElementToBeRemoved)(function () {
|
|
1652
1604
|
return getByText("Searching...");
|
|
1653
1605
|
});
|
|
@@ -1657,17 +1609,17 @@ describe("TextInput component asynchronous autosuggest tests", function () {
|
|
|
1657
1609
|
|
|
1658
1610
|
case 9:
|
|
1659
1611
|
case "end":
|
|
1660
|
-
return
|
|
1612
|
+
return _context5.stop();
|
|
1661
1613
|
}
|
|
1662
1614
|
}
|
|
1663
|
-
},
|
|
1615
|
+
}, _callee5);
|
|
1664
1616
|
})));
|
|
1665
|
-
test("Asynchronous autosuggest with no matches founded doesn't let the listbox to be opened", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function
|
|
1666
|
-
var callbackFunc, onChange,
|
|
1617
|
+
test("Asynchronous autosuggest with no matches founded doesn't let the listbox to be opened", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee6() {
|
|
1618
|
+
var callbackFunc, onChange, _render44, getByText, getByRole, queryByRole, input;
|
|
1667
1619
|
|
|
1668
|
-
return _regenerator["default"].wrap(function
|
|
1620
|
+
return _regenerator["default"].wrap(function _callee6$(_context6) {
|
|
1669
1621
|
while (1) {
|
|
1670
|
-
switch (
|
|
1622
|
+
switch (_context6.prev = _context6.next) {
|
|
1671
1623
|
case 0:
|
|
1672
1624
|
callbackFunc = jest.fn(function (newValue) {
|
|
1673
1625
|
var result = new Promise(function (resolve) {
|
|
@@ -1680,18 +1632,18 @@ describe("TextInput component asynchronous autosuggest tests", function () {
|
|
|
1680
1632
|
return result;
|
|
1681
1633
|
});
|
|
1682
1634
|
onChange = jest.fn();
|
|
1683
|
-
|
|
1635
|
+
_render44 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1684
1636
|
label: "Autosuggest Countries",
|
|
1685
1637
|
onChange: onChange,
|
|
1686
1638
|
suggestions: callbackFunc
|
|
1687
|
-
})), getByText =
|
|
1639
|
+
})), getByText = _render44.getByText, getByRole = _render44.getByRole, queryByRole = _render44.queryByRole;
|
|
1688
1640
|
input = getByRole("combobox");
|
|
1689
1641
|
|
|
1690
1642
|
_react2.fireEvent.focus(input);
|
|
1691
1643
|
|
|
1692
1644
|
_userEvent["default"].type(input, "wrong");
|
|
1693
1645
|
|
|
1694
|
-
|
|
1646
|
+
_context6.next = 8;
|
|
1695
1647
|
return (0, _react2.waitForElementToBeRemoved)(function () {
|
|
1696
1648
|
return getByText("Searching...");
|
|
1697
1649
|
});
|
|
@@ -1723,17 +1675,17 @@ describe("TextInput component asynchronous autosuggest tests", function () {
|
|
|
1723
1675
|
|
|
1724
1676
|
case 15:
|
|
1725
1677
|
case "end":
|
|
1726
|
-
return
|
|
1678
|
+
return _context6.stop();
|
|
1727
1679
|
}
|
|
1728
1680
|
}
|
|
1729
|
-
},
|
|
1681
|
+
}, _callee6);
|
|
1730
1682
|
})));
|
|
1731
|
-
test("Asynchronous autosuggest request failed, shows 'Error fetching data' message", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function
|
|
1732
|
-
var errorCallbackFunc, onChange,
|
|
1683
|
+
test("Asynchronous autosuggest request failed, shows 'Error fetching data' message", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee7() {
|
|
1684
|
+
var errorCallbackFunc, onChange, _render45, getByRole, getByText, input;
|
|
1733
1685
|
|
|
1734
|
-
return _regenerator["default"].wrap(function
|
|
1686
|
+
return _regenerator["default"].wrap(function _callee7$(_context7) {
|
|
1735
1687
|
while (1) {
|
|
1736
|
-
switch (
|
|
1688
|
+
switch (_context7.prev = _context7.next) {
|
|
1737
1689
|
case 0:
|
|
1738
1690
|
errorCallbackFunc = jest.fn(function () {
|
|
1739
1691
|
var result = new Promise(function (resolve, reject) {
|
|
@@ -1744,16 +1696,16 @@ describe("TextInput component asynchronous autosuggest tests", function () {
|
|
|
1744
1696
|
return result;
|
|
1745
1697
|
});
|
|
1746
1698
|
onChange = jest.fn();
|
|
1747
|
-
|
|
1699
|
+
_render45 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1748
1700
|
label: "Autosuggest Countries",
|
|
1749
1701
|
onChange: onChange,
|
|
1750
1702
|
suggestions: errorCallbackFunc
|
|
1751
|
-
})), getByRole =
|
|
1703
|
+
})), getByRole = _render45.getByRole, getByText = _render45.getByText;
|
|
1752
1704
|
input = getByRole("combobox");
|
|
1753
1705
|
|
|
1754
1706
|
_react2.fireEvent.focus(input);
|
|
1755
1707
|
|
|
1756
|
-
|
|
1708
|
+
_context7.next = 7;
|
|
1757
1709
|
return (0, _react2.waitForElementToBeRemoved)(function () {
|
|
1758
1710
|
return getByText("Searching...");
|
|
1759
1711
|
});
|
|
@@ -1763,9 +1715,9 @@ describe("TextInput component asynchronous autosuggest tests", function () {
|
|
|
1763
1715
|
|
|
1764
1716
|
case 8:
|
|
1765
1717
|
case "end":
|
|
1766
|
-
return
|
|
1718
|
+
return _context7.stop();
|
|
1767
1719
|
}
|
|
1768
1720
|
}
|
|
1769
|
-
},
|
|
1721
|
+
}, _callee7);
|
|
1770
1722
|
})));
|
|
1771
1723
|
});
|