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.
Files changed (183) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/ds-accordion/DSAccordionCO.js +15 -11
  3. package/ds-accordion/role/DSAccordion.role-heading.func.spec.js +21 -0
  4. package/ds-accordion/scrollable-content/DSAccordion.scrollable-content.visual.spec.js +42 -0
  5. package/ds-accordion/slots/DSAccordion.slots.func.spec.js +12 -0
  6. package/ds-accordion/wrapLabel/DSAccordion.wrap-label.visual.spec.js +20 -0
  7. package/ds-autocomplete/DSAutocompleteCO.js +18 -0
  8. package/ds-autocomplete/slots/DSAutocomplete.slots.axe-core.func.spec.js +20 -0
  9. package/ds-autocomplete/slots/DSAutocomplete.slots.func.spec.js +45 -0
  10. package/ds-autocomplete/slots/DSAutocomplete.slots.visual.spec.js +21 -0
  11. package/ds-banner/DSBanner.func.spec.js +4 -60
  12. package/ds-banner/DSBanner.text-resize.visual.spec.js +15 -0
  13. package/ds-banner/DSBanner.text-wrapping.visual.spec.js +31 -0
  14. package/ds-banner/DSBanner.visual.spec.js +0 -29
  15. package/ds-banner/DSBannerCO.js +24 -2
  16. package/ds-banner/aria-and-role/DSBanner.aria-and-role.func.spec.js +63 -0
  17. package/ds-banner/slots/DSBanner.slots.func.spec.js +65 -0
  18. package/ds-banner/slots/DSBanner.slots.visual.spec.js +17 -0
  19. package/ds-breadcrumb/DSBreadcrumb.func.spec.js +5 -3
  20. package/ds-button-v3/DSButtonV3.type-submit.func.spec.js +28 -0
  21. package/ds-button-v3/DSButtonV3.visual.spec.js +7 -2
  22. package/ds-button-v3/DSButtonV3CO.js +2 -0
  23. package/ds-card-navigation/CardNavigationCO.js +56 -0
  24. package/ds-card-navigation/DSCardNavigation.func.spec.js +50 -1
  25. package/ds-card-navigation/DSCardNavigation.slots.func.spec.js +127 -0
  26. package/ds-card-navigation/DSCardNavigation.slots.visual.spec.js +26 -0
  27. package/ds-card-navigation/DSCardNavigation.visual.spec.js +16 -0
  28. package/ds-card-v3/DSCardV3CO.js +20 -0
  29. package/ds-card-v3/drag-n-drop/DSCardV3.DnD.visual.spec.js +1 -1
  30. package/ds-card-v3/slots/DSCardV3.slots.axe-core.spec.js +22 -0
  31. package/ds-card-v3/slots/DSCardV3.slots.func.spec.js +36 -0
  32. package/ds-card-v3/slots/DSCardV3.slots.visual.spec.js +18 -0
  33. package/ds-chat/DSChat.func.spec.js +3 -2
  34. package/ds-chat/DSChat.visual.spec.js +3 -2
  35. package/ds-chat/DSChatCO.js +0 -8
  36. package/ds-chat/floatingbutton/DSChat-floating-button.visual.spec.js +1 -1
  37. package/ds-chip/DSChipCO.js +24 -0
  38. package/ds-chip/slots/DSChip.slots.axe-core.spec.js +17 -0
  39. package/ds-chip/slots/DSChip.slots.func.spec.js +39 -0
  40. package/ds-chip/slots/DSChip.slots.visual.spec.js +17 -0
  41. package/ds-circular-indeterminate-indicator/DSCircularIndicator.visual.spec.js +2 -1
  42. package/ds-controlled-form/ds-combobox/creatable/DSCombobox.creatable.visual.spec.js +6 -4
  43. package/ds-controlled-form/ds-controlled-large-input-text/DSLargeInputTextCO.js +5 -0
  44. package/ds-controlled-form/ds-controlled-large-input-text/aria-disabled/DSLargeInputText.aria-disabled.func.spec.js +19 -0
  45. package/ds-controlled-form/ds-controlled-radio-group/DSControlledRadioGroup.axe-core.func.spec.js +31 -0
  46. package/ds-controlled-form/react-hook-form/ReactHook.visual.spec.js +1 -0
  47. package/ds-data-table-async/DSDataTableCO.js +173 -108
  48. package/ds-data-table-async/basic/DSDataTable.basic.visual.spec.js +1 -45
  49. package/ds-data-table-async/components/FilterBarCO.js +8 -0
  50. package/ds-data-table-async/components/FiltersCO.js +12 -0
  51. package/ds-data-table-async/components/HeaderCO.js +5 -0
  52. package/ds-data-table-async/components/PaginationNavCO.js +1 -1
  53. package/ds-data-table-async/date-filters/DSDataTable.date-switcher.single.func.spec.js +1 -1
  54. package/ds-data-table-async/date-filters/DSDataTable.date-switcher.visual.spec.js +18 -8
  55. package/ds-data-table-async/dnd/DSDataTable.dnd.visual.spec.js +3 -1
  56. package/ds-data-table-async/dnd/DSDataTable.dnd_fixed-width.visual.spec.js +33 -0
  57. package/ds-data-table-async/empty-state/DSDataTable.empty-state.visual.spec.js +13 -0
  58. package/ds-data-table-async/filters/DSDataTable.filters-creatable.func.spec.js +5 -5
  59. package/ds-data-table-async/filters/DSDataTable.filters-creatable.visual.spec.js +1 -0
  60. package/ds-data-table-async/filters/DSDataTable.filters.visual.spec.js +18 -1
  61. package/ds-data-table-async/filters/DSDataTable.free-text-search.keyboard.func.spec.js +242 -0
  62. package/ds-data-table-async/filters/DSDataTable.free-text-search.visual.spec.js +54 -0
  63. package/ds-data-table-async/filters/DSDataTable.text-filters.func.spec.js +3 -3
  64. package/ds-data-table-async/menubutton/DSDataTable.MenuButton.keyboard.func.spec.js +56 -0
  65. package/ds-data-table-async/menubutton/DSDataTable.MenuButton.mouse.func.spec.js +55 -0
  66. package/ds-data-table-async/menubutton/DSDataTable.MenuButton.visual.spec.js +27 -0
  67. package/ds-data-table-async/more/DSDataTable.headers.visual.spec.js +0 -63
  68. package/ds-data-table-async/select/DSDataTable.select.func.spec.js +1 -1
  69. package/ds-data-table-async/slots/DSDataTable.slots.func.spec.js +40 -0
  70. package/ds-data-table-async/slots/DSDataTable.slots.visual.spec.js +19 -0
  71. package/ds-data-table-async/sorting/DSDataTable.sorting.visual.spec.js +118 -0
  72. package/ds-dataviz/DSDataViz.axis.visual.spec.js +2 -1
  73. package/ds-dataviz/DSDataViz.scroll.visual.spec.js +1 -0
  74. package/ds-dataviz/DSDataViz.ticks.visual.spec.js +2 -1
  75. package/ds-dialog/DSDialog.cases.visual.spec.js +3 -4
  76. package/ds-dialog/DSDialog.visual.spec.js +7 -14
  77. package/ds-dialog/DSDialogCO.js +5 -13
  78. package/ds-dialog/axe-core/DSDialog.error.axe-core.func.spec.js +24 -0
  79. package/ds-dialog/axe-core/DSDialog.info.axe-core.func.spec.js +24 -0
  80. package/ds-dialog/axe-core/DSDialog.scroll-body.axe-core.func.spec.js +24 -0
  81. package/ds-dialog/axe-core/DSDialog.success.axe-core.func.spec.js +24 -0
  82. package/ds-dialog/axe-core/DSDialog.warning.axe-core.spec.func.js +24 -0
  83. package/ds-dropdownmenu-v2/DSDDMenuV2.visual.spec.js +5 -5
  84. package/ds-form-combobox-multi/DSComboboxMultiCO.js +96 -1
  85. package/ds-form-combobox-multi/aria-disabled/DSComboboxMulti.aria-disabled.visual.spec.js +7 -3
  86. package/ds-form-combobox-multi/disabled/DSComboboxMulti.disabled.mouse.func.spec.js +25 -0
  87. package/ds-form-combobox-multi/menu-position/DSComboboxMulti.menu-position.visual.spec.js +42 -0
  88. package/ds-form-combobox-multi/slots/DSComboboxMulti.slots.func.spec.js +100 -0
  89. package/ds-form-combobox-multi/slots/DSComboboxMulti.slots.visual.spec.js +51 -0
  90. package/ds-form-combobox-single/DSComboboxSingleCO.js +97 -1
  91. package/ds-form-combobox-single/disabled/DSComboboxSingle.disabled.mouse.func.spec.js +25 -0
  92. package/ds-form-combobox-single/menu-position/DSComboboxSingle.menu-position.visual.spec.js +93 -0
  93. package/ds-form-combobox-single/slots/DSComboboxSingle.slots.func.spec.js +100 -0
  94. package/ds-form-combobox-single/slots/DSComboboxSingle.slots.visual.spec.js +53 -0
  95. package/ds-form-date-range-picker/aria-disabled/DateRangePicker.applyAriaDisabled.keyboard-nav.func.spec.js +31 -5
  96. package/ds-form-date-time-picker/DSControlledDateTimePickerCO.js +7 -5
  97. package/ds-form-date-time-picker/date-input/DateInput.keyboard-nav.func.spec.js +2 -2
  98. package/ds-form-date-time-picker/date-time-full/DateTimeFull.applyAriaDisabled.axe-core.func.spec.js +1 -1
  99. package/ds-form-date-time-picker/date-time-full/DateTimeFull.axe-core.func.spec.js +25 -0
  100. package/ds-form-date-time-picker/date-time-full/DateTimePicker.applyAriaDisabled.keyboard-nav.func.spec.js +6 -1
  101. package/ds-form-date-time-picker/date-time-full/DateTimePicker.func.spec.js +32 -2
  102. package/ds-form-date-time-picker/date-time-full/DateTimePicker.keyboard-nav.func.spec.js +6 -1
  103. package/ds-form-date-time-picker/date-time-full/DateTimePicker.readOnly.keyboard-nav.func.spec.js +6 -1
  104. package/ds-form-date-time-picker/date-time-input/DateTimeInput.applyAriaDisabled.keyboard-nav.func.spec.js +40 -4
  105. package/ds-form-date-time-picker/showcase/DateTimePicker.applyAriaDisabled-showcase.visual.spec.js +2 -2
  106. package/ds-form-date-time-picker/showcase/DateTimePicker.readOnly-showcase.visual.spec.js +2 -2
  107. package/ds-form-layout-blocks/form-layout-block-item/DSFormLayoutBlockItem.axe-core.func.spec.js +4 -1
  108. package/ds-form-layout-blocks/form-layout-block-item/DSFormLayoutBlockItemCO.js +4 -0
  109. package/ds-form-native-select/NativeSelect.axe-core.func.spec.js +57 -0
  110. package/ds-form-native-select/NativeSelectCO.js +35 -0
  111. package/{ds-toggle → ds-form-toggle}/DSToggle.axe-core.func.spec.js +6 -2
  112. package/{ds-toggle → ds-form-toggle}/DSToggle.func.spec.js +13 -8
  113. package/{ds-toggle → ds-form-toggle}/DSToggle.visual.spec.js +2 -2
  114. package/{ds-toggle → ds-form-toggle}/DSToggleCO.js +1 -1
  115. package/ds-global-header/GlobalHeader.axe-core.func.spec.js +13 -0
  116. package/ds-global-header/GlobalHeaderCO.js +2 -0
  117. package/{ds-controlled-form → ds-hooks}/useMask/Number/UseNumberMask.func.spec.js +25 -12
  118. package/{ds-controlled-form → ds-hooks}/useMask/Number/UseNumberMask.visual.spec.js +4 -1
  119. package/{ds-controlled-form → ds-hooks}/useMask/Phone/UsePhoneMask.func.spec.js +1 -1
  120. package/{ds-controlled-form → ds-hooks}/useMask/Phone/UsePhoneMask.visual.spec.js +1 -1
  121. package/{ds-controlled-form → ds-hooks}/useMask/ReackHookFormWithMask/ReactHookFormWithMask.func.spec.js +1 -1
  122. package/{ds-controlled-form → ds-hooks}/useMask/ReackHookFormWithMask/ReactHookFormWithMask.visual.spec.js +1 -1
  123. package/{ds-controlled-form → ds-hooks}/useMask/RegExp/UseRegExpMask.func.spec.js +1 -1
  124. package/{ds-controlled-form → ds-hooks}/useMask/SSN/UseSsnMask.func.spec.js +1 -1
  125. package/{ds-controlled-form → ds-hooks}/useMask/ZipCode/UseZipCodeMask.func.spec.js +1 -1
  126. package/ds-indeterminate-progress-indicator/DSIndetermintateProgressIndicator.axe-core.func.spec.js +31 -0
  127. package/ds-menu-button/DSMenuButtonCO.js +2 -0
  128. package/ds-menu-button/basic/DSMenuButton.basic.func.spec.js +28 -0
  129. package/ds-menu-button/multiselect/DSMenuButton.axe-core.multiselect.func.spec.js +6 -1
  130. package/ds-menu-button/singleSelect/DSMenuButton.axe-core.singleSelect.func.spec.js +6 -1
  131. package/ds-menu-button/submenu/DSMenuButton.axe-core.subMenu.func.spec.js +7 -2
  132. package/ds-menu-item/DSMenuItems.visual.spec.js +8 -32
  133. package/ds-mobile/MobileDatePicker/MobileDatePicker.visual.spec.js +0 -13
  134. package/ds-modal-slide/ModalSlideCO.js +2 -0
  135. package/ds-notification-badge/DSNotificationBadge.axe-core.func.spec.js +1 -1
  136. package/ds-pagination/DSPagination.axe-core.func.spec.js +64 -0
  137. package/ds-pagination/DSPaginationCO.js +12 -0
  138. package/ds-pills-v2/DSPills.visual.spec.js +3 -1
  139. package/ds-pills-v2/selection/DSPills.axe-core.func.spec.js +6 -1
  140. package/ds-pills-v2/selection/DSPills.func.spec.js +32 -30
  141. package/ds-progress-indicator/DSProgressIndicator.axe-core.func.spec.js +31 -0
  142. package/ds-progress-indicator/DSProgressIndicator.func.spec.js +8 -3
  143. package/ds-progress-indicator/DSProgressIndicator.visual.spec.js +12 -2
  144. package/ds-progress-indicator/DSProgressIndicatorCO.js +5 -3
  145. package/ds-query-builder/DSQueryBuilder.visual.spec.js +10 -3
  146. package/ds-read-more/DSReadMore.func.spec.js +0 -58
  147. package/ds-read-more/DSReadMore.keyboard-nav.func.spec.js +66 -0
  148. package/ds-read-more/DSReadMore.slots.func.spec.js +58 -0
  149. package/ds-read-more/DSReadMore.slots.visual.spec.js +23 -0
  150. package/ds-read-more/DSReadMore.visual.spec.js +41 -17
  151. package/ds-read-more/DSReadMore.width-change.visual.spec.js +85 -0
  152. package/ds-read-more/DSReadMore.with-tooltip.func.spec.js +63 -0
  153. package/ds-read-more/DSReadMoreCO.js +20 -0
  154. package/ds-shuttle-v2/Dnd/DSShuttleV2.DnD.visual.spec.js +3 -0
  155. package/ds-shuttle-v2/basic/DSShuttleV2.keyboard.func.spec.js +0 -79
  156. package/ds-shuttle-v2/extra/DSShuttleV2.extra.func.spec.js +6 -2
  157. package/ds-shuttle-v2/extra/DSShuttleV2.extra.visual.spec.js +21 -0
  158. package/ds-shuttle-v2/filtering/DSShuttleV2.filter.func.spec.js +8 -3
  159. package/ds-shuttle-v2/filtering/DSShuttleV2.filter.kb.func.spec.js +43 -0
  160. package/ds-shuttle-v2/items/DSShuttleV2.items.func.spec.js +3 -2
  161. package/ds-shuttle-v2/items/DSShuttleV2.items.kb.func.spec.js +1 -1
  162. package/ds-shuttle-v2/load-more/DSShuttleV2.load-more.keyboard.func.spec.js +61 -0
  163. package/ds-slider-v2/DSSliderV2.extra.func.spec.js +44 -0
  164. package/ds-slider-v2/DSSliderV2.func.spec.js +98 -0
  165. package/ds-slider-v2/DSSliderV2CO.js +8 -0
  166. package/ds-svg/DSSvg.axe-core.func.spec.js +32 -0
  167. package/ds-svg/DSSvgCO.js +2 -3
  168. package/ds-tabs/DSTabs.onTabChange.func.spec.js +33 -0
  169. package/ds-tabs/DSTabsCO.js +29 -1
  170. package/ds-tabs/slots/DSTabs.slots.func.spec.js +77 -0
  171. package/ds-tabs/slots/DSTabs.slots.visual.spec.js +49 -0
  172. package/ds-tabs/with-carousel/DSTabs.with-carousel.visual.spec.js +5 -4
  173. package/ds-tooltip-v3/DSTooltipV3CO.js +6 -2
  174. package/ds-treeview/DSTreeViewCO.js +8 -0
  175. package/ds-treeview/dragAndDrop/TreeView-dnd.func.spec.js +0 -50
  176. package/ds-treeview/dragAndDrop/TreeView-dnd_mouse.func.spec.js +61 -0
  177. package/package.json +188 -187
  178. package/paths.js +17 -1
  179. package/ds-dialog/DSDialog.smoke.spec.js +0 -133
  180. package/ds-slider-v2/DSSliderV2.skipped.js +0 -46
  181. /package/ds-form-combobox-multi/iframe/{DSComboboxMulti.insideIframe.func.spec.js → DSComboboxMulti.insideIframe.visual.spec.js} +0 -0
  182. /package/{ds-controlled-form → ds-hooks}/useMask/useMaskCO.js +0 -0
  183. /package/ds-indeterminate-progress-indicator/{DSIndetermintateProgressIndicator.func.spec.js → DSIndetermintateProgressIndicator.func.spec copy.js} +0 -0
@@ -0,0 +1,77 @@
1
+ /* eslint-disable no-plusplus */
2
+ /* eslint-disable max-lines */
3
+ import DSTabsCO from '../DSTabsCO';
4
+
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
+ ) {
11
+ describe('PUI-17203 - Slots: Basic -Func', () => {
12
+ before('loading page', async () => {
13
+ const errorOnGo = await DSTabsCO.slotsBasic.go();
14
+ if (errorOnGo) throw errorOnGo;
15
+ });
16
+ it('01: should have custom aria-* for each slot', async () => {
17
+ const tabContainer = await (await DSTabsCO.getTabContainerSlotByIndex()).getAttribute('aria-label');
18
+ const tabButton = await (await DSTabsCO.getTabButtonSlotByIndex()).getAttribute('aria-label');
19
+ const tabList = await (await DSTabsCO.getTabListSlotByIndex()).getAttribute('aria-label');
20
+ const tabPanel = await (await DSTabsCO.getTabPanelSlotByIndex()).getAttribute('aria-label');
21
+ await expect(tabContainer).toBe('tabs container aria');
22
+ await expect(tabButton).toBe('tab button aria');
23
+ await expect(tabList).toBe('tab list aria');
24
+ await expect(tabPanel).toBe('tab panel aria');
25
+ });
26
+ it('02: should have custom data-* for each slot', async () => {
27
+ const tabContainer = await (await DSTabsCO.getTabContainerSlotByIndex()).getAttribute('data-testid');
28
+ const tabButton = await (await DSTabsCO.getTabButtonSlotByIndex()).getAttribute('data-testid');
29
+ const tabList = await (await DSTabsCO.getTabListSlotByIndex()).getAttribute('data-testid');
30
+ const tabPanel = await (await DSTabsCO.getTabPanelSlotByIndex()).getAttribute('data-testid');
31
+ await expect(tabContainer).toBe('tabs container data');
32
+ await expect(tabButton).toBe('tab button data');
33
+ await expect(tabList).toBe('tab list data');
34
+ await expect(tabPanel).toBe('tab panel data');
35
+ });
36
+ });
37
+
38
+ describe('PUI-17204 - Slots: Carousel -Func', () => {
39
+ before('loading page', async () => {
40
+ const errorOnGo = await DSTabsCO.slotsCarousel.go();
41
+ if (errorOnGo) throw errorOnGo;
42
+ });
43
+ it('01: should have custom aria-* and data-* for chevron right slot', async () => {
44
+ const tabChevronRightAria = await (await DSTabsCO.getChevronRightParentSlotByIndex()).getAttribute('aria-label');
45
+ const tabChevronRightData = await (await DSTabsCO.getChevronRightParentSlotByIndex()).getAttribute('data-testid');
46
+ await expect(tabChevronRightAria).toBe('carousel but right aria');
47
+ await expect(tabChevronRightData).toBe('carousel but right data');
48
+ });
49
+ it('02: should have custom aria-* and data-* for chevron left slot', async () => {
50
+ const chevronRight = await DSTabsCO.getChevronRightParentSlotByIndex();
51
+ await chevronRight.click();
52
+ const tabChevronLeftAria = await (await DSTabsCO.getChevronLeftParentSlotByIndex()).getAttribute('aria-label');
53
+ const tabChevronLeftData = await (await DSTabsCO.getChevronLeftParentSlotByIndex()).getAttribute('data-testid');
54
+ await expect(tabChevronLeftAria).toBe('carousel but left aria');
55
+ await expect(tabChevronLeftData).toBe('carousel but left data');
56
+ });
57
+ });
58
+
59
+ describe('PUI-17205 - Slots: Secondary -Func', () => {
60
+ before('loading page', async () => {
61
+ const errorOnGo = await DSTabsCO.slotsSecondary.go();
62
+ if (errorOnGo) throw errorOnGo;
63
+ });
64
+ it('01: should have custom aria-* for each slot', async () => {
65
+ const subtabButton = await (await DSTabsCO.getSubtabButtonSlotByIndex()).getAttribute('aria-label');
66
+ const subtabsList = await (await DSTabsCO.getSubtabsListSlotByIndex()).getAttribute('aria-label');
67
+ await expect(subtabsList).toBe('subtab list aria');
68
+ await expect(subtabButton).toBe('subtab button aria');
69
+ });
70
+ it('02: should have custom data-* for each slot', async () => {
71
+ const subtabButton = await (await DSTabsCO.getSubtabButtonSlotByIndex()).getAttribute('data-testid');
72
+ const subtabsList = await (await DSTabsCO.getSubtabsListSlotByIndex()).getAttribute('data-testid');
73
+ await expect(subtabsList).toBe('subtab list data');
74
+ await expect(subtabButton).toBe('subtab button data');
75
+ });
76
+ });
77
+ }
@@ -0,0 +1,49 @@
1
+ /* eslint-disable max-lines */
2
+ import { Key } from 'webdriverio';
3
+ import DSTabsCO from '../DSTabsCO';
4
+
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
+ ) {
11
+ describe('PUI-17206 - Slots: Basic -Visual', () => {
12
+ before('loading page', async () => {
13
+ const errorOnGo = await DSTabsCO.slotsBasic.go();
14
+ if (errorOnGo) throw errorOnGo;
15
+ });
16
+ it('01: should display basic tabs with customized colors for the slots', async () => {
17
+ await (await DSTabsCO.getTabListSlotByIndex()).waitForDisplayed();
18
+ await browser.keys(Key.Tab);
19
+ const snapshot = await browser.checkSnapshot(DSTabsCO.snapshotPath('tab-basic-slots'));
20
+ await expect(snapshot).toEqual(0);
21
+ });
22
+ });
23
+
24
+ describe('PUI-17208 - Slots: Carousel -Visual', () => {
25
+ before('loading page', async () => {
26
+ const errorOnGo = await DSTabsCO.slotsCarousel.go();
27
+ if (errorOnGo) throw errorOnGo;
28
+ });
29
+ it('01: should display basic tabs with customized colors for the slots', async () => {
30
+ await (await DSTabsCO.getTabListSlotByIndex()).waitForDisplayed();
31
+ await browser.keys(Key.Tab);
32
+ const snapshot = await browser.checkSnapshot(DSTabsCO.snapshotPath('tab-carousel-slots'));
33
+ await expect(snapshot).toEqual(0);
34
+ });
35
+ });
36
+
37
+ describe('PUI-17209 - Slots: Secondary -Visual', () => {
38
+ before('loading page', async () => {
39
+ const errorOnGo = await DSTabsCO.slotsSecondary.go();
40
+ if (errorOnGo) throw errorOnGo;
41
+ });
42
+ it('01: should display basic tabs with customized colors for the slots', async () => {
43
+ await (await DSTabsCO.getSubtabsListSlotByIndex()).waitForDisplayed();
44
+ await browser.keys(Key.Tab);
45
+ const snapshot = await browser.checkSnapshot(DSTabsCO.snapshotPath('tab-secondary-slots'));
46
+ await expect(snapshot).toEqual(0);
47
+ });
48
+ });
49
+ }
@@ -39,19 +39,20 @@ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:o
39
39
  if (errorOnGo) throw errorOnGo;
40
40
  });
41
41
  it('01: should select last tab ', async () => {
42
+ await browser.maximizeWindow();
43
+ await browser.eyesOpen();
42
44
  await DSTabsCO.carouselNav('right', 10);
43
-
44
45
  const theEndTab = await DSTabsCO.getTabByName('The end');
45
46
  await theEndTab.click();
46
- const snapshot = await browser.checkSnapshot(DSTabsCO.snapshotPath('tab-carousel-last-tab'));
47
+ const snapshot = await browser.eyesCheckSnapshot(DSTabsCO.snapshotPath('tab-carousel-last-tab'));
47
48
  await expect(snapshot).toEqual(0);
48
49
  });
49
50
  it('02: should select another tab and the focus and selected indicator should be on the selected tab', async () => {
51
+ await browser.eyesOpen();
50
52
  await DSTabsCO.carouselNav('left', 1);
51
-
52
53
  const tab = await DSTabsCO.getTabByName('Just to make it bigger');
53
54
  await tab.click();
54
- const snapshot = await browser.checkSnapshot(DSTabsCO.snapshotPath('tab-carousel-selected-tab'));
55
+ const snapshot = await browser.eyesCheckSnapshot(DSTabsCO.snapshotPath('tab-carousel-selected-tab'));
55
56
  await expect(snapshot).toEqual(0);
56
57
  });
57
58
  });
@@ -1,8 +1,8 @@
1
- import { PATH_E2E_TOOLTIP_V3, PATH_TOOLTIP_V3 } from '../paths';
1
+ import { PATH_E2E_TOOLTIP_V3 } from '../paths';
2
2
  import { PageObject, Urlbuilder } from '../helpers';
3
3
 
4
4
  export default class DSTooltipV3CO extends PageObject {
5
- static longWord = new Urlbuilder(PATH_TOOLTIP_V3, 'long');
5
+ static longWord = new Urlbuilder(PATH_E2E_TOOLTIP_V3, 'long-test');
6
6
 
7
7
  static controlledTestUrl = new Urlbuilder(PATH_E2E_TOOLTIP_V3, 'controlled-test');
8
8
 
@@ -17,4 +17,8 @@ export default class DSTooltipV3CO extends PageObject {
17
17
  static async getTooltip() {
18
18
  return $('[data-testid="ds-tooltip-v3-tooltip-text-wrapper"]');
19
19
  }
20
+
21
+ static async getTooltipContentByIndex(index = 0) {
22
+ return $$('[data-testid="ds-tooltip-v3-tooltip-text-wrapper"] [data-testid="ds-typography-element"]')[index];
23
+ }
20
24
  }
@@ -201,6 +201,10 @@ export default class DSTreeViewCO extends PageObject {
201
201
  return (await this.getRows())[index];
202
202
  }
203
203
 
204
+ static async getRowContent(index) {
205
+ return $$('[data-testid="tree-item-content"]')[index];
206
+ }
207
+
204
208
  static async getDraggedItem() {
205
209
  return $('[data-testid="dragged-item"]');
206
210
  }
@@ -304,6 +308,10 @@ export default class DSTreeViewCO extends PageObject {
304
308
  value: '\uE024',
305
309
  pause: 1000,
306
310
  },
311
+ {
312
+ type: 'pause',
313
+ duration: 800,
314
+ },
307
315
  ],
308
316
  },
309
317
  ]);
@@ -51,54 +51,4 @@ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:o
51
51
  });
52
52
  });
53
53
  }
54
- describe('PUI-11320 - TreeView, Basic Drag and Drop Functionality', () => {
55
- before(async () => {
56
- const errorOnGo = await DSTreeViewCO.dragAndDrop.go();
57
- if (errorOnGo) throw errorOnGo;
58
- });
59
- it('01: drag and drop in the same position - parent item', async () => {
60
- const firstRow = await DSTreeViewCO.getRow(0);
61
- const dragHandleFirstRow = await DSTreeViewCO.getDragHandle(0);
62
- await dragHandleFirstRow.dragAndDrop(firstRow);
63
- await expect(firstRow).toHaveText(expect.stringContaining('Parent. id: 1'));
64
- });
65
- it('02: drag and drop in the same position - child item', async () => {
66
- const expandableBtnFirstRow = await DSTreeViewCO.getToggleBtn(0);
67
- await expandableBtnFirstRow.click();
68
- const firstChildRow = await DSTreeViewCO.getRow(1);
69
- const dragHandleFirstChild = await DSTreeViewCO.getDragHandle(1);
70
- await dragHandleFirstChild.dragAndDrop(firstChildRow);
71
- await expect(firstChildRow).toHaveText(expect.stringContaining('Child of 1. id: 2'));
72
- });
73
- it('03: drag a parent and drop it in another parent', async () => {
74
- const parentId4 = await DSTreeViewCO.getRow(3);
75
- const dragHandleParentId1 = await DSTreeViewCO.getDragHandle(0);
76
- await dragHandleParentId1.dragAndDrop(parentId4);
77
- await DSTreeViewCO.expandCollapseAll();
78
- const firstRow = await DSTreeViewCO.getRow(0);
79
- await expect(firstRow).toHaveText(expect.stringContaining('Parent. id: 4'));
80
- });
81
- it('04: drag a child of a parent and drop it in another parent with no children', async () => {
82
- const dragHandleChildOfParent1 = await DSTreeViewCO.getDragHandle(5);
83
- const parentId7 = await DSTreeViewCO.getRow(8);
84
- await dragHandleChildOfParent1.dragAndDrop(parentId7);
85
- await browser.pause(300);
86
- await DSTreeViewCO.expandCollapseAll();
87
- const sixthRow = await DSTreeViewCO.getRow(6);
88
- const sixthRowValue = await sixthRow.getText();
89
- await expect(sixthRowValue).toEqual('Child of 1. Also parent. id: 3');
90
- });
91
- it('05: drag a parent and drop it into last row', async () => {
92
- const parentId8 = await DSTreeViewCO.getRow(9);
93
- const dragHandleParentId4 = await DSTreeViewCO.getDragHandle(0);
94
- await dragHandleParentId4.dragAndDrop(parentId8);
95
- await browser.pause(500);
96
- const expandableBtnLastRow = await DSTreeViewCO.getToggleBtn(1);
97
- await expandableBtnLastRow.click();
98
- await DSTreeViewCO.expandCollapseAll();
99
- const parentId4 = await DSTreeViewCO.getRow(5);
100
- const parentId4Value = await parentId4.getText();
101
- await expect(parentId4Value).toEqual('Parent. id: 4');
102
- });
103
- });
104
54
  }
@@ -0,0 +1,61 @@
1
+ /* eslint-disable wdio/no-pause */
2
+ import DSTreeViewCO from '../DSTreeViewCO';
3
+
4
+ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
5
+ describe('PUI-11320 - TreeView, Basic Drag and Drop Functionality', () => {
6
+ before(async () => {
7
+ const errorOnGo = await DSTreeViewCO.dragAndDrop.go();
8
+ if (errorOnGo) throw errorOnGo;
9
+ });
10
+ it('01: drag and drop in the same position - parent item', async () => {
11
+ const firstRow = await DSTreeViewCO.getRowContent(0);
12
+ const dragHandleFirstRow = await DSTreeViewCO.getDragHandle(0);
13
+ await dragHandleFirstRow.dragAndDrop(firstRow, { duration: 1000 });
14
+ await expect(firstRow).toHaveText(expect.stringContaining('Parent. id: 1'));
15
+ });
16
+ it('02: drag and drop in the same position - child item', async () => {
17
+ const expandableBtnFirstRow = await DSTreeViewCO.getToggleBtn(0);
18
+ await expandableBtnFirstRow.click();
19
+ const firstChildRow = await DSTreeViewCO.getRowContent(1);
20
+ const dragHandleFirstChild = await DSTreeViewCO.getDragHandle(1);
21
+ await dragHandleFirstChild.dragAndDrop(firstChildRow, { duration: 1000 });
22
+ await expect(firstChildRow).toHaveText(expect.stringContaining('Child of 1. id: 2'));
23
+ });
24
+ it('03: drag a parent and drop it in another parent', async () => {
25
+ const parentId4 = await DSTreeViewCO.getRowContent(3);
26
+ const dragHandleParentId1 = await DSTreeViewCO.getDragHandle(0);
27
+ await dragHandleParentId1.dragAndDrop(parentId4, { duration: 1000 });
28
+ await browser.pause(300);
29
+ await DSTreeViewCO.expandCollapseAll();
30
+ await browser.pause(300);
31
+ const firstRow = await DSTreeViewCO.getRowContent(0);
32
+ await expect(firstRow).toHaveText(expect.stringContaining('Parent. id: 4'));
33
+ });
34
+ it('04: drag a child of a parent and drop it in another parent with no children', async () => {
35
+ const dragHandleChildOfParent1 = await DSTreeViewCO.getDragHandle(5);
36
+ const parentId7 = await DSTreeViewCO.getRowContent(8);
37
+ await dragHandleChildOfParent1.dragAndDrop(parentId7, { duration: 1000 });
38
+ await browser.pause(300);
39
+ await DSTreeViewCO.expandCollapseAll();
40
+ await browser.pause(300);
41
+
42
+ const sixthRow = await DSTreeViewCO.getRowContent(6);
43
+ const sixthRowValue = await sixthRow.getText();
44
+ await expect(sixthRowValue).toEqual('Child of 1. Also parent. id: 3');
45
+ });
46
+ it('05: drag a parent and drop it into last row', async () => {
47
+ const parentId8 = await DSTreeViewCO.getRowContent(9);
48
+ const dragHandleParentId4 = await DSTreeViewCO.getDragHandle(0);
49
+ await dragHandleParentId4.click();
50
+ await dragHandleParentId4.dragAndDrop(parentId8, { duration: 1000 });
51
+ await DSTreeViewCO.expandCollapseAll();
52
+ await DSTreeViewCO.expandCollapseAll();
53
+ await browser.pause(300);
54
+
55
+ await $('span*=Parent. id: 4').waitForDisplayed({ timeout: 5000 });
56
+ const parentId4 = await DSTreeViewCO.getRowContent(5);
57
+ const parentId4Value = await parentId4.getText();
58
+ await expect(parentId4Value).toEqual('Parent. id: 4');
59
+ });
60
+ });
61
+ }