@dxc-technology/halstack-react 0.0.0-5a1e592 → 0.0.0-5a7a613
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 +1 -10
- package/BackgroundColorContext.js +4 -21
- package/HalstackContext.d.ts +74 -144
- package/HalstackContext.js +35 -50
- package/accordion/Accordion.accessibility.test.d.ts +1 -0
- package/accordion/Accordion.accessibility.test.js +71 -0
- package/accordion/Accordion.js +33 -87
- package/accordion/Accordion.stories.tsx +8 -64
- package/accordion/Accordion.test.d.ts +1 -0
- package/accordion/Accordion.test.js +19 -34
- package/accordion/types.d.ts +6 -6
- package/accordion-group/AccordionGroup.accessibility.test.d.ts +1 -0
- package/accordion-group/AccordionGroup.accessibility.test.js +82 -0
- package/accordion-group/AccordionGroup.d.ts +2 -3
- package/accordion-group/AccordionGroup.js +17 -44
- package/accordion-group/AccordionGroup.stories.tsx +24 -24
- package/accordion-group/AccordionGroup.test.d.ts +1 -0
- package/accordion-group/AccordionGroup.test.js +41 -63
- package/accordion-group/AccordionGroupAccordion.js +11 -23
- package/accordion-group/AccordionGroupContext.d.ts +3 -0
- package/accordion-group/AccordionGroupContext.js +8 -0
- package/accordion-group/types.d.ts +7 -7
- package/action-icon/ActionIcon.accessibility.test.d.ts +1 -0
- package/action-icon/ActionIcon.accessibility.test.js +63 -0
- package/action-icon/ActionIcon.d.ts +4 -0
- package/action-icon/ActionIcon.js +48 -0
- package/action-icon/ActionIcon.stories.tsx +41 -0
- package/action-icon/ActionIcon.test.d.ts +1 -0
- package/action-icon/ActionIcon.test.js +64 -0
- package/action-icon/types.d.ts +26 -0
- package/alert/Alert.accessibility.test.d.ts +1 -0
- package/alert/Alert.accessibility.test.js +95 -0
- package/alert/Alert.js +34 -120
- package/alert/Alert.test.d.ts +1 -0
- package/alert/Alert.test.js +29 -46
- package/alert/types.d.ts +5 -5
- package/badge/Badge.accessibility.test.d.ts +1 -0
- package/badge/Badge.accessibility.test.js +129 -0
- package/badge/Badge.d.ts +1 -1
- package/badge/Badge.js +142 -42
- package/badge/Badge.stories.tsx +210 -0
- package/badge/Badge.test.d.ts +1 -0
- package/badge/Badge.test.js +30 -0
- package/badge/types.d.ts +52 -3
- package/bar-chart/BarChart.d.ts +4 -0
- package/bar-chart/BarChart.js +157 -0
- package/bar-chart/BarChart.stories.tsx +281 -0
- package/bar-chart/BarChart.test.d.ts +1 -0
- package/bar-chart/BarChart.test.js +194 -0
- package/bar-chart/theme.d.ts +3 -0
- package/bar-chart/theme.js +31 -0
- package/bar-chart/types.d.ts +137 -0
- package/bar-chart/types.js +5 -0
- package/bleed/Bleed.js +13 -21
- package/bleed/Bleed.stories.tsx +0 -1
- package/bleed/types.d.ts +2 -2
- package/box/Box.accessibility.test.d.ts +1 -0
- package/box/Box.accessibility.test.js +33 -0
- package/box/Box.js +11 -33
- package/box/Box.test.d.ts +1 -0
- package/box/Box.test.js +2 -7
- package/box/types.d.ts +3 -3
- package/breadcrumbs/Breadcrumbs.accessibility.test.d.ts +1 -0
- package/breadcrumbs/Breadcrumbs.accessibility.test.js +96 -0
- package/breadcrumbs/Breadcrumbs.d.ts +4 -0
- package/breadcrumbs/Breadcrumbs.js +79 -0
- package/breadcrumbs/Breadcrumbs.stories.tsx +194 -0
- package/breadcrumbs/Breadcrumbs.test.d.ts +1 -0
- package/breadcrumbs/Breadcrumbs.test.js +168 -0
- package/breadcrumbs/Item.d.ts +4 -0
- package/breadcrumbs/Item.js +52 -0
- package/breadcrumbs/dropdownTheme.d.ts +53 -0
- package/breadcrumbs/dropdownTheme.js +62 -0
- package/breadcrumbs/types.d.ts +40 -0
- package/breadcrumbs/types.js +5 -0
- package/bulleted-list/BulletedList.accessibility.test.d.ts +1 -0
- package/bulleted-list/BulletedList.accessibility.test.js +119 -0
- package/bulleted-list/BulletedList.js +22 -55
- package/bulleted-list/BulletedList.stories.tsx +2 -93
- package/bulleted-list/types.d.ts +5 -5
- package/button/Button.accessibility.test.d.ts +1 -0
- package/button/Button.accessibility.test.js +127 -0
- package/button/Button.js +36 -59
- package/button/Button.stories.tsx +35 -135
- package/button/Button.test.d.ts +1 -0
- package/button/Button.test.js +14 -22
- package/button/types.d.ts +5 -5
- package/card/Card.accessibility.test.d.ts +1 -0
- package/card/Card.accessibility.test.js +36 -0
- package/card/Card.js +23 -45
- package/card/Card.stories.tsx +1 -1
- package/card/Card.test.d.ts +1 -0
- package/card/Card.test.js +11 -22
- package/card/types.d.ts +5 -5
- package/checkbox/Checkbox.accessibility.test.d.ts +1 -0
- package/checkbox/Checkbox.accessibility.test.js +87 -0
- package/checkbox/Checkbox.js +59 -116
- package/checkbox/Checkbox.stories.tsx +0 -54
- package/checkbox/Checkbox.test.d.ts +1 -0
- package/checkbox/Checkbox.test.js +80 -109
- package/checkbox/types.d.ts +4 -4
- package/chip/Chip.accessibility.test.d.ts +1 -0
- package/chip/Chip.accessibility.test.js +67 -0
- package/chip/Chip.js +22 -36
- package/chip/Chip.stories.tsx +6 -25
- package/chip/Chip.test.d.ts +1 -0
- package/chip/Chip.test.js +18 -31
- package/chip/types.d.ts +4 -4
- package/common/coreTokens.d.ts +105 -15
- package/common/coreTokens.js +40 -24
- package/common/utils.js +2 -8
- package/common/variables.d.ts +80 -141
- package/common/variables.js +150 -224
- package/container/Container.d.ts +4 -0
- package/container/Container.js +194 -0
- package/container/Container.stories.tsx +215 -0
- package/container/types.d.ts +176 -0
- package/container/types.js +5 -0
- package/contextual-menu/ContextualMenu.accessibility.test.d.ts +1 -0
- package/contextual-menu/ContextualMenu.accessibility.test.js +98 -0
- package/contextual-menu/ContextualMenu.d.ts +5 -0
- package/contextual-menu/ContextualMenu.js +136 -0
- package/contextual-menu/ContextualMenu.stories.tsx +231 -0
- package/contextual-menu/ContextualMenu.test.d.ts +1 -0
- package/contextual-menu/ContextualMenu.test.js +247 -0
- package/contextual-menu/GroupItem.d.ts +4 -0
- package/contextual-menu/GroupItem.js +67 -0
- package/contextual-menu/ItemAction.d.ts +4 -0
- package/contextual-menu/ItemAction.js +88 -0
- package/contextual-menu/MenuItem.d.ts +4 -0
- package/contextual-menu/MenuItem.js +29 -0
- package/contextual-menu/SingleItem.d.ts +4 -0
- package/contextual-menu/SingleItem.js +38 -0
- package/contextual-menu/types.d.ts +65 -0
- package/contextual-menu/types.js +5 -0
- package/date-input/Calendar.js +59 -87
- package/date-input/DateInput.accessibility.test.d.ts +1 -0
- package/date-input/DateInput.accessibility.test.js +229 -0
- package/date-input/DateInput.js +170 -130
- package/date-input/DateInput.stories.tsx +32 -50
- package/date-input/DateInput.test.d.ts +1 -0
- package/date-input/DateInput.test.js +668 -709
- package/date-input/DatePicker.js +26 -51
- package/date-input/YearPicker.js +17 -38
- package/date-input/types.d.ts +28 -26
- package/dialog/Dialog.accessibility.test.d.ts +1 -0
- package/dialog/Dialog.accessibility.test.js +69 -0
- package/dialog/Dialog.js +21 -59
- package/dialog/Dialog.stories.tsx +174 -0
- package/dialog/Dialog.test.d.ts +1 -0
- package/dialog/Dialog.test.js +216 -215
- package/dialog/types.d.ts +18 -13
- package/divider/Divider.accessibility.test.d.ts +1 -0
- package/divider/Divider.accessibility.test.js +33 -0
- package/divider/Divider.d.ts +4 -0
- package/divider/Divider.js +36 -0
- package/divider/Divider.stories.tsx +224 -0
- package/divider/Divider.test.d.ts +1 -0
- package/divider/Divider.test.js +38 -0
- package/divider/types.d.ts +21 -0
- package/divider/types.js +5 -0
- package/dropdown/Dropdown.accessibility.test.d.ts +1 -0
- package/dropdown/Dropdown.accessibility.test.js +183 -0
- package/dropdown/Dropdown.js +66 -153
- package/dropdown/Dropdown.stories.tsx +16 -27
- package/dropdown/Dropdown.test.d.ts +1 -0
- package/dropdown/Dropdown.test.js +434 -392
- package/dropdown/DropdownMenu.js +12 -23
- package/dropdown/DropdownMenuItem.js +13 -21
- package/dropdown/types.d.ts +20 -24
- package/file-input/FileInput.accessibility.test.d.ts +1 -0
- package/file-input/FileInput.accessibility.test.js +167 -0
- package/file-input/FileInput.js +177 -286
- package/file-input/FileInput.stories.tsx +1 -1
- package/file-input/FileInput.test.d.ts +1 -0
- package/file-input/FileInput.test.js +303 -356
- package/file-input/FileItem.js +29 -66
- package/file-input/types.d.ts +9 -13
- package/flex/Flex.js +25 -39
- package/flex/types.d.ts +6 -6
- package/footer/Footer.accessibility.test.d.ts +1 -0
- package/footer/Footer.accessibility.test.js +125 -0
- package/footer/Footer.d.ts +1 -1
- package/footer/Footer.js +43 -68
- package/footer/Footer.stories.tsx +58 -2
- package/footer/Footer.test.d.ts +1 -0
- package/footer/Footer.test.js +19 -33
- package/footer/Icons.d.ts +3 -2
- package/footer/Icons.js +53 -22
- package/footer/types.d.ts +17 -17
- package/grid/Grid.js +1 -16
- package/grid/Grid.stories.tsx +3 -1
- package/grid/types.d.ts +10 -10
- package/header/Header.accessibility.test.d.ts +1 -0
- package/header/Header.accessibility.test.js +94 -0
- package/header/Header.d.ts +1 -1
- package/header/Header.js +38 -104
- package/header/Header.stories.tsx +17 -1
- package/header/Header.test.d.ts +1 -0
- package/header/Header.test.js +13 -26
- package/header/Icons.d.ts +2 -2
- package/header/Icons.js +3 -13
- package/header/types.d.ts +7 -8
- package/heading/Heading.accessibility.test.d.ts +1 -0
- package/heading/Heading.accessibility.test.js +33 -0
- package/heading/Heading.js +9 -31
- package/heading/Heading.test.d.ts +1 -0
- package/heading/Heading.test.js +65 -95
- package/heading/types.d.ts +7 -7
- package/icon/Icon.accessibility.test.d.ts +1 -0
- package/icon/Icon.accessibility.test.js +30 -0
- package/icon/Icon.d.ts +4 -0
- package/icon/Icon.js +33 -0
- package/icon/Icon.stories.tsx +28 -0
- package/icon/types.d.ts +4 -0
- package/icon/types.js +5 -0
- package/image/Image.accessibility.test.d.ts +1 -0
- package/image/Image.accessibility.test.js +56 -0
- package/image/Image.d.ts +2 -2
- package/image/Image.js +17 -32
- package/image/Image.stories.tsx +3 -1
- package/image/types.d.ts +2 -2
- package/inset/Inset.js +13 -21
- package/inset/types.d.ts +2 -2
- package/layout/ApplicationLayout.d.ts +2 -2
- package/layout/ApplicationLayout.js +23 -60
- package/layout/Icons.d.ts +4 -5
- package/layout/Icons.js +2 -16
- package/layout/types.d.ts +3 -3
- package/link/Link.accessibility.test.d.ts +1 -0
- package/link/Link.accessibility.test.js +108 -0
- package/link/Link.js +28 -47
- package/link/Link.stories.tsx +4 -4
- package/link/Link.test.d.ts +1 -0
- package/link/Link.test.js +24 -42
- package/link/types.d.ts +14 -14
- package/main.d.ts +10 -4
- package/main.js +53 -60
- package/nav-tabs/NavTabs.accessibility.test.d.ts +1 -0
- package/nav-tabs/NavTabs.accessibility.test.js +44 -0
- package/nav-tabs/NavTabs.d.ts +1 -2
- package/nav-tabs/NavTabs.js +34 -48
- package/nav-tabs/NavTabs.stories.tsx +45 -25
- package/nav-tabs/NavTabs.test.d.ts +1 -0
- package/nav-tabs/NavTabs.test.js +46 -51
- package/nav-tabs/NavTabsContext.d.ts +3 -0
- package/nav-tabs/NavTabsContext.js +8 -0
- package/nav-tabs/Tab.js +38 -67
- package/nav-tabs/types.d.ts +10 -10
- package/number-input/NumberInput.accessibility.test.d.ts +1 -0
- package/number-input/NumberInput.accessibility.test.js +227 -0
- package/number-input/NumberInput.d.ts +0 -7
- package/number-input/NumberInput.js +51 -40
- package/number-input/NumberInput.stories.tsx +37 -26
- package/number-input/NumberInput.test.d.ts +1 -0
- package/number-input/NumberInput.test.js +839 -576
- package/number-input/NumberInputContext.d.ts +3 -0
- package/number-input/NumberInputContext.js +8 -0
- package/number-input/types.d.ts +17 -5
- package/package.json +49 -41
- package/paginator/Paginator.accessibility.test.d.ts +1 -0
- package/paginator/Paginator.accessibility.test.js +78 -0
- package/paginator/Paginator.js +27 -52
- package/paginator/Paginator.test.d.ts +1 -0
- package/paginator/Paginator.test.js +226 -210
- package/paginator/types.d.ts +3 -3
- package/paragraph/Paragraph.accessibility.test.d.ts +1 -0
- package/paragraph/Paragraph.accessibility.test.js +28 -0
- package/paragraph/Paragraph.js +3 -19
- package/paragraph/Paragraph.stories.tsx +0 -17
- package/password-input/PasswordInput.accessibility.test.d.ts +1 -0
- package/password-input/PasswordInput.accessibility.test.js +152 -0
- package/password-input/PasswordInput.js +36 -55
- package/password-input/PasswordInput.stories.tsx +11 -35
- package/password-input/PasswordInput.test.d.ts +1 -0
- package/password-input/PasswordInput.test.js +153 -130
- package/password-input/types.d.ts +8 -7
- package/progress-bar/ProgressBar.accessibility.test.d.ts +1 -0
- package/progress-bar/ProgressBar.accessibility.test.js +35 -0
- package/progress-bar/ProgressBar.js +26 -56
- package/progress-bar/{ProgressBar.stories.jsx → ProgressBar.stories.tsx} +1 -1
- package/progress-bar/ProgressBar.test.d.ts +1 -0
- package/progress-bar/ProgressBar.test.js +36 -53
- package/progress-bar/types.d.ts +3 -3
- package/quick-nav/QuickNav.accessibility.test.d.ts +1 -0
- package/quick-nav/QuickNav.accessibility.test.js +57 -0
- package/quick-nav/QuickNav.js +4 -27
- package/quick-nav/QuickNav.stories.tsx +1 -1
- package/quick-nav/types.d.ts +10 -10
- package/radio-group/Radio.js +15 -50
- package/radio-group/RadioGroup.accessibility.test.d.ts +1 -0
- package/radio-group/RadioGroup.accessibility.test.js +97 -0
- package/radio-group/RadioGroup.js +37 -85
- package/radio-group/RadioGroup.test.d.ts +1 -0
- package/radio-group/RadioGroup.test.js +505 -500
- package/radio-group/types.d.ts +5 -5
- package/resultset-table/Icons.d.ts +7 -0
- package/{resultsetTable → resultset-table}/Icons.js +1 -5
- package/resultset-table/ResultsetTable.accessibility.test.d.ts +1 -0
- package/resultset-table/ResultsetTable.accessibility.test.js +284 -0
- package/resultset-table/ResultsetTable.d.ts +7 -0
- package/{resultsetTable → resultset-table}/ResultsetTable.js +79 -76
- package/{resultsetTable → resultset-table}/ResultsetTable.stories.tsx +119 -6
- package/resultset-table/ResultsetTable.test.d.ts +1 -0
- package/resultset-table/ResultsetTable.test.js +450 -0
- package/{resultsetTable → resultset-table}/types.d.ts +47 -13
- package/resultset-table/types.js +5 -0
- package/select/Listbox.d.ts +3 -3
- package/select/Listbox.js +44 -66
- package/select/Option.d.ts +3 -3
- package/select/Option.js +36 -40
- package/select/Select.accessibility.test.d.ts +1 -0
- package/select/Select.accessibility.test.js +227 -0
- package/select/Select.js +127 -310
- package/select/Select.stories.tsx +74 -117
- package/select/Select.test.d.ts +1 -0
- package/select/Select.test.js +1913 -1973
- package/select/selectUtils.d.ts +41 -0
- package/select/selectUtils.js +129 -0
- package/select/types.d.ts +15 -16
- package/sidenav/Sidenav.accessibility.test.d.ts +1 -0
- package/sidenav/Sidenav.accessibility.test.js +59 -0
- package/sidenav/Sidenav.js +44 -81
- package/sidenav/Sidenav.stories.tsx +5 -10
- package/sidenav/Sidenav.test.d.ts +1 -0
- package/sidenav/Sidenav.test.js +4 -11
- package/{layout → sidenav}/SidenavContext.d.ts +1 -1
- package/{layout → sidenav}/SidenavContext.js +3 -9
- package/sidenav/types.d.ts +20 -20
- package/slider/Slider.accessibility.test.d.ts +1 -0
- package/slider/Slider.accessibility.test.js +103 -0
- package/slider/Slider.js +66 -125
- package/slider/Slider.stories.tsx +0 -60
- package/slider/Slider.test.d.ts +1 -0
- package/slider/Slider.test.js +118 -112
- package/slider/types.d.ts +4 -4
- package/spinner/Spinner.accessibility.test.d.ts +1 -0
- package/spinner/Spinner.accessibility.test.js +96 -0
- package/spinner/Spinner.d.ts +1 -1
- package/spinner/Spinner.js +43 -96
- package/spinner/Spinner.test.d.ts +1 -0
- package/spinner/Spinner.test.js +26 -35
- package/spinner/types.d.ts +3 -3
- package/status-light/StatusLight.accessibility.test.d.ts +1 -0
- package/status-light/StatusLight.accessibility.test.js +157 -0
- package/status-light/StatusLight.d.ts +4 -0
- package/status-light/StatusLight.js +51 -0
- package/status-light/StatusLight.stories.tsx +74 -0
- package/status-light/StatusLight.test.d.ts +1 -0
- package/status-light/StatusLight.test.js +25 -0
- package/status-light/types.d.ts +17 -0
- package/status-light/types.js +5 -0
- package/switch/Switch.accessibility.test.d.ts +1 -0
- package/switch/Switch.accessibility.test.js +98 -0
- package/switch/Switch.js +49 -100
- package/switch/Switch.stories.tsx +12 -34
- package/switch/Switch.test.d.ts +1 -0
- package/switch/Switch.test.js +52 -97
- package/switch/types.d.ts +4 -4
- package/table/DropdownTheme.js +62 -0
- package/table/Table.accessibility.test.d.ts +1 -0
- package/table/Table.accessibility.test.js +92 -0
- package/table/Table.d.ts +6 -2
- package/table/Table.js +76 -33
- package/table/{Table.stories.jsx → Table.stories.tsx} +309 -2
- package/table/Table.test.d.ts +1 -0
- package/table/Table.test.js +92 -7
- package/table/types.d.ts +34 -6
- package/tabs/Tab.js +22 -37
- package/tabs/Tabs.accessibility.test.d.ts +1 -0
- package/tabs/Tabs.accessibility.test.js +56 -0
- package/tabs/Tabs.js +59 -147
- package/tabs/Tabs.stories.tsx +8 -4
- package/tabs/Tabs.test.d.ts +1 -0
- package/tabs/Tabs.test.js +58 -132
- package/tabs/types.d.ts +21 -21
- package/tag/Tag.accessibility.test.d.ts +1 -0
- package/tag/Tag.accessibility.test.js +69 -0
- package/tag/Tag.js +27 -57
- package/tag/Tag.stories.tsx +5 -8
- package/tag/Tag.test.d.ts +1 -0
- package/tag/Tag.test.js +18 -37
- package/tag/types.d.ts +9 -9
- package/text-input/Suggestion.js +9 -26
- package/text-input/Suggestions.d.ts +1 -1
- package/text-input/Suggestions.js +30 -70
- package/text-input/TextInput.accessibility.test.d.ts +1 -0
- package/text-input/TextInput.accessibility.test.js +320 -0
- package/text-input/TextInput.js +190 -301
- package/text-input/TextInput.stories.tsx +29 -160
- package/text-input/TextInput.test.d.ts +1 -0
- package/text-input/TextInput.test.js +1226 -1283
- package/text-input/types.d.ts +21 -17
- package/textarea/Textarea.accessibility.test.d.ts +1 -0
- package/textarea/Textarea.accessibility.test.js +155 -0
- package/textarea/Textarea.js +60 -103
- package/textarea/{Textarea.stories.jsx → Textarea.stories.tsx} +58 -108
- package/textarea/Textarea.test.d.ts +1 -0
- package/textarea/Textarea.test.js +136 -209
- package/textarea/types.d.ts +5 -5
- package/toggle-group/ToggleGroup.accessibility.test.d.ts +1 -0
- package/toggle-group/ToggleGroup.accessibility.test.js +107 -0
- package/toggle-group/ToggleGroup.js +25 -67
- package/toggle-group/ToggleGroup.stories.tsx +5 -5
- package/toggle-group/ToggleGroup.test.d.ts +1 -0
- package/toggle-group/ToggleGroup.test.js +49 -82
- package/toggle-group/types.d.ts +12 -12
- package/tooltip/Tooltip.accessibility.test.d.ts +1 -0
- package/tooltip/Tooltip.accessibility.test.js +144 -0
- package/tooltip/Tooltip.d.ts +4 -0
- package/tooltip/Tooltip.js +50 -0
- package/tooltip/Tooltip.stories.tsx +111 -0
- package/tooltip/Tooltip.test.d.ts +1 -0
- package/tooltip/Tooltip.test.js +112 -0
- package/tooltip/types.d.ts +16 -0
- package/tooltip/types.js +5 -0
- package/typography/Typography.accessibility.test.d.ts +1 -0
- package/typography/Typography.accessibility.test.js +339 -0
- package/typography/Typography.js +4 -13
- package/typography/Typography.stories.tsx +1 -3
- package/typography/Typography.test.js +23 -0
- package/typography/types.d.ts +1 -1
- package/useTheme.d.ts +60 -138
- package/useTheme.js +1 -8
- package/useTranslatedLabels.d.ts +11 -0
- package/useTranslatedLabels.js +1 -7
- package/utils/BaseTypography.d.ts +2 -2
- package/utils/BaseTypography.js +60 -70
- package/utils/FocusLock.js +26 -39
- package/utils/useWidth.d.ts +2 -0
- package/utils/useWidth.js +30 -0
- package/wizard/Wizard.accessibility.test.d.ts +1 -0
- package/wizard/Wizard.accessibility.test.js +55 -0
- package/wizard/Wizard.js +27 -73
- package/wizard/Wizard.stories.tsx +20 -1
- package/wizard/Wizard.test.d.ts +1 -0
- package/wizard/Wizard.test.js +54 -81
- package/wizard/types.d.ts +8 -8
- package/common/OpenSans.css +0 -69
- package/common/fonts/OpenSans-Bold.ttf +0 -0
- package/common/fonts/OpenSans-BoldItalic.ttf +0 -0
- package/common/fonts/OpenSans-ExtraBold.ttf +0 -0
- package/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
- package/common/fonts/OpenSans-Italic.ttf +0 -0
- package/common/fonts/OpenSans-Light.ttf +0 -0
- package/common/fonts/OpenSans-LightItalic.ttf +0 -0
- package/common/fonts/OpenSans-Regular.ttf +0 -0
- package/common/fonts/OpenSans-SemiBold.ttf +0 -0
- package/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
- package/date-input/Icons.d.ts +0 -6
- package/date-input/Icons.js +0 -75
- package/paginator/Icons.d.ts +0 -5
- package/paginator/Icons.js +0 -54
- package/password-input/Icons.d.ts +0 -6
- package/password-input/Icons.js +0 -39
- package/resultsetTable/Icons.d.ts +0 -7
- package/resultsetTable/ResultsetTable.d.ts +0 -4
- package/resultsetTable/ResultsetTable.test.js +0 -325
- package/select/Icons.d.ts +0 -10
- package/select/Icons.js +0 -93
- package/sidenav/Icons.d.ts +0 -7
- package/sidenav/Icons.js +0 -51
- package/text-input/Icons.d.ts +0 -8
- package/text-input/Icons.js +0 -60
- /package/{resultsetTable → action-icon}/types.js +0 -0
- /package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +0 -0
|
@@ -1,49 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
6
|
-
|
|
7
5
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
8
|
-
|
|
9
6
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
10
|
-
|
|
11
7
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
12
|
-
|
|
13
8
|
var _react = _interopRequireDefault(require("react"));
|
|
14
|
-
|
|
15
9
|
var _react2 = require("@testing-library/react");
|
|
16
|
-
|
|
17
10
|
var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
|
|
18
|
-
|
|
19
|
-
var _TextInput = _interopRequireDefault(require("./TextInput.tsx"));
|
|
20
|
-
|
|
11
|
+
var _TextInput = _interopRequireDefault(require("./TextInput"));
|
|
21
12
|
// Mocking DOMRect for Radix Primitive Popover
|
|
22
13
|
global.globalThis = global;
|
|
23
|
-
|
|
24
|
-
global.ResizeObserver = /*#__PURE__*/function () {
|
|
25
|
-
function ResizeObserver(cb) {
|
|
26
|
-
(0, _classCallCheck2["default"])(this, ResizeObserver);
|
|
27
|
-
this.cb = cb;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
(0, _createClass2["default"])(ResizeObserver, [{
|
|
31
|
-
key: "observe",
|
|
32
|
-
value: function observe() {
|
|
33
|
-
this.cb([{
|
|
34
|
-
borderBoxSize: {
|
|
35
|
-
inlineSize: 0,
|
|
36
|
-
blockSize: 0
|
|
37
|
-
}
|
|
38
|
-
}]);
|
|
39
|
-
}
|
|
40
|
-
}, {
|
|
41
|
-
key: "unobserve",
|
|
42
|
-
value: function unobserve() {}
|
|
43
|
-
}]);
|
|
44
|
-
return ResizeObserver;
|
|
45
|
-
}();
|
|
46
|
-
|
|
47
14
|
global.DOMRect = {
|
|
48
15
|
fromRect: function fromRect() {
|
|
49
16
|
return {
|
|
@@ -56,18 +23,32 @@ global.DOMRect = {
|
|
|
56
23
|
};
|
|
57
24
|
}
|
|
58
25
|
};
|
|
26
|
+
global.ResizeObserver = /*#__PURE__*/function () {
|
|
27
|
+
function ResizeObserver() {
|
|
28
|
+
(0, _classCallCheck2["default"])(this, ResizeObserver);
|
|
29
|
+
}
|
|
30
|
+
return (0, _createClass2["default"])(ResizeObserver, [{
|
|
31
|
+
key: "observe",
|
|
32
|
+
value: function observe() {}
|
|
33
|
+
}, {
|
|
34
|
+
key: "unobserve",
|
|
35
|
+
value: function unobserve() {}
|
|
36
|
+
}, {
|
|
37
|
+
key: "disconnect",
|
|
38
|
+
value: function disconnect() {}
|
|
39
|
+
}]);
|
|
40
|
+
}();
|
|
59
41
|
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
42
|
var specialCharacters = ["/", "\\", "*", "(", ")", "[", "]", "+", "?", "*{[]}|"];
|
|
61
43
|
describe("TextInput component tests", function () {
|
|
62
44
|
test("Renders with correct error aria attributes", function () {
|
|
63
45
|
var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
46
|
+
label: "Error label",
|
|
47
|
+
placeholder: "Placeholder",
|
|
48
|
+
error: "Error message."
|
|
49
|
+
})),
|
|
50
|
+
getByText = _render.getByText,
|
|
51
|
+
getByRole = _render.getByRole;
|
|
71
52
|
var input = getByRole("textbox");
|
|
72
53
|
var errorMessage = getByText("Error message.");
|
|
73
54
|
expect(errorMessage).toBeTruthy();
|
|
@@ -77,48 +58,39 @@ describe("TextInput component tests", function () {
|
|
|
77
58
|
});
|
|
78
59
|
test("Renders with correct initial value", function () {
|
|
79
60
|
var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
61
|
+
label: "Default label",
|
|
62
|
+
placeholder: "Placeholder",
|
|
63
|
+
defaultValue: "Example text"
|
|
64
|
+
})),
|
|
65
|
+
getByRole = _render2.getByRole;
|
|
86
66
|
var input = getByRole("textbox");
|
|
87
67
|
expect(input.value).toBe("Example text");
|
|
88
68
|
});
|
|
89
69
|
test("Not optional constraint (onBlur)", function () {
|
|
90
70
|
var onChange = jest.fn();
|
|
91
71
|
var onBlur = jest.fn();
|
|
92
|
-
|
|
93
72
|
var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
73
|
+
label: "Input label",
|
|
74
|
+
placeholder: "Placeholder",
|
|
75
|
+
onChange: onChange,
|
|
76
|
+
onBlur: onBlur,
|
|
77
|
+
clearable: true
|
|
78
|
+
})),
|
|
79
|
+
getByRole = _render3.getByRole;
|
|
102
80
|
var input = getByRole("textbox");
|
|
103
|
-
|
|
104
81
|
_react2.fireEvent.focus(input);
|
|
105
|
-
|
|
106
82
|
_react2.fireEvent.blur(input);
|
|
107
|
-
|
|
108
83
|
expect(onBlur).toHaveBeenCalled();
|
|
109
84
|
expect(onBlur).toHaveBeenCalledWith({
|
|
110
85
|
value: "",
|
|
111
86
|
error: "This field is required. Please, enter a value."
|
|
112
87
|
});
|
|
113
|
-
|
|
114
88
|
_react2.fireEvent.change(input, {
|
|
115
89
|
target: {
|
|
116
90
|
value: "Test"
|
|
117
91
|
}
|
|
118
92
|
});
|
|
119
|
-
|
|
120
93
|
_react2.fireEvent.blur(input);
|
|
121
|
-
|
|
122
94
|
expect(onBlur).toHaveBeenCalled();
|
|
123
95
|
expect(onBlur).toHaveBeenCalledWith({
|
|
124
96
|
value: "Test"
|
|
@@ -126,30 +98,24 @@ describe("TextInput component tests", function () {
|
|
|
126
98
|
});
|
|
127
99
|
test("Not optional constraint (onChange)", function () {
|
|
128
100
|
var onChange = jest.fn();
|
|
129
|
-
|
|
130
101
|
var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
102
|
+
label: "Input label",
|
|
103
|
+
placeholder: "Placeholder",
|
|
104
|
+
onChange: onChange,
|
|
105
|
+
clearable: true
|
|
106
|
+
})),
|
|
107
|
+
getByRole = _render4.getByRole;
|
|
138
108
|
var input = getByRole("textbox");
|
|
139
|
-
|
|
140
109
|
_react2.fireEvent.change(input, {
|
|
141
110
|
target: {
|
|
142
111
|
value: "Test"
|
|
143
112
|
}
|
|
144
113
|
});
|
|
145
|
-
|
|
146
114
|
expect(onChange).toHaveBeenCalled();
|
|
147
115
|
expect(onChange).toHaveBeenCalledWith({
|
|
148
116
|
value: "Test"
|
|
149
117
|
});
|
|
150
|
-
|
|
151
118
|
_userEvent["default"].clear(input);
|
|
152
|
-
|
|
153
119
|
expect(onChange).toHaveBeenCalled();
|
|
154
120
|
expect(onChange).toHaveBeenCalledWith({
|
|
155
121
|
value: "",
|
|
@@ -159,58 +125,47 @@ describe("TextInput component tests", function () {
|
|
|
159
125
|
test("Pattern constraint", function () {
|
|
160
126
|
var onChange = jest.fn();
|
|
161
127
|
var onBlur = jest.fn();
|
|
162
|
-
|
|
163
128
|
var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
129
|
+
label: "Input label",
|
|
130
|
+
placeholder: "Placeholder",
|
|
131
|
+
onChange: onChange,
|
|
132
|
+
onBlur: onBlur,
|
|
133
|
+
margin: {
|
|
134
|
+
left: "medium",
|
|
135
|
+
right: "medium"
|
|
136
|
+
},
|
|
137
|
+
clearable: true,
|
|
138
|
+
pattern: "^.*(?=.*[a-zA-Z])(?=.*\\d)(?=.*[!&$%&? \"]).*$"
|
|
139
|
+
})),
|
|
140
|
+
getByRole = _render5.getByRole;
|
|
177
141
|
var input = getByRole("textbox");
|
|
178
|
-
|
|
179
142
|
_react2.fireEvent.change(input, {
|
|
180
143
|
target: {
|
|
181
144
|
value: "pattern test"
|
|
182
145
|
}
|
|
183
146
|
});
|
|
184
|
-
|
|
185
147
|
expect(onChange).toHaveBeenCalled();
|
|
186
148
|
expect(onChange).toHaveBeenCalledWith({
|
|
187
149
|
value: "pattern test",
|
|
188
150
|
error: "Please match the format requested."
|
|
189
151
|
});
|
|
190
|
-
|
|
191
152
|
_react2.fireEvent.blur(input);
|
|
192
|
-
|
|
193
153
|
expect(onBlur).toHaveBeenCalled();
|
|
194
154
|
expect(onBlur).toHaveBeenCalledWith({
|
|
195
155
|
value: "pattern test",
|
|
196
156
|
error: "Please match the format requested."
|
|
197
157
|
});
|
|
198
|
-
|
|
199
158
|
_userEvent["default"].clear(input);
|
|
200
|
-
|
|
201
159
|
_react2.fireEvent.change(input, {
|
|
202
160
|
target: {
|
|
203
161
|
value: "pattern4&"
|
|
204
162
|
}
|
|
205
163
|
});
|
|
206
|
-
|
|
207
164
|
expect(onChange).toHaveBeenCalled();
|
|
208
165
|
expect(onChange).toHaveBeenCalledWith({
|
|
209
166
|
value: "pattern4&"
|
|
210
167
|
});
|
|
211
|
-
|
|
212
168
|
_react2.fireEvent.blur(input);
|
|
213
|
-
|
|
214
169
|
expect(onBlur).toHaveBeenCalled();
|
|
215
170
|
expect(onBlur).toHaveBeenCalledWith({
|
|
216
171
|
value: "pattern4&"
|
|
@@ -219,59 +174,48 @@ describe("TextInput component tests", function () {
|
|
|
219
174
|
test("Length constraint", function () {
|
|
220
175
|
var onChange = jest.fn();
|
|
221
176
|
var onBlur = jest.fn();
|
|
222
|
-
|
|
223
177
|
var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
178
|
+
label: "Input label",
|
|
179
|
+
placeholder: "Placeholder",
|
|
180
|
+
onChange: onChange,
|
|
181
|
+
onBlur: onBlur,
|
|
182
|
+
margin: {
|
|
183
|
+
left: "medium",
|
|
184
|
+
right: "medium"
|
|
185
|
+
},
|
|
186
|
+
clearable: true,
|
|
187
|
+
minLength: 5,
|
|
188
|
+
maxLength: 10
|
|
189
|
+
})),
|
|
190
|
+
getByRole = _render6.getByRole;
|
|
238
191
|
var input = getByRole("textbox");
|
|
239
|
-
|
|
240
192
|
_react2.fireEvent.change(input, {
|
|
241
193
|
target: {
|
|
242
194
|
value: "test"
|
|
243
195
|
}
|
|
244
196
|
});
|
|
245
|
-
|
|
246
197
|
expect(onChange).toHaveBeenCalled();
|
|
247
198
|
expect(onChange).toHaveBeenCalledWith({
|
|
248
199
|
value: "test",
|
|
249
200
|
error: "Min length 5, max length 10."
|
|
250
201
|
});
|
|
251
|
-
|
|
252
202
|
_react2.fireEvent.blur(input);
|
|
253
|
-
|
|
254
203
|
expect(onBlur).toHaveBeenCalled();
|
|
255
204
|
expect(onBlur).toHaveBeenCalledWith({
|
|
256
205
|
value: "test",
|
|
257
206
|
error: "Min length 5, max length 10."
|
|
258
207
|
});
|
|
259
|
-
|
|
260
208
|
_userEvent["default"].clear(input);
|
|
261
|
-
|
|
262
209
|
_react2.fireEvent.change(input, {
|
|
263
210
|
target: {
|
|
264
211
|
value: "length"
|
|
265
212
|
}
|
|
266
213
|
});
|
|
267
|
-
|
|
268
214
|
expect(onChange).toHaveBeenCalled();
|
|
269
215
|
expect(onChange).toHaveBeenCalledWith({
|
|
270
216
|
value: "length"
|
|
271
217
|
});
|
|
272
|
-
|
|
273
218
|
_react2.fireEvent.blur(input);
|
|
274
|
-
|
|
275
219
|
expect(onBlur).toHaveBeenCalled();
|
|
276
220
|
expect(onBlur).toHaveBeenCalledWith({
|
|
277
221
|
value: "length"
|
|
@@ -280,78 +224,64 @@ describe("TextInput component tests", function () {
|
|
|
280
224
|
test("Pattern and length constraints", function () {
|
|
281
225
|
var onChange = jest.fn();
|
|
282
226
|
var onBlur = jest.fn();
|
|
283
|
-
|
|
284
227
|
var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
228
|
+
label: "Input label",
|
|
229
|
+
placeholder: "Placeholder",
|
|
230
|
+
onChange: onChange,
|
|
231
|
+
onBlur: onBlur,
|
|
232
|
+
margin: {
|
|
233
|
+
left: "medium",
|
|
234
|
+
right: "medium"
|
|
235
|
+
},
|
|
236
|
+
clearable: true,
|
|
237
|
+
pattern: "^.*(?=.*[a-zA-Z])(?=.*\\d)(?=.*[!&$%&? \"]).*$",
|
|
238
|
+
minLength: 5,
|
|
239
|
+
maxLength: 10
|
|
240
|
+
})),
|
|
241
|
+
getByRole = _render7.getByRole;
|
|
300
242
|
var input = getByRole("textbox");
|
|
301
|
-
|
|
302
243
|
_react2.fireEvent.change(input, {
|
|
303
244
|
target: {
|
|
304
245
|
value: "test"
|
|
305
246
|
}
|
|
306
247
|
});
|
|
307
|
-
|
|
308
248
|
expect(onChange).toHaveBeenCalled();
|
|
309
249
|
expect(onChange).toHaveBeenCalledWith({
|
|
310
250
|
value: "test",
|
|
311
251
|
error: "Min length 5, max length 10."
|
|
312
252
|
});
|
|
313
|
-
|
|
314
253
|
_react2.fireEvent.blur(input);
|
|
315
|
-
|
|
316
254
|
expect(onBlur).toHaveBeenCalled();
|
|
317
255
|
expect(onBlur).toHaveBeenCalledWith({
|
|
318
256
|
value: "test",
|
|
319
257
|
error: "Min length 5, max length 10."
|
|
320
258
|
});
|
|
321
|
-
|
|
322
259
|
_react2.fireEvent.change(input, {
|
|
323
260
|
target: {
|
|
324
261
|
value: "tests"
|
|
325
262
|
}
|
|
326
263
|
});
|
|
327
|
-
|
|
328
264
|
expect(onChange).toHaveBeenCalled();
|
|
329
265
|
expect(onChange).toHaveBeenCalledWith({
|
|
330
266
|
value: "tests",
|
|
331
267
|
error: "Please match the format requested."
|
|
332
268
|
});
|
|
333
|
-
|
|
334
269
|
_react2.fireEvent.blur(input);
|
|
335
|
-
|
|
336
270
|
expect(onBlur).toHaveBeenCalled();
|
|
337
271
|
expect(onBlur).toHaveBeenCalledWith({
|
|
338
272
|
value: "tests",
|
|
339
273
|
error: "Please match the format requested."
|
|
340
274
|
});
|
|
341
|
-
|
|
342
275
|
_react2.fireEvent.change(input, {
|
|
343
276
|
target: {
|
|
344
277
|
value: "tests4&"
|
|
345
278
|
}
|
|
346
279
|
});
|
|
347
|
-
|
|
348
280
|
expect(onChange).toHaveBeenCalled();
|
|
349
281
|
expect(onChange).toHaveBeenCalledWith({
|
|
350
282
|
value: "tests4&"
|
|
351
283
|
});
|
|
352
|
-
|
|
353
284
|
_react2.fireEvent.blur(input);
|
|
354
|
-
|
|
355
285
|
expect(onBlur).toHaveBeenCalled();
|
|
356
286
|
expect(onBlur).toHaveBeenCalledWith({
|
|
357
287
|
value: "tests4&"
|
|
@@ -359,17 +289,13 @@ describe("TextInput component tests", function () {
|
|
|
359
289
|
});
|
|
360
290
|
test("onChange function is called correctly", function () {
|
|
361
291
|
var onChange = jest.fn();
|
|
362
|
-
|
|
363
292
|
var _render8 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
293
|
+
label: "Input label",
|
|
294
|
+
onChange: onChange
|
|
295
|
+
})),
|
|
296
|
+
getByRole = _render8.getByRole;
|
|
369
297
|
var input = getByRole("textbox");
|
|
370
|
-
|
|
371
298
|
_userEvent["default"].type(input, "onchange event test");
|
|
372
|
-
|
|
373
299
|
expect(input.value).toBe("onchange event test");
|
|
374
300
|
expect(onChange).toHaveBeenCalled();
|
|
375
301
|
expect(onChange).toHaveBeenCalledWith({
|
|
@@ -379,24 +305,19 @@ describe("TextInput component tests", function () {
|
|
|
379
305
|
test("onBlur function is called correctly", function () {
|
|
380
306
|
var onBlur = jest.fn();
|
|
381
307
|
var onChange = jest.fn();
|
|
382
|
-
|
|
383
308
|
var _render9 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
309
|
+
label: "Input label",
|
|
310
|
+
onChange: onChange,
|
|
311
|
+
onBlur: onBlur
|
|
312
|
+
})),
|
|
313
|
+
getByRole = _render9.getByRole;
|
|
390
314
|
var input = getByRole("textbox");
|
|
391
|
-
|
|
392
315
|
_react2.fireEvent.change(input, {
|
|
393
316
|
target: {
|
|
394
317
|
value: "Blur test"
|
|
395
318
|
}
|
|
396
319
|
});
|
|
397
|
-
|
|
398
320
|
_react2.fireEvent.blur(input);
|
|
399
|
-
|
|
400
321
|
expect(onBlur).toHaveBeenCalled();
|
|
401
322
|
expect(onBlur).toHaveBeenCalledWith({
|
|
402
323
|
value: "Blur test"
|
|
@@ -404,105 +325,109 @@ describe("TextInput component tests", function () {
|
|
|
404
325
|
});
|
|
405
326
|
test("Clear action tooltip is correct", function () {
|
|
406
327
|
var _render10 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
328
|
+
label: "Input label",
|
|
329
|
+
value: "Text",
|
|
330
|
+
clearable: true
|
|
331
|
+
})),
|
|
332
|
+
getByTitle = _render10.getByTitle;
|
|
413
333
|
expect(getByTitle("Clear field")).toBeTruthy();
|
|
414
334
|
});
|
|
415
|
-
test("Clear action onClick cleans the input", function () {
|
|
416
|
-
var _render11
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
335
|
+
test("Clear action onClick cleans the input", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
336
|
+
var _render11, getByRole, input, closeAction;
|
|
337
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
338
|
+
while (1) switch (_context.prev = _context.next) {
|
|
339
|
+
case 0:
|
|
340
|
+
_render11 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
341
|
+
label: "Input label",
|
|
342
|
+
clearable: true
|
|
343
|
+
})), getByRole = _render11.getByRole;
|
|
344
|
+
input = getByRole("textbox");
|
|
345
|
+
_userEvent["default"].type(input, "Test");
|
|
346
|
+
closeAction = getByRole("button");
|
|
347
|
+
_context.next = 6;
|
|
348
|
+
return _userEvent["default"].click(closeAction);
|
|
349
|
+
case 6:
|
|
350
|
+
expect(input.value).toBe("");
|
|
351
|
+
case 7:
|
|
352
|
+
case "end":
|
|
353
|
+
return _context.stop();
|
|
354
|
+
}
|
|
355
|
+
}, _callee);
|
|
356
|
+
})));
|
|
432
357
|
test("Disabled text input renders with correct aria and can not be modified", function () {
|
|
433
358
|
var onChange = jest.fn();
|
|
434
|
-
|
|
435
359
|
var _render12 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
360
|
+
label: "Input label",
|
|
361
|
+
onChange: onChange,
|
|
362
|
+
disabled: true
|
|
363
|
+
})),
|
|
364
|
+
getByRole = _render12.getByRole;
|
|
442
365
|
var input = getByRole("textbox");
|
|
443
|
-
|
|
444
366
|
_userEvent["default"].type(input, "Test");
|
|
445
|
-
|
|
446
367
|
expect(onChange).not.toHaveBeenCalled();
|
|
447
368
|
});
|
|
448
|
-
test("Disabled text input (action must be shown but not clickable)", function () {
|
|
449
|
-
var onClick
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
369
|
+
test("Disabled text input (action must be shown but not clickable)", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
|
|
370
|
+
var onClick, action, _render13, getByRole, input;
|
|
371
|
+
return _regenerator["default"].wrap(function _callee2$(_context2) {
|
|
372
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
373
|
+
case 0:
|
|
374
|
+
onClick = jest.fn();
|
|
375
|
+
action = {
|
|
376
|
+
onClick: onClick,
|
|
377
|
+
icon: /*#__PURE__*/_react["default"].createElement("svg", {
|
|
378
|
+
"data-testid": "image",
|
|
379
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
380
|
+
height: "24px",
|
|
381
|
+
viewBox: "0 0 24 24",
|
|
382
|
+
width: "24px",
|
|
383
|
+
fill: "currentColor"
|
|
384
|
+
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
385
|
+
d: "M0 0h24v24H0V0z",
|
|
386
|
+
fill: "none"
|
|
387
|
+
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
388
|
+
d: "M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"
|
|
389
|
+
}))
|
|
390
|
+
};
|
|
391
|
+
_render13 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
392
|
+
label: "Disabled input label",
|
|
393
|
+
action: action,
|
|
394
|
+
disabled: true
|
|
395
|
+
})), getByRole = _render13.getByRole;
|
|
396
|
+
input = getByRole("textbox");
|
|
397
|
+
expect(input.disabled).toBeTruthy();
|
|
398
|
+
_context2.next = 7;
|
|
399
|
+
return _userEvent["default"].click(getByRole("button"));
|
|
400
|
+
case 7:
|
|
401
|
+
expect(onClick).not.toHaveBeenCalled();
|
|
402
|
+
case 8:
|
|
403
|
+
case "end":
|
|
404
|
+
return _context2.stop();
|
|
405
|
+
}
|
|
406
|
+
}, _callee2);
|
|
407
|
+
})));
|
|
481
408
|
test("Disabled text input (clear default action should not be displayed, even with text written on the input)", function () {
|
|
482
409
|
var _render14 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
410
|
+
label: "Disabled input label",
|
|
411
|
+
value: "Sample text",
|
|
412
|
+
disabled: true,
|
|
413
|
+
clearable: true
|
|
414
|
+
})),
|
|
415
|
+
getByRole = _render14.getByRole,
|
|
416
|
+
queryByRole = _render14.queryByRole;
|
|
491
417
|
var input = getByRole("textbox");
|
|
492
418
|
expect(input.disabled).toBeTruthy();
|
|
493
419
|
expect(queryByRole("button")).toBeFalsy();
|
|
494
420
|
});
|
|
495
421
|
test("Disabled text input (suffix and prefix must be displayed)", function () {
|
|
496
422
|
var _render15 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
423
|
+
label: "Disabled input label",
|
|
424
|
+
value: "Sample text",
|
|
425
|
+
prefix: "+34",
|
|
426
|
+
suffix: "USD",
|
|
427
|
+
disabled: true
|
|
428
|
+
})),
|
|
429
|
+
getByRole = _render15.getByRole,
|
|
430
|
+
getByText = _render15.getByText;
|
|
506
431
|
var input = getByRole("textbox");
|
|
507
432
|
expect(input.disabled).toBeTruthy();
|
|
508
433
|
expect(getByText("+34")).toBeTruthy();
|
|
@@ -510,94 +435,210 @@ describe("TextInput component tests", function () {
|
|
|
510
435
|
});
|
|
511
436
|
test("Read-only text input doesn't render the clear action", function () {
|
|
512
437
|
var _render16 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
438
|
+
label: "Disabled input label",
|
|
439
|
+
defaultValue: "Sample text",
|
|
440
|
+
readOnly: true,
|
|
441
|
+
clearable: true
|
|
442
|
+
})),
|
|
443
|
+
getByRole = _render16.getByRole,
|
|
444
|
+
queryByRole = _render16.queryByRole;
|
|
521
445
|
var input = getByRole("textbox");
|
|
522
446
|
expect(input.readOnly).toBeTruthy();
|
|
523
447
|
expect(queryByRole("button")).toBeFalsy();
|
|
524
448
|
});
|
|
525
449
|
test("Read-only text input does not trigger onChange function", function () {
|
|
526
450
|
var onChange = jest.fn();
|
|
527
|
-
|
|
528
451
|
var _render17 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
452
|
+
label: "Example label",
|
|
453
|
+
onChange: onChange,
|
|
454
|
+
readOnly: true
|
|
455
|
+
})),
|
|
456
|
+
getByLabelText = _render17.getByLabelText;
|
|
535
457
|
var textInput = getByLabelText("Example label");
|
|
536
|
-
|
|
537
458
|
_userEvent["default"].type(textInput, "Test");
|
|
538
|
-
|
|
539
459
|
expect(onChange).not.toHaveBeenCalled();
|
|
540
460
|
});
|
|
541
|
-
test("Read-only text input sends its value on submit", function () {
|
|
542
|
-
var handlerOnSubmit
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
461
|
+
test("Read-only text input sends its value on submit", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3() {
|
|
462
|
+
var handlerOnSubmit, _render18, getByText, submit;
|
|
463
|
+
return _regenerator["default"].wrap(function _callee3$(_context3) {
|
|
464
|
+
while (1) switch (_context3.prev = _context3.next) {
|
|
465
|
+
case 0:
|
|
466
|
+
handlerOnSubmit = jest.fn(function (e) {
|
|
467
|
+
e.preventDefault();
|
|
468
|
+
var formData = new FormData(e.target);
|
|
469
|
+
var formProps = Object.fromEntries(formData);
|
|
470
|
+
expect(formProps).toStrictEqual({
|
|
471
|
+
data: "Text"
|
|
472
|
+
});
|
|
473
|
+
});
|
|
474
|
+
_render18 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement("form", {
|
|
475
|
+
onSubmit: handlerOnSubmit
|
|
476
|
+
}, /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
477
|
+
label: "Example label",
|
|
478
|
+
name: "data",
|
|
479
|
+
defaultValue: "Text",
|
|
480
|
+
readOnly: true
|
|
481
|
+
}), /*#__PURE__*/_react["default"].createElement("button", {
|
|
482
|
+
type: "submit"
|
|
483
|
+
}, "Submit"))), getByText = _render18.getByText;
|
|
484
|
+
submit = getByText("Submit");
|
|
485
|
+
_context3.next = 5;
|
|
486
|
+
return _userEvent["default"].click(submit);
|
|
487
|
+
case 5:
|
|
488
|
+
expect(handlerOnSubmit).toHaveBeenCalled();
|
|
489
|
+
case 6:
|
|
490
|
+
case "end":
|
|
491
|
+
return _context3.stop();
|
|
492
|
+
}
|
|
493
|
+
}, _callee3);
|
|
494
|
+
})));
|
|
495
|
+
test("Read-only text input doesn't trigger custom action's onClick event", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4() {
|
|
496
|
+
var onClick, action, _render19, getByRole;
|
|
497
|
+
return _regenerator["default"].wrap(function _callee4$(_context4) {
|
|
498
|
+
while (1) switch (_context4.prev = _context4.next) {
|
|
499
|
+
case 0:
|
|
500
|
+
onClick = jest.fn();
|
|
501
|
+
action = {
|
|
502
|
+
onClick: onClick,
|
|
503
|
+
icon: /*#__PURE__*/_react["default"].createElement("svg", {
|
|
504
|
+
"data-testid": "image",
|
|
505
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
506
|
+
height: "24px",
|
|
507
|
+
viewBox: "0 0 24 24",
|
|
508
|
+
width: "24px",
|
|
509
|
+
fill: "currentColor"
|
|
510
|
+
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
511
|
+
d: "M0 0h24v24H0V0z",
|
|
512
|
+
fill: "none"
|
|
513
|
+
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
514
|
+
d: "M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"
|
|
515
|
+
})),
|
|
516
|
+
title: "Search"
|
|
517
|
+
};
|
|
518
|
+
_render19 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
519
|
+
label: "Input label",
|
|
520
|
+
action: action,
|
|
521
|
+
readOnly: true
|
|
522
|
+
})), getByRole = _render19.getByRole;
|
|
523
|
+
_context4.next = 5;
|
|
524
|
+
return _userEvent["default"].click(getByRole("button"));
|
|
525
|
+
case 5:
|
|
526
|
+
expect(onClick).not.toHaveBeenCalled();
|
|
527
|
+
case 6:
|
|
528
|
+
case "end":
|
|
529
|
+
return _context4.stop();
|
|
530
|
+
}
|
|
531
|
+
}, _callee4);
|
|
532
|
+
})));
|
|
533
|
+
test("Action prop: image displayed with title and onClick event", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee5() {
|
|
534
|
+
var onClick, action, _render20, getByRole, getByTestId, getByTitle;
|
|
535
|
+
return _regenerator["default"].wrap(function _callee5$(_context5) {
|
|
536
|
+
while (1) switch (_context5.prev = _context5.next) {
|
|
537
|
+
case 0:
|
|
538
|
+
onClick = jest.fn();
|
|
539
|
+
action = {
|
|
540
|
+
onClick: onClick,
|
|
541
|
+
icon: /*#__PURE__*/_react["default"].createElement("svg", {
|
|
542
|
+
"data-testid": "image",
|
|
543
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
544
|
+
height: "24px",
|
|
545
|
+
viewBox: "0 0 24 24",
|
|
546
|
+
width: "24px",
|
|
547
|
+
fill: "currentColor"
|
|
548
|
+
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
549
|
+
d: "M0 0h24v24H0V0z",
|
|
550
|
+
fill: "none"
|
|
551
|
+
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
552
|
+
d: "M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"
|
|
553
|
+
})),
|
|
554
|
+
title: "Search"
|
|
555
|
+
};
|
|
556
|
+
_render20 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
557
|
+
label: "Input label",
|
|
558
|
+
action: action
|
|
559
|
+
})), getByRole = _render20.getByRole, getByTestId = _render20.getByTestId, getByTitle = _render20.getByTitle;
|
|
560
|
+
expect(getByTestId("image")).toBeTruthy();
|
|
561
|
+
expect(getByTitle("Search")).toBeTruthy();
|
|
562
|
+
_context5.next = 7;
|
|
563
|
+
return _userEvent["default"].click(getByRole("button"));
|
|
564
|
+
case 7:
|
|
565
|
+
expect(onClick).toHaveBeenCalled();
|
|
566
|
+
case 8:
|
|
567
|
+
case "end":
|
|
568
|
+
return _context5.stop();
|
|
569
|
+
}
|
|
570
|
+
}, _callee5);
|
|
571
|
+
})));
|
|
572
|
+
test("Text input submit correctly value in form", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee6() {
|
|
573
|
+
var onClick, action, handlerOnSubmit, _render21, getByText, getAllByRole, getByRole, search, submit, input;
|
|
574
|
+
return _regenerator["default"].wrap(function _callee6$(_context6) {
|
|
575
|
+
while (1) switch (_context6.prev = _context6.next) {
|
|
576
|
+
case 0:
|
|
577
|
+
onClick = jest.fn();
|
|
578
|
+
action = {
|
|
579
|
+
onClick: onClick,
|
|
580
|
+
icon: /*#__PURE__*/_react["default"].createElement("svg", {
|
|
581
|
+
"data-testid": "image",
|
|
582
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
583
|
+
height: "24px",
|
|
584
|
+
viewBox: "0 0 24 24",
|
|
585
|
+
width: "24px",
|
|
586
|
+
fill: "currentColor"
|
|
587
|
+
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
588
|
+
d: "M0 0h24v24H0V0z",
|
|
589
|
+
fill: "none"
|
|
590
|
+
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
591
|
+
d: "M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"
|
|
592
|
+
})),
|
|
593
|
+
title: "Search"
|
|
594
|
+
};
|
|
595
|
+
handlerOnSubmit = jest.fn(function (e) {
|
|
596
|
+
e.preventDefault();
|
|
597
|
+
var formData = new FormData(e.target);
|
|
598
|
+
var formProps = Object.fromEntries(formData);
|
|
599
|
+
expect(formProps).toStrictEqual({
|
|
600
|
+
data: "test"
|
|
601
|
+
});
|
|
602
|
+
});
|
|
603
|
+
_render21 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement("form", {
|
|
604
|
+
onSubmit: handlerOnSubmit
|
|
605
|
+
}, /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
606
|
+
label: "Input label",
|
|
607
|
+
name: "data",
|
|
608
|
+
action: action
|
|
609
|
+
}), /*#__PURE__*/_react["default"].createElement("button", {
|
|
610
|
+
type: "submit"
|
|
611
|
+
}, "Submit"))), getByText = _render21.getByText, getAllByRole = _render21.getAllByRole, getByRole = _render21.getByRole;
|
|
612
|
+
search = getAllByRole("button")[0];
|
|
613
|
+
submit = getByText("Submit");
|
|
614
|
+
input = getByRole("textbox");
|
|
615
|
+
_userEvent["default"].type(input, "test");
|
|
616
|
+
expect(input.value).toBe("test");
|
|
617
|
+
_context6.next = 11;
|
|
618
|
+
return _userEvent["default"].click(search);
|
|
619
|
+
case 11:
|
|
620
|
+
expect(handlerOnSubmit).not.toHaveBeenCalled();
|
|
621
|
+
_context6.next = 14;
|
|
622
|
+
return _userEvent["default"].click(submit);
|
|
623
|
+
case 14:
|
|
624
|
+
expect(handlerOnSubmit).toHaveBeenCalled();
|
|
625
|
+
case 15:
|
|
626
|
+
case "end":
|
|
627
|
+
return _context6.stop();
|
|
628
|
+
}
|
|
629
|
+
}, _callee6);
|
|
630
|
+
})));
|
|
631
|
+
test("Renders with correct prefix and suffix", function () {
|
|
632
|
+
var _render22 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
633
|
+
label: "Input label",
|
|
634
|
+
prefix: "+34",
|
|
635
|
+
suffix: "USD"
|
|
585
636
|
})),
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
var _render19 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
590
|
-
label: "Input label",
|
|
591
|
-
action: action,
|
|
592
|
-
readOnly: true
|
|
593
|
-
})),
|
|
594
|
-
getByRole = _render19.getByRole;
|
|
595
|
-
|
|
596
|
-
_userEvent["default"].click(getByRole("button"));
|
|
597
|
-
|
|
598
|
-
expect(onClick).not.toHaveBeenCalled();
|
|
637
|
+
getByText = _render22.getByText;
|
|
638
|
+
expect(getByText("+34")).toBeTruthy();
|
|
639
|
+
expect(getByText("USD")).toBeTruthy();
|
|
599
640
|
});
|
|
600
|
-
test("
|
|
641
|
+
test("Text Input has correct aria accessibility attributes", function () {
|
|
601
642
|
var onClick = jest.fn();
|
|
602
643
|
var action = {
|
|
603
644
|
onClick: onClick,
|
|
@@ -616,197 +657,78 @@ describe("TextInput component tests", function () {
|
|
|
616
657
|
})),
|
|
617
658
|
title: "Search"
|
|
618
659
|
};
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
})),
|
|
624
|
-
getByRole = _render20.getByRole,
|
|
625
|
-
getByTestId = _render20.getByTestId,
|
|
626
|
-
getByTitle = _render20.getByTitle;
|
|
627
|
-
|
|
628
|
-
expect(getByTestId("image")).toBeTruthy();
|
|
629
|
-
expect(getByTitle("Search")).toBeTruthy();
|
|
630
|
-
|
|
631
|
-
_userEvent["default"].click(getByRole("button"));
|
|
632
|
-
|
|
633
|
-
expect(onClick).toHaveBeenCalled();
|
|
634
|
-
});
|
|
635
|
-
test("Text input submit correctly value in form", function () {
|
|
636
|
-
var onClick = jest.fn();
|
|
637
|
-
var action = {
|
|
638
|
-
onClick: onClick,
|
|
639
|
-
icon: /*#__PURE__*/_react["default"].createElement("svg", {
|
|
640
|
-
"data-testid": "image",
|
|
641
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
642
|
-
height: "24px",
|
|
643
|
-
viewBox: "0 0 24 24",
|
|
644
|
-
width: "24px",
|
|
645
|
-
fill: "currentColor"
|
|
646
|
-
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
647
|
-
d: "M0 0h24v24H0V0z",
|
|
648
|
-
fill: "none"
|
|
649
|
-
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
650
|
-
d: "M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"
|
|
660
|
+
var _render23 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
661
|
+
label: "Example label",
|
|
662
|
+
clearable: true,
|
|
663
|
+
action: action
|
|
651
664
|
})),
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
var handlerOnSubmit = jest.fn(function (e) {
|
|
655
|
-
e.preventDefault();
|
|
656
|
-
var formData = new FormData(e.target);
|
|
657
|
-
var formProps = Object.fromEntries(formData);
|
|
658
|
-
expect(formProps).toStrictEqual({
|
|
659
|
-
data: "test"
|
|
660
|
-
});
|
|
661
|
-
});
|
|
662
|
-
|
|
663
|
-
var _render21 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement("form", {
|
|
664
|
-
onSubmit: handlerOnSubmit
|
|
665
|
-
}, /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
666
|
-
label: "Input label",
|
|
667
|
-
name: "data",
|
|
668
|
-
action: action
|
|
669
|
-
}), /*#__PURE__*/_react["default"].createElement("button", {
|
|
670
|
-
type: "submit"
|
|
671
|
-
}, "Submit"))),
|
|
672
|
-
getByText = _render21.getByText,
|
|
673
|
-
getAllByRole = _render21.getAllByRole,
|
|
674
|
-
getByRole = _render21.getByRole;
|
|
675
|
-
|
|
676
|
-
var search = getAllByRole("button")[0];
|
|
677
|
-
var submit = getByText("Submit");
|
|
665
|
+
getByRole = _render23.getByRole,
|
|
666
|
+
getAllByRole = _render23.getAllByRole;
|
|
678
667
|
var input = getByRole("textbox");
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
expect(input.
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
expect(
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
test("Renders with correct prefix and suffix", function () {
|
|
693
|
-
var _render22 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
694
|
-
label: "Input label",
|
|
695
|
-
prefix: "+34",
|
|
696
|
-
suffix: "USD"
|
|
697
|
-
})),
|
|
698
|
-
getByText = _render22.getByText;
|
|
699
|
-
|
|
700
|
-
expect(getByText("+34")).toBeTruthy();
|
|
701
|
-
expect(getByText("USD")).toBeTruthy();
|
|
702
|
-
});
|
|
703
|
-
test("Text Input has correct aria accessibility attributes", function () {
|
|
704
|
-
var onClick = jest.fn();
|
|
705
|
-
var action = {
|
|
706
|
-
onClick: onClick,
|
|
707
|
-
icon: /*#__PURE__*/_react["default"].createElement("svg", {
|
|
708
|
-
"data-testid": "image",
|
|
709
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
710
|
-
height: "24px",
|
|
711
|
-
viewBox: "0 0 24 24",
|
|
712
|
-
width: "24px",
|
|
713
|
-
fill: "currentColor"
|
|
714
|
-
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
715
|
-
d: "M0 0h24v24H0V0z",
|
|
716
|
-
fill: "none"
|
|
717
|
-
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
718
|
-
d: "M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"
|
|
719
|
-
})),
|
|
720
|
-
title: "Search"
|
|
721
|
-
};
|
|
722
|
-
|
|
723
|
-
var _render23 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
724
|
-
label: "Example label",
|
|
725
|
-
clearable: true,
|
|
726
|
-
action: action
|
|
727
|
-
})),
|
|
728
|
-
getByRole = _render23.getByRole,
|
|
729
|
-
getAllByRole = _render23.getAllByRole;
|
|
730
|
-
|
|
731
|
-
var input = getByRole("textbox");
|
|
732
|
-
expect(input.getAttribute("aria-autocomplete")).toBeNull();
|
|
733
|
-
expect(input.getAttribute("aria-controls")).toBeNull();
|
|
734
|
-
expect(input.getAttribute("aria-expanded")).toBeNull();
|
|
735
|
-
expect(input.getAttribute("aria-haspopup")).toBeNull();
|
|
736
|
-
expect(input.getAttribute("aria-activedescendant")).toBeNull();
|
|
737
|
-
expect(input.getAttribute("aria-invalid")).toBe("false");
|
|
738
|
-
expect(input.getAttribute("aria-errormessage")).toBeNull();
|
|
739
|
-
expect(input.getAttribute("aria-required")).toBe("true");
|
|
740
|
-
|
|
741
|
-
_userEvent["default"].type(input, "Text");
|
|
742
|
-
|
|
743
|
-
var clear = getAllByRole("button")[0];
|
|
744
|
-
expect(clear.getAttribute("aria-label")).toBe("Clear field");
|
|
745
|
-
var search = getAllByRole("button")[1];
|
|
746
|
-
expect(search.getAttribute("aria-label")).toBe("Search");
|
|
668
|
+
expect(input.getAttribute("aria-autocomplete")).toBeNull();
|
|
669
|
+
expect(input.getAttribute("aria-controls")).toBeNull();
|
|
670
|
+
expect(input.getAttribute("aria-expanded")).toBeNull();
|
|
671
|
+
expect(input.getAttribute("aria-haspopup")).toBeNull();
|
|
672
|
+
expect(input.getAttribute("aria-activedescendant")).toBeNull();
|
|
673
|
+
expect(input.getAttribute("aria-invalid")).toBe("false");
|
|
674
|
+
expect(input.getAttribute("aria-errormessage")).toBeNull();
|
|
675
|
+
expect(input.getAttribute("aria-required")).toBe("true");
|
|
676
|
+
_userEvent["default"].type(input, "Text");
|
|
677
|
+
var clear = getAllByRole("button")[0];
|
|
678
|
+
expect(clear.getAttribute("aria-label")).toBe("Clear field");
|
|
679
|
+
var search = getAllByRole("button")[1];
|
|
680
|
+
expect(search.getAttribute("aria-label")).toBe("Search");
|
|
747
681
|
});
|
|
748
682
|
test("Autosuggest has correct accessibility attributes", function () {
|
|
749
683
|
var _render24 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
684
|
+
label: "Autocomplete Countries",
|
|
685
|
+
optional: true,
|
|
686
|
+
suggestions: countries
|
|
687
|
+
})),
|
|
688
|
+
getByRole = _render24.getByRole,
|
|
689
|
+
getAllByRole = _render24.getAllByRole;
|
|
757
690
|
var input = getByRole("combobox");
|
|
758
691
|
expect(input.getAttribute("aria-autocomplete")).toBe("list");
|
|
759
692
|
expect(input.getAttribute("aria-expanded")).toBe("false");
|
|
760
693
|
expect(input.getAttribute("aria-haspopup")).toBe("listbox");
|
|
761
694
|
expect(input.getAttribute("aria-required")).toBe("false");
|
|
762
|
-
|
|
763
695
|
_react2.fireEvent.focus(input);
|
|
764
|
-
|
|
765
696
|
var list = getByRole("listbox");
|
|
766
697
|
expect(input.getAttribute("aria-controls")).toBe(list.id);
|
|
767
698
|
expect(input.getAttribute("aria-expanded")).toBe("true");
|
|
768
699
|
var options = getAllByRole("option");
|
|
769
700
|
expect(options[0].getAttribute("aria-selected")).toBeNull();
|
|
770
701
|
});
|
|
702
|
+
test("Mouse wheel interaction does not affect the text value", function () {
|
|
703
|
+
var _render25 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
704
|
+
label: "Default label",
|
|
705
|
+
placeholder: "Placeholder",
|
|
706
|
+
defaultValue: "Example text"
|
|
707
|
+
})),
|
|
708
|
+
getByRole = _render25.getByRole;
|
|
709
|
+
var input = getByRole("textbox");
|
|
710
|
+
_react2.fireEvent.wheel(input, {
|
|
711
|
+
deltaY: -100
|
|
712
|
+
});
|
|
713
|
+
expect(input.value).toBe("Example text");
|
|
714
|
+
_react2.fireEvent.wheel(input, {
|
|
715
|
+
deltaY: 100
|
|
716
|
+
});
|
|
717
|
+
expect(input.value).toBe("Example text");
|
|
718
|
+
});
|
|
771
719
|
});
|
|
772
720
|
describe("TextInput component synchronous autosuggest tests", function () {
|
|
773
721
|
test("Autosuggest is displayed when the input gains focus", function () {
|
|
774
722
|
var onChange = jest.fn();
|
|
775
|
-
|
|
776
|
-
var _render25 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
777
|
-
label: "Autocomplete Countries",
|
|
778
|
-
suggestions: countries,
|
|
779
|
-
onChange: onChange
|
|
780
|
-
})),
|
|
781
|
-
getByRole = _render25.getByRole,
|
|
782
|
-
getByText = _render25.getByText;
|
|
783
|
-
|
|
784
|
-
var input = getByRole("combobox");
|
|
785
|
-
|
|
786
|
-
_react2.fireEvent.focus(input);
|
|
787
|
-
|
|
788
|
-
var list = getByRole("listbox");
|
|
789
|
-
expect(list).toBeTruthy();
|
|
790
|
-
expect(getByText("Afghanistan")).toBeTruthy();
|
|
791
|
-
expect(getByText("Albania")).toBeTruthy();
|
|
792
|
-
expect(getByText("Algeria")).toBeTruthy();
|
|
793
|
-
expect(getByText("Andorra")).toBeTruthy();
|
|
794
|
-
});
|
|
795
|
-
test("Autosuggest is displayed when the user clicks the input", function () {
|
|
796
|
-
var onChange = jest.fn();
|
|
797
|
-
|
|
798
723
|
var _render26 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
724
|
+
label: "Autocomplete Countries",
|
|
725
|
+
suggestions: countries,
|
|
726
|
+
onChange: onChange
|
|
727
|
+
})),
|
|
728
|
+
getByRole = _render26.getByRole,
|
|
729
|
+
getByText = _render26.getByText;
|
|
806
730
|
var input = getByRole("combobox");
|
|
807
|
-
|
|
808
731
|
_react2.fireEvent.focus(input);
|
|
809
|
-
|
|
810
732
|
var list = getByRole("listbox");
|
|
811
733
|
expect(list).toBeTruthy();
|
|
812
734
|
expect(getByText("Afghanistan")).toBeTruthy();
|
|
@@ -814,636 +736,707 @@ describe("TextInput component synchronous autosuggest tests", function () {
|
|
|
814
736
|
expect(getByText("Algeria")).toBeTruthy();
|
|
815
737
|
expect(getByText("Andorra")).toBeTruthy();
|
|
816
738
|
});
|
|
817
|
-
test("Autosuggest is displayed
|
|
818
|
-
var onChange
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
});
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
|
|
853
|
-
|
|
854
|
-
|
|
739
|
+
test("Autosuggest is displayed when the user clicks the input", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee7() {
|
|
740
|
+
var onChange, _render27, getByRole, getByText, input, list;
|
|
741
|
+
return _regenerator["default"].wrap(function _callee7$(_context7) {
|
|
742
|
+
while (1) switch (_context7.prev = _context7.next) {
|
|
743
|
+
case 0:
|
|
744
|
+
onChange = jest.fn();
|
|
745
|
+
_render27 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
746
|
+
label: "Autocomplete Countries",
|
|
747
|
+
suggestions: countries,
|
|
748
|
+
onChange: onChange
|
|
749
|
+
})), getByRole = _render27.getByRole, getByText = _render27.getByText;
|
|
750
|
+
input = getByRole("combobox");
|
|
751
|
+
_context7.next = 5;
|
|
752
|
+
return _userEvent["default"].click(input);
|
|
753
|
+
case 5:
|
|
754
|
+
list = getByRole("listbox");
|
|
755
|
+
expect(list).toBeTruthy();
|
|
756
|
+
expect(getByText("Afghanistan")).toBeTruthy();
|
|
757
|
+
expect(getByText("Albania")).toBeTruthy();
|
|
758
|
+
expect(getByText("Algeria")).toBeTruthy();
|
|
759
|
+
expect(getByText("Andorra")).toBeTruthy();
|
|
760
|
+
case 11:
|
|
761
|
+
case "end":
|
|
762
|
+
return _context7.stop();
|
|
763
|
+
}
|
|
764
|
+
}, _callee7);
|
|
765
|
+
})));
|
|
766
|
+
test("Autosuggest is displayed while the user is writing (if closed previously, if it is open stays open)", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee8() {
|
|
767
|
+
var _render28, getByRole, getByText, getAllByText, input;
|
|
768
|
+
return _regenerator["default"].wrap(function _callee8$(_context8) {
|
|
769
|
+
while (1) switch (_context8.prev = _context8.next) {
|
|
770
|
+
case 0:
|
|
771
|
+
_render28 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
772
|
+
label: "Autocomplete Countries",
|
|
773
|
+
suggestions: countries
|
|
774
|
+
})), getByRole = _render28.getByRole, getByText = _render28.getByText, getAllByText = _render28.getAllByText;
|
|
775
|
+
input = getByRole("combobox");
|
|
776
|
+
_context8.next = 4;
|
|
777
|
+
return _userEvent["default"].type(input, "Bah");
|
|
778
|
+
case 4:
|
|
779
|
+
expect(getByRole("listbox")).toBeTruthy();
|
|
780
|
+
expect(getAllByText("Bah").length).toBe(2);
|
|
781
|
+
expect(getByText("amas")).toBeTruthy();
|
|
782
|
+
expect(getByText("rain")).toBeTruthy();
|
|
783
|
+
case 8:
|
|
784
|
+
case "end":
|
|
785
|
+
return _context8.stop();
|
|
786
|
+
}
|
|
787
|
+
}, _callee8);
|
|
788
|
+
})));
|
|
789
|
+
test("Read-only text input does not open the suggestions list", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee9() {
|
|
790
|
+
var onChange, _render29, getByRole, queryByRole, input;
|
|
791
|
+
return _regenerator["default"].wrap(function _callee9$(_context9) {
|
|
792
|
+
while (1) switch (_context9.prev = _context9.next) {
|
|
793
|
+
case 0:
|
|
794
|
+
onChange = jest.fn();
|
|
795
|
+
_render29 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
796
|
+
label: "Autocomplete Countries",
|
|
797
|
+
suggestions: countries,
|
|
798
|
+
onChange: onChange,
|
|
799
|
+
readOnly: true
|
|
800
|
+
})), getByRole = _render29.getByRole, queryByRole = _render29.queryByRole;
|
|
801
|
+
input = getByRole("combobox");
|
|
802
|
+
_react2.fireEvent.focus(input);
|
|
803
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
804
|
+
_context9.next = 7;
|
|
805
|
+
return _userEvent["default"].click(input);
|
|
806
|
+
case 7:
|
|
807
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
808
|
+
case 8:
|
|
809
|
+
case "end":
|
|
810
|
+
return _context9.stop();
|
|
811
|
+
}
|
|
812
|
+
}, _callee9);
|
|
813
|
+
})));
|
|
855
814
|
test("Autosuggest displays filtered when the input has a default value", function () {
|
|
856
|
-
var
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
815
|
+
var _render30 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
816
|
+
label: "Uncontrolled suggestions filtered by default",
|
|
817
|
+
helperText: "Example of helper text",
|
|
818
|
+
placeholder: "Placeholder",
|
|
819
|
+
margin: "medium",
|
|
820
|
+
defaultValue: "Suggestion 2",
|
|
821
|
+
suggestions: ["Suggestion 11", "Suggestion 12", "Suggestion 23", "Suggestion 24"],
|
|
822
|
+
clearable: true
|
|
823
|
+
})),
|
|
824
|
+
getByRole = _render30.getByRole,
|
|
825
|
+
getByText = _render30.getByText,
|
|
826
|
+
getAllByText = _render30.getAllByText;
|
|
869
827
|
var input = getByRole("combobox");
|
|
870
828
|
expect(input.value).toBe("Suggestion 2");
|
|
871
|
-
|
|
872
829
|
_react2.fireEvent.focus(input);
|
|
873
|
-
|
|
874
830
|
expect(getAllByText("Suggestion 2").length).toBe(2);
|
|
875
831
|
expect(getByText("3")).toBeTruthy();
|
|
876
832
|
expect(getByText("4")).toBeTruthy();
|
|
877
833
|
});
|
|
878
834
|
test("Autosuggest is not displayed when prop suggestions is an empty array", function () {
|
|
879
835
|
var onChange = jest.fn();
|
|
880
|
-
|
|
881
|
-
var _render29 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
882
|
-
label: "Autocomplete Countries",
|
|
883
|
-
suggestions: [],
|
|
884
|
-
onChange: onChange
|
|
885
|
-
})),
|
|
886
|
-
queryByRole = _render29.queryByRole;
|
|
887
|
-
|
|
888
|
-
var input = queryByRole("textbox");
|
|
889
|
-
|
|
890
|
-
_react2.fireEvent.focus(input);
|
|
891
|
-
|
|
892
|
-
expect(queryByRole("listbox")).toBeFalsy();
|
|
893
|
-
});
|
|
894
|
-
test("Autosuggest closes the listbox when there are no matches for the user's input", function () {
|
|
895
|
-
var onChange = jest.fn();
|
|
896
|
-
|
|
897
|
-
var _render30 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
898
|
-
label: "Autocomplete Countries",
|
|
899
|
-
suggestions: countries,
|
|
900
|
-
onChange: onChange
|
|
901
|
-
})),
|
|
902
|
-
getByRole = _render30.getByRole,
|
|
903
|
-
queryByRole = _render30.queryByRole,
|
|
904
|
-
getByText = _render30.getByText;
|
|
905
|
-
|
|
906
|
-
var input = getByRole("combobox");
|
|
907
|
-
|
|
908
|
-
_react2.fireEvent.focus(input);
|
|
909
|
-
|
|
910
|
-
var list = getByRole("listbox");
|
|
911
|
-
expect(list).toBeTruthy();
|
|
912
|
-
expect(getByText("Afghanistan")).toBeTruthy();
|
|
913
|
-
|
|
914
|
-
_userEvent["default"].type(input, "x");
|
|
915
|
-
|
|
916
|
-
expect(queryByRole("listbox")).toBeFalsy();
|
|
917
|
-
});
|
|
918
|
-
test("Autosuggest with no matches founded doesn't let the listbox to be opened", function () {
|
|
919
|
-
var onChange = jest.fn();
|
|
920
|
-
|
|
921
836
|
var _render31 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
|
|
928
|
-
getByText = _render31.getByText;
|
|
929
|
-
|
|
930
|
-
var input = getByRole("combobox");
|
|
931
|
-
|
|
932
|
-
_react2.fireEvent.focus(input);
|
|
933
|
-
|
|
934
|
-
var list = getByRole("listbox");
|
|
935
|
-
expect(list).toBeTruthy();
|
|
936
|
-
expect(getByText("Afghanistan")).toBeTruthy();
|
|
937
|
-
|
|
938
|
-
_userEvent["default"].type(input, "x");
|
|
939
|
-
|
|
940
|
-
expect(queryByRole("listbox")).toBeFalsy();
|
|
941
|
-
|
|
942
|
-
_react2.fireEvent.focus(input);
|
|
943
|
-
|
|
944
|
-
expect(queryByRole("listbox")).toBeFalsy();
|
|
945
|
-
|
|
946
|
-
_react2.fireEvent.keyDown(input, {
|
|
947
|
-
key: "ArrowUp",
|
|
948
|
-
code: "ArrowUp",
|
|
949
|
-
keyCode: 38,
|
|
950
|
-
charCode: 38
|
|
951
|
-
});
|
|
952
|
-
|
|
953
|
-
expect(queryByRole("listbox")).toBeFalsy();
|
|
954
|
-
|
|
955
|
-
_react2.fireEvent.keyDown(input, {
|
|
956
|
-
key: "ArrowDown",
|
|
957
|
-
code: "ArrowDown",
|
|
958
|
-
keyCode: 40,
|
|
959
|
-
charCode: 40
|
|
960
|
-
});
|
|
961
|
-
|
|
962
|
-
expect(queryByRole("listbox")).toBeFalsy();
|
|
963
|
-
});
|
|
964
|
-
test("Autosuggest uncontrolled - Suggestion selected by click", function () {
|
|
965
|
-
var onChange = jest.fn();
|
|
966
|
-
|
|
967
|
-
var _render32 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
968
|
-
label: "Autocomplete Countries",
|
|
969
|
-
suggestions: countries,
|
|
970
|
-
onChange: onChange
|
|
971
|
-
})),
|
|
972
|
-
getByRole = _render32.getByRole,
|
|
973
|
-
getByText = _render32.getByText,
|
|
974
|
-
queryByRole = _render32.queryByRole;
|
|
975
|
-
|
|
976
|
-
var input = getByRole("combobox");
|
|
977
|
-
|
|
837
|
+
label: "Autocomplete Countries",
|
|
838
|
+
suggestions: [],
|
|
839
|
+
onChange: onChange
|
|
840
|
+
})),
|
|
841
|
+
queryByRole = _render31.queryByRole;
|
|
842
|
+
var input = queryByRole("textbox");
|
|
978
843
|
_react2.fireEvent.focus(input);
|
|
979
|
-
|
|
980
|
-
_userEvent["default"].type(input, "Alba");
|
|
981
|
-
|
|
982
|
-
expect(onChange).toHaveBeenCalled();
|
|
983
|
-
expect(getByText("Alba")).toBeTruthy();
|
|
984
|
-
expect(getByText("nia")).toBeTruthy();
|
|
985
|
-
|
|
986
|
-
_userEvent["default"].click(getByRole("option"));
|
|
987
|
-
|
|
988
|
-
expect(input.value).toBe("Albania");
|
|
989
844
|
expect(queryByRole("listbox")).toBeFalsy();
|
|
990
845
|
});
|
|
991
|
-
test("Autosuggest
|
|
992
|
-
var onChange
|
|
993
|
-
|
|
994
|
-
|
|
995
|
-
|
|
996
|
-
|
|
997
|
-
|
|
998
|
-
|
|
999
|
-
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
|
|
1003
|
-
|
|
1004
|
-
|
|
1005
|
-
|
|
1006
|
-
|
|
1007
|
-
|
|
1008
|
-
|
|
1009
|
-
|
|
1010
|
-
|
|
1011
|
-
|
|
1012
|
-
|
|
1013
|
-
|
|
1014
|
-
|
|
1015
|
-
|
|
1016
|
-
|
|
1017
|
-
|
|
1018
|
-
|
|
1019
|
-
|
|
1020
|
-
|
|
1021
|
-
|
|
1022
|
-
|
|
1023
|
-
|
|
1024
|
-
|
|
1025
|
-
|
|
1026
|
-
|
|
1027
|
-
|
|
1028
|
-
|
|
1029
|
-
|
|
1030
|
-
|
|
1031
|
-
|
|
1032
|
-
|
|
1033
|
-
|
|
1034
|
-
|
|
1035
|
-
|
|
1036
|
-
|
|
1037
|
-
|
|
1038
|
-
|
|
1039
|
-
|
|
1040
|
-
|
|
1041
|
-
|
|
1042
|
-
|
|
1043
|
-
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
|
|
1054
|
-
|
|
1055
|
-
|
|
1056
|
-
|
|
1057
|
-
|
|
1058
|
-
|
|
1059
|
-
|
|
1060
|
-
|
|
1061
|
-
|
|
1062
|
-
|
|
1063
|
-
|
|
1064
|
-
|
|
1065
|
-
|
|
1066
|
-
|
|
1067
|
-
|
|
1068
|
-
|
|
1069
|
-
|
|
1070
|
-
|
|
1071
|
-
|
|
1072
|
-
|
|
1073
|
-
|
|
1074
|
-
|
|
1075
|
-
|
|
1076
|
-
|
|
1077
|
-
|
|
1078
|
-
|
|
1079
|
-
|
|
1080
|
-
|
|
1081
|
-
|
|
1082
|
-
|
|
1083
|
-
|
|
1084
|
-
|
|
1085
|
-
|
|
1086
|
-
|
|
1087
|
-
|
|
1088
|
-
|
|
1089
|
-
|
|
1090
|
-
|
|
1091
|
-
|
|
1092
|
-
|
|
1093
|
-
|
|
846
|
+
test("Autosuggest closes the listbox when there are no matches for the user's input", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee11() {
|
|
847
|
+
var onChange, _render32, getByRole, queryByRole, input;
|
|
848
|
+
return _regenerator["default"].wrap(function _callee11$(_context11) {
|
|
849
|
+
while (1) switch (_context11.prev = _context11.next) {
|
|
850
|
+
case 0:
|
|
851
|
+
onChange = jest.fn();
|
|
852
|
+
_render32 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
853
|
+
label: "Autocomplete Countries",
|
|
854
|
+
suggestions: countries,
|
|
855
|
+
onChange: onChange
|
|
856
|
+
})), getByRole = _render32.getByRole, queryByRole = _render32.queryByRole;
|
|
857
|
+
input = getByRole("combobox");
|
|
858
|
+
_context11.next = 5;
|
|
859
|
+
return (0, _react2.act)( /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee10() {
|
|
860
|
+
return _regenerator["default"].wrap(function _callee10$(_context10) {
|
|
861
|
+
while (1) switch (_context10.prev = _context10.next) {
|
|
862
|
+
case 0:
|
|
863
|
+
_userEvent["default"].type(input, "x");
|
|
864
|
+
case 1:
|
|
865
|
+
case "end":
|
|
866
|
+
return _context10.stop();
|
|
867
|
+
}
|
|
868
|
+
}, _callee10);
|
|
869
|
+
})));
|
|
870
|
+
case 5:
|
|
871
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
872
|
+
case 6:
|
|
873
|
+
case "end":
|
|
874
|
+
return _context11.stop();
|
|
875
|
+
}
|
|
876
|
+
}, _callee11);
|
|
877
|
+
})));
|
|
878
|
+
test("Autosuggest with no matches founded doesn't let the listbox to be opened", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee13() {
|
|
879
|
+
var onChange, _render33, getByRole, queryByRole, input;
|
|
880
|
+
return _regenerator["default"].wrap(function _callee13$(_context13) {
|
|
881
|
+
while (1) switch (_context13.prev = _context13.next) {
|
|
882
|
+
case 0:
|
|
883
|
+
onChange = jest.fn();
|
|
884
|
+
_render33 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
885
|
+
label: "Autocomplete Countries",
|
|
886
|
+
suggestions: countries,
|
|
887
|
+
onChange: onChange
|
|
888
|
+
})), getByRole = _render33.getByRole, queryByRole = _render33.queryByRole;
|
|
889
|
+
input = getByRole("combobox");
|
|
890
|
+
_context13.next = 5;
|
|
891
|
+
return (0, _react2.act)( /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee12() {
|
|
892
|
+
return _regenerator["default"].wrap(function _callee12$(_context12) {
|
|
893
|
+
while (1) switch (_context12.prev = _context12.next) {
|
|
894
|
+
case 0:
|
|
895
|
+
_userEvent["default"].type(input, "x");
|
|
896
|
+
case 1:
|
|
897
|
+
case "end":
|
|
898
|
+
return _context12.stop();
|
|
899
|
+
}
|
|
900
|
+
}, _callee12);
|
|
901
|
+
})));
|
|
902
|
+
case 5:
|
|
903
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
904
|
+
_react2.fireEvent.focus(input);
|
|
905
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
906
|
+
_react2.fireEvent.keyDown(input, {
|
|
907
|
+
key: "ArrowUp",
|
|
908
|
+
code: "ArrowUp",
|
|
909
|
+
keyCode: 38,
|
|
910
|
+
charCode: 38
|
|
911
|
+
});
|
|
912
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
913
|
+
_react2.fireEvent.keyDown(input, {
|
|
914
|
+
key: "ArrowDown",
|
|
915
|
+
code: "ArrowDown",
|
|
916
|
+
keyCode: 40,
|
|
917
|
+
charCode: 40
|
|
918
|
+
});
|
|
919
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
920
|
+
case 12:
|
|
921
|
+
case "end":
|
|
922
|
+
return _context13.stop();
|
|
923
|
+
}
|
|
924
|
+
}, _callee13);
|
|
925
|
+
})));
|
|
926
|
+
test("Autosuggest uncontrolled - Suggestion selected by click", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee16() {
|
|
927
|
+
var onChange, _render34, getByRole, getByText, queryByRole, input;
|
|
928
|
+
return _regenerator["default"].wrap(function _callee16$(_context16) {
|
|
929
|
+
while (1) switch (_context16.prev = _context16.next) {
|
|
930
|
+
case 0:
|
|
931
|
+
onChange = jest.fn();
|
|
932
|
+
_render34 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
933
|
+
label: "Autocomplete Countries",
|
|
934
|
+
suggestions: countries,
|
|
935
|
+
onChange: onChange
|
|
936
|
+
})), getByRole = _render34.getByRole, getByText = _render34.getByText, queryByRole = _render34.queryByRole;
|
|
937
|
+
input = getByRole("combobox");
|
|
938
|
+
_react2.fireEvent.focus(input);
|
|
939
|
+
_context16.next = 6;
|
|
940
|
+
return (0, _react2.act)( /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee14() {
|
|
941
|
+
return _regenerator["default"].wrap(function _callee14$(_context14) {
|
|
942
|
+
while (1) switch (_context14.prev = _context14.next) {
|
|
943
|
+
case 0:
|
|
944
|
+
_userEvent["default"].type(input, "Alba");
|
|
945
|
+
case 1:
|
|
946
|
+
case "end":
|
|
947
|
+
return _context14.stop();
|
|
948
|
+
}
|
|
949
|
+
}, _callee14);
|
|
950
|
+
})));
|
|
951
|
+
case 6:
|
|
952
|
+
expect(onChange).toHaveBeenCalled();
|
|
953
|
+
expect(getByText("Alba")).toBeTruthy();
|
|
954
|
+
expect(getByText("nia")).toBeTruthy();
|
|
955
|
+
_context16.next = 11;
|
|
956
|
+
return (0, _react2.act)( /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee15() {
|
|
957
|
+
return _regenerator["default"].wrap(function _callee15$(_context15) {
|
|
958
|
+
while (1) switch (_context15.prev = _context15.next) {
|
|
959
|
+
case 0:
|
|
960
|
+
_userEvent["default"].click(getByRole("option"));
|
|
961
|
+
case 1:
|
|
962
|
+
case "end":
|
|
963
|
+
return _context15.stop();
|
|
964
|
+
}
|
|
965
|
+
}, _callee15);
|
|
966
|
+
})));
|
|
967
|
+
case 11:
|
|
968
|
+
expect(input.value).toBe("Albania");
|
|
969
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
970
|
+
case 13:
|
|
971
|
+
case "end":
|
|
972
|
+
return _context16.stop();
|
|
973
|
+
}
|
|
974
|
+
}, _callee16);
|
|
975
|
+
})));
|
|
976
|
+
test("Autosuggest controlled - Suggestion selected by click", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee17() {
|
|
977
|
+
var onChange, _render35, getByRole, getByText, queryByRole, input;
|
|
978
|
+
return _regenerator["default"].wrap(function _callee17$(_context17) {
|
|
979
|
+
while (1) switch (_context17.prev = _context17.next) {
|
|
980
|
+
case 0:
|
|
981
|
+
onChange = jest.fn();
|
|
982
|
+
_render35 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
983
|
+
label: "Autocomplete Countries",
|
|
984
|
+
value: "Andor",
|
|
985
|
+
suggestions: countries,
|
|
986
|
+
onChange: onChange
|
|
987
|
+
})), getByRole = _render35.getByRole, getByText = _render35.getByText, queryByRole = _render35.queryByRole;
|
|
988
|
+
input = getByRole("combobox");
|
|
989
|
+
_context17.next = 5;
|
|
990
|
+
return _userEvent["default"].click(getByText("Autocomplete Countries"));
|
|
991
|
+
case 5:
|
|
992
|
+
expect(input.value).toBe("Andor");
|
|
993
|
+
expect(getByText("Andor")).toBeTruthy();
|
|
994
|
+
expect(getByText("ra")).toBeTruthy();
|
|
995
|
+
_context17.next = 10;
|
|
996
|
+
return _userEvent["default"].click(getByRole("option"));
|
|
997
|
+
case 10:
|
|
998
|
+
expect(onChange).toHaveBeenCalledWith({
|
|
999
|
+
value: "Andorra"
|
|
1000
|
+
});
|
|
1001
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
1002
|
+
case 12:
|
|
1003
|
+
case "end":
|
|
1004
|
+
return _context17.stop();
|
|
1005
|
+
}
|
|
1006
|
+
}, _callee17);
|
|
1007
|
+
})));
|
|
1008
|
+
test("Autosuggest - Pattern constraint", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee20() {
|
|
1009
|
+
var onChange, onBlur, _render36, getByRole, getByText, input;
|
|
1010
|
+
return _regenerator["default"].wrap(function _callee20$(_context20) {
|
|
1011
|
+
while (1) switch (_context20.prev = _context20.next) {
|
|
1012
|
+
case 0:
|
|
1013
|
+
onChange = jest.fn();
|
|
1014
|
+
onBlur = jest.fn();
|
|
1015
|
+
_render36 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1016
|
+
label: "Autocomplete Countries",
|
|
1017
|
+
suggestions: countries,
|
|
1018
|
+
onChange: onChange,
|
|
1019
|
+
onBlur: onBlur,
|
|
1020
|
+
pattern: "^.*(?=.*[a-zA-Z])(?=.*\\d)(?=.*[!&$%&? \"]).*$"
|
|
1021
|
+
})), getByRole = _render36.getByRole, getByText = _render36.getByText;
|
|
1022
|
+
input = getByRole("combobox");
|
|
1023
|
+
_react2.fireEvent.focus(input);
|
|
1024
|
+
_context20.next = 7;
|
|
1025
|
+
return (0, _react2.act)( /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee18() {
|
|
1026
|
+
return _regenerator["default"].wrap(function _callee18$(_context18) {
|
|
1027
|
+
while (1) switch (_context18.prev = _context18.next) {
|
|
1028
|
+
case 0:
|
|
1029
|
+
_userEvent["default"].type(input, "Andor");
|
|
1030
|
+
case 1:
|
|
1031
|
+
case "end":
|
|
1032
|
+
return _context18.stop();
|
|
1033
|
+
}
|
|
1034
|
+
}, _callee18);
|
|
1035
|
+
})));
|
|
1036
|
+
case 7:
|
|
1037
|
+
expect(getByText("Andor")).toBeTruthy();
|
|
1038
|
+
expect(getByText("ra")).toBeTruthy();
|
|
1039
|
+
_context20.next = 11;
|
|
1040
|
+
return (0, _react2.act)( /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee19() {
|
|
1041
|
+
return _regenerator["default"].wrap(function _callee19$(_context19) {
|
|
1042
|
+
while (1) switch (_context19.prev = _context19.next) {
|
|
1043
|
+
case 0:
|
|
1044
|
+
_userEvent["default"].click(getByRole("option"));
|
|
1045
|
+
case 1:
|
|
1046
|
+
case "end":
|
|
1047
|
+
return _context19.stop();
|
|
1048
|
+
}
|
|
1049
|
+
}, _callee19);
|
|
1050
|
+
})));
|
|
1051
|
+
case 11:
|
|
1052
|
+
expect(onChange).toHaveBeenCalledWith({
|
|
1053
|
+
value: "Andorra",
|
|
1054
|
+
error: "Please match the format requested."
|
|
1055
|
+
});
|
|
1056
|
+
_react2.fireEvent.blur(input);
|
|
1057
|
+
expect(onBlur).toHaveBeenCalledWith({
|
|
1058
|
+
value: "Andorra",
|
|
1059
|
+
error: "Please match the format requested."
|
|
1060
|
+
});
|
|
1061
|
+
case 14:
|
|
1062
|
+
case "end":
|
|
1063
|
+
return _context20.stop();
|
|
1064
|
+
}
|
|
1065
|
+
}, _callee20);
|
|
1066
|
+
})));
|
|
1067
|
+
test("Autosuggest - Length constraint", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee23() {
|
|
1068
|
+
var onChange, onBlur, _render37, getByText, getByRole, input;
|
|
1069
|
+
return _regenerator["default"].wrap(function _callee23$(_context23) {
|
|
1070
|
+
while (1) switch (_context23.prev = _context23.next) {
|
|
1071
|
+
case 0:
|
|
1072
|
+
onChange = jest.fn();
|
|
1073
|
+
onBlur = jest.fn();
|
|
1074
|
+
_render37 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1075
|
+
label: "Autocomplete Countries",
|
|
1076
|
+
suggestions: countries,
|
|
1077
|
+
onChange: onChange,
|
|
1078
|
+
onBlur: onBlur,
|
|
1079
|
+
minLength: 5,
|
|
1080
|
+
maxLength: 10
|
|
1081
|
+
})), getByText = _render37.getByText, getByRole = _render37.getByRole;
|
|
1082
|
+
input = getByRole("combobox");
|
|
1083
|
+
_react2.fireEvent.focus(input);
|
|
1084
|
+
_context23.next = 7;
|
|
1085
|
+
return (0, _react2.act)( /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee21() {
|
|
1086
|
+
return _regenerator["default"].wrap(function _callee21$(_context21) {
|
|
1087
|
+
while (1) switch (_context21.prev = _context21.next) {
|
|
1088
|
+
case 0:
|
|
1089
|
+
_userEvent["default"].type(input, "Cha");
|
|
1090
|
+
case 1:
|
|
1091
|
+
case "end":
|
|
1092
|
+
return _context21.stop();
|
|
1093
|
+
}
|
|
1094
|
+
}, _callee21);
|
|
1095
|
+
})));
|
|
1096
|
+
case 7:
|
|
1097
|
+
expect(getByText("Cha")).toBeTruthy();
|
|
1098
|
+
expect(getByText("d")).toBeTruthy();
|
|
1099
|
+
_context23.next = 11;
|
|
1100
|
+
return (0, _react2.act)( /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee22() {
|
|
1101
|
+
return _regenerator["default"].wrap(function _callee22$(_context22) {
|
|
1102
|
+
while (1) switch (_context22.prev = _context22.next) {
|
|
1103
|
+
case 0:
|
|
1104
|
+
_userEvent["default"].click(getByRole("option"));
|
|
1105
|
+
case 1:
|
|
1106
|
+
case "end":
|
|
1107
|
+
return _context22.stop();
|
|
1108
|
+
}
|
|
1109
|
+
}, _callee22);
|
|
1110
|
+
})));
|
|
1111
|
+
case 11:
|
|
1112
|
+
expect(onChange).toHaveBeenCalledWith({
|
|
1113
|
+
value: "Cha",
|
|
1114
|
+
error: "Min length 5, max length 10."
|
|
1115
|
+
});
|
|
1116
|
+
_react2.fireEvent.blur(input);
|
|
1117
|
+
expect(onBlur).toHaveBeenCalledWith({
|
|
1118
|
+
value: "Chad",
|
|
1119
|
+
error: "Min length 5, max length 10."
|
|
1120
|
+
});
|
|
1121
|
+
case 14:
|
|
1122
|
+
case "end":
|
|
1123
|
+
return _context23.stop();
|
|
1124
|
+
}
|
|
1125
|
+
}, _callee23);
|
|
1126
|
+
})));
|
|
1094
1127
|
test("Autosuggest keys: arrow down key opens autosuggest, active first option is selected with Enter and closes the autosuggest", function () {
|
|
1095
1128
|
var onChange = jest.fn();
|
|
1096
|
-
|
|
1097
|
-
|
|
1098
|
-
|
|
1099
|
-
|
|
1100
|
-
|
|
1101
|
-
|
|
1102
|
-
|
|
1103
|
-
queryByRole = _render36.queryByRole;
|
|
1104
|
-
|
|
1129
|
+
var _render38 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1130
|
+
label: "Autocomplete Countries",
|
|
1131
|
+
suggestions: countries,
|
|
1132
|
+
onChange: onChange
|
|
1133
|
+
})),
|
|
1134
|
+
getByRole = _render38.getByRole,
|
|
1135
|
+
queryByRole = _render38.queryByRole;
|
|
1105
1136
|
var input = getByRole("combobox");
|
|
1106
|
-
|
|
1107
1137
|
_react2.fireEvent.keyDown(input, {
|
|
1108
1138
|
key: "ArrowDown",
|
|
1109
1139
|
code: "ArrowDown",
|
|
1110
1140
|
keyCode: 40,
|
|
1111
1141
|
charCode: 40
|
|
1112
1142
|
});
|
|
1113
|
-
|
|
1114
1143
|
var list = getByRole("listbox");
|
|
1115
1144
|
expect(list).toBeTruthy();
|
|
1116
|
-
|
|
1117
1145
|
_react2.fireEvent.keyDown(input, {
|
|
1118
1146
|
key: "Enter",
|
|
1119
1147
|
code: "Enter",
|
|
1120
1148
|
keyCode: 13,
|
|
1121
1149
|
charCode: 13
|
|
1122
1150
|
});
|
|
1123
|
-
|
|
1124
1151
|
expect(input.value).toBe("Afghanistan");
|
|
1125
1152
|
expect(queryByRole("list")).toBeFalsy();
|
|
1126
1153
|
});
|
|
1127
1154
|
test("Autosuggest keys: arrow up key opens autosuggest, active last option is selected with Enter and closes the autosuggest", function () {
|
|
1128
1155
|
var onChange = jest.fn();
|
|
1129
|
-
|
|
1130
|
-
|
|
1131
|
-
|
|
1132
|
-
|
|
1133
|
-
|
|
1134
|
-
|
|
1135
|
-
|
|
1136
|
-
queryByRole = _render37.queryByRole;
|
|
1137
|
-
|
|
1156
|
+
var _render39 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1157
|
+
label: "Autocomplete Countries",
|
|
1158
|
+
suggestions: countries,
|
|
1159
|
+
onChange: onChange
|
|
1160
|
+
})),
|
|
1161
|
+
getByRole = _render39.getByRole,
|
|
1162
|
+
queryByRole = _render39.queryByRole;
|
|
1138
1163
|
var input = getByRole("combobox");
|
|
1139
|
-
|
|
1140
1164
|
_react2.fireEvent.keyDown(input, {
|
|
1141
1165
|
key: "ArrowUp",
|
|
1142
1166
|
code: "ArrowUp",
|
|
1143
1167
|
keyCode: 38,
|
|
1144
1168
|
charCode: 38
|
|
1145
1169
|
});
|
|
1146
|
-
|
|
1147
1170
|
var list = getByRole("listbox");
|
|
1148
1171
|
expect(list).toBeTruthy();
|
|
1149
|
-
|
|
1150
1172
|
_react2.fireEvent.keyDown(input, {
|
|
1151
1173
|
key: "Enter",
|
|
1152
1174
|
code: "Enter",
|
|
1153
1175
|
keyCode: 13,
|
|
1154
1176
|
charCode: 13
|
|
1155
1177
|
});
|
|
1156
|
-
|
|
1157
1178
|
expect(input.value).toBe("Djibouti");
|
|
1158
1179
|
expect(queryByRole("list")).toBeFalsy();
|
|
1159
1180
|
});
|
|
1160
1181
|
test("Autosuggest keys: Esc key closes the autosuggest and cleans the input", function () {
|
|
1161
1182
|
var onChange = jest.fn();
|
|
1162
|
-
|
|
1163
|
-
|
|
1164
|
-
|
|
1165
|
-
|
|
1166
|
-
|
|
1167
|
-
|
|
1168
|
-
|
|
1169
|
-
queryByRole = _render38.queryByRole;
|
|
1170
|
-
|
|
1183
|
+
var _render40 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1184
|
+
label: "Autocomplete Countries",
|
|
1185
|
+
suggestions: countries,
|
|
1186
|
+
onChange: onChange
|
|
1187
|
+
})),
|
|
1188
|
+
getByRole = _render40.getByRole,
|
|
1189
|
+
queryByRole = _render40.queryByRole;
|
|
1171
1190
|
var input = getByRole("combobox");
|
|
1172
|
-
|
|
1173
1191
|
_react2.fireEvent.focus(input);
|
|
1174
|
-
|
|
1175
1192
|
_userEvent["default"].type(input, "Bangla");
|
|
1176
|
-
|
|
1177
1193
|
var list = getByRole("listbox");
|
|
1178
1194
|
expect(list).toBeTruthy();
|
|
1179
|
-
|
|
1180
1195
|
_react2.fireEvent.keyDown(input, {
|
|
1181
1196
|
key: "Esc",
|
|
1182
1197
|
code: "Esc",
|
|
1183
1198
|
keyCode: 27,
|
|
1184
1199
|
charCode: 27
|
|
1185
1200
|
});
|
|
1186
|
-
|
|
1187
1201
|
expect(input.value).toBe("");
|
|
1188
1202
|
expect(queryByRole("listbox")).toBeFalsy();
|
|
1189
1203
|
});
|
|
1190
1204
|
test("Autosuggest keys: Enter, if no active suggestion closes the autosuggest", function () {
|
|
1191
1205
|
var onChange = jest.fn();
|
|
1192
|
-
|
|
1193
|
-
|
|
1194
|
-
|
|
1195
|
-
|
|
1196
|
-
|
|
1197
|
-
|
|
1198
|
-
|
|
1199
|
-
queryByRole = _render39.queryByRole;
|
|
1200
|
-
|
|
1206
|
+
var _render41 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1207
|
+
label: "Autocomplete Countries",
|
|
1208
|
+
suggestions: countries,
|
|
1209
|
+
onChange: onChange
|
|
1210
|
+
})),
|
|
1211
|
+
getByRole = _render41.getByRole,
|
|
1212
|
+
queryByRole = _render41.queryByRole;
|
|
1201
1213
|
var input = getByRole("combobox");
|
|
1202
|
-
|
|
1203
1214
|
_react2.fireEvent.focus(input);
|
|
1204
|
-
|
|
1205
1215
|
var list = getByRole("listbox");
|
|
1206
1216
|
expect(list).toBeTruthy();
|
|
1207
|
-
|
|
1208
1217
|
_react2.fireEvent.keyDown(input, {
|
|
1209
1218
|
key: "Enter",
|
|
1210
1219
|
code: "Enter",
|
|
1211
1220
|
keyCode: 27,
|
|
1212
1221
|
charCode: 27
|
|
1213
1222
|
});
|
|
1214
|
-
|
|
1215
1223
|
expect(input.value).toBe("");
|
|
1216
1224
|
expect(queryByRole("list")).toBeFalsy();
|
|
1217
1225
|
});
|
|
1218
|
-
test("Autosuggest complex key
|
|
1219
|
-
var onChange
|
|
1220
|
-
|
|
1221
|
-
|
|
1222
|
-
|
|
1223
|
-
|
|
1224
|
-
|
|
1225
|
-
|
|
1226
|
-
|
|
1227
|
-
|
|
1228
|
-
|
|
1229
|
-
|
|
1230
|
-
|
|
1231
|
-
|
|
1232
|
-
|
|
1233
|
-
|
|
1234
|
-
|
|
1235
|
-
|
|
1236
|
-
|
|
1237
|
-
|
|
1238
|
-
|
|
1239
|
-
|
|
1240
|
-
|
|
1241
|
-
|
|
1242
|
-
|
|
1243
|
-
|
|
1244
|
-
|
|
1245
|
-
|
|
1246
|
-
|
|
1247
|
-
|
|
1248
|
-
|
|
1249
|
-
|
|
1250
|
-
|
|
1251
|
-
|
|
1252
|
-
|
|
1253
|
-
|
|
1254
|
-
|
|
1255
|
-
|
|
1256
|
-
|
|
1257
|
-
|
|
1258
|
-
|
|
1259
|
-
|
|
1260
|
-
|
|
1261
|
-
|
|
1262
|
-
|
|
1263
|
-
|
|
1264
|
-
|
|
1265
|
-
|
|
1266
|
-
|
|
1267
|
-
|
|
1268
|
-
|
|
1269
|
-
|
|
1270
|
-
|
|
1271
|
-
|
|
1272
|
-
|
|
1273
|
-
|
|
1274
|
-
|
|
1275
|
-
|
|
1226
|
+
test("Autosuggest complex key sequence: write, arrow up two times, arrow down and select with Enter. Then, clean with Esc.", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee25() {
|
|
1227
|
+
var onChange, _render42, getByRole, queryByRole, input;
|
|
1228
|
+
return _regenerator["default"].wrap(function _callee25$(_context25) {
|
|
1229
|
+
while (1) switch (_context25.prev = _context25.next) {
|
|
1230
|
+
case 0:
|
|
1231
|
+
onChange = jest.fn();
|
|
1232
|
+
_render42 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1233
|
+
label: "Autocomplete Countries",
|
|
1234
|
+
suggestions: countries,
|
|
1235
|
+
onChange: onChange
|
|
1236
|
+
})), getByRole = _render42.getByRole, queryByRole = _render42.queryByRole;
|
|
1237
|
+
input = getByRole("combobox");
|
|
1238
|
+
_react2.fireEvent.focus(input);
|
|
1239
|
+
_context25.next = 6;
|
|
1240
|
+
return (0, _react2.act)( /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee24() {
|
|
1241
|
+
return _regenerator["default"].wrap(function _callee24$(_context24) {
|
|
1242
|
+
while (1) switch (_context24.prev = _context24.next) {
|
|
1243
|
+
case 0:
|
|
1244
|
+
_userEvent["default"].type(input, "Ba");
|
|
1245
|
+
case 1:
|
|
1246
|
+
case "end":
|
|
1247
|
+
return _context24.stop();
|
|
1248
|
+
}
|
|
1249
|
+
}, _callee24);
|
|
1250
|
+
})));
|
|
1251
|
+
case 6:
|
|
1252
|
+
_react2.fireEvent.keyDown(input, {
|
|
1253
|
+
key: "ArrowUp",
|
|
1254
|
+
code: "ArrowUp",
|
|
1255
|
+
keyCode: 38,
|
|
1256
|
+
charCode: 38
|
|
1257
|
+
});
|
|
1258
|
+
_react2.fireEvent.keyDown(input, {
|
|
1259
|
+
key: "ArrowUp",
|
|
1260
|
+
code: "ArrowUpp",
|
|
1261
|
+
keyCode: 38,
|
|
1262
|
+
charCode: 38
|
|
1263
|
+
});
|
|
1264
|
+
_react2.fireEvent.keyDown(input, {
|
|
1265
|
+
key: "ArrowDown",
|
|
1266
|
+
code: "ArrowDown",
|
|
1267
|
+
keyCode: 40,
|
|
1268
|
+
charCode: 40
|
|
1269
|
+
});
|
|
1270
|
+
_react2.fireEvent.keyDown(input, {
|
|
1271
|
+
key: "Enter",
|
|
1272
|
+
code: "Enter",
|
|
1273
|
+
keyCode: 13,
|
|
1274
|
+
charCode: 13
|
|
1275
|
+
});
|
|
1276
|
+
expect(input.value).toBe("Barbados");
|
|
1277
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
1278
|
+
_react2.fireEvent.keyDown(input, {
|
|
1279
|
+
key: "Esc",
|
|
1280
|
+
code: "Esp",
|
|
1281
|
+
keyCode: 27,
|
|
1282
|
+
charCode: 27
|
|
1283
|
+
});
|
|
1284
|
+
expect(input.value).toBe("");
|
|
1285
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
1286
|
+
case 15:
|
|
1287
|
+
case "end":
|
|
1288
|
+
return _context25.stop();
|
|
1289
|
+
}
|
|
1290
|
+
}, _callee25);
|
|
1291
|
+
})));
|
|
1276
1292
|
test("Autosuggest escapes special characters", function () {
|
|
1277
1293
|
var onChange = jest.fn();
|
|
1278
|
-
|
|
1279
|
-
|
|
1280
|
-
|
|
1281
|
-
|
|
1282
|
-
|
|
1283
|
-
|
|
1284
|
-
|
|
1285
|
-
getByRole = _render41.getByRole;
|
|
1286
|
-
|
|
1294
|
+
var _render43 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1295
|
+
label: "Autocomplete Countries",
|
|
1296
|
+
suggestions: specialCharacters,
|
|
1297
|
+
onChange: onChange
|
|
1298
|
+
})),
|
|
1299
|
+
getAllByText = _render43.getAllByText,
|
|
1300
|
+
getByRole = _render43.getByRole;
|
|
1287
1301
|
var input = getByRole("combobox");
|
|
1288
|
-
|
|
1289
1302
|
_react2.fireEvent.focus(input);
|
|
1290
|
-
|
|
1291
1303
|
var list = getByRole("listbox");
|
|
1292
|
-
|
|
1293
1304
|
_react2.fireEvent.change(input, {
|
|
1294
1305
|
target: {
|
|
1295
1306
|
value: "/"
|
|
1296
1307
|
}
|
|
1297
1308
|
});
|
|
1298
|
-
|
|
1299
1309
|
expect(list).toBeTruthy();
|
|
1300
1310
|
expect(getAllByText("/").length).toBe(1);
|
|
1301
|
-
|
|
1302
1311
|
_react2.fireEvent.change(input, {
|
|
1303
1312
|
target: {
|
|
1304
1313
|
value: "\\"
|
|
1305
1314
|
}
|
|
1306
1315
|
});
|
|
1307
|
-
|
|
1308
1316
|
expect(list).toBeTruthy();
|
|
1309
1317
|
expect(getAllByText("\\").length).toBe(1);
|
|
1310
|
-
|
|
1311
1318
|
_react2.fireEvent.change(input, {
|
|
1312
1319
|
target: {
|
|
1313
1320
|
value: "*"
|
|
1314
1321
|
}
|
|
1315
1322
|
});
|
|
1316
|
-
|
|
1317
1323
|
expect(list).toBeTruthy();
|
|
1318
1324
|
expect(getAllByText("*").length).toBe(2);
|
|
1319
|
-
|
|
1320
1325
|
_react2.fireEvent.change(input, {
|
|
1321
1326
|
target: {
|
|
1322
1327
|
value: "("
|
|
1323
1328
|
}
|
|
1324
1329
|
});
|
|
1325
|
-
|
|
1326
1330
|
expect(list).toBeTruthy();
|
|
1327
1331
|
expect(getAllByText("(").length).toBe(1);
|
|
1328
|
-
|
|
1329
1332
|
_react2.fireEvent.change(input, {
|
|
1330
1333
|
target: {
|
|
1331
1334
|
value: ")"
|
|
1332
1335
|
}
|
|
1333
1336
|
});
|
|
1334
|
-
|
|
1335
1337
|
expect(list).toBeTruthy();
|
|
1336
1338
|
expect(getAllByText(")").length).toBe(1);
|
|
1337
|
-
|
|
1338
1339
|
_react2.fireEvent.change(input, {
|
|
1339
1340
|
target: {
|
|
1340
1341
|
value: "["
|
|
1341
1342
|
}
|
|
1342
1343
|
});
|
|
1343
|
-
|
|
1344
1344
|
expect(list).toBeTruthy();
|
|
1345
1345
|
expect(getAllByText("[").length).toBe(1);
|
|
1346
|
-
|
|
1347
1346
|
_react2.fireEvent.change(input, {
|
|
1348
1347
|
target: {
|
|
1349
1348
|
value: "]"
|
|
1350
1349
|
}
|
|
1351
1350
|
});
|
|
1352
|
-
|
|
1353
1351
|
expect(list).toBeTruthy();
|
|
1354
1352
|
expect(getAllByText("]").length).toBe(1);
|
|
1355
|
-
|
|
1356
1353
|
_react2.fireEvent.change(input, {
|
|
1357
1354
|
target: {
|
|
1358
1355
|
value: "+"
|
|
1359
1356
|
}
|
|
1360
1357
|
});
|
|
1361
|
-
|
|
1362
1358
|
expect(list).toBeTruthy();
|
|
1363
1359
|
expect(getAllByText("+").length).toBe(1);
|
|
1364
|
-
|
|
1365
1360
|
_react2.fireEvent.change(input, {
|
|
1366
1361
|
target: {
|
|
1367
1362
|
value: "?"
|
|
1368
1363
|
}
|
|
1369
1364
|
});
|
|
1370
|
-
|
|
1371
1365
|
expect(list).toBeTruthy();
|
|
1372
1366
|
expect(getAllByText("?").length).toBe(1);
|
|
1373
1367
|
});
|
|
1374
1368
|
});
|
|
1375
1369
|
describe("TextInput component asynchronous autosuggest tests", function () {
|
|
1376
|
-
test("Autosuggest 'Searching...' message is shown", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function
|
|
1377
|
-
var callbackFunc, onChange,
|
|
1378
|
-
|
|
1379
|
-
|
|
1380
|
-
|
|
1381
|
-
|
|
1382
|
-
|
|
1383
|
-
|
|
1384
|
-
|
|
1385
|
-
|
|
1386
|
-
|
|
1387
|
-
|
|
1388
|
-
}) : countries);
|
|
1389
|
-
}, 100);
|
|
1390
|
-
});
|
|
1391
|
-
return result;
|
|
1392
|
-
});
|
|
1393
|
-
onChange = jest.fn();
|
|
1394
|
-
_render42 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1395
|
-
label: "Autosuggest Countries",
|
|
1396
|
-
suggestions: callbackFunc,
|
|
1397
|
-
onChange: onChange
|
|
1398
|
-
})), getByRole = _render42.getByRole, getByText = _render42.getByText;
|
|
1399
|
-
input = getByRole("combobox");
|
|
1400
|
-
|
|
1401
|
-
_react2.fireEvent.focus(input);
|
|
1402
|
-
|
|
1403
|
-
expect(getByRole("listbox")).toBeTruthy();
|
|
1404
|
-
_context.next = 8;
|
|
1405
|
-
return (0, _react2.waitForElementToBeRemoved)(function () {
|
|
1406
|
-
return getByText("Searching...");
|
|
1407
|
-
});
|
|
1408
|
-
|
|
1409
|
-
case 8:
|
|
1410
|
-
expect(getByText("Afghanistan")).toBeTruthy();
|
|
1411
|
-
expect(getByText("Albania")).toBeTruthy();
|
|
1412
|
-
expect(getByText("Algeria")).toBeTruthy();
|
|
1413
|
-
expect(getByText("Andorra")).toBeTruthy();
|
|
1414
|
-
|
|
1415
|
-
_userEvent["default"].type(input, "Ab");
|
|
1416
|
-
|
|
1417
|
-
_context.next = 15;
|
|
1418
|
-
return (0, _react2.waitForElementToBeRemoved)(function () {
|
|
1419
|
-
return getByText("Searching...");
|
|
1420
|
-
});
|
|
1421
|
-
|
|
1422
|
-
case 15:
|
|
1423
|
-
expect(getByText("Cabo Verde")).toBeTruthy();
|
|
1424
|
-
|
|
1425
|
-
_react2.fireEvent.keyDown(input, {
|
|
1426
|
-
key: "ArrowUp",
|
|
1427
|
-
code: "ArrowUp",
|
|
1428
|
-
keyCode: 38,
|
|
1429
|
-
charCode: 38
|
|
1430
|
-
});
|
|
1431
|
-
|
|
1432
|
-
_react2.fireEvent.keyDown(input, {
|
|
1433
|
-
key: "Enter",
|
|
1434
|
-
code: "Enter",
|
|
1435
|
-
keyCode: 13,
|
|
1436
|
-
charCode: 13
|
|
1370
|
+
test("Autosuggest 'Searching...' message is shown", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee27() {
|
|
1371
|
+
var callbackFunc, onChange, _render44, getByRole, getByText, input;
|
|
1372
|
+
return _regenerator["default"].wrap(function _callee27$(_context27) {
|
|
1373
|
+
while (1) switch (_context27.prev = _context27.next) {
|
|
1374
|
+
case 0:
|
|
1375
|
+
callbackFunc = jest.fn(function (newValue) {
|
|
1376
|
+
var result = new Promise(function (resolve) {
|
|
1377
|
+
return setTimeout(function () {
|
|
1378
|
+
resolve(newValue ? countries.filter(function (option) {
|
|
1379
|
+
return option.toUpperCase().includes(newValue.toUpperCase());
|
|
1380
|
+
}) : countries);
|
|
1381
|
+
}, 100);
|
|
1437
1382
|
});
|
|
1438
|
-
|
|
1439
|
-
|
|
1440
|
-
|
|
1441
|
-
|
|
1442
|
-
|
|
1443
|
-
|
|
1444
|
-
|
|
1383
|
+
return result;
|
|
1384
|
+
});
|
|
1385
|
+
onChange = jest.fn();
|
|
1386
|
+
_render44 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1387
|
+
label: "Autosuggest Countries",
|
|
1388
|
+
suggestions: callbackFunc,
|
|
1389
|
+
onChange: onChange
|
|
1390
|
+
})), getByRole = _render44.getByRole, getByText = _render44.getByText;
|
|
1391
|
+
input = getByRole("combobox");
|
|
1392
|
+
_react2.fireEvent.focus(input);
|
|
1393
|
+
expect(getByRole("listbox")).toBeTruthy();
|
|
1394
|
+
_context27.next = 8;
|
|
1395
|
+
return (0, _react2.waitForElementToBeRemoved)(function () {
|
|
1396
|
+
return getByText("Searching...");
|
|
1397
|
+
});
|
|
1398
|
+
case 8:
|
|
1399
|
+
expect(getByText("Afghanistan")).toBeTruthy();
|
|
1400
|
+
expect(getByText("Albania")).toBeTruthy();
|
|
1401
|
+
expect(getByText("Algeria")).toBeTruthy();
|
|
1402
|
+
expect(getByText("Andorra")).toBeTruthy();
|
|
1403
|
+
_context27.next = 14;
|
|
1404
|
+
return (0, _react2.act)( /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee26() {
|
|
1405
|
+
return _regenerator["default"].wrap(function _callee26$(_context26) {
|
|
1406
|
+
while (1) switch (_context26.prev = _context26.next) {
|
|
1407
|
+
case 0:
|
|
1408
|
+
_userEvent["default"].type(input, "Ab");
|
|
1409
|
+
case 1:
|
|
1410
|
+
case "end":
|
|
1411
|
+
return _context26.stop();
|
|
1412
|
+
}
|
|
1413
|
+
}, _callee26);
|
|
1414
|
+
})));
|
|
1415
|
+
case 14:
|
|
1416
|
+
_context27.next = 16;
|
|
1417
|
+
return (0, _react2.waitForElementToBeRemoved)(function () {
|
|
1418
|
+
return getByText("Searching...");
|
|
1419
|
+
});
|
|
1420
|
+
case 16:
|
|
1421
|
+
expect(getByText("Cabo Verde")).toBeTruthy();
|
|
1422
|
+
_react2.fireEvent.keyDown(input, {
|
|
1423
|
+
key: "ArrowUp",
|
|
1424
|
+
code: "ArrowUp",
|
|
1425
|
+
keyCode: 38,
|
|
1426
|
+
charCode: 38
|
|
1427
|
+
});
|
|
1428
|
+
_react2.fireEvent.keyDown(input, {
|
|
1429
|
+
key: "Enter",
|
|
1430
|
+
code: "Enter",
|
|
1431
|
+
keyCode: 13,
|
|
1432
|
+
charCode: 13
|
|
1433
|
+
});
|
|
1434
|
+
expect(input.value).toBe("Cabo Verde");
|
|
1435
|
+
case 20:
|
|
1436
|
+
case "end":
|
|
1437
|
+
return _context27.stop();
|
|
1445
1438
|
}
|
|
1446
|
-
},
|
|
1439
|
+
}, _callee27);
|
|
1447
1440
|
})));
|
|
1448
1441
|
test("Autosuggest Esc key works while 'Searching...' message is shown", function () {
|
|
1449
1442
|
var callbackFunc = jest.fn(function (newValue) {
|
|
@@ -1457,356 +1450,306 @@ describe("TextInput component asynchronous autosuggest tests", function () {
|
|
|
1457
1450
|
return result;
|
|
1458
1451
|
});
|
|
1459
1452
|
var onChange = jest.fn();
|
|
1460
|
-
|
|
1461
|
-
|
|
1462
|
-
|
|
1463
|
-
|
|
1464
|
-
|
|
1465
|
-
|
|
1466
|
-
|
|
1467
|
-
|
|
1468
|
-
queryByRole = _render43.queryByRole;
|
|
1469
|
-
|
|
1453
|
+
var _render45 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1454
|
+
label: "Autosuggest Countries",
|
|
1455
|
+
suggestions: callbackFunc,
|
|
1456
|
+
onChange: onChange
|
|
1457
|
+
})),
|
|
1458
|
+
getByRole = _render45.getByRole,
|
|
1459
|
+
queryByText = _render45.queryByText,
|
|
1460
|
+
queryByRole = _render45.queryByRole;
|
|
1470
1461
|
var input = getByRole("combobox");
|
|
1471
|
-
|
|
1472
1462
|
_react2.fireEvent.focus(input);
|
|
1473
|
-
|
|
1474
1463
|
expect(getByRole("listbox")).toBeTruthy();
|
|
1475
|
-
|
|
1476
1464
|
_userEvent["default"].type(input, "Ab");
|
|
1477
|
-
|
|
1478
1465
|
_react2.fireEvent.keyDown(input, {
|
|
1479
1466
|
key: "Esc",
|
|
1480
1467
|
code: "Esc",
|
|
1481
1468
|
keyCode: 27,
|
|
1482
1469
|
charCode: 27
|
|
1483
1470
|
});
|
|
1484
|
-
|
|
1485
1471
|
expect(queryByRole("listbox")).toBeFalsy();
|
|
1486
1472
|
expect(queryByText("Searching...")).toBeFalsy();
|
|
1487
1473
|
expect(input.value).toBe("");
|
|
1488
1474
|
});
|
|
1489
|
-
test("Autosuggest Esc + arrow down working while 'Searching...' message is shown", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function
|
|
1490
|
-
var callbackFunc, onChange,
|
|
1491
|
-
|
|
1492
|
-
|
|
1493
|
-
|
|
1494
|
-
|
|
1495
|
-
|
|
1496
|
-
|
|
1497
|
-
|
|
1498
|
-
|
|
1499
|
-
|
|
1500
|
-
|
|
1501
|
-
}) : countries);
|
|
1502
|
-
}, 100);
|
|
1503
|
-
});
|
|
1504
|
-
return result;
|
|
1475
|
+
test("Autosuggest Esc + arrow down working while 'Searching...' message is shown", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee28() {
|
|
1476
|
+
var callbackFunc, onChange, _render46, getByRole, getByText, queryByText, queryByRole, input, list;
|
|
1477
|
+
return _regenerator["default"].wrap(function _callee28$(_context28) {
|
|
1478
|
+
while (1) switch (_context28.prev = _context28.next) {
|
|
1479
|
+
case 0:
|
|
1480
|
+
callbackFunc = jest.fn(function (newValue) {
|
|
1481
|
+
var result = new Promise(function (resolve) {
|
|
1482
|
+
return setTimeout(function () {
|
|
1483
|
+
resolve(newValue ? countries.filter(function (option) {
|
|
1484
|
+
return option.toUpperCase().includes(newValue.toUpperCase());
|
|
1485
|
+
}) : countries);
|
|
1486
|
+
}, 100);
|
|
1505
1487
|
});
|
|
1506
|
-
|
|
1507
|
-
|
|
1508
|
-
|
|
1509
|
-
|
|
1510
|
-
|
|
1511
|
-
|
|
1512
|
-
|
|
1513
|
-
|
|
1514
|
-
|
|
1515
|
-
|
|
1516
|
-
|
|
1517
|
-
|
|
1518
|
-
|
|
1519
|
-
|
|
1520
|
-
|
|
1521
|
-
|
|
1522
|
-
|
|
1523
|
-
|
|
1524
|
-
|
|
1525
|
-
|
|
1526
|
-
|
|
1527
|
-
|
|
1528
|
-
|
|
1529
|
-
|
|
1530
|
-
|
|
1531
|
-
|
|
1532
|
-
|
|
1533
|
-
|
|
1534
|
-
|
|
1535
|
-
|
|
1536
|
-
|
|
1537
|
-
|
|
1538
|
-
|
|
1539
|
-
|
|
1540
|
-
|
|
1541
|
-
|
|
1542
|
-
|
|
1543
|
-
|
|
1544
|
-
|
|
1545
|
-
|
|
1546
|
-
|
|
1547
|
-
expect(getByText("Albania")).toBeTruthy();
|
|
1548
|
-
expect(getByText("Algeria")).toBeTruthy();
|
|
1549
|
-
expect(getByText("Andorra")).toBeTruthy();
|
|
1550
|
-
|
|
1551
|
-
case 20:
|
|
1552
|
-
case "end":
|
|
1553
|
-
return _context2.stop();
|
|
1554
|
-
}
|
|
1488
|
+
return result;
|
|
1489
|
+
});
|
|
1490
|
+
onChange = jest.fn();
|
|
1491
|
+
_render46 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1492
|
+
label: "Autosuggest Countries",
|
|
1493
|
+
suggestions: callbackFunc,
|
|
1494
|
+
onChange: onChange
|
|
1495
|
+
})), getByRole = _render46.getByRole, getByText = _render46.getByText, queryByText = _render46.queryByText, queryByRole = _render46.queryByRole;
|
|
1496
|
+
input = getByRole("combobox");
|
|
1497
|
+
_react2.fireEvent.focus(input);
|
|
1498
|
+
list = getByRole("listbox");
|
|
1499
|
+
expect(list).toBeTruthy();
|
|
1500
|
+
_userEvent["default"].type(input, "Ab");
|
|
1501
|
+
_react2.fireEvent.keyDown(input, {
|
|
1502
|
+
key: "Esc",
|
|
1503
|
+
code: "Esc",
|
|
1504
|
+
keyCode: 27,
|
|
1505
|
+
charCode: 27
|
|
1506
|
+
});
|
|
1507
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
1508
|
+
expect(queryByText("Searching...")).toBeFalsy();
|
|
1509
|
+
expect(input.value).toBe("");
|
|
1510
|
+
_react2.fireEvent.keyDown(input, {
|
|
1511
|
+
key: "ArrowDown",
|
|
1512
|
+
code: "ArrowDown",
|
|
1513
|
+
keyCode: 40,
|
|
1514
|
+
charCode: 40
|
|
1515
|
+
});
|
|
1516
|
+
expect(list).toBeTruthy();
|
|
1517
|
+
_context28.next = 16;
|
|
1518
|
+
return (0, _react2.waitForElementToBeRemoved)(function () {
|
|
1519
|
+
return getByText("Searching...");
|
|
1520
|
+
});
|
|
1521
|
+
case 16:
|
|
1522
|
+
expect(getByText("Afghanistan")).toBeTruthy();
|
|
1523
|
+
expect(getByText("Albania")).toBeTruthy();
|
|
1524
|
+
expect(getByText("Algeria")).toBeTruthy();
|
|
1525
|
+
expect(getByText("Andorra")).toBeTruthy();
|
|
1526
|
+
case 20:
|
|
1527
|
+
case "end":
|
|
1528
|
+
return _context28.stop();
|
|
1555
1529
|
}
|
|
1556
|
-
},
|
|
1530
|
+
}, _callee28);
|
|
1557
1531
|
})));
|
|
1558
|
-
test("Asynchronous uncontrolled autosuggest test", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function
|
|
1559
|
-
var callbackFunc, onChange,
|
|
1560
|
-
|
|
1561
|
-
|
|
1562
|
-
|
|
1563
|
-
|
|
1564
|
-
|
|
1565
|
-
|
|
1566
|
-
|
|
1567
|
-
|
|
1568
|
-
|
|
1569
|
-
|
|
1570
|
-
}) : countries);
|
|
1571
|
-
}, 100);
|
|
1572
|
-
});
|
|
1573
|
-
return result;
|
|
1574
|
-
});
|
|
1575
|
-
onChange = jest.fn();
|
|
1576
|
-
_render45 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1577
|
-
label: "Autosuggest Countries",
|
|
1578
|
-
onChange: onChange,
|
|
1579
|
-
suggestions: callbackFunc
|
|
1580
|
-
})), getByRole = _render45.getByRole, getByText = _render45.getByText;
|
|
1581
|
-
input = getByRole("combobox");
|
|
1582
|
-
|
|
1583
|
-
_react2.fireEvent.focus(input);
|
|
1584
|
-
|
|
1585
|
-
_userEvent["default"].type(input, "Den");
|
|
1586
|
-
|
|
1587
|
-
_context3.next = 8;
|
|
1588
|
-
return (0, _react2.waitForElementToBeRemoved)(function () {
|
|
1589
|
-
return getByText("Searching...");
|
|
1532
|
+
test("Asynchronous uncontrolled autosuggest test", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee29() {
|
|
1533
|
+
var callbackFunc, onChange, _render47, getByRole, getByText, input;
|
|
1534
|
+
return _regenerator["default"].wrap(function _callee29$(_context29) {
|
|
1535
|
+
while (1) switch (_context29.prev = _context29.next) {
|
|
1536
|
+
case 0:
|
|
1537
|
+
callbackFunc = jest.fn(function (newValue) {
|
|
1538
|
+
var result = new Promise(function (resolve) {
|
|
1539
|
+
return setTimeout(function () {
|
|
1540
|
+
resolve(newValue ? countries.filter(function (option) {
|
|
1541
|
+
return option.toUpperCase().includes(newValue.toUpperCase());
|
|
1542
|
+
}) : countries);
|
|
1543
|
+
}, 100);
|
|
1590
1544
|
});
|
|
1591
|
-
|
|
1592
|
-
|
|
1593
|
-
|
|
1594
|
-
|
|
1595
|
-
|
|
1596
|
-
|
|
1597
|
-
|
|
1598
|
-
|
|
1599
|
-
|
|
1600
|
-
|
|
1601
|
-
|
|
1602
|
-
|
|
1603
|
-
|
|
1604
|
-
return
|
|
1605
|
-
|
|
1545
|
+
return result;
|
|
1546
|
+
});
|
|
1547
|
+
onChange = jest.fn();
|
|
1548
|
+
_render47 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1549
|
+
label: "Autosuggest Countries",
|
|
1550
|
+
onChange: onChange,
|
|
1551
|
+
suggestions: callbackFunc
|
|
1552
|
+
})), getByRole = _render47.getByRole, getByText = _render47.getByText;
|
|
1553
|
+
input = getByRole("combobox");
|
|
1554
|
+
_react2.fireEvent.focus(input);
|
|
1555
|
+
_userEvent["default"].type(input, "Den");
|
|
1556
|
+
_context29.next = 8;
|
|
1557
|
+
return (0, _react2.waitForElementToBeRemoved)(function () {
|
|
1558
|
+
return getByText("Searching...");
|
|
1559
|
+
});
|
|
1560
|
+
case 8:
|
|
1561
|
+
expect(getByText("Denmark")).toBeTruthy();
|
|
1562
|
+
_context29.next = 11;
|
|
1563
|
+
return _userEvent["default"].click(getByRole("option"));
|
|
1564
|
+
case 11:
|
|
1565
|
+
expect(onChange).toHaveBeenCalledWith({
|
|
1566
|
+
value: "Denmark"
|
|
1567
|
+
});
|
|
1568
|
+
expect(input.value).toBe("Denmark");
|
|
1569
|
+
case 13:
|
|
1570
|
+
case "end":
|
|
1571
|
+
return _context29.stop();
|
|
1606
1572
|
}
|
|
1607
|
-
},
|
|
1573
|
+
}, _callee29);
|
|
1608
1574
|
})));
|
|
1609
|
-
test("Asynchronous controlled autosuggest test", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function
|
|
1610
|
-
var callbackFunc, onChange,
|
|
1611
|
-
|
|
1612
|
-
|
|
1613
|
-
|
|
1614
|
-
|
|
1615
|
-
|
|
1616
|
-
|
|
1617
|
-
|
|
1618
|
-
|
|
1619
|
-
|
|
1620
|
-
|
|
1621
|
-
}) : countries);
|
|
1622
|
-
}, 100);
|
|
1623
|
-
});
|
|
1624
|
-
return result;
|
|
1575
|
+
test("Asynchronous controlled autosuggest test", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee30() {
|
|
1576
|
+
var callbackFunc, onChange, _render48, getByRole, getByText, queryByRole, input;
|
|
1577
|
+
return _regenerator["default"].wrap(function _callee30$(_context30) {
|
|
1578
|
+
while (1) switch (_context30.prev = _context30.next) {
|
|
1579
|
+
case 0:
|
|
1580
|
+
callbackFunc = jest.fn(function (newValue) {
|
|
1581
|
+
var result = new Promise(function (resolve) {
|
|
1582
|
+
return setTimeout(function () {
|
|
1583
|
+
resolve(newValue ? countries.filter(function (option) {
|
|
1584
|
+
return option.toUpperCase().includes(newValue.toUpperCase());
|
|
1585
|
+
}) : countries);
|
|
1586
|
+
}, 100);
|
|
1625
1587
|
});
|
|
1626
|
-
|
|
1627
|
-
|
|
1628
|
-
|
|
1629
|
-
|
|
1630
|
-
|
|
1631
|
-
|
|
1632
|
-
|
|
1633
|
-
|
|
1634
|
-
|
|
1635
|
-
|
|
1636
|
-
|
|
1637
|
-
|
|
1638
|
-
|
|
1639
|
-
|
|
1640
|
-
|
|
1641
|
-
|
|
1642
|
-
|
|
1643
|
-
|
|
1644
|
-
|
|
1645
|
-
|
|
1646
|
-
|
|
1647
|
-
|
|
1648
|
-
|
|
1649
|
-
|
|
1650
|
-
|
|
1651
|
-
|
|
1652
|
-
|
|
1653
|
-
|
|
1654
|
-
|
|
1655
|
-
|
|
1656
|
-
|
|
1657
|
-
return _context4.stop();
|
|
1658
|
-
}
|
|
1588
|
+
return result;
|
|
1589
|
+
});
|
|
1590
|
+
onChange = jest.fn();
|
|
1591
|
+
_render48 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1592
|
+
label: "Autosuggest Countries",
|
|
1593
|
+
value: "Denm",
|
|
1594
|
+
onChange: onChange,
|
|
1595
|
+
suggestions: callbackFunc
|
|
1596
|
+
})), getByRole = _render48.getByRole, getByText = _render48.getByText, queryByRole = _render48.queryByRole;
|
|
1597
|
+
input = getByRole("combobox");
|
|
1598
|
+
expect(input.value).toBe("Denm");
|
|
1599
|
+
_context30.next = 7;
|
|
1600
|
+
return _userEvent["default"].click(getByText("Autosuggest Countries"));
|
|
1601
|
+
case 7:
|
|
1602
|
+
_context30.next = 9;
|
|
1603
|
+
return (0, _react2.waitForElementToBeRemoved)(function () {
|
|
1604
|
+
return getByText("Searching...");
|
|
1605
|
+
});
|
|
1606
|
+
case 9:
|
|
1607
|
+
expect(getByText("Denmark")).toBeTruthy();
|
|
1608
|
+
_react2.fireEvent.focus(getByRole("option"));
|
|
1609
|
+
_context30.next = 13;
|
|
1610
|
+
return _userEvent["default"].click(getByText("Denmark"));
|
|
1611
|
+
case 13:
|
|
1612
|
+
expect(onChange).toHaveBeenCalledWith({
|
|
1613
|
+
value: "Denmark"
|
|
1614
|
+
});
|
|
1615
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
1616
|
+
case 15:
|
|
1617
|
+
case "end":
|
|
1618
|
+
return _context30.stop();
|
|
1659
1619
|
}
|
|
1660
|
-
},
|
|
1620
|
+
}, _callee30);
|
|
1661
1621
|
})));
|
|
1662
|
-
test("Asynchronous autosuggest closes the listbox after finishing no matches search", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function
|
|
1663
|
-
var callbackFunc, onChange,
|
|
1664
|
-
|
|
1665
|
-
|
|
1666
|
-
|
|
1667
|
-
|
|
1668
|
-
|
|
1669
|
-
|
|
1670
|
-
|
|
1671
|
-
|
|
1672
|
-
|
|
1673
|
-
|
|
1674
|
-
}) : countries);
|
|
1675
|
-
}, 100);
|
|
1676
|
-
});
|
|
1677
|
-
return result;
|
|
1678
|
-
});
|
|
1679
|
-
onChange = jest.fn();
|
|
1680
|
-
_render47 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1681
|
-
label: "Autosuggest Countries",
|
|
1682
|
-
onChange: onChange,
|
|
1683
|
-
suggestions: callbackFunc
|
|
1684
|
-
})), getByText = _render47.getByText, getByRole = _render47.getByRole, queryByRole = _render47.queryByRole;
|
|
1685
|
-
input = getByRole("combobox");
|
|
1686
|
-
|
|
1687
|
-
_react2.fireEvent.focus(input);
|
|
1688
|
-
|
|
1689
|
-
_userEvent["default"].type(input, "Example text");
|
|
1690
|
-
|
|
1691
|
-
_context5.next = 8;
|
|
1692
|
-
return (0, _react2.waitForElementToBeRemoved)(function () {
|
|
1693
|
-
return getByText("Searching...");
|
|
1622
|
+
test("Asynchronous autosuggest closes the listbox after finishing no matches search", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee32() {
|
|
1623
|
+
var callbackFunc, onChange, _render49, getByText, getByRole, queryByRole, input;
|
|
1624
|
+
return _regenerator["default"].wrap(function _callee32$(_context32) {
|
|
1625
|
+
while (1) switch (_context32.prev = _context32.next) {
|
|
1626
|
+
case 0:
|
|
1627
|
+
callbackFunc = jest.fn(function (newValue) {
|
|
1628
|
+
var result = new Promise(function (resolve) {
|
|
1629
|
+
return setTimeout(function () {
|
|
1630
|
+
resolve(newValue ? countries.filter(function (option) {
|
|
1631
|
+
return option.toUpperCase().includes(newValue.toUpperCase());
|
|
1632
|
+
}) : countries);
|
|
1633
|
+
}, 100);
|
|
1694
1634
|
});
|
|
1695
|
-
|
|
1696
|
-
|
|
1697
|
-
|
|
1698
|
-
|
|
1699
|
-
|
|
1700
|
-
|
|
1701
|
-
|
|
1702
|
-
|
|
1635
|
+
return result;
|
|
1636
|
+
});
|
|
1637
|
+
onChange = jest.fn();
|
|
1638
|
+
_render49 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1639
|
+
label: "Autosuggest Countries",
|
|
1640
|
+
onChange: onChange,
|
|
1641
|
+
suggestions: callbackFunc
|
|
1642
|
+
})), getByText = _render49.getByText, getByRole = _render49.getByRole, queryByRole = _render49.queryByRole;
|
|
1643
|
+
input = getByRole("combobox");
|
|
1644
|
+
_react2.fireEvent.focus(input);
|
|
1645
|
+
_context32.next = 7;
|
|
1646
|
+
return (0, _react2.act)( /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee31() {
|
|
1647
|
+
return _regenerator["default"].wrap(function _callee31$(_context31) {
|
|
1648
|
+
while (1) switch (_context31.prev = _context31.next) {
|
|
1649
|
+
case 0:
|
|
1650
|
+
_userEvent["default"].type(input, "Example text");
|
|
1651
|
+
case 1:
|
|
1652
|
+
case "end":
|
|
1653
|
+
return _context31.stop();
|
|
1654
|
+
}
|
|
1655
|
+
}, _callee31);
|
|
1656
|
+
})));
|
|
1657
|
+
case 7:
|
|
1658
|
+
_context32.next = 9;
|
|
1659
|
+
return (0, _react2.waitForElementToBeRemoved)(function () {
|
|
1660
|
+
return getByText("Searching...");
|
|
1661
|
+
});
|
|
1662
|
+
case 9:
|
|
1663
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
1664
|
+
case 10:
|
|
1665
|
+
case "end":
|
|
1666
|
+
return _context32.stop();
|
|
1703
1667
|
}
|
|
1704
|
-
},
|
|
1668
|
+
}, _callee32);
|
|
1705
1669
|
})));
|
|
1706
|
-
test("Asynchronous autosuggest with no matches founded doesn't let the listbox to be opened", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function
|
|
1707
|
-
var callbackFunc, onChange,
|
|
1708
|
-
|
|
1709
|
-
|
|
1710
|
-
|
|
1711
|
-
|
|
1712
|
-
|
|
1713
|
-
|
|
1714
|
-
|
|
1715
|
-
|
|
1716
|
-
|
|
1717
|
-
|
|
1718
|
-
}) : countries);
|
|
1719
|
-
}, 100);
|
|
1720
|
-
});
|
|
1721
|
-
return result;
|
|
1722
|
-
});
|
|
1723
|
-
onChange = jest.fn();
|
|
1724
|
-
_render48 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1725
|
-
label: "Autosuggest Countries",
|
|
1726
|
-
onChange: onChange,
|
|
1727
|
-
suggestions: callbackFunc
|
|
1728
|
-
})), getByText = _render48.getByText, getByRole = _render48.getByRole, queryByRole = _render48.queryByRole;
|
|
1729
|
-
input = getByRole("combobox");
|
|
1730
|
-
|
|
1731
|
-
_react2.fireEvent.focus(input);
|
|
1732
|
-
|
|
1733
|
-
_userEvent["default"].type(input, "wrong");
|
|
1734
|
-
|
|
1735
|
-
_context6.next = 8;
|
|
1736
|
-
return (0, _react2.waitForElementToBeRemoved)(function () {
|
|
1737
|
-
return getByText("Searching...");
|
|
1738
|
-
});
|
|
1739
|
-
|
|
1740
|
-
case 8:
|
|
1741
|
-
expect(queryByRole("listbox")).toBeFalsy();
|
|
1742
|
-
|
|
1743
|
-
_react2.fireEvent.focus(input);
|
|
1744
|
-
|
|
1745
|
-
expect(queryByRole("listbox")).toBeFalsy();
|
|
1746
|
-
|
|
1747
|
-
_react2.fireEvent.keyDown(input, {
|
|
1748
|
-
key: "ArrowUp",
|
|
1749
|
-
code: "ArrowUp",
|
|
1750
|
-
keyCode: 38,
|
|
1751
|
-
charCode: 38
|
|
1670
|
+
test("Asynchronous autosuggest with no matches founded doesn't let the listbox to be opened", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee33() {
|
|
1671
|
+
var callbackFunc, onChange, _render50, getByText, getByRole, queryByRole, input;
|
|
1672
|
+
return _regenerator["default"].wrap(function _callee33$(_context33) {
|
|
1673
|
+
while (1) switch (_context33.prev = _context33.next) {
|
|
1674
|
+
case 0:
|
|
1675
|
+
callbackFunc = jest.fn(function (newValue) {
|
|
1676
|
+
var result = new Promise(function (resolve) {
|
|
1677
|
+
return setTimeout(function () {
|
|
1678
|
+
resolve(newValue ? countries.filter(function (option) {
|
|
1679
|
+
return option.toUpperCase().includes(newValue.toUpperCase());
|
|
1680
|
+
}) : countries);
|
|
1681
|
+
}, 100);
|
|
1752
1682
|
});
|
|
1753
|
-
|
|
1754
|
-
|
|
1755
|
-
|
|
1756
|
-
|
|
1757
|
-
|
|
1758
|
-
|
|
1759
|
-
|
|
1760
|
-
|
|
1761
|
-
|
|
1762
|
-
|
|
1763
|
-
|
|
1764
|
-
|
|
1765
|
-
|
|
1766
|
-
|
|
1767
|
-
|
|
1768
|
-
|
|
1683
|
+
return result;
|
|
1684
|
+
});
|
|
1685
|
+
onChange = jest.fn();
|
|
1686
|
+
_render50 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1687
|
+
label: "Autosuggest Countries",
|
|
1688
|
+
onChange: onChange,
|
|
1689
|
+
suggestions: callbackFunc
|
|
1690
|
+
})), getByText = _render50.getByText, getByRole = _render50.getByRole, queryByRole = _render50.queryByRole;
|
|
1691
|
+
input = getByRole("combobox");
|
|
1692
|
+
_react2.fireEvent.focus(input);
|
|
1693
|
+
_userEvent["default"].type(input, "wrong");
|
|
1694
|
+
_context33.next = 8;
|
|
1695
|
+
return (0, _react2.waitForElementToBeRemoved)(function () {
|
|
1696
|
+
return getByText("Searching...");
|
|
1697
|
+
});
|
|
1698
|
+
case 8:
|
|
1699
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
1700
|
+
_react2.fireEvent.focus(input);
|
|
1701
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
1702
|
+
_react2.fireEvent.keyDown(input, {
|
|
1703
|
+
key: "ArrowUp",
|
|
1704
|
+
code: "ArrowUp",
|
|
1705
|
+
keyCode: 38,
|
|
1706
|
+
charCode: 38
|
|
1707
|
+
});
|
|
1708
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
1709
|
+
_react2.fireEvent.keyDown(input, {
|
|
1710
|
+
key: "ArrowDown",
|
|
1711
|
+
code: "ArrowDown",
|
|
1712
|
+
keyCode: 40,
|
|
1713
|
+
charCode: 40
|
|
1714
|
+
});
|
|
1715
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
1716
|
+
case 15:
|
|
1717
|
+
case "end":
|
|
1718
|
+
return _context33.stop();
|
|
1769
1719
|
}
|
|
1770
|
-
},
|
|
1720
|
+
}, _callee33);
|
|
1771
1721
|
})));
|
|
1772
|
-
test("Asynchronous autosuggest request failed, shows 'Error fetching data' message", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function
|
|
1773
|
-
var errorCallbackFunc, onChange,
|
|
1774
|
-
|
|
1775
|
-
|
|
1776
|
-
|
|
1777
|
-
|
|
1778
|
-
|
|
1779
|
-
|
|
1780
|
-
|
|
1781
|
-
|
|
1782
|
-
reject("err");
|
|
1783
|
-
}, 100);
|
|
1784
|
-
});
|
|
1785
|
-
return result;
|
|
1786
|
-
});
|
|
1787
|
-
onChange = jest.fn();
|
|
1788
|
-
_render49 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1789
|
-
label: "Autosuggest Countries",
|
|
1790
|
-
onChange: onChange,
|
|
1791
|
-
suggestions: errorCallbackFunc
|
|
1792
|
-
})), getByRole = _render49.getByRole, getByText = _render49.getByText;
|
|
1793
|
-
input = getByRole("combobox");
|
|
1794
|
-
|
|
1795
|
-
_react2.fireEvent.focus(input);
|
|
1796
|
-
|
|
1797
|
-
_context7.next = 7;
|
|
1798
|
-
return (0, _react2.waitForElementToBeRemoved)(function () {
|
|
1799
|
-
return getByText("Searching...");
|
|
1722
|
+
test("Asynchronous autosuggest request failed, shows 'Error fetching data' message", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee34() {
|
|
1723
|
+
var errorCallbackFunc, onChange, _render51, getByRole, getByText, input;
|
|
1724
|
+
return _regenerator["default"].wrap(function _callee34$(_context34) {
|
|
1725
|
+
while (1) switch (_context34.prev = _context34.next) {
|
|
1726
|
+
case 0:
|
|
1727
|
+
errorCallbackFunc = jest.fn(function () {
|
|
1728
|
+
var result = new Promise(function (resolve, reject) {
|
|
1729
|
+
return setTimeout(function () {
|
|
1730
|
+
reject("err");
|
|
1731
|
+
}, 100);
|
|
1800
1732
|
});
|
|
1801
|
-
|
|
1802
|
-
|
|
1803
|
-
|
|
1804
|
-
|
|
1805
|
-
|
|
1806
|
-
|
|
1807
|
-
|
|
1808
|
-
|
|
1733
|
+
return result;
|
|
1734
|
+
});
|
|
1735
|
+
onChange = jest.fn();
|
|
1736
|
+
_render51 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1737
|
+
label: "Autosuggest Countries",
|
|
1738
|
+
onChange: onChange,
|
|
1739
|
+
suggestions: errorCallbackFunc
|
|
1740
|
+
})), getByRole = _render51.getByRole, getByText = _render51.getByText;
|
|
1741
|
+
input = getByRole("combobox");
|
|
1742
|
+
_react2.fireEvent.focus(input);
|
|
1743
|
+
_context34.next = 7;
|
|
1744
|
+
return (0, _react2.waitForElementToBeRemoved)(function () {
|
|
1745
|
+
return getByText("Searching...");
|
|
1746
|
+
});
|
|
1747
|
+
case 7:
|
|
1748
|
+
expect(getByText("Error fetching data")).toBeTruthy();
|
|
1749
|
+
case 8:
|
|
1750
|
+
case "end":
|
|
1751
|
+
return _context34.stop();
|
|
1809
1752
|
}
|
|
1810
|
-
},
|
|
1753
|
+
}, _callee34);
|
|
1811
1754
|
})));
|
|
1812
1755
|
});
|