dimsum-e2e-tests 3.53.0-alpha.1 → 3.53.0-alpha.3
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/CHANGELOG.md +8 -0
- package/ds-accordion/DSAccordionCO.js +15 -11
- package/ds-accordion/role/DSAccordion.role-heading.func.spec.js +21 -0
- package/ds-accordion/scrollable-content/DSAccordion.scrollable-content.visual.spec.js +42 -0
- package/ds-accordion/slots/DSAccordion.slots.func.spec.js +12 -0
- package/ds-accordion/wrapLabel/DSAccordion.wrap-label.visual.spec.js +20 -0
- package/ds-autocomplete/DSAutocompleteCO.js +18 -0
- package/ds-autocomplete/slots/DSAutocomplete.slots.axe-core.func.spec.js +20 -0
- package/ds-autocomplete/slots/DSAutocomplete.slots.func.spec.js +45 -0
- package/ds-autocomplete/slots/DSAutocomplete.slots.visual.spec.js +21 -0
- package/ds-banner/DSBanner.func.spec.js +4 -60
- package/ds-banner/DSBanner.text-resize.visual.spec.js +15 -0
- package/ds-banner/DSBanner.text-wrapping.visual.spec.js +31 -0
- package/ds-banner/DSBanner.visual.spec.js +0 -29
- package/ds-banner/DSBannerCO.js +24 -2
- package/ds-banner/aria-and-role/DSBanner.aria-and-role.func.spec.js +63 -0
- package/ds-banner/slots/DSBanner.slots.func.spec.js +65 -0
- package/ds-banner/slots/DSBanner.slots.visual.spec.js +17 -0
- package/ds-breadcrumb/DSBreadcrumb.func.spec.js +5 -3
- package/ds-button-v3/DSButtonV3.type-submit.func.spec.js +28 -0
- package/ds-button-v3/DSButtonV3.visual.spec.js +7 -2
- package/ds-button-v3/DSButtonV3CO.js +2 -0
- package/ds-card-navigation/CardNavigationCO.js +56 -0
- package/ds-card-navigation/DSCardNavigation.func.spec.js +50 -1
- package/ds-card-navigation/DSCardNavigation.slots.func.spec.js +127 -0
- package/ds-card-navigation/DSCardNavigation.slots.visual.spec.js +26 -0
- package/ds-card-navigation/DSCardNavigation.visual.spec.js +16 -0
- package/ds-card-v3/DSCardV3CO.js +20 -0
- package/ds-card-v3/drag-n-drop/DSCardV3.DnD.visual.spec.js +1 -1
- package/ds-card-v3/slots/DSCardV3.slots.axe-core.spec.js +22 -0
- package/ds-card-v3/slots/DSCardV3.slots.func.spec.js +36 -0
- package/ds-card-v3/slots/DSCardV3.slots.visual.spec.js +18 -0
- package/ds-chat/DSChat.func.spec.js +3 -2
- package/ds-chat/DSChat.visual.spec.js +3 -2
- package/ds-chat/DSChatCO.js +0 -8
- package/ds-chat/floatingbutton/DSChat-floating-button.visual.spec.js +1 -1
- package/ds-chip/DSChipCO.js +24 -0
- package/ds-chip/slots/DSChip.slots.axe-core.spec.js +17 -0
- package/ds-chip/slots/DSChip.slots.func.spec.js +39 -0
- package/ds-chip/slots/DSChip.slots.visual.spec.js +17 -0
- package/ds-circular-indeterminate-indicator/DSCircularIndicator.visual.spec.js +2 -1
- package/ds-controlled-form/ds-combobox/creatable/DSCombobox.creatable.visual.spec.js +6 -4
- package/ds-controlled-form/ds-controlled-large-input-text/DSLargeInputTextCO.js +5 -0
- package/ds-controlled-form/ds-controlled-large-input-text/aria-disabled/DSLargeInputText.aria-disabled.func.spec.js +19 -0
- package/ds-controlled-form/ds-controlled-radio-group/DSControlledRadioGroup.axe-core.func.spec.js +31 -0
- package/ds-controlled-form/react-hook-form/ReactHook.visual.spec.js +1 -0
- package/ds-data-table-async/DSDataTableCO.js +173 -108
- package/ds-data-table-async/basic/DSDataTable.basic.visual.spec.js +1 -45
- package/ds-data-table-async/components/FilterBarCO.js +8 -0
- package/ds-data-table-async/components/FiltersCO.js +12 -0
- package/ds-data-table-async/components/HeaderCO.js +5 -0
- package/ds-data-table-async/components/PaginationNavCO.js +1 -1
- package/ds-data-table-async/date-filters/DSDataTable.date-switcher.single.func.spec.js +1 -1
- package/ds-data-table-async/date-filters/DSDataTable.date-switcher.visual.spec.js +18 -8
- package/ds-data-table-async/dnd/DSDataTable.dnd.visual.spec.js +3 -1
- package/ds-data-table-async/dnd/DSDataTable.dnd_fixed-width.visual.spec.js +33 -0
- package/ds-data-table-async/empty-state/DSDataTable.empty-state.visual.spec.js +13 -0
- package/ds-data-table-async/filters/DSDataTable.filters-creatable.func.spec.js +5 -5
- package/ds-data-table-async/filters/DSDataTable.filters-creatable.visual.spec.js +1 -0
- package/ds-data-table-async/filters/DSDataTable.filters.visual.spec.js +18 -1
- package/ds-data-table-async/filters/DSDataTable.free-text-search.keyboard.func.spec.js +242 -0
- package/ds-data-table-async/filters/DSDataTable.free-text-search.visual.spec.js +54 -0
- package/ds-data-table-async/filters/DSDataTable.text-filters.func.spec.js +3 -3
- package/ds-data-table-async/menubutton/DSDataTable.MenuButton.keyboard.func.spec.js +56 -0
- package/ds-data-table-async/menubutton/DSDataTable.MenuButton.mouse.func.spec.js +55 -0
- package/ds-data-table-async/menubutton/DSDataTable.MenuButton.visual.spec.js +27 -0
- package/ds-data-table-async/more/DSDataTable.headers.visual.spec.js +0 -63
- package/ds-data-table-async/select/DSDataTable.select.func.spec.js +1 -1
- package/ds-data-table-async/slots/DSDataTable.slots.func.spec.js +40 -0
- package/ds-data-table-async/slots/DSDataTable.slots.visual.spec.js +19 -0
- package/ds-data-table-async/sorting/DSDataTable.sorting.visual.spec.js +118 -0
- package/ds-dataviz/DSDataViz.axis.visual.spec.js +2 -1
- package/ds-dataviz/DSDataViz.scroll.visual.spec.js +1 -0
- package/ds-dataviz/DSDataViz.ticks.visual.spec.js +2 -1
- package/ds-dialog/DSDialog.cases.visual.spec.js +3 -4
- package/ds-dialog/DSDialog.visual.spec.js +7 -14
- package/ds-dialog/DSDialogCO.js +5 -13
- package/ds-dialog/axe-core/DSDialog.error.axe-core.func.spec.js +24 -0
- package/ds-dialog/axe-core/DSDialog.info.axe-core.func.spec.js +24 -0
- package/ds-dialog/axe-core/DSDialog.scroll-body.axe-core.func.spec.js +24 -0
- package/ds-dialog/axe-core/DSDialog.success.axe-core.func.spec.js +24 -0
- package/ds-dialog/axe-core/DSDialog.warning.axe-core.spec.func.js +24 -0
- package/ds-dropdownmenu-v2/DSDDMenuV2.visual.spec.js +5 -5
- package/ds-form-combobox-multi/DSComboboxMultiCO.js +96 -1
- package/ds-form-combobox-multi/aria-disabled/DSComboboxMulti.aria-disabled.visual.spec.js +7 -3
- package/ds-form-combobox-multi/disabled/DSComboboxMulti.disabled.mouse.func.spec.js +25 -0
- package/ds-form-combobox-multi/menu-position/DSComboboxMulti.menu-position.visual.spec.js +42 -0
- package/ds-form-combobox-multi/slots/DSComboboxMulti.slots.func.spec.js +100 -0
- package/ds-form-combobox-multi/slots/DSComboboxMulti.slots.visual.spec.js +51 -0
- package/ds-form-combobox-single/DSComboboxSingleCO.js +97 -1
- package/ds-form-combobox-single/disabled/DSComboboxSingle.disabled.mouse.func.spec.js +25 -0
- package/ds-form-combobox-single/menu-position/DSComboboxSingle.menu-position.visual.spec.js +93 -0
- package/ds-form-combobox-single/slots/DSComboboxSingle.slots.func.spec.js +100 -0
- package/ds-form-combobox-single/slots/DSComboboxSingle.slots.visual.spec.js +53 -0
- package/ds-form-date-range-picker/aria-disabled/DateRangePicker.applyAriaDisabled.keyboard-nav.func.spec.js +31 -5
- package/ds-form-date-time-picker/DSControlledDateTimePickerCO.js +7 -5
- package/ds-form-date-time-picker/date-input/DateInput.keyboard-nav.func.spec.js +2 -2
- package/ds-form-date-time-picker/date-time-full/DateTimeFull.applyAriaDisabled.axe-core.func.spec.js +1 -1
- package/ds-form-date-time-picker/date-time-full/DateTimeFull.axe-core.func.spec.js +25 -0
- package/ds-form-date-time-picker/date-time-full/DateTimePicker.applyAriaDisabled.keyboard-nav.func.spec.js +6 -1
- package/ds-form-date-time-picker/date-time-full/DateTimePicker.func.spec.js +32 -2
- package/ds-form-date-time-picker/date-time-full/DateTimePicker.keyboard-nav.func.spec.js +6 -1
- package/ds-form-date-time-picker/date-time-full/DateTimePicker.readOnly.keyboard-nav.func.spec.js +6 -1
- package/ds-form-date-time-picker/date-time-input/DateTimeInput.applyAriaDisabled.keyboard-nav.func.spec.js +40 -4
- package/ds-form-date-time-picker/showcase/DateTimePicker.applyAriaDisabled-showcase.visual.spec.js +2 -2
- package/ds-form-date-time-picker/showcase/DateTimePicker.readOnly-showcase.visual.spec.js +2 -2
- package/ds-form-layout-blocks/form-layout-block-item/DSFormLayoutBlockItem.axe-core.func.spec.js +4 -1
- package/ds-form-layout-blocks/form-layout-block-item/DSFormLayoutBlockItemCO.js +4 -0
- package/ds-form-native-select/NativeSelect.axe-core.func.spec.js +57 -0
- package/ds-form-native-select/NativeSelectCO.js +35 -0
- package/{ds-toggle → ds-form-toggle}/DSToggle.axe-core.func.spec.js +6 -2
- package/{ds-toggle → ds-form-toggle}/DSToggle.func.spec.js +13 -8
- package/{ds-toggle → ds-form-toggle}/DSToggle.visual.spec.js +2 -2
- package/{ds-toggle → ds-form-toggle}/DSToggleCO.js +1 -1
- package/ds-global-header/GlobalHeader.axe-core.func.spec.js +13 -0
- package/ds-global-header/GlobalHeaderCO.js +2 -0
- package/{ds-controlled-form → ds-hooks}/useMask/Number/UseNumberMask.func.spec.js +25 -12
- package/{ds-controlled-form → ds-hooks}/useMask/Number/UseNumberMask.visual.spec.js +4 -1
- package/{ds-controlled-form → ds-hooks}/useMask/Phone/UsePhoneMask.func.spec.js +1 -1
- package/{ds-controlled-form → ds-hooks}/useMask/Phone/UsePhoneMask.visual.spec.js +1 -1
- package/{ds-controlled-form → ds-hooks}/useMask/ReackHookFormWithMask/ReactHookFormWithMask.func.spec.js +1 -1
- package/{ds-controlled-form → ds-hooks}/useMask/ReackHookFormWithMask/ReactHookFormWithMask.visual.spec.js +1 -1
- package/{ds-controlled-form → ds-hooks}/useMask/RegExp/UseRegExpMask.func.spec.js +1 -1
- package/{ds-controlled-form → ds-hooks}/useMask/SSN/UseSsnMask.func.spec.js +1 -1
- package/{ds-controlled-form → ds-hooks}/useMask/ZipCode/UseZipCodeMask.func.spec.js +1 -1
- package/ds-indeterminate-progress-indicator/DSIndetermintateProgressIndicator.axe-core.func.spec.js +31 -0
- package/ds-menu-button/DSMenuButtonCO.js +2 -0
- package/ds-menu-button/basic/DSMenuButton.basic.func.spec.js +28 -0
- package/ds-menu-button/multiselect/DSMenuButton.axe-core.multiselect.func.spec.js +6 -1
- package/ds-menu-button/singleSelect/DSMenuButton.axe-core.singleSelect.func.spec.js +6 -1
- package/ds-menu-button/submenu/DSMenuButton.axe-core.subMenu.func.spec.js +7 -2
- package/ds-menu-item/DSMenuItems.visual.spec.js +8 -32
- package/ds-mobile/MobileDatePicker/MobileDatePicker.visual.spec.js +0 -13
- package/ds-modal-slide/ModalSlideCO.js +2 -0
- package/ds-notification-badge/DSNotificationBadge.axe-core.func.spec.js +1 -1
- package/ds-pagination/DSPagination.axe-core.func.spec.js +64 -0
- package/ds-pagination/DSPaginationCO.js +12 -0
- package/ds-pills-v2/DSPills.visual.spec.js +3 -1
- package/ds-pills-v2/selection/DSPills.axe-core.func.spec.js +6 -1
- package/ds-pills-v2/selection/DSPills.func.spec.js +32 -30
- package/ds-progress-indicator/DSProgressIndicator.axe-core.func.spec.js +31 -0
- package/ds-progress-indicator/DSProgressIndicator.func.spec.js +8 -3
- package/ds-progress-indicator/DSProgressIndicator.visual.spec.js +12 -2
- package/ds-progress-indicator/DSProgressIndicatorCO.js +5 -3
- package/ds-query-builder/DSQueryBuilder.visual.spec.js +10 -3
- package/ds-read-more/DSReadMore.func.spec.js +0 -58
- package/ds-read-more/DSReadMore.keyboard-nav.func.spec.js +66 -0
- package/ds-read-more/DSReadMore.slots.func.spec.js +58 -0
- package/ds-read-more/DSReadMore.slots.visual.spec.js +23 -0
- package/ds-read-more/DSReadMore.visual.spec.js +41 -17
- package/ds-read-more/DSReadMore.width-change.visual.spec.js +85 -0
- package/ds-read-more/DSReadMore.with-tooltip.func.spec.js +63 -0
- package/ds-read-more/DSReadMoreCO.js +20 -0
- package/ds-shuttle-v2/Dnd/DSShuttleV2.DnD.visual.spec.js +3 -0
- package/ds-shuttle-v2/basic/DSShuttleV2.keyboard.func.spec.js +0 -79
- package/ds-shuttle-v2/extra/DSShuttleV2.extra.func.spec.js +6 -2
- package/ds-shuttle-v2/extra/DSShuttleV2.extra.visual.spec.js +21 -0
- package/ds-shuttle-v2/filtering/DSShuttleV2.filter.func.spec.js +8 -3
- package/ds-shuttle-v2/filtering/DSShuttleV2.filter.kb.func.spec.js +43 -0
- package/ds-shuttle-v2/items/DSShuttleV2.items.func.spec.js +3 -2
- package/ds-shuttle-v2/items/DSShuttleV2.items.kb.func.spec.js +1 -1
- package/ds-shuttle-v2/load-more/DSShuttleV2.load-more.keyboard.func.spec.js +61 -0
- package/ds-slider-v2/DSSliderV2.extra.func.spec.js +44 -0
- package/ds-slider-v2/DSSliderV2.func.spec.js +98 -0
- package/ds-slider-v2/DSSliderV2CO.js +8 -0
- package/ds-svg/DSSvg.axe-core.func.spec.js +32 -0
- package/ds-svg/DSSvgCO.js +2 -3
- package/ds-tabs/DSTabs.onTabChange.func.spec.js +33 -0
- package/ds-tabs/DSTabsCO.js +29 -1
- package/ds-tabs/slots/DSTabs.slots.func.spec.js +77 -0
- package/ds-tabs/slots/DSTabs.slots.visual.spec.js +49 -0
- package/ds-tabs/with-carousel/DSTabs.with-carousel.visual.spec.js +5 -4
- package/ds-tooltip-v3/DSTooltipV3CO.js +6 -2
- package/ds-treeview/DSTreeViewCO.js +8 -0
- package/ds-treeview/dragAndDrop/TreeView-dnd.func.spec.js +0 -50
- package/ds-treeview/dragAndDrop/TreeView-dnd_mouse.func.spec.js +61 -0
- package/package.json +188 -187
- package/paths.js +17 -1
- package/ds-dialog/DSDialog.smoke.spec.js +0 -133
- package/ds-slider-v2/DSSliderV2.skipped.js +0 -46
- /package/ds-form-combobox-multi/iframe/{DSComboboxMulti.insideIframe.func.spec.js → DSComboboxMulti.insideIframe.visual.spec.js} +0 -0
- /package/{ds-controlled-form → ds-hooks}/useMask/useMaskCO.js +0 -0
- /package/ds-indeterminate-progress-indicator/{DSIndetermintateProgressIndicator.func.spec.js → DSIndetermintateProgressIndicator.func.spec copy.js} +0 -0
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { Key } from 'webdriverio';
|
|
3
3
|
import UseMaskCO from '../useMaskCO';
|
|
4
4
|
import { type } from '../../../helpers';
|
|
5
|
-
import DSInputTextCO from '
|
|
5
|
+
import DSInputTextCO from '../../../ds-controlled-form/ds-input-text/DSInputTextCO';
|
|
6
6
|
|
|
7
7
|
if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
|
|
8
8
|
describe('PUI-8167 - useNumberMask:: Currency', () => {
|
|
@@ -101,29 +101,34 @@ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:o
|
|
|
101
101
|
const errorOnGo = await UseMaskCO.numberURL.go();
|
|
102
102
|
if (errorOnGo) throw errorOnGo;
|
|
103
103
|
});
|
|
104
|
-
it('01: all initial values should be displayed', async () => {
|
|
105
|
-
const firstInput = await DSInputTextCO.getInputTextByIndex(0);
|
|
106
|
-
const secondInput = await DSInputTextCO.getInputTextByIndex(1);
|
|
107
|
-
const thirdInput = await DSInputTextCO.getInputTextByIndex(2);
|
|
108
|
-
const fourthInput = await DSInputTextCO.getInputTextByIndex(3);
|
|
109
|
-
await
|
|
104
|
+
it('01: all initial values should be displayed correctly', async () => {
|
|
105
|
+
const firstInput = await DSInputTextCO.getInputTextByIndex(0); // No decimals allowed
|
|
106
|
+
const secondInput = await DSInputTextCO.getInputTextByIndex(1); // Allow Negative
|
|
107
|
+
const thirdInput = await DSInputTextCO.getInputTextByIndex(2); // Thousands Separator Not Included
|
|
108
|
+
const fourthInput = await DSInputTextCO.getInputTextByIndex(3); // Decimal required - initial value '1000.0'
|
|
109
|
+
const tenthInput = await DSInputTextCO.getInputTextByIndex(9); // Decimal required - initial value '1000'
|
|
110
|
+
await expect(firstInput).toHaveValue('200');
|
|
110
111
|
await expect(secondInput).toHaveValue('-0.30');
|
|
111
112
|
await expect(thirdInput).toHaveValue('10000000');
|
|
112
|
-
await expect(fourthInput).toHaveValue('1,000.
|
|
113
|
+
await expect(fourthInput).toHaveValue('1,000.000');
|
|
114
|
+
await expect(tenthInput).toHaveValue('1,000.000');
|
|
113
115
|
});
|
|
114
116
|
it('02: should correctly clear all inputs', async () => {
|
|
115
|
-
const firstInput = await DSInputTextCO.getInputTextByIndex(0);
|
|
116
|
-
const secondInput = await DSInputTextCO.getInputTextByIndex(1);
|
|
117
|
-
const thirdInput = await DSInputTextCO.getInputTextByIndex(2);
|
|
118
|
-
const fourthInput = await DSInputTextCO.getInputTextByIndex(3);
|
|
117
|
+
const firstInput = await DSInputTextCO.getInputTextByIndex(0); // No decimals allowed
|
|
118
|
+
const secondInput = await DSInputTextCO.getInputTextByIndex(1); // Allow Negative
|
|
119
|
+
const thirdInput = await DSInputTextCO.getInputTextByIndex(2); // Thousands Separator Not Included
|
|
120
|
+
const fourthInput = await DSInputTextCO.getInputTextByIndex(3); // Decimal required - initial value '1000.0'
|
|
121
|
+
const tenthInput = await DSInputTextCO.getInputTextByIndex(9); // Decimal required - initial value '1000'
|
|
119
122
|
await UseMaskCO.clearValue(firstInput);
|
|
120
123
|
await UseMaskCO.clearValue(secondInput);
|
|
121
124
|
await UseMaskCO.clearValue(thirdInput);
|
|
122
125
|
await UseMaskCO.clearValue(fourthInput);
|
|
126
|
+
await UseMaskCO.clearValue(tenthInput);
|
|
123
127
|
await expect(firstInput).toHaveValue('');
|
|
124
128
|
await expect(secondInput).toHaveValue('');
|
|
125
129
|
await expect(thirdInput).toHaveValue('');
|
|
126
130
|
await expect(fourthInput).toHaveValue('');
|
|
131
|
+
await expect(tenthInput).toHaveValue('');
|
|
127
132
|
});
|
|
128
133
|
it('03: should correctly format the No decimal allowed input', async () => {
|
|
129
134
|
const firstInput = await DSInputTextCO.getInputTextByIndex(4);
|
|
@@ -149,6 +154,14 @@ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:o
|
|
|
149
154
|
await type('.323952345');
|
|
150
155
|
await expect(fourthInput).toHaveValue('0.323');
|
|
151
156
|
});
|
|
157
|
+
it('07: should correctly format the Decimal Required input accordingly to the mask', async () => {
|
|
158
|
+
const tenthInput = await DSInputTextCO.getInputTextByIndex(9);
|
|
159
|
+
await tenthInput.click();
|
|
160
|
+
await tenthInput.clearValue();
|
|
161
|
+
await type('23952345');
|
|
162
|
+
await browser.keys([Key.Shift, Key.Tab]);
|
|
163
|
+
await expect(tenthInput).toHaveValue('23,952,345.000');
|
|
164
|
+
});
|
|
152
165
|
});
|
|
153
166
|
describe('PUI-8169 - useNumberMask:: Percent', () => {
|
|
154
167
|
before('loading page', async () => {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type } from '../../../helpers';
|
|
2
2
|
import UseMaskCO from '../useMaskCO';
|
|
3
|
-
import DSInputTextCO from '
|
|
3
|
+
import DSInputTextCO from '../../../ds-controlled-form/ds-input-text/DSInputTextCO';
|
|
4
4
|
|
|
5
5
|
if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
|
|
6
6
|
describe('PUI-8175: UseNumberMask - visual', () => {
|
|
@@ -28,6 +28,9 @@ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:o
|
|
|
28
28
|
const eightInput = await DSInputTextCO.getInputTextByIndex(7);
|
|
29
29
|
await eightInput.click();
|
|
30
30
|
await type('123a4$bb56.1');
|
|
31
|
+
const ninthInput = await DSInputTextCO.getInputTextByIndex(8);
|
|
32
|
+
await ninthInput.click();
|
|
33
|
+
await type('123a4$bb56.1');
|
|
31
34
|
await firstInput.click();
|
|
32
35
|
const snapshot = await browser.checkSnapshot(UseMaskCO.snapshotPath('useMask-numbers-all-completed'));
|
|
33
36
|
await expect(snapshot).toEqual(0);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type } from '../../../helpers';
|
|
2
2
|
import UseMaskCO from '../useMaskCO';
|
|
3
|
-
import DSInputTextCO from '
|
|
3
|
+
import DSInputTextCO from '../../../ds-controlled-form/ds-input-text/DSInputTextCO';
|
|
4
4
|
|
|
5
5
|
if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
|
|
6
6
|
describe('PUI-8170 - usePhoneMask:: Phone', () => {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import UseMaskCO from '../useMaskCO';
|
|
2
2
|
import { type } from '../../../helpers';
|
|
3
|
-
import DSInputTextCO from '
|
|
3
|
+
import DSInputTextCO from '../../../ds-controlled-form/ds-input-text/DSInputTextCO';
|
|
4
4
|
|
|
5
5
|
if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
|
|
6
6
|
describe('PUI-10142 - usePhoneMask:: Phone - visual', () => {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/* eslint-disable max-lines */
|
|
2
2
|
import { type } from '../../../helpers';
|
|
3
3
|
import UseMaskCO from '../useMaskCO';
|
|
4
|
-
import DSInputTextCO from '
|
|
4
|
+
import DSInputTextCO from '../../../ds-controlled-form/ds-input-text/DSInputTextCO';
|
|
5
5
|
|
|
6
6
|
if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
|
|
7
7
|
describe('PUI-9283 - useRegExpMask:: With React Hook Form', () => {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/* eslint-disable max-lines */
|
|
2
2
|
import { type } from '../../../helpers';
|
|
3
3
|
import UseMaskCO from '../useMaskCO';
|
|
4
|
-
import DSInputTextCO from '
|
|
4
|
+
import DSInputTextCO from '../../../ds-controlled-form/ds-input-text/DSInputTextCO';
|
|
5
5
|
|
|
6
6
|
if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
|
|
7
7
|
describe('PUI-10170 - useRegExpMask:: With React Hook Form - visual', () => {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/* eslint-disable max-lines */
|
|
2
2
|
import { type } from '../../../helpers';
|
|
3
3
|
import UseMaskCO from '../useMaskCO';
|
|
4
|
-
import DSInputTextCO from '
|
|
4
|
+
import DSInputTextCO from '../../../ds-controlled-form/ds-input-text/DSInputTextCO';
|
|
5
5
|
|
|
6
6
|
if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
|
|
7
7
|
describe('PUI-8171 - useRegExpMask:: RegExp', () => {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/* eslint-disable max-lines */
|
|
2
2
|
import { type } from '../../../helpers';
|
|
3
3
|
import UseMaskCO from '../useMaskCO';
|
|
4
|
-
import DSInputTextCO from '
|
|
4
|
+
import DSInputTextCO from '../../../ds-controlled-form/ds-input-text/DSInputTextCO';
|
|
5
5
|
|
|
6
6
|
if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
|
|
7
7
|
describe('PUI-8172 - useSSNMask -func', () => {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/* eslint-disable max-lines */
|
|
2
2
|
import { type } from '../../../helpers';
|
|
3
3
|
import UseMaskCO from '../useMaskCO';
|
|
4
|
-
import DSInputTextCO from '
|
|
4
|
+
import DSInputTextCO from '../../../ds-controlled-form/ds-input-text/DSInputTextCO';
|
|
5
5
|
|
|
6
6
|
if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
|
|
7
7
|
describe('PUI-8173 - useZipCodeMask:: ZipCode', () => {
|
package/ds-indeterminate-progress-indicator/DSIndetermintateProgressIndicator.axe-core.func.spec.js
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import DSIndeterminateProgressIndicatorCO from './DSIndeterminateProgressIndicatorCO';
|
|
2
|
+
import { axeCoreCheck } from '../helpers';
|
|
3
|
+
|
|
4
|
+
if (
|
|
5
|
+
(!browser.capabilities['ice:options'].isPhone &&
|
|
6
|
+
!browser.capabilities['ice:options'].isTablet &&
|
|
7
|
+
browser.capabilities.browserName === 'chrome') ||
|
|
8
|
+
browser.capabilities.browserName === 'Chrome'
|
|
9
|
+
) {
|
|
10
|
+
describe('PUI-17525 - IndeterminateProgressIndicator - dynamic title', () => {
|
|
11
|
+
before('loading page', async () => {
|
|
12
|
+
const errorOnGo = await DSIndeterminateProgressIndicatorCO.basicURL.go();
|
|
13
|
+
if (errorOnGo) throw errorOnGo;
|
|
14
|
+
});
|
|
15
|
+
it('01: should pass accessibility check', async () => {
|
|
16
|
+
const title = await DSIndeterminateProgressIndicatorCO.getIndeterminateProgressIndicatorTitle();
|
|
17
|
+
await title.waitForDisplayed();
|
|
18
|
+
const result = await axeCoreCheck();
|
|
19
|
+
expect(result.length).toBe(0);
|
|
20
|
+
});
|
|
21
|
+
it('02: should display a diferent title after 3 seconds and pass accessibility check', async () => {
|
|
22
|
+
const title = await DSIndeterminateProgressIndicatorCO.getIndeterminateProgressIndicatorTitle();
|
|
23
|
+
await title.waitForDisplayed();
|
|
24
|
+
// eslint-disable-next-line wdio/no-pause
|
|
25
|
+
await browser.pause(3000);
|
|
26
|
+
await expect(title).toHaveText(expect.stringContaining('Title changed'));
|
|
27
|
+
const result = await axeCoreCheck();
|
|
28
|
+
expect(result.length).toBe(0);
|
|
29
|
+
});
|
|
30
|
+
});
|
|
31
|
+
}
|
|
@@ -7,6 +7,8 @@ export default class DSMenuButtonCO extends PageObject {
|
|
|
7
7
|
|
|
8
8
|
static multipleSelectMenuItem = new Urlbuilder(PATH_E2E_MENU_BUTTON, 'multiple-select-menu-item');
|
|
9
9
|
|
|
10
|
+
static nextTabstopTest = new Urlbuilder(PATH_E2E_MENU_BUTTON, 'next-tabstop-test');
|
|
11
|
+
|
|
10
12
|
static singleSelectMenuItem = new Urlbuilder(PATH_E2E_MENU_BUTTON, 'single-select-menu-item');
|
|
11
13
|
|
|
12
14
|
static withSubmenuMenuItem = new Urlbuilder(PATH_E2E_MENU_BUTTON, 'with-submenu-menu-item');
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/* eslint-disable max-statements */
|
|
2
|
+
import { Key } from 'webdriverio';
|
|
3
|
+
import DSMenuButtonCO from '../DSMenuButtonCO';
|
|
4
|
+
import DSButtonV3CO from '../../ds-button-v3/DSButtonV3CO';
|
|
5
|
+
|
|
6
|
+
if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
|
|
7
|
+
describe('PUI-17414 - DSMenuButton:: Tab with expanded menu - Func', () => {
|
|
8
|
+
before('loading page', async () => {
|
|
9
|
+
const errorOnGo = await DSMenuButtonCO.nextTabstopTest.go();
|
|
10
|
+
if (errorOnGo) throw errorOnGo;
|
|
11
|
+
});
|
|
12
|
+
it('01: should trigger menuButton and have it displayed and focused', async () => {
|
|
13
|
+
const menuTrigger = await DSButtonV3CO.getButtonByLabel('MenuButton');
|
|
14
|
+
await menuTrigger.click();
|
|
15
|
+
const menuFlyOut = await DSMenuButtonCO.getMenuRoot();
|
|
16
|
+
const menuItem1 = await DSMenuButtonCO.getMenuItemOptByIndex(1);
|
|
17
|
+
await expect(menuItem1).toBeFocused();
|
|
18
|
+
await expect(menuFlyOut).toBeDisplayed();
|
|
19
|
+
});
|
|
20
|
+
it('02: should tab and go to the next IE after trigger', async () => {
|
|
21
|
+
const menuFlyOut = await DSMenuButtonCO.getMenuRoot();
|
|
22
|
+
await browser.keys(Key.Tab);
|
|
23
|
+
const normalButton = await DSButtonV3CO.getButtonByIndex(1);
|
|
24
|
+
await expect(menuFlyOut).not.toBeDisplayed();
|
|
25
|
+
await expect(normalButton).toBeFocused();
|
|
26
|
+
});
|
|
27
|
+
});
|
|
28
|
+
}
|
|
@@ -2,7 +2,12 @@ import { axeCoreCheck } from '../../helpers';
|
|
|
2
2
|
import DSMenuButtonCO from '../DSMenuButtonCO';
|
|
3
3
|
import DSButtonV3CO from '../../ds-button-v3/DSButtonV3CO';
|
|
4
4
|
|
|
5
|
-
if (
|
|
5
|
+
if (
|
|
6
|
+
(!browser.capabilities['ice:options'].isPhone &&
|
|
7
|
+
!browser.capabilities['ice:options'].isTablet &&
|
|
8
|
+
browser.capabilities.browserName === 'Chrome') ||
|
|
9
|
+
browser.capabilities.browserName === 'chrome'
|
|
10
|
+
) {
|
|
6
11
|
describe('PUI-14642 - DSMenuButton:: Multi Select Menu Item - AxeCore', () => {
|
|
7
12
|
before('loading page', async () => {
|
|
8
13
|
const errorOnGo = await DSMenuButtonCO.multipleSelectMenuItem.go();
|
|
@@ -2,7 +2,12 @@ import { axeCoreCheck } from '../../helpers';
|
|
|
2
2
|
import DSMenuButtonCO from '../DSMenuButtonCO';
|
|
3
3
|
import DSButtonV3CO from '../../ds-button-v3/DSButtonV3CO';
|
|
4
4
|
|
|
5
|
-
if (
|
|
5
|
+
if (
|
|
6
|
+
(!browser.capabilities['ice:options'].isPhone &&
|
|
7
|
+
!browser.capabilities['ice:options'].isTablet &&
|
|
8
|
+
browser.capabilities.browserName === 'Chrome') ||
|
|
9
|
+
browser.capabilities.browserName === 'chrome'
|
|
10
|
+
) {
|
|
6
11
|
describe('PUI-14643 - DSMenuButton:: Single Select Menu Item - AxeCore', () => {
|
|
7
12
|
before('loading page', async () => {
|
|
8
13
|
const errorOnGo = await DSMenuButtonCO.singleSelectMenuItem.go();
|
|
@@ -3,7 +3,12 @@ import { axeCoreCheck } from '../../helpers';
|
|
|
3
3
|
import DSMenuButtonCO from '../DSMenuButtonCO';
|
|
4
4
|
import DSButtonV3CO from '../../ds-button-v3/DSButtonV3CO';
|
|
5
5
|
|
|
6
|
-
if (
|
|
6
|
+
if (
|
|
7
|
+
(!browser.capabilities['ice:options'].isPhone &&
|
|
8
|
+
!browser.capabilities['ice:options'].isTablet &&
|
|
9
|
+
browser.capabilities.browserName === 'Chrome') ||
|
|
10
|
+
browser.capabilities.browserName === 'chrome'
|
|
11
|
+
) {
|
|
7
12
|
describe('PUI-14644 - DSMenuButton:: Submenu Menu Item && Action Menu Item - AxeCore', () => {
|
|
8
13
|
before('loading page', async () => {
|
|
9
14
|
const errorOnGo = await DSMenuButtonCO.withSubmenuMenuItem.go();
|
|
@@ -13,7 +18,7 @@ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:o
|
|
|
13
18
|
const menuTrigger = await DSButtonV3CO.getButtonByLabel('Submenus example');
|
|
14
19
|
await menuTrigger.click();
|
|
15
20
|
await browser.keys(Key.ArrowRight);
|
|
16
|
-
const result = await axeCoreCheck({ selector: "[
|
|
21
|
+
const result = await axeCoreCheck({ selector: "[id='ds-sb-main']" });
|
|
17
22
|
expect(result.length).toBe(0);
|
|
18
23
|
});
|
|
19
24
|
});
|
|
@@ -10,10 +10,7 @@ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:o
|
|
|
10
10
|
it('01: should display action menu items correctly', async () => {
|
|
11
11
|
const menuItemWrapper = await DSMenuItems.getMenuItemsWrapper();
|
|
12
12
|
await menuItemWrapper.waitForDisplayed();
|
|
13
|
-
const snapshot = await browser.
|
|
14
|
-
DSMenuItems.snapshotPath('ds-menu-items-action-menu'),
|
|
15
|
-
menuItemWrapper,
|
|
16
|
-
);
|
|
13
|
+
const snapshot = await browser.checkSnapshot(DSMenuItems.snapshotPath('ds-menu-items-action-menu'));
|
|
17
14
|
await expect(snapshot).toEqual(0);
|
|
18
15
|
});
|
|
19
16
|
it('02: should display action menu items correctly - hover and click', async () => {
|
|
@@ -25,10 +22,7 @@ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:o
|
|
|
25
22
|
await mouseOver(menuItem2, 40);
|
|
26
23
|
// eslint-disable-next-line wdio/no-pause
|
|
27
24
|
await browser.pause(300);
|
|
28
|
-
const snapshot = await browser.
|
|
29
|
-
DSMenuItems.snapshotPath('ds-menu-items-action-menu-states'),
|
|
30
|
-
menuItemWrapper,
|
|
31
|
-
);
|
|
25
|
+
const snapshot = await browser.checkSnapshot(DSMenuItems.snapshotPath('ds-menu-items-action-menu-states'));
|
|
32
26
|
await expect(snapshot).toEqual(0);
|
|
33
27
|
});
|
|
34
28
|
});
|
|
@@ -40,10 +34,7 @@ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:o
|
|
|
40
34
|
it('01: should display single menu items correctly', async () => {
|
|
41
35
|
const menuItemWrapper = await DSMenuItems.getMenuItemsWrapper();
|
|
42
36
|
await menuItemWrapper.waitForDisplayed();
|
|
43
|
-
const snapshot = await browser.
|
|
44
|
-
DSMenuItems.snapshotPath('ds-menu-items-single-menu'),
|
|
45
|
-
menuItemWrapper,
|
|
46
|
-
);
|
|
37
|
+
const snapshot = await browser.checkSnapshot(DSMenuItems.snapshotPath('ds-menu-items-single-menu'));
|
|
47
38
|
await expect(snapshot).toEqual(0);
|
|
48
39
|
});
|
|
49
40
|
it('02: should display single menu items correctly - hover and click', async () => {
|
|
@@ -53,10 +44,7 @@ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:o
|
|
|
53
44
|
const menuItem2 = await DSMenuItems.getMenuItem('2');
|
|
54
45
|
await menuItem1.click();
|
|
55
46
|
await mouseOver(menuItem2);
|
|
56
|
-
const snapshot = await browser.
|
|
57
|
-
DSMenuItems.snapshotPath('ds-menu-items-single-menu-states'),
|
|
58
|
-
menuItemWrapper,
|
|
59
|
-
);
|
|
47
|
+
const snapshot = await browser.checkSnapshot(DSMenuItems.snapshotPath('ds-menu-items-single-menu-states'));
|
|
60
48
|
await expect(snapshot).toEqual(0);
|
|
61
49
|
});
|
|
62
50
|
});
|
|
@@ -68,10 +56,7 @@ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:o
|
|
|
68
56
|
it('01: should display action menu items correctly', async () => {
|
|
69
57
|
const menuItemWrapper = await DSMenuItems.getMenuItemsWrapper();
|
|
70
58
|
await menuItemWrapper.waitForDisplayed();
|
|
71
|
-
const snapshot = await browser.
|
|
72
|
-
DSMenuItems.snapshotPath('ds-menu-items-multi-menu'),
|
|
73
|
-
menuItemWrapper,
|
|
74
|
-
);
|
|
59
|
+
const snapshot = await browser.checkSnapshot(DSMenuItems.snapshotPath('ds-menu-items-multi-menu'));
|
|
75
60
|
await expect(snapshot).toEqual(0);
|
|
76
61
|
});
|
|
77
62
|
it('02: should display action menu items correctly - hover and click', async () => {
|
|
@@ -83,10 +68,7 @@ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:o
|
|
|
83
68
|
await menuItem1.click();
|
|
84
69
|
await menuItem3.click();
|
|
85
70
|
await mouseOver(menuItem2);
|
|
86
|
-
const snapshot = await browser.
|
|
87
|
-
DSMenuItems.snapshotPath('ds-menu-items-multi-menu-states'),
|
|
88
|
-
menuItemWrapper,
|
|
89
|
-
);
|
|
71
|
+
const snapshot = await browser.checkSnapshot(DSMenuItems.snapshotPath('ds-menu-items-multi-menu-states'));
|
|
90
72
|
await expect(snapshot).toEqual(0);
|
|
91
73
|
});
|
|
92
74
|
});
|
|
@@ -98,10 +80,7 @@ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:o
|
|
|
98
80
|
it('01: should display section menu items correctly', async () => {
|
|
99
81
|
const menuItemWrapper = await DSMenuItems.getMenuItemsWrapper();
|
|
100
82
|
await menuItemWrapper.waitForDisplayed();
|
|
101
|
-
const snapshot = await browser.
|
|
102
|
-
DSMenuItems.snapshotPath('ds-menu-items-section-menu'),
|
|
103
|
-
menuItemWrapper,
|
|
104
|
-
);
|
|
83
|
+
const snapshot = await browser.checkSnapshot(DSMenuItems.snapshotPath('ds-menu-items-section-menu'));
|
|
105
84
|
await expect(snapshot).toEqual(0);
|
|
106
85
|
});
|
|
107
86
|
it('02: should display section menu items correctly - hover and click', async () => {
|
|
@@ -113,10 +92,7 @@ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:o
|
|
|
113
92
|
await menuItem1.click({ x: 50 });
|
|
114
93
|
await menuItem3.click({ x: 50 });
|
|
115
94
|
await mouseOver(menuItem2);
|
|
116
|
-
const snapshot = await browser.
|
|
117
|
-
DSMenuItems.snapshotPath('ds-menu-items-section-menu-states'),
|
|
118
|
-
menuItemWrapper,
|
|
119
|
-
);
|
|
95
|
+
const snapshot = await browser.checkSnapshot(DSMenuItems.snapshotPath('ds-menu-items-section-menu-states'));
|
|
120
96
|
await expect(snapshot).toEqual(0);
|
|
121
97
|
});
|
|
122
98
|
});
|
|
@@ -11,18 +11,5 @@ if (MobileDatePickerCO.isPhone()) {
|
|
|
11
11
|
const snapshot = await browser.checkSnapshot(MobileDatePickerCO.snapshotPath());
|
|
12
12
|
await expect(snapshot).toEqual(0);
|
|
13
13
|
});
|
|
14
|
-
|
|
15
|
-
// TODO uncomment when checkRegionSnapshot is ready in e2e testing library
|
|
16
|
-
// eslint-disable-next-line jest/no-commented-out-tests
|
|
17
|
-
// it('basic with focus', async () => {
|
|
18
|
-
// browser.url(MobileDatePickerCO.getUrl())
|
|
19
|
-
// MobileDatePickerCO.clickInput()
|
|
20
|
-
// const inputSize = MobileDatePickerCO.getInput().getSize()
|
|
21
|
-
// const inputLocation = MobileDatePickerCO.getInput().getLocation()
|
|
22
|
-
// expect(await browser.checkRegionSnapshot('mobiledatepicker--focus', {
|
|
23
|
-
// ...inputLocation,
|
|
24
|
-
// ...inputSize,
|
|
25
|
-
// })).toEqual(0)
|
|
26
|
-
// })
|
|
27
14
|
});
|
|
28
15
|
}
|
|
@@ -85,6 +85,8 @@ export default class ModalSlideCO extends PageObject {
|
|
|
85
85
|
static async openModalSlide() {
|
|
86
86
|
await (await this.getOpenModalSlideBtn()).click();
|
|
87
87
|
await (await this.getModalSlide()).waitForDisplayed();
|
|
88
|
+
// eslint-disable-next-line wdio/no-pause
|
|
89
|
+
await browser.pause(500); // pause to allow animation to finish
|
|
88
90
|
}
|
|
89
91
|
|
|
90
92
|
// Snapshots
|
|
@@ -47,7 +47,7 @@ if (
|
|
|
47
47
|
});
|
|
48
48
|
});
|
|
49
49
|
// Defect PUI-14981
|
|
50
|
-
describe('PUI-11417:: [NotificationBadge] Chip, Icon and Button integration - Axe-core Validation', () => {
|
|
50
|
+
describe.skip('PUI-11417:: [NotificationBadge] Chip, Icon and Button integration - Axe-core Validation', () => {
|
|
51
51
|
before('loading page', async () => {
|
|
52
52
|
const errorOnGo = await DSNotificationBadgeCO.componentCasesTest.go();
|
|
53
53
|
if (errorOnGo) throw errorOnGo;
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import DSPaginationCO from './DSPaginationCO';
|
|
2
|
+
import { axeCoreCheck } from '../helpers';
|
|
3
|
+
|
|
4
|
+
if (
|
|
5
|
+
(!browser.capabilities['ice:options'].isPhone &&
|
|
6
|
+
!browser.capabilities['ice:options'].isTablet &&
|
|
7
|
+
browser.capabilities.browserName === 'chrome') ||
|
|
8
|
+
browser.capabilities.browserName === 'Chrome'
|
|
9
|
+
) {
|
|
10
|
+
describe('PUI-17494: Pagination basic -AxeCore', () => {
|
|
11
|
+
beforeEach('loading page', async () => {
|
|
12
|
+
const errorOnGo = await DSPaginationCO.basicTest.go();
|
|
13
|
+
if (errorOnGo) throw errorOnGo;
|
|
14
|
+
});
|
|
15
|
+
it('01: should display the basic pagination closed and pass axe-core', async () => {
|
|
16
|
+
const result = await axeCoreCheck();
|
|
17
|
+
expect(result.length).toBe(0);
|
|
18
|
+
});
|
|
19
|
+
it('02: should display the dropdown menu open and pass axe-core', async () => {
|
|
20
|
+
const ddMenuButton = await DSPaginationCO.getDropDownMenuBtn();
|
|
21
|
+
await ddMenuButton.click();
|
|
22
|
+
const listbox = await DSPaginationCO.getDropDownMenu();
|
|
23
|
+
await listbox.waitForDisplayed();
|
|
24
|
+
const result = await axeCoreCheck();
|
|
25
|
+
expect(result.length).toBe(0);
|
|
26
|
+
});
|
|
27
|
+
});
|
|
28
|
+
describe('PUI-17495: Pagination Segmented -AxeCore', () => {
|
|
29
|
+
beforeEach('loading page', async () => {
|
|
30
|
+
const errorOnGo = await DSPaginationCO.segmentedPaginatorTest.go();
|
|
31
|
+
if (errorOnGo) throw errorOnGo;
|
|
32
|
+
});
|
|
33
|
+
it('01: should display the segmented pagination closed and pass axe-core', async () => {
|
|
34
|
+
const result = await axeCoreCheck();
|
|
35
|
+
expect(result.length).toBe(0);
|
|
36
|
+
});
|
|
37
|
+
it('02: should display the dropdown menu open and pass axe-core', async () => {
|
|
38
|
+
const ddMenuButton = await DSPaginationCO.getDropDownMenuBtn();
|
|
39
|
+
await ddMenuButton.click();
|
|
40
|
+
const listbox = await DSPaginationCO.getDropDownMenu();
|
|
41
|
+
await listbox.waitForDisplayed();
|
|
42
|
+
const result = await axeCoreCheck();
|
|
43
|
+
expect(result.length).toBe(0);
|
|
44
|
+
});
|
|
45
|
+
});
|
|
46
|
+
describe('PUI-17496: Pagination Per Page Selector -AxeCore', () => {
|
|
47
|
+
beforeEach('loading page', async () => {
|
|
48
|
+
const errorOnGo = await DSPaginationCO.perPageSelectorWithOptionsTest.go();
|
|
49
|
+
if (errorOnGo) throw errorOnGo;
|
|
50
|
+
});
|
|
51
|
+
it('01: should display the per page selector pagination closed and pass axe-core', async () => {
|
|
52
|
+
const result = await axeCoreCheck();
|
|
53
|
+
expect(result.length).toBe(0);
|
|
54
|
+
});
|
|
55
|
+
it('02: should display the dropdown menu open and pass axe-core', async () => {
|
|
56
|
+
const ddMenuButton = await DSPaginationCO.getPerPageSelector();
|
|
57
|
+
await ddMenuButton.click();
|
|
58
|
+
const listbox = await DSPaginationCO.getDropDownMenu();
|
|
59
|
+
await listbox.waitForDisplayed();
|
|
60
|
+
const result = await axeCoreCheck();
|
|
61
|
+
expect(result.length).toBe(0);
|
|
62
|
+
});
|
|
63
|
+
});
|
|
64
|
+
}
|
|
@@ -5,6 +5,14 @@ export default class DSPaginationCO extends PageObject {
|
|
|
5
5
|
// Desktop
|
|
6
6
|
static customPageSizeComponentTest = new Urlbuilder(PATH_E2E_PAGINATION, 'custom-page-size-test');
|
|
7
7
|
|
|
8
|
+
static segmentedPaginatorTest = new Urlbuilder(PATH_E2E_PAGINATION, 'segmented-paginator-test');
|
|
9
|
+
|
|
10
|
+
static basicTest = new Urlbuilder(PATH_E2E_PAGINATION, 'basic-test');
|
|
11
|
+
|
|
12
|
+
static perPageSelectorWithOptionsTest = new Urlbuilder(PATH_E2E_PAGINATION, 'per-page-selector-with-options-test');
|
|
13
|
+
|
|
14
|
+
static perPageSelectorWithStepTest = new Urlbuilder(PATH_E2E_PAGINATION, 'per-page-selector-with-step-test');
|
|
15
|
+
|
|
8
16
|
static getUrl(component = 'custom-page-size-test') {
|
|
9
17
|
return PageObject.getUrl(PATH_E2E_PAGINATION, component);
|
|
10
18
|
}
|
|
@@ -33,6 +41,10 @@ export default class DSPaginationCO extends PageObject {
|
|
|
33
41
|
|
|
34
42
|
static getCustomLegend = async () => $('[data-testid="custom-legend"]');
|
|
35
43
|
|
|
44
|
+
static getDropDownMenuBtn = async () => $('[data-testid="ds-pagination-paginator"]');
|
|
45
|
+
|
|
46
|
+
static getPerPageSelector = async () => $('[data-testid="ds-pagination-per-page-selector"]');
|
|
47
|
+
|
|
36
48
|
// Snapshots
|
|
37
49
|
static snapshotPath(example = 'basic') {
|
|
38
50
|
return PageObject.getSnapshotPathBuilder('PageNumber', example);
|
|
@@ -36,13 +36,15 @@ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:o
|
|
|
36
36
|
before('loading page', async () => {
|
|
37
37
|
const errorOnGo = await DSPillsV2CO.readonlyURL.go();
|
|
38
38
|
if (errorOnGo) throw errorOnGo;
|
|
39
|
+
await browser.maximizeWindow();
|
|
39
40
|
});
|
|
40
41
|
it('should correctly display the readonly pills', async () => {
|
|
42
|
+
await browser.eyesOpen();
|
|
41
43
|
const readonlyPill = await DSPillsV2CO.getIconByIndex(0);
|
|
42
44
|
const otherReadonlyPill = await DSPillsV2CO.getIconByIndex(2);
|
|
43
45
|
await readonlyPill.click();
|
|
44
46
|
await mouseOver(otherReadonlyPill);
|
|
45
|
-
const snapshot = await browser.
|
|
47
|
+
const snapshot = await browser.eyesCheckSnapshot(DSPillsV2CO.snapshotPath('pills-v2-readonly'));
|
|
46
48
|
await expect(snapshot).toEqual(0);
|
|
47
49
|
});
|
|
48
50
|
});
|
|
@@ -3,7 +3,12 @@ import { Key } from 'webdriverio';
|
|
|
3
3
|
import DSPillsV2CO from '../DSPillsV2CO';
|
|
4
4
|
import { axeCoreCheck } from '../../helpers';
|
|
5
5
|
|
|
6
|
-
if (
|
|
6
|
+
if (
|
|
7
|
+
(!browser.capabilities['ice:options'].isPhone &&
|
|
8
|
+
!browser.capabilities['ice:options'].isTablet &&
|
|
9
|
+
browser.capabilities.browserName === 'chrome') ||
|
|
10
|
+
browser.capabilities.browserName === 'Chrome'
|
|
11
|
+
) {
|
|
7
12
|
describe('PUI-14708 - PillsV2 Selection: Single Select -AxeCore', () => {
|
|
8
13
|
before('loading page', async () => {
|
|
9
14
|
const errorOnGo = await DSPillsV2CO.singleSelectMB.go();
|
|
@@ -4,37 +4,39 @@ import DSPillsV2CO from '../DSPillsV2CO';
|
|
|
4
4
|
import DSMenuButtonCO from '../../ds-menu-button/DSMenuButtonCO';
|
|
5
5
|
|
|
6
6
|
if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
7
|
+
// PUI-14703 has wrong behaviour with automation + safari. Not reproducible/Not fixable.
|
|
8
|
+
if (browser.capabilities.browserName !== 'Safari') {
|
|
9
|
+
describe('PUI-14703 - Pills v2: Selection: KB, multi', () => {
|
|
10
|
+
before('loading page', async () => {
|
|
11
|
+
const errorOnGo = await DSPillsV2CO.multiSelectMB.go();
|
|
12
|
+
if (errorOnGo) throw errorOnGo;
|
|
13
|
+
});
|
|
14
|
+
it('01: should have multi select expanded, no selection, no minipill', async () => {
|
|
15
|
+
await browser.keys(Key.Tab);
|
|
16
|
+
await browser.keys(Key.Return);
|
|
17
|
+
const pills = await DSPillsV2CO.getPills();
|
|
18
|
+
const howManyPills = pills.length;
|
|
19
|
+
const menu = await DSMenuButtonCO.getMenuRoot();
|
|
20
|
+
await expect(menu).toBeDisplayedInViewport();
|
|
21
|
+
await expect(howManyPills).toEqual(1); // The selection pill, no values pills displayed
|
|
22
|
+
});
|
|
23
|
+
it('02: should have multi select with two options selected, expanded, with two minipills', async () => {
|
|
24
|
+
await browser.keys(Key.ArrowDown);
|
|
25
|
+
await browser.keys(Key.Space);
|
|
26
|
+
await browser.keys(Key.ArrowDown);
|
|
27
|
+
await browser.keys(Key.Space);
|
|
28
|
+
const pills = await DSPillsV2CO.getPills();
|
|
29
|
+
const howManyPills = pills.length;
|
|
30
|
+
const menu = await DSMenuButtonCO.getMenuRoot();
|
|
31
|
+
const minipillLabel1 = await (await DSPillsV2CO.getPillsTextByIndex(1)).getText();
|
|
32
|
+
const minipillLabel2 = await (await DSPillsV2CO.getPillsTextByIndex(2)).getText();
|
|
33
|
+
await expect(minipillLabel1).toEqual('Bold');
|
|
34
|
+
await expect(minipillLabel2).toEqual('Underlined');
|
|
35
|
+
await expect(menu).toBeDisplayedInViewport();
|
|
36
|
+
await expect(howManyPills).toEqual(3);
|
|
37
|
+
});
|
|
35
38
|
});
|
|
36
|
-
}
|
|
37
|
-
|
|
39
|
+
}
|
|
38
40
|
describe('PUI-14702 - Pills v2: Selection: MOUSE, single', () => {
|
|
39
41
|
before('loading page', async () => {
|
|
40
42
|
const errorOnGo = await DSPillsV2CO.singleSelectMB.go();
|