dimsum-e2e-tests 3.22.0-next.36

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 (684) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/DSStorybook/DSStorybook.smoke.deprecado.js +33 -0
  3. package/DSStorybook/DSStorybookCO.js +47 -0
  4. package/DSStorybook/baseline.js +2123 -0
  5. package/DSStorybook/print.js +25 -0
  6. package/PageObject.js +25 -0
  7. package/ds-accessibility/ds-skip-to/DSSkipTo.visual.spec.js +24 -0
  8. package/ds-accessibility/ds-skip-to/DSSkipToCO.js +16 -0
  9. package/ds-accordion/DSAccordion.axe-core.func.spec.js +121 -0
  10. package/ds-accordion/DSAccordion.func.spec.js +137 -0
  11. package/ds-accordion/DSAccordion.visual.spec.js +160 -0
  12. package/ds-accordion/DSAccordionCO.js +86 -0
  13. package/ds-apppicker/DSAppPicker.smoke.spec.js +52 -0
  14. package/ds-apppicker/DSAppPickerCO.js +51 -0
  15. package/ds-apppicker/basic/DSAppPicker.basic.axe-core.spec.js +38 -0
  16. package/ds-apppicker/basic/DSAppPicker.basic.func.spec.js +43 -0
  17. package/ds-apppicker/basic/DSAppPicker.basic.keyboard-nav.func.spec.js +50 -0
  18. package/ds-apppicker/basic/DSAppPicker.basic.visual.spec.js +32 -0
  19. package/ds-apppicker/closeAfterSelection/DSAppPicker.closeAfterSelection.axe-core.spec.js +32 -0
  20. package/ds-apppicker/closeAfterSelection/DSAppPicker.closeAfterSelection.func.spec.js +31 -0
  21. package/ds-apppicker/maxHeight/DSAppPicker.max-height.visual.spec.js +60 -0
  22. package/ds-apppicker/minHeight/DSAppPicker.minHeight.visual.spec.js +28 -0
  23. package/ds-apppicker/truncation/DSAppPicker.truncation.visual.spec.js +46 -0
  24. package/ds-autocomplete/DSAutocomplete.axe-core.func.spec.js +45 -0
  25. package/ds-autocomplete/DSAutocomplete.func.spec.js +63 -0
  26. package/ds-autocomplete/DSAutocompleteCO.js +36 -0
  27. package/ds-banner/DSBanner.axe-core.func.spec.js +79 -0
  28. package/ds-banner/DSBanner.func.spec.js +71 -0
  29. package/ds-banner/DSBanner.visual.spec.js +116 -0
  30. package/ds-banner/DSBannerCO.js +61 -0
  31. package/ds-breadcrumb/DSBreadcrumb.axe-core.func.spec.js +87 -0
  32. package/ds-breadcrumb/DSBreadcrumb.func.spec.js +48 -0
  33. package/ds-breadcrumb/DSBreadcrumb.keyboard.navigation.func.spec.js +55 -0
  34. package/ds-breadcrumb/DSBreadcrumb.visual.spec.js +104 -0
  35. package/ds-breadcrumb/DSBreadcrumbCO.js +60 -0
  36. package/ds-button-group/DSButtonGropu.visual.spec.js +16 -0
  37. package/ds-button-group/DSButtonGroupCO.js +20 -0
  38. package/ds-button-v1/DSButton.func.spec.js +23 -0
  39. package/ds-button-v1/DSButton.visual.spec.js +16 -0
  40. package/ds-button-v1/DSButtonCO.js +38 -0
  41. package/ds-button-v2/DSButtonV2.axe-core.func.spec.js +22 -0
  42. package/ds-button-v2/DSButtonV2.func.spec.js +139 -0
  43. package/ds-button-v2/DSButtonV2.visual.spec.js +153 -0
  44. package/ds-button-v2/DSButtonV2CO.js +43 -0
  45. package/ds-card/DSCard.axe-core.func.spec.js +100 -0
  46. package/ds-card/DSCard.func.spec.js +65 -0
  47. package/ds-card/DSCard.visual.spec.js +132 -0
  48. package/ds-card/DSCardCO.js +81 -0
  49. package/ds-card-navigation/CardNavigationCO.js +21 -0
  50. package/ds-card-navigation/DSCardNavigation.axe-core.func.spec.js +24 -0
  51. package/ds-card-navigation/DSCardNavigation.visual.spec.js +23 -0
  52. package/ds-chat/DSChat-bubble.axe-core.func.spec.js +37 -0
  53. package/ds-chat/DSChat-bubble.visual.spec.js +51 -0
  54. package/ds-chat/DSChat-composer.func.spec.js +127 -0
  55. package/ds-chat/DSChat-composer.visual.spec.js +87 -0
  56. package/ds-chat/DSChat-container.func.spec.js +77 -0
  57. package/ds-chat/DSChat-floating-button.visual.spec.js +40 -0
  58. package/ds-chat/DSChat-header.func.spec.js +33 -0
  59. package/ds-chat/DSChat-header.visual.spec.js +34 -0
  60. package/ds-chat/DSChat-loadmore.func.spec.js +54 -0
  61. package/ds-chat/DSChat-loadmore.visual.spec.js +27 -0
  62. package/ds-chat/DSChat-tile.func.spec.js +32 -0
  63. package/ds-chat/DSChat-tile.visual.spec.js +43 -0
  64. package/ds-chat/DSChat-tooltip.visual.spec.js +33 -0
  65. package/ds-chat/DSChat.func.spec.js +181 -0
  66. package/ds-chat/DSChat.mobile.visual.spec.js +16 -0
  67. package/ds-chat/DSChat.smoke.spec.js +274 -0
  68. package/ds-chat/DSChat.visual.spec.js +318 -0
  69. package/ds-chat/DSChatCO.js +128 -0
  70. package/ds-chat/components/BubbleCO.js +59 -0
  71. package/ds-chat/components/ComposerCO.js +41 -0
  72. package/ds-chat/components/FloatingButtonCO.js +16 -0
  73. package/ds-chat/components/HeaderCO.js +40 -0
  74. package/ds-chat/components/StoryBtnsCO.js +15 -0
  75. package/ds-chat/components/TileCO.js +29 -0
  76. package/ds-chat/components/index.js +7 -0
  77. package/ds-chat/helpers/getElementByDataTestId.js +1 -0
  78. package/ds-chat/helpers/index.js +1 -0
  79. package/ds-chip/DSChip.axe-core.func.spec.js +64 -0
  80. package/ds-chip/DSChip.visual.spec.js +83 -0
  81. package/ds-chip/DSChipCO.js +36 -0
  82. package/ds-circular-indeterminate-indicator/DSCircularIndicator.axe-core.func.spec.js +45 -0
  83. package/ds-circular-indeterminate-indicator/DSCircularIndicator.func.spec.js +17 -0
  84. package/ds-circular-indeterminate-indicator/DSCircularIndicator.visual.spec.js +37 -0
  85. package/ds-circular-indeterminate-indicator/DSCircularIndicatorCO.js +33 -0
  86. package/ds-codeeditor/DSCodeEditor.visual.spec.js +28 -0
  87. package/ds-codeeditor/DSCodeEditorCO.js +17 -0
  88. package/ds-comments-card/DSComments.axe-core.func.spec.js +66 -0
  89. package/ds-comments-card/DSComments.func.spec.js +56 -0
  90. package/ds-comments-card/DSComments.visual.spec.js +68 -0
  91. package/ds-comments-card/DSCommentsCO.js +41 -0
  92. package/ds-controlled-form/ds-combobox/DSComboboxCO.js +206 -0
  93. package/ds-controlled-form/ds-combobox/DSComboboxbox.axe-core.spec.js +36 -0
  94. package/ds-controlled-form/ds-combobox/DSComboboxbox.func.spec.js +28 -0
  95. package/ds-controlled-form/ds-combobox/DSComboboxbox.smoke.spec.js +374 -0
  96. package/ds-controlled-form/ds-combobox/creatable/DSComboboxbox.creatable.axe-core.spec.js +38 -0
  97. package/ds-controlled-form/ds-combobox/creatable/DSComboboxbox.creatable.visual.spec.js +48 -0
  98. package/ds-controlled-form/ds-combobox/creatable/DSComboboxbox.keyboard-creatable.func.spec.js +55 -0
  99. package/ds-controlled-form/ds-combobox/disabled/DSComboboxbox.disabled.axe-core.spec.js +26 -0
  100. package/ds-controlled-form/ds-combobox/disabled/DSComboboxbox.disabled.visual.spec.js +27 -0
  101. package/ds-controlled-form/ds-combobox/error-state/DSComboboxbox.with-form-item-block.axe-core.spec.js +42 -0
  102. package/ds-controlled-form/ds-combobox/error-state/DSComboboxbox.with-form-item-block.visual.spec.js +67 -0
  103. package/ds-controlled-form/ds-combobox/inline/DSComboboxbox.inline.axe-core.spec.js +30 -0
  104. package/ds-controlled-form/ds-combobox/inline/DSComboboxbox.inline.keyboard.func.spec.js +140 -0
  105. package/ds-controlled-form/ds-combobox/inline/DSComboboxbox.inline.mouse-touch.func.spec.js +115 -0
  106. package/ds-controlled-form/ds-combobox/inline/DSComboboxbox.inline.visual.spec.js +36 -0
  107. package/ds-controlled-form/ds-combobox/inside-dialog/DSComboboxbox.inside-dialog.axe-core.spec.js +33 -0
  108. package/ds-controlled-form/ds-combobox/inside-dialog/DSComboboxbox.inside-dialog.visual.spec.js +50 -0
  109. package/ds-controlled-form/ds-combobox/inside-form/DSComboboxbox.inside-form.axe-core.spec.js +25 -0
  110. package/ds-controlled-form/ds-combobox/inside-form/DSComboboxbox.inside-form.visual.spec.js +18 -0
  111. package/ds-controlled-form/ds-combobox/loading/DSComboboxbox.loading.axe-core.spec.js +27 -0
  112. package/ds-controlled-form/ds-combobox/multi-select/DSComboboxbox.keyboard-multi-select.func.spec.js +215 -0
  113. package/ds-controlled-form/ds-combobox/multi-select/DSComboboxbox.mouse-touch-multi-select.func.spec.js +223 -0
  114. package/ds-controlled-form/ds-combobox/multi-select/DSComboboxbox.multi-select.axe-core.spec.js +47 -0
  115. package/ds-controlled-form/ds-combobox/multi-select/DSComboboxbox.multi.visual.spec.js +142 -0
  116. package/ds-controlled-form/ds-combobox/multi-select/DSComboboxbox.ten-thousand-options.func.spec.js +47 -0
  117. package/ds-controlled-form/ds-combobox/only-selectable/DSComboboxbox.only-selectable.axe-core.spec.js +31 -0
  118. package/ds-controlled-form/ds-combobox/only-selectable/DSComboboxbox.only-selectable.func.spec.js +24 -0
  119. package/ds-controlled-form/ds-combobox/single-select/DSComboboxbox.keyboard-single-select.func.spec.js +153 -0
  120. package/ds-controlled-form/ds-combobox/single-select/DSComboboxbox.single-select.visual.spec.js +48 -0
  121. package/ds-controlled-form/ds-controlled-checkbox/Basic/DSControlledCheckbox.axe-core.basic.func.spec.js +42 -0
  122. package/ds-controlled-form/ds-controlled-checkbox/Basic/DSControlledCheckbox.basic.func.spec.js +46 -0
  123. package/ds-controlled-form/ds-controlled-checkbox/DSControlledCheckbox.smoke.spec.js +125 -0
  124. package/ds-controlled-form/ds-controlled-checkbox/DSControlledCheckboxCO.js +67 -0
  125. package/ds-controlled-form/ds-controlled-checkbox/Disabled/DSControlledCheckbox.axe-core.disabled.func.spec.js +24 -0
  126. package/ds-controlled-form/ds-controlled-checkbox/Disabled/DSControlledCheckbox.disabled.visual.spec.js +18 -0
  127. package/ds-controlled-form/ds-controlled-checkbox/HasError/DSControlledCheckbox.axe-core.hasError.func.spec.js +42 -0
  128. package/ds-controlled-form/ds-controlled-checkbox/HasError/DSControlledCheckbox.has-error.visual.spec.js +20 -0
  129. package/ds-controlled-form/ds-controlled-checkbox/Mixed/DSControlledCheckbox.axe-core.mixed.func.spec.js +42 -0
  130. package/ds-controlled-form/ds-controlled-checkbox/Mixed/DSControlledCheckbox.mixed.func.spec.js +89 -0
  131. package/ds-controlled-form/ds-controlled-checkbox/Mixed/DSControlledCheckbox.mixed.visual.spec.js +20 -0
  132. package/ds-controlled-form/ds-controlled-checkbox/ReadOnly/DSControlledCheckbox.axe-core.read-only.func.spec.js +34 -0
  133. package/ds-controlled-form/ds-controlled-checkbox/ReadOnly/DSControlledCheckbox.read-only.func.spec.js +60 -0
  134. package/ds-controlled-form/ds-controlled-checkbox/ReadOnly/DSControlledCheckbox.read-only.visual.spec.js +21 -0
  135. package/ds-controlled-form/ds-controlled-checkbox/WithTooltip/DSControlledCheckbox.axe-core.with-tooltip.func.spec.js +22 -0
  136. package/ds-controlled-form/ds-controlled-checkbox/WithTooltip/DSControlledCheckbox.with-tooltip.visual.spec.js +20 -0
  137. package/ds-controlled-form/ds-controlled-checkbox/WrapLabel/DSControlledCheckbox.axe-core.wrap-label.func.spec.js +22 -0
  138. package/ds-controlled-form/ds-controlled-checkbox/WrapLabel/DSControlledCheckbox.wrap-label.visual.spec.js +17 -0
  139. package/ds-controlled-form/ds-controlled-checkbox-group/DSControlledCheckboxGroup.axe-core.func.spec.js +41 -0
  140. package/ds-controlled-form/ds-controlled-checkbox-group/DSControlledCheckboxGroup.func.spec.js +36 -0
  141. package/ds-controlled-form/ds-controlled-checkbox-group/DSControlledCheckboxGroup.visual.spec.js +18 -0
  142. package/ds-controlled-form/ds-controlled-checkbox-group/DSControlledCheckboxGroupCO.js +11 -0
  143. package/ds-controlled-form/ds-controlled-date-range-picker/DSControlledDateRangePicker.DateInput.visual.spec.js +54 -0
  144. package/ds-controlled-form/ds-controlled-date-range-picker/DSControlledDateRangePickerCO.js +53 -0
  145. package/ds-controlled-form/ds-controlled-date-time-picker/DSControlledDateTimePicker.DateInput.visual.spec.js +43 -0
  146. package/ds-controlled-form/ds-controlled-date-time-picker/DSControlledDateTimePicker.smoke.spec.js +162 -0
  147. package/ds-controlled-form/ds-controlled-date-time-picker/DSControlledDateTimePickerCO.js +260 -0
  148. package/ds-controlled-form/ds-controlled-date-time-picker/date-input/DateInput.auto-advance.func.spec.js +137 -0
  149. package/ds-controlled-form/ds-controlled-date-time-picker/date-input/DateInput.func.spec.js +101 -0
  150. package/ds-controlled-form/ds-controlled-date-time-picker/date-input/DateInput.keyboard-nav.func.spec.js +154 -0
  151. package/ds-controlled-form/ds-controlled-date-time-picker/date-time-picker/DateTimePicker.custom.attributes.spec.js +94 -0
  152. package/ds-controlled-form/ds-controlled-date-time-picker/date-time-picker/DateTimePicker.func.spec.js +87 -0
  153. package/ds-controlled-form/ds-controlled-inputgroup/DSControlledInputGroupCO.js +74 -0
  154. package/ds-controlled-form/ds-controlled-inputgroup/autocomplete/DSControlledInputGroup.autocomplete.axe-core.func.spec.js +51 -0
  155. package/ds-controlled-form/ds-controlled-inputgroup/basic/DSControlledInputGroup.basic.axe-core.func.spec.js +29 -0
  156. package/ds-controlled-form/ds-controlled-inputgroup/basic/DSControlledInputGroup.basic.visual.spec.js +33 -0
  157. package/ds-controlled-form/ds-controlled-inputgroup/combobox/DSControlledInputGroup.combobox.axe-core.func.spec.js +51 -0
  158. package/ds-controlled-form/ds-controlled-inputgroup/form-item-layout/DSControlledInputGroup.form-item-layout.axe-core.func.spec.js +23 -0
  159. package/ds-controlled-form/ds-controlled-inputgroup/form-item-layout/DSControlledInputGroup.form-item-layout.func.spec.js +20 -0
  160. package/ds-controlled-form/ds-controlled-inputgroup/protected/DSControlledInputGroup.protected.axe-core.func.spec.js +37 -0
  161. package/ds-controlled-form/ds-controlled-inputgroup/protected/DSControlledInputGroup.protected.func.spec.js +25 -0
  162. package/ds-controlled-form/ds-controlled-inputgroup/protected/DSControlledInputGroup.protected.visual.spec.js +40 -0
  163. package/ds-controlled-form/ds-controlled-large-input-text/DSLargeInputTextCO.js +55 -0
  164. package/ds-controlled-form/ds-controlled-large-input-text/dialog/DSLargeInputText.dialog.visual.spec.js +23 -0
  165. package/ds-controlled-form/ds-controlled-large-input-text/disabled/DSLargeInputText.disabled.axe-core.func.spec.js +23 -0
  166. package/ds-controlled-form/ds-controlled-large-input-text/disabled/DSLargeInputText.disabled.visual.spec.js +18 -0
  167. package/ds-controlled-form/ds-controlled-large-input-text/hasError/DSLargeInputText.has-error.axe-core.func.spec.js +23 -0
  168. package/ds-controlled-form/ds-controlled-large-input-text/hasError/DSLargeInputText.has-error.visual.spec.js +22 -0
  169. package/ds-controlled-form/ds-controlled-large-input-text/innerRef/DSLargeInputText.innerRef.func.spec.js +23 -0
  170. package/ds-controlled-form/ds-controlled-large-input-text/label-counter/DSLargeInputText.label-counter.func.spec.js +46 -0
  171. package/ds-controlled-form/ds-controlled-large-input-text/label-counter/DSLargeInputText.label-counter.visual.spec.js +20 -0
  172. package/ds-controlled-form/ds-controlled-large-input-text/max-height/DSLargeInputText.max-height.axe-core.func.spec.js +23 -0
  173. package/ds-controlled-form/ds-controlled-large-input-text/max-height/DSLargeInputText.max-height.visual.spec.js +63 -0
  174. package/ds-controlled-form/ds-controlled-large-input-text/read-only/DSLargeInputText.read-only.axe-core.func.spec.js +23 -0
  175. package/ds-controlled-form/ds-controlled-large-input-text/read-only/DSLargeInputText.read-only.visual.spec.js +18 -0
  176. package/ds-controlled-form/ds-controlled-large-input-text/rows/DSLargeInputText.rows.visual.spec.js +60 -0
  177. package/ds-controlled-form/ds-controlled-radio/DSControlledRadio.axe-core.func.spec.js +70 -0
  178. package/ds-controlled-form/ds-controlled-radio/DSControlledRadio.func.spec.js +22 -0
  179. package/ds-controlled-form/ds-controlled-radio/DSControlledRadio.visual.spec.js +96 -0
  180. package/ds-controlled-form/ds-controlled-radio/DSControlledRadioCO.js +42 -0
  181. package/ds-controlled-form/ds-controlled-toggle/DSControlledToggle.func.spec.js +124 -0
  182. package/ds-controlled-form/ds-controlled-toggle/DSControlledToggle.visual.spec.js +55 -0
  183. package/ds-controlled-form/ds-controlled-toggle/DSControlledToggleCO.js +61 -0
  184. package/ds-controlled-form/ds-input-text/DSInputText.axe-core.func.spec.js +86 -0
  185. package/ds-controlled-form/ds-input-text/DSInputText.clearable.keyboard.func.spec.js +45 -0
  186. package/ds-controlled-form/ds-input-text/DSInputText.func.spec.js +127 -0
  187. package/ds-controlled-form/ds-input-text/DSInputText.smoke.spec.js +29 -0
  188. package/ds-controlled-form/ds-input-text/DSInputText.visual.spec.js +127 -0
  189. package/ds-controlled-form/ds-input-text/DSInputTextCO.js +51 -0
  190. package/ds-controlled-form/react-hook-form/ReactHook.func.spec.js +74 -0
  191. package/ds-controlled-form/react-hook-form/ReactHook.visual.spec.js +52 -0
  192. package/ds-controlled-form/react-hook-form/ReactHookCO.js +79 -0
  193. package/ds-controlled-form/useMask/Number/UseNumberMask.func.spec.js +192 -0
  194. package/ds-controlled-form/useMask/Number/UseNumberMask.visual.spec.js +35 -0
  195. package/ds-controlled-form/useMask/Phone/UsePhoneMask.func.spec.js +49 -0
  196. package/ds-controlled-form/useMask/Phone/UsePhoneMask.visual.spec.js +30 -0
  197. package/ds-controlled-form/useMask/ReackHookFormWithMask/ReactHookFormWithMask.func.spec.js +51 -0
  198. package/ds-controlled-form/useMask/ReackHookFormWithMask/ReactHookFormWithMask.visual.spec.js +39 -0
  199. package/ds-controlled-form/useMask/RegExp/UseRegExpMask.func.spec.js +37 -0
  200. package/ds-controlled-form/useMask/SSN/UseSsnMask.func.spec.js +53 -0
  201. package/ds-controlled-form/useMask/ZipCode/UseZipCodeMask.func.spec.js +37 -0
  202. package/ds-controlled-form/useMask/useMaskCO.js +56 -0
  203. package/ds-data-table-async/DSDataTable.smoke.spec.js +312 -0
  204. package/ds-data-table-async/DSDataTableCO.js +249 -0
  205. package/ds-data-table-async/basic/DSDataTable.basic.axe-core.func.spec.js +120 -0
  206. package/ds-data-table-async/basic/DSDataTable.basic.func.spec.js +78 -0
  207. package/ds-data-table-async/basic/DSDataTable.basic.visual.spec.js +144 -0
  208. package/ds-data-table-async/basic/DSDataTable.usecases.func.spec.js +315 -0
  209. package/ds-data-table-async/basic/DSDataTable.usecases.visual.spec.js +226 -0
  210. package/ds-data-table-async/components/CellCO.js +25 -0
  211. package/ds-data-table-async/components/DateSwitcherCO.js +44 -0
  212. package/ds-data-table-async/components/ExportCsvCO.js +22 -0
  213. package/ds-data-table-async/components/FilterBarCO.js +60 -0
  214. package/ds-data-table-async/components/FiltersCO.js +127 -0
  215. package/ds-data-table-async/components/FiltersCOextra.js +39 -0
  216. package/ds-data-table-async/components/HeaderCO.js +39 -0
  217. package/ds-data-table-async/components/OnRowClickCO.js +26 -0
  218. package/ds-data-table-async/components/PaginationNavCO.js +31 -0
  219. package/ds-data-table-async/components/RowCO.js +72 -0
  220. package/ds-data-table-async/components/index.js +10 -0
  221. package/ds-data-table-async/date-filters/DSDataTable.date-filters.func.spec.js +65 -0
  222. package/ds-data-table-async/date-filters/DSDataTable.date-switcher.range.func.spec.js +69 -0
  223. package/ds-data-table-async/date-filters/DSDataTable.date-switcher.single.func.spec.js +87 -0
  224. package/ds-data-table-async/date-filters/DSDataTable.date-switcher.visual.spec.js +50 -0
  225. package/ds-data-table-async/date-filters/DSDataTable.dates.axe-core.func.spec.js +59 -0
  226. package/ds-data-table-async/dnd/DSDataTable.dnd.axe-core.func.spec.js +60 -0
  227. package/ds-data-table-async/dnd/DSDataTable.dnd.func.spec.js +216 -0
  228. package/ds-data-table-async/dnd/DSDataTable.dnd.visual.spec.js +182 -0
  229. package/ds-data-table-async/editable-cell/DSDataTable.editablecells.axe-core.func.spec.js +42 -0
  230. package/ds-data-table-async/editable-cell/DSDataTable.editablecells.func.spec.js +40 -0
  231. package/ds-data-table-async/editable-cell/DSDataTable.editablecells.visual.spec.js +59 -0
  232. package/ds-data-table-async/empty-state/DSDataTable.empty-state.axe-core.func.spec.js +24 -0
  233. package/ds-data-table-async/empty-state/DSDataTable.empty-state.visual.spec.js +49 -0
  234. package/ds-data-table-async/expandable/DSDataTable.expandable.axe-core.func.spec.js +29 -0
  235. package/ds-data-table-async/expandable/DSDataTable.expandable.func.spec.js +92 -0
  236. package/ds-data-table-async/expandable/DSDataTable.expandable.visual.spec.js +101 -0
  237. package/ds-data-table-async/filters/DSDataTable.currency-number-filters.func.spec.js +66 -0
  238. package/ds-data-table-async/filters/DSDataTable.filteredMultipleTables.visual.spec.js +22 -0
  239. package/ds-data-table-async/filters/DSDataTable.filters-creatable.func.spec.js +112 -0
  240. package/ds-data-table-async/filters/DSDataTable.filters-creatable.visual.spec.js +61 -0
  241. package/ds-data-table-async/filters/DSDataTable.filters.axe-core.func.spec.js +135 -0
  242. package/ds-data-table-async/filters/DSDataTable.filters.empty-value.func.spec.js +82 -0
  243. package/ds-data-table-async/filters/DSDataTable.filters.empty-value.keybooard-nav.func.spec.js +73 -0
  244. package/ds-data-table-async/filters/DSDataTable.filters.empty-value.visual.spec.js +76 -0
  245. package/ds-data-table-async/filters/DSDataTable.filters.keybooard-nav.func.spec.js +40 -0
  246. package/ds-data-table-async/filters/DSDataTable.filters.visual.spec.js +188 -0
  247. package/ds-data-table-async/filters/DSDataTable.text-filterbar-controlled.func.spec.js +42 -0
  248. package/ds-data-table-async/filters/DSDataTable.text-filters.func.spec.js +230 -0
  249. package/ds-data-table-async/helpers/asyncFilter.js +4 -0
  250. package/ds-data-table-async/helpers/asyncShiftPress.js +19 -0
  251. package/ds-data-table-async/helpers/getElementBoundingRect.js +2 -0
  252. package/ds-data-table-async/helpers/getElementByIndex.js +12 -0
  253. package/ds-data-table-async/helpers/getElementDragHandler.js +3 -0
  254. package/ds-data-table-async/helpers/getRadioValue.js +1 -0
  255. package/ds-data-table-async/helpers/index.js +7 -0
  256. package/ds-data-table-async/helpers/throttleTyping.js +6 -0
  257. package/ds-data-table-async/more/DSDataTable.custom.func.spec.js +31 -0
  258. package/ds-data-table-async/more/DSDataTable.headers.visual.spec.js +70 -0
  259. package/ds-data-table-async/more/DSDataTable.more.axe-core.func.spec.js +40 -0
  260. package/ds-data-table-async/pagination/DSDataTable.pagination.axe-core.func.spec.js +52 -0
  261. package/ds-data-table-async/pagination/DSDataTable.pagination.func.spec.js +152 -0
  262. package/ds-data-table-async/pagination/DSDataTable.pagination.visual.spec.js +46 -0
  263. package/ds-data-table-async/resizable/DSDataTable.resizable.axe-core.func.spec.js +40 -0
  264. package/ds-data-table-async/resizable/DSDataTable.resizable.func.spec.js +47 -0
  265. package/ds-data-table-async/resizable/DSDataTable.resizable.visual.spec.js +156 -0
  266. package/ds-data-table-async/row-variant/DSDataTable.row-styling.visual.spec.js +62 -0
  267. package/ds-data-table-async/row-variant/DSDataTable.row-variant.axe-core.func.spec.js +27 -0
  268. package/ds-data-table-async/row-variant/DSDataTable.row-variant.func.spec.js +101 -0
  269. package/ds-data-table-async/select/DSDataTable.select.axe-core.func.spec.js +152 -0
  270. package/ds-data-table-async/select/DSDataTable.select.func.spec.js +174 -0
  271. package/ds-data-table-async/select/DSDataTable.select.visual.spec.js +119 -0
  272. package/ds-data-table-async/skeleton/DSDataTable.skeleton.axe-core.func.spec.js +58 -0
  273. package/ds-data-table-async/skeleton/DSDataTable.skeleton.visual.spec.js +51 -0
  274. package/ds-data-table-async/toolbar/DSDataTable.Toolbar.func.spec.js +184 -0
  275. package/ds-data-table-async/toolbar/DSDataTable.Toolbar.visual.spec.js +33 -0
  276. package/ds-data-table-async/toolbar/DSDataTable.toolbar.axe-core.func.spec.js +27 -0
  277. package/ds-data-table-async/vissibility/DSDataTable.responsive.visual.spec.js +17 -0
  278. package/ds-data-table-async/vissibility/DSDataTable.vissibility.axe-core.func.spec.js +32 -0
  279. package/ds-data-table-async/vissibility/DSDataTable.vissibility.visual.spec.js +81 -0
  280. package/ds-datagrids/DSDataGrids-selectable-default.func.spec.js +27 -0
  281. package/ds-datagrids/DSDatagrid-basic.visual.spec.js +16 -0
  282. package/ds-datagrids/DSDatagrid-editable.func.spec.js +62 -0
  283. package/ds-datagrids/DSDatagrid-empty-state.visual.spec.js +16 -0
  284. package/ds-datagrids/DSDatagrid-pui-5550.func.spec.js +15 -0
  285. package/ds-datagrids/DSDatagrid-selectable-multi.visual.spec.js +16 -0
  286. package/ds-datagrids/DSDatagrid-sortable.func.spec.js +43 -0
  287. package/ds-datagrids/DSDatagrid.func.spec.js +56 -0
  288. package/ds-datagrids/DSDatagrids-cell-renders.visual.spec.js +43 -0
  289. package/ds-datagrids/DSDatagrids-control-focus.visual.spec.js +30 -0
  290. package/ds-datagrids/DSDatagrids-filterable-dates.func.spec.js +300 -0
  291. package/ds-datagrids/DSDatagrids-filterable-default-filters.func.spec.js +27 -0
  292. package/ds-datagrids/DSDatagrids-filterable-default-filters.visual.spec.js +16 -0
  293. package/ds-datagrids/DSDatagrids-filterable.func.spec.js +213 -0
  294. package/ds-datagrids/DSDatagrids-header.visual.spec.js +16 -0
  295. package/ds-datagrids/DSDatagrids-infinite-scrolling.func.spec.js +24 -0
  296. package/ds-datagrids/DSDatagrids-pagination.func.spec.js +85 -0
  297. package/ds-datagrids/DSDatagrids-pagination.visual.spec.js +30 -0
  298. package/ds-datagrids/DSDatagrids-performance.func.spec.js +23 -0
  299. package/ds-datagrids/DSDatagrids-selectable-multi.func.spec.js +21 -0
  300. package/ds-datagrids/DSDatagrids-toolbar.visual.spec.js +17 -0
  301. package/ds-datagrids/DSDatagrids-virtualization-dynamic-rows.func.spec.js +18 -0
  302. package/ds-datagrids/DSDatagrids-virtualization.func.spec.js +15 -0
  303. package/ds-datagrids/DSDatagrids-wrapping.visual.spec.js +28 -0
  304. package/ds-datagrids/DatagridObject.js +397 -0
  305. package/ds-datagrids/page-objects/Editable.componentObject.js +67 -0
  306. package/ds-datagrids/page-objects/Pagination.componentObject.js +72 -0
  307. package/ds-dataviz/DSDataViz.area.visual.spec.js +40 -0
  308. package/ds-dataviz/DSDataViz.axis.visual.spec.js +80 -0
  309. package/ds-dataviz/DSDataViz.bars.visual.spec.js +103 -0
  310. package/ds-dataviz/DSDataViz.extra.visual.spec.js +118 -0
  311. package/ds-dataviz/DSDataViz.func.spec.js +40 -0
  312. package/ds-dataviz/DSDataViz.legend.visual.spec.js +53 -0
  313. package/ds-dataviz/DSDataViz.lines.visual.spec.js +40 -0
  314. package/ds-dataviz/DSDataViz.pie.visual.spec.js +82 -0
  315. package/ds-dataviz/DSDataViz.scroll.visual.spec.js +135 -0
  316. package/ds-dataviz/DSDataViz.singlestackedbar.visual.spec.js +67 -0
  317. package/ds-dataviz/DSDataViz.smoke.spec.js +40 -0
  318. package/ds-dataviz/DSDataViz.ticks.func.spec.js +19 -0
  319. package/ds-dataviz/DSDataViz.ticks.visual.spec.js +76 -0
  320. package/ds-dataviz/DSDataVizCO.js +187 -0
  321. package/ds-dataviz/axecore/DSDataViz.area.axe-core.func.spec.js +36 -0
  322. package/ds-dataviz/axecore/DSDataViz.axis.axe-core.func.spec.js +42 -0
  323. package/ds-dataviz/axecore/DSDataViz.bars.axe-core.func.spec.js +95 -0
  324. package/ds-dataviz/axecore/DSDataViz.extra.axe-core.func.spec.js +78 -0
  325. package/ds-dataviz/axecore/DSDataViz.legend.axe-core.func.spec.js +40 -0
  326. package/ds-dataviz/axecore/DSDataViz.lines.axe-core.func.spec.js +49 -0
  327. package/ds-dataviz/axecore/DSDataViz.pie.axe-core.func.spec.js +70 -0
  328. package/ds-dataviz/axecore/DSDataViz.scroll.axe-core.func.spec.js +59 -0
  329. package/ds-dataviz/axecore/DSDataViz.singlestackedbar.axe-core.func.spec.js +24 -0
  330. package/ds-dataviz/axecore/DSDataViz.ticks.axe-core.func.spec.js +36 -0
  331. package/ds-date-picker/DSDatePicker.func.spec.js +275 -0
  332. package/ds-date-picker/DSDatePickerCO.js +104 -0
  333. package/ds-date-range-picker/DSDateRangePicker.func.spec.js +114 -0
  334. package/ds-date-range-picker/DSDateRangePicker.visual.spec.js +14 -0
  335. package/ds-date-range-picker/DSDateRangePickerCO.js +99 -0
  336. package/ds-date-time-picker/DSDateTimePicker.func.spec.js +210 -0
  337. package/ds-date-time-picker/DateTimePickerCO.js +140 -0
  338. package/ds-dialog/DSDialog.cases.visual.spec.js +122 -0
  339. package/ds-dialog/DSDialog.func.spec.js +133 -0
  340. package/ds-dialog/DSDialog.smoke.spec.js +133 -0
  341. package/ds-dialog/DSDialog.visual.spec.js +178 -0
  342. package/ds-dialog/DSDialogCO.js +75 -0
  343. package/ds-dialog/components/DialogFormsCO.js +22 -0
  344. package/ds-dialog/components/DialogShuttleCO.js +12 -0
  345. package/ds-dialog/components/index.js +2 -0
  346. package/ds-dialog/helpers/getElementByIndex.js +12 -0
  347. package/ds-dialog/helpers/index.js +1 -0
  348. package/ds-drag-and-drop/DSDragAndDrop.axe-core.func.spec.js +72 -0
  349. package/ds-drag-and-drop/DSDragAndDrop.func.spec.js +186 -0
  350. package/ds-drag-and-drop/DSDragAndDrop.visual.spec.js +45 -0
  351. package/ds-drag-and-drop/DSDragAndDropCO.js +54 -0
  352. package/ds-dropdownmenu/DSDropddownMenu-loading.visual.spec.js +28 -0
  353. package/ds-dropdownmenu/DSDropddownMenu.func.spec.js +38 -0
  354. package/ds-dropdownmenu/DSDropdownMenu-basic.visual.spec.js +30 -0
  355. package/ds-dropdownmenu/DSDropdownMenu-withselect.visual.spec.js +24 -0
  356. package/ds-dropdownmenu/DropdownMenuCO.js +57 -0
  357. package/ds-dropdownmenu-v2/DSDDMenuV2.axe-core.func.spec.js +109 -0
  358. package/ds-dropdownmenu-v2/DSDDMenuV2.func.spec.js +222 -0
  359. package/ds-dropdownmenu-v2/DSDDMenuV2.visual.spec.js +153 -0
  360. package/ds-dropdownmenu-v2/DSDDMenuV2CO.js +69 -0
  361. package/ds-dropzone/DSDropzone.func.spec.js +24 -0
  362. package/ds-dropzone/DSDropzoneCO.js +17 -0
  363. package/ds-eol/ds-date-range-selector/DSDateRangeSelector.func.spec.js +22 -0
  364. package/ds-eol/ds-date-range-selector/DSDateRangeSelector.visual.spec.js +71 -0
  365. package/ds-eol/ds-date-range-selector/DSDateRangeSelectorCO.js +35 -0
  366. package/ds-filterbar/DSFilterBar-basic.func.spec.js +15 -0
  367. package/ds-filterbar/DSFilterBar-dropdown-multipill.visual.spec.js +55 -0
  368. package/ds-filterbar/FilterbarCO.js +53 -0
  369. package/ds-form/Checkbox/DSCheckbox.func.spec.js +69 -0
  370. package/ds-form/Checkbox/DSCheckbox.keyboard.navigation.func.spec.js +64 -0
  371. package/ds-form/Checkbox/DSCheckbox.visual.spec.js +37 -0
  372. package/ds-form/Checkbox/DSCheckboxCO.js +60 -0
  373. package/ds-form/Combobox/DSCombobox.accessibility.func.spec.js +150 -0
  374. package/ds-form/Combobox/DSCombobox.basic.func.spec.js +238 -0
  375. package/ds-form/Combobox/DSCombobox.freesolo.func.spec.js +98 -0
  376. package/ds-form/Combobox/DSCombobox.freesolo.visual.spec.js +25 -0
  377. package/ds-form/Combobox/DSCombobox.multi.func.spec.js +121 -0
  378. package/ds-form/Combobox/DSCombobox.multi.visual.spec.js +54 -0
  379. package/ds-form/Combobox/DSCombobox.tablet.func.spec.js +30 -0
  380. package/ds-form/Combobox/DSCombobox.visual.spec.js +93 -0
  381. package/ds-form/Combobox/DSComboboxCO.js +206 -0
  382. package/ds-form/DateInput/DSDateInputCO.js +51 -0
  383. package/ds-form/DateInput/DateInput.func.spec.js +217 -0
  384. package/ds-form/DateInput/DateInput.states.func.spec.js +55 -0
  385. package/ds-form/FormatItemLayout/FormItemLayout.func.spec.js +46 -0
  386. package/ds-form/FormatItemLayout/FormatItemLayout.js +53 -0
  387. package/ds-form/FormatItemLayout/FormatItemLayout.visual.spec.js +94 -0
  388. package/ds-form/InputGroup/DSInputGroup.visual.spec.js +15 -0
  389. package/ds-form/InputGroup/DSInputGroupCO.js +19 -0
  390. package/ds-form/InputMask/AlphaNumeric.InputMask.func.spec.js +41 -0
  391. package/ds-form/InputMask/AutoCorrectedDate.InputMask.func.spec.js +18 -0
  392. package/ds-form/InputMask/DSInputMask.visual.spec.js +21 -0
  393. package/ds-form/InputMask/DSInputMaskCO.js +92 -0
  394. package/ds-form/InputMask/Date.InputMask.func.spec.js +48 -0
  395. package/ds-form/InputMask/DateTime.InputMask.func.spec.js +48 -0
  396. package/ds-form/InputMask/Decimal.InputMask.func.spec.js +119 -0
  397. package/ds-form/InputMask/Number.InputMask.func.spec.js +98 -0
  398. package/ds-form/InputMask/Percent.InputMask.func.spec.js +54 -0
  399. package/ds-form/InputMask/Phone.InputMask.func.spec.js +48 -0
  400. package/ds-form/InputMask/PhoneInternational.InputMask.func.spec.js +60 -0
  401. package/ds-form/InputMask/Ssn.InputMask.func.spec.js +60 -0
  402. package/ds-form/InputMask/UsZipCode.InputMask.func.spec.js +46 -0
  403. package/ds-form/InputProtected/DSInputProtected.func.spec.js +19 -0
  404. package/ds-form/InputProtected/DSInputProtected.visual.spec.js +18 -0
  405. package/ds-form/InputProtected/DSInputProtectedCO.js +45 -0
  406. package/ds-form/LargeInputText/DSLargeInputText.func.spec.js +37 -0
  407. package/ds-form/LargeInputText/DSLargeInputText.visual.spec.js +18 -0
  408. package/ds-form/LargeInputText/DSLargeInputTextCO.js +45 -0
  409. package/ds-form/Radio/DSRadio.func.spec.js +13 -0
  410. package/ds-form/Radio/DSRadio.visual.spec.js +39 -0
  411. package/ds-form/Radio/DSRadioCO.js +49 -0
  412. package/ds-form/SearchBox/DSSearchBox.func.spec.js +90 -0
  413. package/ds-form/SearchBox/DSSearchBox.visual.spec.js +61 -0
  414. package/ds-form/SearchBox/DSSearchBoxCO.js +75 -0
  415. package/ds-form/Toggle/DSToggle.func.spec.js +70 -0
  416. package/ds-form/Toggle/DSToggle.visual.spec.js +21 -0
  417. package/ds-form/Toggle/DSToggleCO.js +45 -0
  418. package/ds-form-layout-blocks/form-layout-block-item/DSFormLayoutBlockItem.axe-core.func.spec.js +144 -0
  419. package/ds-form-layout-blocks/form-layout-block-item/DSFormLayoutBlockItem.func.spec.js +203 -0
  420. package/ds-form-layout-blocks/form-layout-block-item/DSFormLayoutBlockItem.visual.spec.js +155 -0
  421. package/ds-form-layout-blocks/form-layout-block-item/DSFormLayoutBlockItemCO.js +116 -0
  422. package/ds-form-layout-blocks/form-layout-checkbox-group/DSFormLayoutCheckboxGroup.visual.spec.js +13 -0
  423. package/ds-form-layout-blocks/form-layout-checkbox-group/DSFormLayoutCheckboxGroupCO.js +14 -0
  424. package/ds-form-layout-label/DSFormLayoutLabel.func.spec.js +24 -0
  425. package/ds-form-layout-label/DSFormLayoutLabelCO.js +17 -0
  426. package/ds-global-header/GlobalHeader.func.spec.js +34 -0
  427. package/ds-global-header/GlobalHeader.visual.spec.js +140 -0
  428. package/ds-global-header/GlobalHeaderCO.js +65 -0
  429. package/ds-grid/DSGrid.axe-core.func.spec.js +93 -0
  430. package/ds-grid/DSGrid.visual.mobile.spec.js +65 -0
  431. package/ds-grid/DSGrid.visual.spec.js +52 -0
  432. package/ds-grid/DSGridCO.js +81 -0
  433. package/ds-grid/border/DSGrid.border.visual.spec.js +37 -0
  434. package/ds-grid/breakpoints/DSGrid.breakpoints.visual.spec.js +25 -0
  435. package/ds-grid/columnsnrows/DSGrid.columnsnrows.visual.spec.js +66 -0
  436. package/ds-grid/display/DSGrid.layout.visual.spec.js +39 -0
  437. package/ds-grid/tables/DSGrid.tables.visual.spec.js +27 -0
  438. package/ds-group-box/DSGroupBox.visual.spec.js +15 -0
  439. package/ds-group-box/DSGroupBoxCO.js +23 -0
  440. package/ds-header/DSHeaderCO.js +16 -0
  441. package/ds-hooks/DSHook.UseFontSizeDetector.visual.spec.js +57 -0
  442. package/ds-hooks/DSHook.UseFontSizeMedia.visual.spec.js +28 -0
  443. package/ds-hooks/DSHook.func.spec.js +86 -0
  444. package/ds-hooks/DSHook.useAsDsTree.func.spec.js +128 -0
  445. package/ds-hooks/DSHook.usetree.func.spec.js +114 -0
  446. package/ds-hooks/DSHookCO.js +196 -0
  447. package/ds-icon/DSIcon.visual.spec.js +58 -0
  448. package/ds-icon/DSIconCO.js +29 -0
  449. package/ds-image/DSImage.func.spec.js +40 -0
  450. package/ds-image/DSImage.visual.spec.js +42 -0
  451. package/ds-image/DSImageCO.js +33 -0
  452. package/ds-leftnavigation/LeftNavigation.axe-core.func.spec.js +175 -0
  453. package/ds-leftnavigation/LeftNavigation.func.spec.js +131 -0
  454. package/ds-leftnavigation/LeftNavigation.keeping.items.visual.spec.js +27 -0
  455. package/ds-leftnavigation/LeftNavigation.keyboard.func.spec.js +134 -0
  456. package/ds-leftnavigation/LeftNavigation.smoke.spec.js +54 -0
  457. package/ds-leftnavigation/LeftNavigation.states.func.spec.js +39 -0
  458. package/ds-leftnavigation/LeftNavigation.visual.spec.js +231 -0
  459. package/ds-leftnavigation/LeftNavigationCO.js +243 -0
  460. package/ds-list-section-header/ListSectionHeader.visual.spec.js +36 -0
  461. package/ds-list-section-header/ListSectionHeaderCO.js +20 -0
  462. package/ds-loading-Indicator/LoadingIndicator.func.spec.js +16 -0
  463. package/ds-loading-Indicator/LoadingIndicatorCO.js +23 -0
  464. package/ds-menu-item/DSMenuItems.axe-core.func.spec.js +95 -0
  465. package/ds-menu-item/DSMenuItems.func.spec.js +94 -0
  466. package/ds-menu-item/DSMenuItems.visual.spec.js +123 -0
  467. package/ds-menu-item/DSMenuItemsCO.js +35 -0
  468. package/ds-mini-toolbar/MiniToolbal.func.spec.js +82 -0
  469. package/ds-mini-toolbar/MiniToolbal.visual.spec.js +15 -0
  470. package/ds-mini-toolbar/MiniToolbarCO.js +39 -0
  471. package/ds-mobile/Accordion/DSAccordion.visual.spec.js +33 -0
  472. package/ds-mobile/Accordion/DSAccordionCO.js +37 -0
  473. package/ds-mobile/CategoryBox/CategoryBox.visual.spec.js +18 -0
  474. package/ds-mobile/CategoryBox/CategoryBoxCO.js +17 -0
  475. package/ds-mobile/CollectionBox/CollectionBox.visual.spec.js +16 -0
  476. package/ds-mobile/CollectionBox/CollectionBoxCO.js +15 -0
  477. package/ds-mobile/GlobalHeader/DSGlobalHeader.visual.spec.js +55 -0
  478. package/ds-mobile/GlobalHeader/DSGlobalHeaderCO.js +36 -0
  479. package/ds-mobile/GroupBox/GroupBox.visual.spec.js +15 -0
  480. package/ds-mobile/GroupBox/GroupBoxCO.js +15 -0
  481. package/ds-mobile/InfiniteLoader/InfiniteLoader.func.spec.js +93 -0
  482. package/ds-mobile/InfiniteLoader/InfiniteLoaderCO.js +29 -0
  483. package/ds-mobile/MobileActionToolbar/MobileActionToolbar.visual.spec.js +39 -0
  484. package/ds-mobile/MobileActionToolbar/MobileActionToolbarCO.js +19 -0
  485. package/ds-mobile/MobileBanner/MobileBanner.visual.spec.js +23 -0
  486. package/ds-mobile/MobileBanner/MobileBannerCO.js +23 -0
  487. package/ds-mobile/MobileCard/Card.func.spec.js +37 -0
  488. package/ds-mobile/MobileCard/Card.visual.spec.js +103 -0
  489. package/ds-mobile/MobileCard/MobileCardCO.js +42 -0
  490. package/ds-mobile/MobileContextMenu/MobileContextMenu.func.spec.js +58 -0
  491. package/ds-mobile/MobileContextMenu/MobileContextMenu.visual.spec.js +28 -0
  492. package/ds-mobile/MobileContextMenu/MobileContextMenuCO.js +66 -0
  493. package/ds-mobile/MobileDatePicker/MobileDatePicker.func.spec.js +15 -0
  494. package/ds-mobile/MobileDatePicker/MobileDatePicker.visual.spec.js +28 -0
  495. package/ds-mobile/MobileDatePicker/MobileDatePickerCO.js +35 -0
  496. package/ds-mobile/MobileDropdownMenu/MobileDropdownMenu.func.spec.js +38 -0
  497. package/ds-mobile/MobileDropdownMenu/MobileDropdownMenu.visual.spec.js +16 -0
  498. package/ds-mobile/MobileDropdownMenu/MobileDropdownMenuCO.js +37 -0
  499. package/ds-mobile/MobileEmptyState/MobileEmptyState.visual.spec.js +15 -0
  500. package/ds-mobile/MobileEmptyState/MobileEmptyStateCO.js +14 -0
  501. package/ds-mobile/MobileFilterbar/MobileFilterbar.visual.spec.js +39 -0
  502. package/ds-mobile/MobileFilterbar/MobileFilterbarCO.js +19 -0
  503. package/ds-mobile/MobileFooter/MobileFooter.func.spec.js +26 -0
  504. package/ds-mobile/MobileFooter/MobileFooter.visual.spec.js +51 -0
  505. package/ds-mobile/MobileFooter/MobileFooterCO.js +27 -0
  506. package/ds-mobile/MobileListItem/MobileListItem.visual.spec.js +56 -0
  507. package/ds-mobile/MobileListItem/MobileListItemCO.js +19 -0
  508. package/ds-mobile/MobileLoadingPage/MobileLoadingPage.visual.spec.js +37 -0
  509. package/ds-mobile/MobileLoadingPage/MobileLoadingPageCO.js +19 -0
  510. package/ds-mobile/MobilePageHeader/MobilePageHeader.func.spec.js +22 -0
  511. package/ds-mobile/MobilePageHeader/MobilePageHeader.visual.spec.js +135 -0
  512. package/ds-mobile/MobilePageHeader/MobilePageHeaderCO.js +67 -0
  513. package/ds-mobile/MobileSelectList/MobileSelectList.visual.spec.js +56 -0
  514. package/ds-mobile/MobileSelectList/MobileSelectListCO.js +21 -0
  515. package/ds-mobile/MobileSeparator/MobileSeparator.visual.spec.js +28 -0
  516. package/ds-mobile/MobileSeparator/MobileSeparatorCO.js +17 -0
  517. package/ds-mobile/MobileTimePicker/MobileTimePickerCO.js +41 -0
  518. package/ds-mobile/Modal/MobileModal.visual.spec.js +56 -0
  519. package/ds-mobile/Modal/MobileModalCO.js +28 -0
  520. package/ds-mobile/PageFilter/PageFilter.visual.spec.js +46 -0
  521. package/ds-mobile/PageFilter/PageFilterCO.js +19 -0
  522. package/ds-mobile/PageForm/PageForm.visual.spec.js +14 -0
  523. package/ds-mobile/PageForm/PageFormCO.js +11 -0
  524. package/ds-mobile/PageList/PageList.visual.spec.js +31 -0
  525. package/ds-mobile/PageList/PageListCO.js +19 -0
  526. package/ds-mobile/PageSummary/PageSummary.visual.spec.js +20 -0
  527. package/ds-mobile/PageSummary/PageSummaryCO.js +11 -0
  528. package/ds-mobile/SwipeToRefresh/SwipeToRefresh.func.spec.js +26 -0
  529. package/ds-mobile/SwipeToRefresh/SwipeToRefreshCO.js +20 -0
  530. package/ds-mobile/Tabs/MobileTabs.visual.spec.js +91 -0
  531. package/ds-mobile/Tabs/TabsCO.js +37 -0
  532. package/ds-mobile/Tooltip/MobileTooltip.func.spec.js +17 -0
  533. package/ds-mobile/Tooltip/MobileTooltip.visual.spec.js +16 -0
  534. package/ds-mobile/Tooltip/TooltipCO.js +23 -0
  535. package/ds-mobile/helpers.js +7 -0
  536. package/ds-modal/Modal.func.spec.js +35 -0
  537. package/ds-modal/Modal.visual.spec.js +84 -0
  538. package/ds-modal/ModalCO.js +43 -0
  539. package/ds-modal-slide/ModalSlide.func.spec.js +69 -0
  540. package/ds-modal-slide/ModalSlide.visual.spec.js +120 -0
  541. package/ds-modal-slide/ModalSlideCO.js +71 -0
  542. package/ds-notification-badge/DSNotificationBadge.axe-core.func.spec.js +62 -0
  543. package/ds-notification-badge/DSNotificationBadge.visual.spec.js +72 -0
  544. package/ds-notification-badge/DSNotificationBadgeCO.js +26 -0
  545. package/ds-number-range-field/NumberRangeField.func.spec.js +75 -0
  546. package/ds-number-range-field/NumberRangeFieldCO.js +25 -0
  547. package/ds-page-header/DSPageHeader.visual.spec.js +115 -0
  548. package/ds-page-header/DSPageHeaderCO.js +62 -0
  549. package/ds-page-layout/PageLayout.visual.spec.js +44 -0
  550. package/ds-page-layout/PageLayoutCO.js +23 -0
  551. package/ds-page-number/DSPageNumber.func.spec.js +37 -0
  552. package/ds-page-number/DSPageNumberCO.js +36 -0
  553. package/ds-pagination/DSPagination.visual.spec.js +20 -0
  554. package/ds-pagination/DSPaginationCO.js +40 -0
  555. package/ds-pills/DSLabeledDropdownSinglePill.visual.spec.js +19 -0
  556. package/ds-pills/DSPills.func.spec.js +125 -0
  557. package/ds-pills/DSPills.visual.spec.js +74 -0
  558. package/ds-pills/DSPillsCO.js +110 -0
  559. package/ds-pills-v2/DSPills.axe-core.func.spec.js +136 -0
  560. package/ds-pills-v2/DSPills.func.spec.js +46 -0
  561. package/ds-pills-v2/DSPills.visual.spec.js +93 -0
  562. package/ds-pills-v2/DSPillsV2CO.js +70 -0
  563. package/ds-progress-indicator/DSProgressIndicator.func.spec.js +14 -0
  564. package/ds-progress-indicator/DSProgressIndicator.visual.spec.js +15 -0
  565. package/ds-progress-indicator/DSProgressIndicatorCO.js +24 -0
  566. package/ds-query-builder/DSQueryBuilder.error-states.spec.js +49 -0
  567. package/ds-query-builder/DSQueryBuilder.func.spec.js +69 -0
  568. package/ds-query-builder/DSQueryBuilder.visual.spec.js +121 -0
  569. package/ds-query-builder/DSQueryBuilderCO.js +153 -0
  570. package/ds-read-more/DSReadMore.func.spec.js +117 -0
  571. package/ds-read-more/DSReadMore.visual.spec.js +66 -0
  572. package/ds-read-more/DSReadMoreCO.js +52 -0
  573. package/ds-ribbon/DSRibbon.visual.spec.js +16 -0
  574. package/ds-ribbon/DSRibbonCO.js +15 -0
  575. package/ds-search-field/SearchField.func.spec.js +109 -0
  576. package/ds-search-field/SearchFieldCO.js +103 -0
  577. package/ds-separator-v2/DSSeparatorV2.visual.spec.js +14 -0
  578. package/ds-separator-v2/DSSeparatorV2CO.js +11 -0
  579. package/ds-shuttle/DSShuttle-infinite-scroll.func.spec.js +67 -0
  580. package/ds-shuttle/DSShuttle-infinite-scroll.visual.spec.js +65 -0
  581. package/ds-shuttle/DSShuttle-truncate-option.visual.spec.js +23 -0
  582. package/ds-shuttle/DSShuttle.func.spec.js +138 -0
  583. package/ds-shuttle/DSShuttleCO.js +193 -0
  584. package/ds-shuttle-v2/DSShuttleV2CO.js +173 -0
  585. package/ds-shuttle-v2/basic/DSShuttleV2.a11y.func.spec.js +43 -0
  586. package/ds-shuttle-v2/basic/DSShuttleV2.axe-core.func.spec.js +73 -0
  587. package/ds-shuttle-v2/basic/DSShuttleV2.func.spec.js +67 -0
  588. package/ds-shuttle-v2/basic/DSShuttleV2.keyboard.func.spec.js +260 -0
  589. package/ds-shuttle-v2/basic/DSShuttleV2.visual.spec.js +198 -0
  590. package/ds-shuttle-v2/drillingdown/DSShuttleV2.drilldown.axe-core.func.spec.js +83 -0
  591. package/ds-shuttle-v2/drillingdown/DSShuttleV2.drilldown.func.spec.js +108 -0
  592. package/ds-shuttle-v2/drillingdown/DSShuttleV2.drilldown.kb.func.spec.js +151 -0
  593. package/ds-shuttle-v2/extra/DSShuttleV2.extra.axe-core.func.spec.js +28 -0
  594. package/ds-shuttle-v2/extra/DSShuttleV2.extra.func.spec.js +35 -0
  595. package/ds-shuttle-v2/extra/DSShuttleV2.extra.visual.spec.js +30 -0
  596. package/ds-shuttle-v2/filtering/DSShuttleV2.filter.axe-core.func.spec.js +35 -0
  597. package/ds-shuttle-v2/filtering/DSShuttleV2.filter.func.spec.js +65 -0
  598. package/ds-shuttle-v2/filtering/DSShuttleV2.filter.kb.func.spec.js +50 -0
  599. package/ds-shuttle-v2/globalcheckbox/DSShuttleV2.globalcheckbox.axe-core.func.spec.js +33 -0
  600. package/ds-shuttle-v2/globalcheckbox/DSShuttleV2.globalcheckbox.func.spec.js +106 -0
  601. package/ds-shuttle-v2/globalcheckbox/DSShuttleV2.globalcheckbox.kb.func.spec.js +67 -0
  602. package/ds-shuttle-v2/items/DSShuttleV2.items.axe-core.func.spec.js +68 -0
  603. package/ds-shuttle-v2/items/DSShuttleV2.items.func.spec.js +110 -0
  604. package/ds-shuttle-v2/items/DSShuttleV2.items.kb.func.spec.js +44 -0
  605. package/ds-side-panel/DSSidePanel.func.spec.js +98 -0
  606. package/ds-side-panel/DSSidePanelCO.js +47 -0
  607. package/ds-side-panel/DSSlidePanel.visual.spec.js +61 -0
  608. package/ds-skeleton/DSSkeleton.js +11 -0
  609. package/ds-skipTo/DSSkipTo.func.spec.js +85 -0
  610. package/ds-skipTo/DSSkipToCO.js +28 -0
  611. package/ds-slider/DSSlider.func.spec.js +17 -0
  612. package/ds-slider/DSSlider.visual.spec.js +39 -0
  613. package/ds-slider/DSSliderCO.js +48 -0
  614. package/ds-squareindicator/DSSquareIndicator.func.spec.js +17 -0
  615. package/ds-squareindicator/DSSquareIndicator.visual.spec.js +21 -0
  616. package/ds-squareindicator/DSSquareIndicatorCO.js +37 -0
  617. package/ds-stepper/Stepper.func.spec.js +30 -0
  618. package/ds-stepper/Stepper.visual.spec.js +57 -0
  619. package/ds-stepper/StepperCO.js +32 -0
  620. package/ds-svg/DSSvg.func.spec.js +54 -0
  621. package/ds-svg/DSSvg.visual.spec.js +58 -0
  622. package/ds-svg/DSSvgCO.js +37 -0
  623. package/ds-tabs/DSTabs.func.spec.js +160 -0
  624. package/ds-tabs/DSTabs.visual.spec.js +268 -0
  625. package/ds-tabs/DSTabsCO.js +122 -0
  626. package/ds-text-box/DSTextBox.func.spec.js +40 -0
  627. package/ds-text-box/DSTextBox.visual.spec.js +51 -0
  628. package/ds-text-box/DSTextBoxCO.js +40 -0
  629. package/ds-time-picker/DSTimePicker.func.spec.js +48 -0
  630. package/ds-time-picker/DSTimePickerCO.js +113 -0
  631. package/ds-toast/DSToast.axe-core.func.spec.js +35 -0
  632. package/ds-toast/DSToast.func.spec.js +29 -0
  633. package/ds-toast/DSToast.visual.spec.js +222 -0
  634. package/ds-toast/DSToastCO.js +84 -0
  635. package/ds-toolbar/Toolbar.func.spec.js +26 -0
  636. package/ds-toolbar/ToolbarCO.js +23 -0
  637. package/ds-toolbar-v2/DSToolbarV2.func.spec.js +61 -0
  638. package/ds-toolbar-v2/DSToolbarV2.visual.spec.js +94 -0
  639. package/ds-toolbar-v2/DSToolbarV2CO.js +31 -0
  640. package/ds-tooltip/DSTooltip.func.spec.js +86 -0
  641. package/ds-tooltip/DSTooltip.visual.spec.js +31 -0
  642. package/ds-tooltip/DSTooltipCO.js +44 -0
  643. package/ds-transition/DSTransition.visual.spec.js +40 -0
  644. package/ds-transition/DSTransitionCO.js +19 -0
  645. package/ds-treeview/DSTreeViewCO.js +465 -0
  646. package/ds-treeview/TreeView-autoscroll.func.spec.js +47 -0
  647. package/ds-treeview/TreeView-controlled.func.spec.js +62 -0
  648. package/ds-treeview/TreeView-dnd.func.spec.js +104 -0
  649. package/ds-treeview/TreeView-dnd.visual.spec.js +41 -0
  650. package/ds-treeview/TreeView-expand-collapse.func.spec.js +96 -0
  651. package/ds-treeview/TreeView-right-addon.func.spec.js +80 -0
  652. package/ds-treeview/TreeView-search.func.spec.js +138 -0
  653. package/ds-treeview/TreeView-single-multi.func.spec.js +416 -0
  654. package/ds-treeview/TreeView-specs.func.spec.js +39 -0
  655. package/ds-treeview/TreeView-states.func.spec.js +155 -0
  656. package/ds-treeview/TreeView-truncate-tooltip.func.spec.js +20 -0
  657. package/ds-treeview/Treeview.visual.spec.js +116 -0
  658. package/ds-typography/DSTypography.func.spec.js +23 -0
  659. package/ds-typography/DSTypography.resize.visual.spec.js +69 -0
  660. package/ds-typography/DSTypography.visual.spec.js +72 -0
  661. package/ds-typography/DSTypographyCO.js +34 -0
  662. package/ds-uploader/Uploader.func.spec.js +29 -0
  663. package/ds-uploader/Uploader.visual.spec.js +45 -0
  664. package/ds-uploader/UploaderCO.js +38 -0
  665. package/ds-virtuallist/DSVirtualList.visual.spec.js +31 -0
  666. package/ds-virtuallist/DSVirtualListCO.js +23 -0
  667. package/ds-wizard/DSWizard.visual.spec.js +49 -0
  668. package/ds-wizard/DSWizardCO.js +25 -0
  669. package/ds-wysiwyg/DSWysiwyg.func.spec.js +234 -0
  670. package/ds-wysiwyg/DSWysiwyg.image-positioning.func.spec.js +43 -0
  671. package/ds-wysiwyg/DSWysiwyg.visual.spec.js +81 -0
  672. package/ds-wysiwyg/DSWysiwygCO.js +166 -0
  673. package/ds-zipcode-search/DSZipCodeSearch.func.spec.js +55 -0
  674. package/ds-zipcode-search/DSZipCodeSearchCO.js +37 -0
  675. package/ds-zoom/DSZoom.func.spec.js +17 -0
  676. package/ds-zoom/DSZoom.visual.spec.js +26 -0
  677. package/ds-zoom/DSZoomCO.js +28 -0
  678. package/gestures.js +182 -0
  679. package/helpers.js +413 -0
  680. package/jsconfig.json +5 -0
  681. package/package.json +11 -0
  682. package/utils.js +1 -0
  683. package/z-index/ZIndex.visual.spec.js +176 -0
  684. package/z-index/ZindexCO.js +155 -0
@@ -0,0 +1,230 @@
1
+ /* eslint-env mocha */
2
+ /* eslint-disable max-lines */
3
+ import { Key } from 'webdriverio';
4
+ import DSDataTableCO from '../DSDataTableCO';
5
+ import { FilterBarCO, FiltersCO, HeaderCO, RowCO } from '../components';
6
+ import { type } from '../../helpers';
7
+
8
+ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
9
+ describe('PUI-6956 - DataTable, Filter, Keyboard navigation', () => {
10
+ before('loading page', async () => {
11
+ const errorOnGo = await DSDataTableCO.filterbarTest.go();
12
+ if (errorOnGo) throw errorOnGo;
13
+ await DSDataTableCO.waitForDataTable();
14
+ });
15
+ it('01: should focus the filter bar elipsis button', async () => {
16
+ await browser.keys(Key.Tab);
17
+ const filterBarElipsisBt = await FilterBarCO.getFilterBarDropdownMenuButton();
18
+ await expect(filterBarElipsisBt).toBeFocused();
19
+ });
20
+ it('02: should focus ID column', async () => {
21
+ await browser.keys(Key.Tab);
22
+ const headerIdColumn = await HeaderCO.getHeaderCellByIndex(0);
23
+ await expect(headerIdColumn).toBeFocused();
24
+ });
25
+ it('03: should focus the filter icon', async () => {
26
+ await browser.keys(Key.Return);
27
+ const idColumnFilterIcon = await HeaderCO.getHeaderCellByIndex(0);
28
+ const iconIdColumn = await FiltersCO.getHeaderCellFilterButtonByHeaderCell(idColumnFilterIcon, 0);
29
+ await expect(iconIdColumn).toBeFocused();
30
+ });
31
+ it('04: should open the dropdown and focus the input', async () => {
32
+ await browser.keys(Key.Return);
33
+ const inputSingleSelect = await FiltersCO.filterSingleSelectPopper.getInput();
34
+ await expect(inputSingleSelect).toBeFocused();
35
+ });
36
+ it('05: should show only one value on the datatable and focus should be on filter button', async () => {
37
+ await browser.keys(Key.Enter);
38
+ const dataTableValues = (await RowCO.getRows()).length;
39
+ const filterBtn = await HeaderCO.getFilterBtnByIndex(0);
40
+ await expect(filterBtn).toBeFocused();
41
+ await expect(dataTableValues).toEqual(1);
42
+ });
43
+ });
44
+
45
+ describe('PUI-6958 - DataTable, Filter, Select filter', () => {
46
+ before('loading page', async () => {
47
+ const errorOnGo = await DSDataTableCO.filterableWithFilterBar.go();
48
+ if (errorOnGo) throw errorOnGo;
49
+ await DSDataTableCO.waitForDataTable();
50
+ });
51
+ it('01: should open the popup and focus the text input', async () => {
52
+ await FiltersCO.openFilterPopperByColumnName('name', 0);
53
+ const inputSingleSelect = await FiltersCO.filterSingleSelectPopper.getInput();
54
+ await expect(inputSingleSelect).toBeFocused();
55
+ });
56
+ it('02: should filter the menu items', async () => {
57
+ await type('JOHN');
58
+ const menuItems = await FiltersCO.filterSingleSelectPopper.getMenuItems();
59
+ const menuItemsCuant = menuItems.length;
60
+ const textFirstItem = await menuItems[0];
61
+ await expect(menuItemsCuant).toEqual(1);
62
+ await expect(textFirstItem).toHaveTextContaining('John');
63
+ });
64
+ it('03: all the results should contain the chosen option and focus return to filter button', async () => {
65
+ await (await FiltersCO.filterSingleSelectPopper.getMenuItem(0)).click();
66
+ const results = await RowCO.getRows();
67
+ const filteredNames = await DSDataTableCO.getAllColumnResults(results, 1);
68
+ const isFiltered = filteredNames.every((name) => name.toLowerCase() === 'john');
69
+ const filterBtn = await HeaderCO.getFilterBtnByIndex(1);
70
+ await expect(filterBtn).toBeFocused();
71
+ await expect(isFiltered).toBeTruthy();
72
+ });
73
+ it('04: should display only the option selected in the menu', async () => {
74
+ await FiltersCO.openFilterPopperByColumnName('name', 0);
75
+ const menuItems = await FiltersCO.filterSingleSelectPopper.getMenuItems();
76
+ const menuItemsCuant = menuItems.length;
77
+ const textFirstItem = await menuItems[0];
78
+ await expect(menuItemsCuant).toEqual(1);
79
+ await expect(textFirstItem).toHaveTextContaining('John');
80
+ });
81
+ it('05: should show all options after removing the filter from filterbar', async () => {
82
+ await (await FilterBarCO.getPillCloseButtonByIndex(0)).click();
83
+ const results = await RowCO.getRows();
84
+ const filteredNames = await DSDataTableCO.getAllColumnResults(results, 1);
85
+ const isFiltered = filteredNames.every((name) => name.toLowerCase() === 'john');
86
+ await expect(isFiltered).not.toBeTruthy();
87
+ });
88
+ });
89
+
90
+ describe('PUI-6959 - DataTable, Filter, Multi select filter', () => {
91
+ before('loading page', async () => {
92
+ const errorOnGo = await DSDataTableCO.filterableWithFilterBar.go();
93
+ if (errorOnGo) throw errorOnGo;
94
+ await DSDataTableCO.waitForDataTable();
95
+ });
96
+ it('should open the popup and focus the text input', async () => {
97
+ await FiltersCO.openFilterPopperByColumnName('position', 0);
98
+ const inputMultiSelect = await FiltersCO.filterMultiSelectPopper.getInput();
99
+ await expect(inputMultiSelect).toBeFocused();
100
+ });
101
+ it('should filter the menu items', async () => {
102
+ await type('react');
103
+ const menuItems = await FiltersCO.filterMultiSelectPopper.getMenuItems();
104
+ await menuItems[0].click();
105
+ const dataTableValues = menuItems.length;
106
+ const textFirstItem = await menuItems[0];
107
+ await expect(dataTableValues).toEqual(1);
108
+ await expect(textFirstItem).toHaveTextContaining('React');
109
+ });
110
+ it('all the records should contain the chosen option', async () => {
111
+ const filterMultiInput = await FiltersCO.filterMultiSelectPopper.getInput();
112
+ await FiltersCO.clearInput(filterMultiInput);
113
+ await type('vue');
114
+ const menuItems = await FiltersCO.filterMultiSelectPopper.getMenuItems();
115
+ await menuItems[0].click();
116
+ const results = await RowCO.getRows();
117
+ const filteredPositions = await DSDataTableCO.getAllColumnResults(results, 2);
118
+ const isFiltered = filteredPositions.every(
119
+ (position) => position.toLowerCase().includes('react') || position.toLowerCase().includes('vue'),
120
+ );
121
+ await expect(isFiltered).toBeTruthy();
122
+ });
123
+ it('should show all options after removing the filter from filterbar', async () => {
124
+ await (await FilterBarCO.getPillCloseButtonByIndex(0)).click();
125
+ // click 0 again since the the pill in the index position 1 does not exist anymore
126
+ await (await FilterBarCO.getPillCloseButtonByIndex(0)).click();
127
+ const results = await RowCO.getRows();
128
+ const filteredPositions = await DSDataTableCO.getAllColumnResults(results, 2);
129
+ const isFiltered = filteredPositions.every(
130
+ (position) => position.toLowerCase().includes('react') || position.toLowerCase().includes('vue'),
131
+ );
132
+ await expect(isFiltered).not.toBeTruthy();
133
+ });
134
+ });
135
+ describe('PUI-7748 - DataTable, Filter, multiple selections', () => {
136
+ before('loading page', async () => {
137
+ const errorOnGo = await DSDataTableCO.filterableWithFilterBar.go();
138
+ if (errorOnGo) throw errorOnGo;
139
+ await DSDataTableCO.waitForDataTable();
140
+ });
141
+ it('should select an option from name column', async () => {
142
+ await FiltersCO.openFilterPopperByColumnName('name', 0);
143
+ const options = await FiltersCO.filterSingleSelectPopper.getMenuItems();
144
+ const dropdownMenu = await FiltersCO.filterSingleSelectPopper.getPopper();
145
+ await options[1].waitForDisplayed();
146
+ await options[1].click();
147
+ const pill = await FilterBarCO.getPillByText('Francisco');
148
+ await expect(pill).toBeDisplayed();
149
+ await expect(dropdownMenu).not.toBeDisplayed();
150
+ });
151
+ it('should select two options from position column', async () => {
152
+ await FiltersCO.openFilterPopperByColumnName('position', 0);
153
+ const inputMultiSelect = await FiltersCO.filterMultiSelectPopper.getInput();
154
+ await inputMultiSelect.waitForDisplayed();
155
+ const options = await FiltersCO.filterMultiSelectPopper.getMenuItems();
156
+ await options[0].click();
157
+ await options[1].click();
158
+ const pill1 = await FilterBarCO.getPillByText('React');
159
+ const pill2 = await FilterBarCO.getPillByText('Full');
160
+ await expect(pill1).toBeDisplayed();
161
+ await expect(pill2).toBeDisplayed();
162
+ });
163
+ it('should remove correctly an option from position column', async () => {
164
+ const options = await FiltersCO.filterMultiSelectPopper.getMenuItems();
165
+ await options[1].click();
166
+ const pill = await FilterBarCO.getPillByText('Full');
167
+ await expect(pill).not.toBeDisplayed();
168
+ });
169
+ it('should remove correctly an option from name column', async () => {
170
+ const removePill = await FilterBarCO.getPillCloseButtonByName('Remove Francisco');
171
+ await removePill.click();
172
+ const pill = await FilterBarCO.getPillByText('Francisco');
173
+ await expect(pill).not.toBeDisplayed();
174
+ });
175
+ });
176
+ describe('PUI-6957 - DataTable, TextFilter, export CSV', () => {
177
+ before('loading page', async () => {
178
+ const errorOnGo = await DSDataTableCO.exportCsv.go();
179
+ if (errorOnGo) throw errorOnGo;
180
+ await DSDataTableCO.waitForDataTable();
181
+ });
182
+ it('should open the popup and focus the text input', async () => {
183
+ await FiltersCO.openFilterPopperByColumnName('name', 0);
184
+ const input = await $('[data-testid="combobox-input"]');
185
+ await expect(input).toBeFocused();
186
+ });
187
+ it('all the records should contain the chosen option', async () => {
188
+ await type('john');
189
+ const menuItems = await FiltersCO.filterSingleSelectPopper.getMenuItems();
190
+ await menuItems[0].click();
191
+ const results = await RowCO.getRows();
192
+ const filteredPositions = await DSDataTableCO.getAllColumnResults(results, 2);
193
+ const isFiltered = filteredPositions.every((position) => position.toLowerCase().includes('john'));
194
+ await expect(isFiltered).toBeTruthy();
195
+ });
196
+ it('should show all options after removing the filter from filterbar', async () => {
197
+ await FiltersCO.openFilterPopperByColumnName('name', 0);
198
+ const menuItems = await FiltersCO.filterSingleSelectPopper.getMenuItems();
199
+ await menuItems[0].click();
200
+ const results = await RowCO.getRows();
201
+ const filteredPositions = await DSDataTableCO.getAllColumnResults(results, 2);
202
+ const isFiltered = filteredPositions.every((position) => position.toLowerCase().includes('john'));
203
+ await expect(isFiltered).not.toBeTruthy();
204
+ });
205
+ });
206
+ describe('PUI-9216 - DataTable, Filter, toggle behavior', () => {
207
+ before('loading page', async () => {
208
+ const errorOnGo = await DSDataTableCO.filterableWithFilterBar.go();
209
+ if (errorOnGo) throw errorOnGo;
210
+ await DSDataTableCO.waitForDataTable();
211
+ });
212
+ it('01: should open and close correctly the menu by clicking the search btn', async () => {
213
+ await FiltersCO.openFilterPopperByColumnName('name', 0);
214
+ const dropdownMenu = await FiltersCO.filterSingleSelectPopper.getPopper();
215
+ await dropdownMenu.waitForDisplayed();
216
+ await FiltersCO.clickHeaderFilterBtnByHeader('name', 0);
217
+ await expect(dropdownMenu).not.toBeDisplayed();
218
+ });
219
+ it('02: should open and close correctly the menu after selecting an option', async () => {
220
+ await FiltersCO.openFilterPopperByColumnName('position', 0);
221
+ const dropdownMenu = await FiltersCO.filterMultiSelectPopper.getPopper();
222
+ const options = await FiltersCO.filterMultiSelectPopper.getMenuItems();
223
+ await dropdownMenu.waitForDisplayed();
224
+ await options[1].click();
225
+ await dropdownMenu.waitForDisplayed();
226
+ await FiltersCO.clickHeaderFilterBtnByHeader('position', 0);
227
+ await expect(dropdownMenu).not.toBeDisplayed();
228
+ });
229
+ });
230
+ }
@@ -0,0 +1,4 @@
1
+ export const asyncFilter = async (arr, predicate) => {
2
+ const results = await Promise.all(arr.map(predicate));
3
+ return arr.filter((_v, index) => results[index]);
4
+ };
@@ -0,0 +1,19 @@
1
+ export async function pressShiftKey() {
2
+ await browser.performActions([
3
+ {
4
+ type: 'key',
5
+ id: 'keyboard',
6
+ actions: [{ type: 'keyDown', value: '\uE008' }],
7
+ },
8
+ ]);
9
+ }
10
+
11
+ export async function releaseShiftKey() {
12
+ await browser.performActions([
13
+ {
14
+ type: 'key',
15
+ id: 'keyboard',
16
+ actions: [{ type: 'keyUp', value: '\uE008' }],
17
+ },
18
+ ]);
19
+ }
@@ -0,0 +1,2 @@
1
+ export const getElementBoundingRect = (selector) =>
2
+ browser.execute((element) => element.getBoundingClientRect(), selector);
@@ -0,0 +1,12 @@
1
+ export async function getElementByIndex(selectorFn, index) {
2
+ return browser.waitUntil(
3
+ async () => {
4
+ const selector = await selectorFn();
5
+ return selector.length > index ? selector[index] : false;
6
+ },
7
+ {
8
+ timeout: 5000,
9
+ timeoutMsg: 'element not displayed after 5 seconds',
10
+ },
11
+ );
12
+ }
@@ -0,0 +1,3 @@
1
+ export async function getElementDragHandler(element) {
2
+ return element.$('[data-testid="data-table-drag-handle"]');
3
+ }
@@ -0,0 +1 @@
1
+ export const getRadioValue = async (selector) => selector.getAttribute('aria-checked');
@@ -0,0 +1,7 @@
1
+ export * from './getElementByIndex';
2
+ export * from './getElementDragHandler';
3
+ export * from './asyncFilter';
4
+ export * from './getRadioValue';
5
+ export * from './getElementBoundingRect';
6
+ export * from './throttleTyping';
7
+ export * from './asyncShiftPress';
@@ -0,0 +1,6 @@
1
+ export const throttleTyping = async (text) => {
2
+ for (let charIndex = 0; charIndex < text.length; charIndex += 1) {
3
+ // eslint-disable-next-line no-await-in-loop
4
+ await browser.keys(text[charIndex]);
5
+ }
6
+ };
@@ -0,0 +1,31 @@
1
+ /* eslint-disable max-lines */
2
+ /* eslint-disable max-len */
3
+ /* eslint-disable prettier/prettier */
4
+ import { Key } from 'webdriverio';
5
+ import DSDataTableCO from '../DSDataTableCO';
6
+ import { CellCO } from '../components';
7
+
8
+ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
9
+ describe('PUI-8828 - DataTable: Custom cell with datepicker - Func.', async () => {
10
+ before('loading page', async () => {
11
+ const errorOnGo = await DSDataTableCO.customWithDate.go();
12
+ if (errorOnGo) throw errorOnGo;
13
+ await DSDataTableCO.waitForDataTable();
14
+ });
15
+ it('01: should be possible open date time picker with Enter key', async () => {
16
+ const yearInput = await CellCO.getYearInput();
17
+ await yearInput.click();
18
+ await browser.keys(Key.Tab);
19
+ await browser.keys(Key.Enter);
20
+ const dateTimePicker = await CellCO.getDateTimePickerCalendar();
21
+ await expect(dateTimePicker).toBeDisplayedInViewport();
22
+ });
23
+ it('02: should be possible close date time picker with Escape key', async () => {
24
+ await browser.keys(Key.Escape);
25
+ const dateTimePicker = await CellCO.getDateTimePickerCalendar();
26
+ const dateTimePickerBtn = await CellCO.getDateTimePickerBtn();
27
+ await expect(dateTimePicker).not.toBeDisplayedInViewport();
28
+ await expect(dateTimePickerBtn).toBeFocused();
29
+ });
30
+ });
31
+ }
@@ -0,0 +1,70 @@
1
+ import { Key } from 'webdriverio';
2
+ import DSDataTableCO from '../DSDataTableCO';
3
+ import { HeaderCO } from '../components';
4
+ import { mouseOver } from '../../helpers';
5
+
6
+ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
7
+ describe('PUI-7205 - DataTable, Header, Sort by Column - Visual Test', () => {
8
+ // PUI-7054
9
+ before('loading page', async () => {
10
+ const errorOnGo = await DSDataTableCO.sortByColumn.go();
11
+ if (errorOnGo) throw errorOnGo;
12
+ await DSDataTableCO.waitForDataTable();
13
+ });
14
+ it('01: should focus position header and show its icons properly', async () => {
15
+ await browser.keys(Key.Tab);
16
+ await browser.keys(Key.Tab);
17
+ await browser.keys(Key.Tab);
18
+ const snapshot = await browser.checkSnapshot(DSDataTableCO.snapshotPath('headers-focus-header'));
19
+ await expect(snapshot).toEqual(0);
20
+ });
21
+ it('02: should hover country header and show its icons properly', async () => {
22
+ const positionHeader = await HeaderCO.getHeaderCellByIndex(3);
23
+ await mouseOver(positionHeader);
24
+ const snapshot = await browser.checkSnapshot(DSDataTableCO.snapshotPath('headers-hover-header'));
25
+ await expect(snapshot).toEqual(0);
26
+ });
27
+ it('03: should hover truncated name header and show its icons and tooltip properly', async () => {
28
+ const nameLongHeader = await HeaderCO.getHeaderCellByIndex(1);
29
+ await mouseOver(nameLongHeader, 50, 10);
30
+ const snapshot = await browser.checkSnapshot(DSDataTableCO.snapshotPath('headers-hover-longheader-wtooltip'));
31
+ await expect(snapshot).toEqual(0);
32
+ });
33
+ it('04: should sort descending by first column and get the proper sort icon', async () => {
34
+ const idHeader = await HeaderCO.getHeaderCellByIndex(0);
35
+ await idHeader.click();
36
+ const snapshot = await browser.checkSnapshot(DSDataTableCO.snapshotPath('headers-descending-icon-id'));
37
+ await expect(snapshot).toEqual(0);
38
+ });
39
+ it('05: should sort ascending by first column and get the proper sort icon', async () => {
40
+ const idHeader = await HeaderCO.getHeaderCellByIndex(0);
41
+ await idHeader.click();
42
+ const snapshot = await browser.checkSnapshot(DSDataTableCO.snapshotPath('headers-ascending-icon-id'));
43
+ await expect(snapshot).toEqual(0);
44
+ });
45
+ });
46
+
47
+ describe('PUI-6978 - DataTable, Header, Required Column - Visual Test', () => {
48
+ before('loading page', async () => {
49
+ const errorOnGo = await DSDataTableCO.requiredColumns.go();
50
+ if (errorOnGo) throw errorOnGo;
51
+ await DSDataTableCO.waitForDataTable();
52
+ });
53
+ it('should display the required column properly', async () => {
54
+ const snapshot = await browser.checkSnapshot(DSDataTableCO.snapshotPath('required-column'));
55
+ await expect(snapshot).toEqual(0);
56
+ });
57
+ });
58
+
59
+ describe('PUI-7042 - DataTable, Header, Text Wrap Truncated Columns - Visual Test', () => {
60
+ before('loading page', async () => {
61
+ const errorOnGo = await DSDataTableCO.textWrapTruncColumn.go();
62
+ if (errorOnGo) throw errorOnGo;
63
+ await DSDataTableCO.waitForDataTable();
64
+ });
65
+ it('should display the text wrapped truncated columns properly', async () => {
66
+ const snapshot = await browser.checkSnapshot(DSDataTableCO.snapshotPath('text-wrap-trunc-column'));
67
+ await expect(snapshot).toEqual(0);
68
+ });
69
+ });
70
+ }
@@ -0,0 +1,40 @@
1
+ /* eslint-disable wdio/no-pause */
2
+ /* eslint-disable max-len */
3
+
4
+ import DSDataTableCO from '../DSDataTableCO';
5
+ import { RowCO } from '../components';
6
+ import { axeCoreCheck } from '../../helpers';
7
+
8
+ if (
9
+ (!browser.capabilities['ice:options'].isPhone &&
10
+ !browser.capabilities['ice:options'].isTablet &&
11
+ browser.capabilities.browserName === 'Chrome') ||
12
+ browser.capabilities.browserName === 'chrome'
13
+ ) {
14
+ describe('PUI-11444 - DataTable, Header, Required Column - Visual Test', () => {
15
+ before('loading page', async () => {
16
+ const errorOnGo = await DSDataTableCO.requiredColumns.go();
17
+ if (errorOnGo) throw errorOnGo;
18
+ await DSDataTableCO.waitForDataTable();
19
+ });
20
+ it('01: should display the required column and pass axe-core scan', async () => {
21
+ const row = await RowCO.getRowByIndex(1);
22
+ await row.waitForDisplayed();
23
+ const result = await axeCoreCheck();
24
+ expect(result.length).toBe(0);
25
+ });
26
+ });
27
+ // Unskip after PUI-11469 is fixed
28
+ describe.skip('PUI-11434 - DataTable inside Tabs, Dnd, Rows - visual', () => {
29
+ before('loading page', async () => {
30
+ const errorOnGo = await DSDataTableCO.datatableInsideTabs.go();
31
+ if (errorOnGo) throw errorOnGo;
32
+ await DSDataTableCO.waitForDataTable();
33
+ });
34
+ it('01: should display data table inside tabs and pass axe-core scan', async () => {
35
+ await (await RowCO.getRowByIndex(0)).click();
36
+ const result = await axeCoreCheck();
37
+ expect(result.length).toBe(0);
38
+ });
39
+ });
40
+ }
@@ -0,0 +1,52 @@
1
+ /* eslint-disable wdio/no-pause */
2
+ /* eslint-disable max-len */
3
+
4
+ import DSDataTableCO from '../DSDataTableCO';
5
+ import { HeaderCO, PaginationNavCO } from '../components';
6
+ import { axeCoreCheck } from '../../helpers';
7
+
8
+ if (
9
+ (!browser.capabilities['ice:options'].isPhone &&
10
+ !browser.capabilities['ice:options'].isTablet &&
11
+ browser.capabilities.browserName === 'Chrome') ||
12
+ browser.capabilities.browserName === 'chrome'
13
+ ) {
14
+ describe('PUI-11448 - DataTable, Pagination - Visual Test', async () => {
15
+ before('loading page', async () => {
16
+ const errorOnGo = await DSDataTableCO.paginatedWithDetail.go();
17
+ if (errorOnGo) throw errorOnGo;
18
+ await DSDataTableCO.waitForDataTable();
19
+ });
20
+ it('should display the first page of the DataTable-paginated, previous arrow disabled', async () => {
21
+ const result = await axeCoreCheck();
22
+ expect(result.length).toBe(0);
23
+ });
24
+ it('should display the opened dropdown menu for the elements-per-page', async () => {
25
+ await (await PaginationNavCO.getElemsPerPageMenu()).click();
26
+ const result = await axeCoreCheck();
27
+ expect(result.length).toBe(0);
28
+ });
29
+ it('should display the opened dropdown menu for the pages-nav', async () => {
30
+ await (await PaginationNavCO.getPagesMenu()).click();
31
+ const result = await axeCoreCheck();
32
+ expect(result.length).toBe(0);
33
+ });
34
+ it('should display the segmented pagination mode', async () => {
35
+ await (await HeaderCO.getHeaderCellByIndex(0)).click();
36
+ const result = await axeCoreCheck();
37
+ expect(result.length).toBe(0);
38
+ });
39
+ it('should display the opened dropdown menu for the pages-nav segmented', async () => {
40
+ const pageMenu = await PaginationNavCO.getPagesMenu();
41
+ await pageMenu.click();
42
+ const result = await axeCoreCheck();
43
+ expect(result.length).toBe(0);
44
+ });
45
+ it('should display any other page, prev arrow enabled', async () => {
46
+ const menuOpt3 = await PaginationNavCO.getOpenMenuOptsByIndex(4);
47
+ await menuOpt3.click();
48
+ const result = await axeCoreCheck();
49
+ expect(result.length).toBe(0);
50
+ });
51
+ });
52
+ }
@@ -0,0 +1,152 @@
1
+ /* eslint-disable max-len */
2
+ /* eslint-disable prettier/prettier */
3
+ import { Key } from 'webdriverio';
4
+ import DSDataTableCO from '../DSDataTableCO';
5
+ import { PaginationNavCO, RowCO, HeaderCO, CellCO } from '../components';
6
+ import { type } from '../../helpers';
7
+
8
+ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
9
+ describe('PUI-7477 - DataTable, Pagination -Func.', async () => {
10
+ before('loading page', async () => {
11
+ const errorOnGo = await DSDataTableCO.paginatedWithDetail.go();
12
+ if (errorOnGo) throw errorOnGo;
13
+ await DSDataTableCO.waitForDataTable();
14
+ });
15
+ it('01: should have the previous page button disabled', async () => {
16
+ const prevPageBt = await PaginationNavCO.getPrevPageBt();
17
+ const disabled = await prevPageBt.getAttribute('aria-disabled');
18
+ await expect(disabled).toBe('true');
19
+ });
20
+ it('02: should expand the dropdown menu of the pages per component when clicking its button', async () => {
21
+ const elemsPerPage = await PaginationNavCO.getElemsPerPageMenu();
22
+ await elemsPerPage.click();
23
+ const elem = await PaginationNavCO.getDropDownMenu();
24
+ await expect(elem).toBeDisplayedInViewport();
25
+ });
26
+ it('03: should start with 10 elements on the DataTable', async () => {
27
+ const howManyElements = await (await RowCO.getRows()).length;
28
+ await expect(howManyElements).toBe(10);
29
+ });
30
+ it('04: should change the quantity of elements on the page to 25', async () => {
31
+ const row1 = await RowCO.getRowByIndex(0);
32
+ await row1.click();
33
+ await browser.keys(Key.PageDown);
34
+ const elemsPerPage = await PaginationNavCO.getElemsPerPageMenu();
35
+ await elemsPerPage.click();
36
+ const twentyfiveElemsPerPageOpt = await PaginationNavCO.getOpenMenuOptsByIndex(1);
37
+ await twentyfiveElemsPerPageOpt.click();
38
+ const howManyElements = await (await RowCO.getRows()).length;
39
+ await expect(howManyElements).toBe(25);
40
+ });
41
+ it('05: should activate segmented pagination when clicking on a header and get content range from the footer', async () => {
42
+ const chosenHeader = await HeaderCO.getHeaderCellByIndex(1); // name
43
+ await chosenHeader.click();
44
+ const segPagCont = await PaginationNavCO.getSegPagContent();
45
+ const segPagText = await segPagCont.getText();
46
+ await expect(segPagText).toEqual('Peter - Peter');
47
+ });
48
+ it('06: should navigate to another page', async () => {
49
+ const pageMenu = await PaginationNavCO.getPagesMenu();
50
+ await pageMenu.click();
51
+ const thirdPageOpt = await PaginationNavCO.getOpenMenuOptsByIndex(2);
52
+ await thirdPageOpt.click();
53
+ const firstCell = await CellCO.getRowCellByIndex(await RowCO.getRowByIndex(0), 0);
54
+ const content = await CellCO.getCellContent(firstCell);
55
+ await expect(content).toEqual('357');
56
+ });
57
+ it('07: should verify that the content on the datatable is within the ranged pagination', async () => {
58
+ const startRangeCell = await CellCO.getRowCellByIndex(await RowCO.getRowByIndex(0), 1);
59
+ const startRangecontent = await CellCO.getCellContent(startRangeCell);
60
+ await browser.keys([Key.Shift, Key.Tab]);
61
+ await browser.keys([Key.Shift, Key.Tab]);
62
+ await browser.keys([Key.Shift, Key.Tab]);
63
+ const finishRangeCell = await CellCO.getRowCellByIndex(await RowCO.getRowByIndex(24), 1);
64
+ const finishRangecontent = await CellCO.getCellContent(finishRangeCell);
65
+ const rawRange = await (await PaginationNavCO.getSegPagContent()).getText();
66
+ const arrayRange = await rawRange.split(' - ');
67
+ await expect(startRangecontent).toEqual(arrayRange[0]);
68
+ await expect(finishRangecontent).toEqual(arrayRange[1]);
69
+ });
70
+ });
71
+ describe('PUI-7479 - DataTable, Pagination - Func. Keyboard', async () => {
72
+ before('loading page', async () => {
73
+ const errorOnGo = await DSDataTableCO.paginatedWithDetail.go();
74
+ if (errorOnGo) throw errorOnGo;
75
+ await DSDataTableCO.waitForDataTable();
76
+ });
77
+ it('should be able to tab to the elems-per-page menu from the last row of the table', async () => {
78
+ const elemsPerPage = await PaginationNavCO.getElemsPerPageBtn();
79
+ const lastRow = await RowCO.getRowByIndex(9);
80
+ await lastRow.click();
81
+ await browser.keys(Key.Tab);
82
+ await expect(elemsPerPage).toBeFocused();
83
+ });
84
+ it('should have 10 elems-per-page opt selected', async () => {
85
+ const elemsPerPageMenu = await PaginationNavCO.getElemsPerPageMenu();
86
+ const elemsPerPage = await elemsPerPageMenu.getText();
87
+ await expect(elemsPerPage).toEqual('10 / page');
88
+ });
89
+ it('should expand DropDmenu', async () => {
90
+ await browser.keys(Key.Enter);
91
+ const elemsPerPageDDMenu = await PaginationNavCO.getDropDownMenu();
92
+ await expect(elemsPerPageDDMenu).toBeDisplayedInViewport();
93
+ });
94
+ it('should select 50 elems-per-page opt', async () => {
95
+ await browser.keys(Key.ArrowDown);
96
+ await browser.keys(Key.ArrowDown);
97
+ await browser.keys(Key.Space);
98
+ const elemsPerPageMenu = await PaginationNavCO.getElemsPerPageMenu();
99
+ const elemsPerPage = await elemsPerPageMenu.getText();
100
+ await expect(elemsPerPage).toEqual('50 / page');
101
+ });
102
+ it('Should scroll to the last row and tab to get focus on elems-per-page', async () => {
103
+ const twentyFiveRow = await RowCO.getRowByIndex(24);
104
+ await twentyFiveRow.scrollIntoView();
105
+ const row30 = await RowCO.getRowByIndex(30); // first 10 rows are removed when scrolling down
106
+ await row30.scrollIntoView();
107
+ const row50 = await RowCO.getRowAriaIndex(50);
108
+ await expect(row50).toBeDisplayedInViewport();
109
+ });
110
+ it('should tab to the Pages Navigation Dropdown Menu', async () => {
111
+ await browser.keys(Key.Tab);
112
+ const pagesNav = await PaginationNavCO.getPagesBtn();
113
+ await expect(pagesNav).toBeFocused();
114
+ });
115
+ it('should expand the Pages navigation', async () => {
116
+ await browser.keys(Key.Enter);
117
+ const openDDMenu = await PaginationNavCO.getDropDownMenu();
118
+ await expect(openDDMenu).toBeDisplayedInViewport();
119
+ });
120
+ it('should choose the desired page with the keyboard and get to that page', async () => {
121
+ await type('6');
122
+ await browser.keys(Key.Space);
123
+ const pages = await PaginationNavCO.getPagesMenu();
124
+ await expect(pages).toHaveTextContaining('6');
125
+ });
126
+ });
127
+ describe('PUI-9649 - DataTable, Pagination page scrolling - Func', async () => {
128
+ before('loading page', async () => {
129
+ const errorOnGo = await DSDataTableCO.perPageScrolling.go();
130
+ if (errorOnGo) throw errorOnGo;
131
+ await DSDataTableCO.waitForDataTable();
132
+ });
133
+ it('01: should scroll to paginator', async () => {
134
+ const paginator = await PaginationNavCO.getPaginationNav();
135
+ await expect(paginator).not.toBeDisplayedInViewport();
136
+ await paginator.scrollIntoView();
137
+ await expect(paginator).toBeDisplayedInViewport();
138
+ });
139
+ it('02: should not scroll to the first element on the page', async () => {
140
+ const elemsPerPage = await PaginationNavCO.getElemsPerPageMenu();
141
+ await elemsPerPage.click();
142
+ const menu = await PaginationNavCO.getDropDownMenu();
143
+ await menu.waitForDisplayed();
144
+ const fiftyElemsPerPageOpt = await PaginationNavCO.getOpenMenuOptsByIndex(2);
145
+ await fiftyElemsPerPageOpt.click();
146
+ const elementsPerPage = await PaginationNavCO.getElemsPerPageBtn();
147
+ const paginator = await PaginationNavCO.getPaginationNav();
148
+ await expect(elementsPerPage).toBeFocused();
149
+ await expect(paginator).toBeDisplayedInViewport();
150
+ });
151
+ });
152
+ }