dimsum-e2e-tests 1.0.0-rc.1

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 (703) hide show
  1. package/CHANGELOG.md +12 -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 +148 -0
  10. package/ds-accordion/DSAccordion.func.spec.js +204 -0
  11. package/ds-accordion/DSAccordion.visual.spec.js +160 -0
  12. package/ds-accordion/DSAccordionCO.js +100 -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 +32 -0
  84. package/ds-circular-indeterminate-indicator/DSCircularIndicator.visual.spec.js +37 -0
  85. package/ds-circular-indeterminate-indicator/DSCircularIndicatorCO.js +37 -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 +55 -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 +35 -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 +64 -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-input-text/DSInputText.axe-core.func.spec.js +86 -0
  182. package/ds-controlled-form/ds-input-text/DSInputText.clearable.keyboard.func.spec.js +45 -0
  183. package/ds-controlled-form/ds-input-text/DSInputText.func.spec.js +127 -0
  184. package/ds-controlled-form/ds-input-text/DSInputText.smoke.spec.js +29 -0
  185. package/ds-controlled-form/ds-input-text/DSInputText.visual.spec.js +148 -0
  186. package/ds-controlled-form/ds-input-text/DSInputTextCO.js +53 -0
  187. package/ds-controlled-form/react-hook-form/ReactHook.func.spec.js +74 -0
  188. package/ds-controlled-form/react-hook-form/ReactHook.visual.spec.js +52 -0
  189. package/ds-controlled-form/react-hook-form/ReactHookCO.js +79 -0
  190. package/ds-controlled-form/useMask/Number/UseNumberMask.func.spec.js +192 -0
  191. package/ds-controlled-form/useMask/Number/UseNumberMask.visual.spec.js +35 -0
  192. package/ds-controlled-form/useMask/Phone/UsePhoneMask.func.spec.js +49 -0
  193. package/ds-controlled-form/useMask/Phone/UsePhoneMask.visual.spec.js +30 -0
  194. package/ds-controlled-form/useMask/ReackHookFormWithMask/ReactHookFormWithMask.func.spec.js +51 -0
  195. package/ds-controlled-form/useMask/ReackHookFormWithMask/ReactHookFormWithMask.visual.spec.js +39 -0
  196. package/ds-controlled-form/useMask/RegExp/UseRegExpMask.func.spec.js +37 -0
  197. package/ds-controlled-form/useMask/SSN/UseSsnMask.func.spec.js +53 -0
  198. package/ds-controlled-form/useMask/ZipCode/UseZipCodeMask.func.spec.js +37 -0
  199. package/ds-controlled-form/useMask/useMaskCO.js +56 -0
  200. package/ds-data-table-async/DSDataTable.smoke.spec.js +315 -0
  201. package/ds-data-table-async/DSDataTableCO.js +255 -0
  202. package/ds-data-table-async/basic/DSDataTable.basic.axe-core.func.spec.js +120 -0
  203. package/ds-data-table-async/basic/DSDataTable.basic.func.spec.js +78 -0
  204. package/ds-data-table-async/basic/DSDataTable.basic.visual.spec.js +144 -0
  205. package/ds-data-table-async/basic/DSDataTable.usecases.func.spec.js +315 -0
  206. package/ds-data-table-async/basic/DSDataTable.usecases.visual.spec.js +226 -0
  207. package/ds-data-table-async/components/CellCO.js +29 -0
  208. package/ds-data-table-async/components/DateSwitcherCO.js +44 -0
  209. package/ds-data-table-async/components/ExportCsvCO.js +22 -0
  210. package/ds-data-table-async/components/FilterBarCO.js +68 -0
  211. package/ds-data-table-async/components/FiltersCO.js +127 -0
  212. package/ds-data-table-async/components/FiltersCOextra.js +39 -0
  213. package/ds-data-table-async/components/HeaderCO.js +39 -0
  214. package/ds-data-table-async/components/OnRowClickCO.js +26 -0
  215. package/ds-data-table-async/components/PaginationNavCO.js +31 -0
  216. package/ds-data-table-async/components/RowCO.js +72 -0
  217. package/ds-data-table-async/components/index.js +10 -0
  218. package/ds-data-table-async/date-filters/DSDataTable.date-filters.func.spec.js +65 -0
  219. package/ds-data-table-async/date-filters/DSDataTable.date-switcher.range.func.spec.js +69 -0
  220. package/ds-data-table-async/date-filters/DSDataTable.date-switcher.single.func.spec.js +87 -0
  221. package/ds-data-table-async/date-filters/DSDataTable.date-switcher.visual.spec.js +50 -0
  222. package/ds-data-table-async/date-filters/DSDataTable.dates.axe-core.func.spec.js +57 -0
  223. package/ds-data-table-async/dnd/DSDataTable.dnd.axe-core.func.spec.js +60 -0
  224. package/ds-data-table-async/dnd/DSDataTable.dnd.func.spec.js +221 -0
  225. package/ds-data-table-async/dnd/DSDataTable.dnd.visual.spec.js +174 -0
  226. package/ds-data-table-async/editable-cell/DSDataTable.editablecells.axe-core.func.spec.js +42 -0
  227. package/ds-data-table-async/editable-cell/DSDataTable.editablecells.func.spec.js +40 -0
  228. package/ds-data-table-async/editable-cell/DSDataTable.editablecells.visual.spec.js +59 -0
  229. package/ds-data-table-async/empty-state/DSDataTable.empty-state.axe-core.func.spec.js +24 -0
  230. package/ds-data-table-async/empty-state/DSDataTable.empty-state.visual.spec.js +49 -0
  231. package/ds-data-table-async/expandable/DSDataTable.expandable.axe-core.func.spec.js +29 -0
  232. package/ds-data-table-async/expandable/DSDataTable.expandable.func.spec.js +92 -0
  233. package/ds-data-table-async/expandable/DSDataTable.expandable.visual.spec.js +101 -0
  234. package/ds-data-table-async/filters/DSDataTable.currency-number-filters.func.spec.js +66 -0
  235. package/ds-data-table-async/filters/DSDataTable.filteredMultipleTables.visual.spec.js +22 -0
  236. package/ds-data-table-async/filters/DSDataTable.filters-creatable.func.spec.js +112 -0
  237. package/ds-data-table-async/filters/DSDataTable.filters-creatable.visual.spec.js +61 -0
  238. package/ds-data-table-async/filters/DSDataTable.filters.axe-core.func.spec.js +126 -0
  239. package/ds-data-table-async/filters/DSDataTable.filters.empty-value.func.spec.js +82 -0
  240. package/ds-data-table-async/filters/DSDataTable.filters.empty-value.keybooard-nav.func.spec.js +73 -0
  241. package/ds-data-table-async/filters/DSDataTable.filters.empty-value.visual.spec.js +76 -0
  242. package/ds-data-table-async/filters/DSDataTable.filters.keybooard-nav.func.spec.js +40 -0
  243. package/ds-data-table-async/filters/DSDataTable.filters.visual.spec.js +188 -0
  244. package/ds-data-table-async/filters/DSDataTable.text-filterbar-controlled.func.spec.js +42 -0
  245. package/ds-data-table-async/filters/DSDataTable.text-filters.func.spec.js +281 -0
  246. package/ds-data-table-async/helpers/asyncFilter.js +4 -0
  247. package/ds-data-table-async/helpers/asyncShiftPress.js +19 -0
  248. package/ds-data-table-async/helpers/getElementBoundingRect.js +2 -0
  249. package/ds-data-table-async/helpers/getElementByIndex.js +12 -0
  250. package/ds-data-table-async/helpers/getElementDragHandler.js +3 -0
  251. package/ds-data-table-async/helpers/getRadioValue.js +1 -0
  252. package/ds-data-table-async/helpers/index.js +7 -0
  253. package/ds-data-table-async/helpers/throttleTyping.js +6 -0
  254. package/ds-data-table-async/more/DSDataTable.custom.func.spec.js +31 -0
  255. package/ds-data-table-async/more/DSDataTable.headers.visual.spec.js +70 -0
  256. package/ds-data-table-async/more/DSDataTable.more.axe-core.func.spec.js +40 -0
  257. package/ds-data-table-async/pagination/DSDataTable.pagination.axe-core.func.spec.js +52 -0
  258. package/ds-data-table-async/pagination/DSDataTable.pagination.func.spec.js +158 -0
  259. package/ds-data-table-async/pagination/DSDataTable.pagination.visual.spec.js +46 -0
  260. package/ds-data-table-async/resizable/DSDataTable.resizable.axe-core.func.spec.js +40 -0
  261. package/ds-data-table-async/resizable/DSDataTable.resizable.func.spec.js +47 -0
  262. package/ds-data-table-async/resizable/DSDataTable.resizable.visual.spec.js +156 -0
  263. package/ds-data-table-async/row-variant/DSDataTable.row-styling.visual.spec.js +62 -0
  264. package/ds-data-table-async/row-variant/DSDataTable.row-variant.axe-core.func.spec.js +27 -0
  265. package/ds-data-table-async/row-variant/DSDataTable.row-variant.func.spec.js +101 -0
  266. package/ds-data-table-async/select/DSDataTable.select.axe-core.func.spec.js +152 -0
  267. package/ds-data-table-async/select/DSDataTable.select.func.spec.js +191 -0
  268. package/ds-data-table-async/select/DSDataTable.select.visual.spec.js +119 -0
  269. package/ds-data-table-async/skeleton/DSDataTable.skeleton.axe-core.func.spec.js +57 -0
  270. package/ds-data-table-async/skeleton/DSDataTable.skeleton.visual.spec.js +51 -0
  271. package/ds-data-table-async/toolbar/DSDataTable.Toolbar.func.spec.js +184 -0
  272. package/ds-data-table-async/toolbar/DSDataTable.Toolbar.visual.spec.js +33 -0
  273. package/ds-data-table-async/toolbar/DSDataTable.toolbar.axe-core.func.spec.js +27 -0
  274. package/ds-data-table-async/vissibility/DSDataTable.responsive.visual.spec.js +17 -0
  275. package/ds-data-table-async/vissibility/DSDataTable.vissibility.axe-core.func.spec.js +32 -0
  276. package/ds-data-table-async/vissibility/DSDataTable.vissibility.visual.spec.js +81 -0
  277. package/ds-datagrids/DSDataGrids-selectable-default.func.spec.js +27 -0
  278. package/ds-datagrids/DSDatagrid-basic.visual.spec.js +16 -0
  279. package/ds-datagrids/DSDatagrid-editable.func.spec.js +62 -0
  280. package/ds-datagrids/DSDatagrid-empty-state.visual.spec.js +16 -0
  281. package/ds-datagrids/DSDatagrid-pui-5550.func.spec.js +15 -0
  282. package/ds-datagrids/DSDatagrid-selectable-multi.visual.spec.js +16 -0
  283. package/ds-datagrids/DSDatagrid-sortable.func.spec.js +43 -0
  284. package/ds-datagrids/DSDatagrid.func.spec.js +56 -0
  285. package/ds-datagrids/DSDatagrids-cell-renders.visual.spec.js +43 -0
  286. package/ds-datagrids/DSDatagrids-control-focus.visual.spec.js +30 -0
  287. package/ds-datagrids/DSDatagrids-filterable-dates.func.spec.js +300 -0
  288. package/ds-datagrids/DSDatagrids-filterable-default-filters.func.spec.js +27 -0
  289. package/ds-datagrids/DSDatagrids-filterable-default-filters.visual.spec.js +16 -0
  290. package/ds-datagrids/DSDatagrids-filterable.func.spec.js +213 -0
  291. package/ds-datagrids/DSDatagrids-header.visual.spec.js +16 -0
  292. package/ds-datagrids/DSDatagrids-infinite-scrolling.func.spec.js +24 -0
  293. package/ds-datagrids/DSDatagrids-pagination.func.spec.js +85 -0
  294. package/ds-datagrids/DSDatagrids-pagination.visual.spec.js +30 -0
  295. package/ds-datagrids/DSDatagrids-performance.func.spec.js +23 -0
  296. package/ds-datagrids/DSDatagrids-selectable-multi.func.spec.js +21 -0
  297. package/ds-datagrids/DSDatagrids-toolbar.visual.spec.js +17 -0
  298. package/ds-datagrids/DSDatagrids-virtualization-dynamic-rows.func.spec.js +18 -0
  299. package/ds-datagrids/DSDatagrids-virtualization.func.spec.js +15 -0
  300. package/ds-datagrids/DSDatagrids-wrapping.visual.spec.js +28 -0
  301. package/ds-datagrids/DatagridObject.js +397 -0
  302. package/ds-datagrids/page-objects/Editable.componentObject.js +67 -0
  303. package/ds-datagrids/page-objects/Pagination.componentObject.js +72 -0
  304. package/ds-dataviz/DSDataViz.area.visual.spec.js +40 -0
  305. package/ds-dataviz/DSDataViz.axis.visual.spec.js +80 -0
  306. package/ds-dataviz/DSDataViz.bars.visual.spec.js +103 -0
  307. package/ds-dataviz/DSDataViz.extra.visual.spec.js +118 -0
  308. package/ds-dataviz/DSDataViz.func.spec.js +40 -0
  309. package/ds-dataviz/DSDataViz.legend.visual.spec.js +53 -0
  310. package/ds-dataviz/DSDataViz.lines.visual.spec.js +40 -0
  311. package/ds-dataviz/DSDataViz.pie.visual.spec.js +82 -0
  312. package/ds-dataviz/DSDataViz.scroll.visual.spec.js +135 -0
  313. package/ds-dataviz/DSDataViz.singlestackedbar.visual.spec.js +67 -0
  314. package/ds-dataviz/DSDataViz.smoke.spec.js +40 -0
  315. package/ds-dataviz/DSDataViz.ticks.func.spec.js +19 -0
  316. package/ds-dataviz/DSDataViz.ticks.visual.spec.js +76 -0
  317. package/ds-dataviz/DSDataVizCO.js +187 -0
  318. package/ds-dataviz/axecore/DSDataViz.area.axe-core.func.spec.js +36 -0
  319. package/ds-dataviz/axecore/DSDataViz.axis.axe-core.func.spec.js +42 -0
  320. package/ds-dataviz/axecore/DSDataViz.bars.axe-core.func.spec.js +95 -0
  321. package/ds-dataviz/axecore/DSDataViz.extra.axe-core.func.spec.js +78 -0
  322. package/ds-dataviz/axecore/DSDataViz.legend.axe-core.func.spec.js +40 -0
  323. package/ds-dataviz/axecore/DSDataViz.lines.axe-core.func.spec.js +49 -0
  324. package/ds-dataviz/axecore/DSDataViz.pie.axe-core.func.spec.js +70 -0
  325. package/ds-dataviz/axecore/DSDataViz.scroll.axe-core.func.spec.js +59 -0
  326. package/ds-dataviz/axecore/DSDataViz.singlestackedbar.axe-core.func.spec.js +24 -0
  327. package/ds-dataviz/axecore/DSDataViz.ticks.axe-core.func.spec.js +36 -0
  328. package/ds-date-picker/DSDatePicker.func.spec.js +275 -0
  329. package/ds-date-picker/DSDatePickerCO.js +104 -0
  330. package/ds-date-range-picker/DSDateRangePicker.func.spec.js +114 -0
  331. package/ds-date-range-picker/DSDateRangePicker.visual.spec.js +14 -0
  332. package/ds-date-range-picker/DSDateRangePickerCO.js +99 -0
  333. package/ds-date-time-picker/DSDateTimePicker.func.spec.js +210 -0
  334. package/ds-date-time-picker/DateTimePickerCO.js +140 -0
  335. package/ds-dialog/DSDialog.cases.visual.spec.js +122 -0
  336. package/ds-dialog/DSDialog.func.spec.js +133 -0
  337. package/ds-dialog/DSDialog.smoke.spec.js +133 -0
  338. package/ds-dialog/DSDialog.visual.spec.js +178 -0
  339. package/ds-dialog/DSDialogCO.js +75 -0
  340. package/ds-dialog/components/DialogFormsCO.js +22 -0
  341. package/ds-dialog/components/DialogShuttleCO.js +12 -0
  342. package/ds-dialog/components/index.js +2 -0
  343. package/ds-dialog/helpers/getElementByIndex.js +12 -0
  344. package/ds-dialog/helpers/index.js +1 -0
  345. package/ds-drag-and-drop/DSDragAndDrop.axe-core.func.spec.js +72 -0
  346. package/ds-drag-and-drop/DSDragAndDrop.func.spec.js +186 -0
  347. package/ds-drag-and-drop/DSDragAndDrop.visual.spec.js +45 -0
  348. package/ds-drag-and-drop/DSDragAndDropCO.js +54 -0
  349. package/ds-dropdownmenu/DSDropddownMenu-loading.visual.spec.js +28 -0
  350. package/ds-dropdownmenu/DSDropddownMenu.func.spec.js +38 -0
  351. package/ds-dropdownmenu/DSDropdownMenu-basic.visual.spec.js +30 -0
  352. package/ds-dropdownmenu/DSDropdownMenu-withselect.visual.spec.js +24 -0
  353. package/ds-dropdownmenu/DropdownMenuCO.js +57 -0
  354. package/ds-dropdownmenu-v2/DSDDMenuV2.axe-core.func.spec.js +124 -0
  355. package/ds-dropdownmenu-v2/DSDDMenuV2.visual.spec.js +167 -0
  356. package/ds-dropdownmenu-v2/DSDDMenuV2CO.js +81 -0
  357. package/ds-dropdownmenu-v2/basic/DSDDMenuV2.basic.func.spec.js +160 -0
  358. package/ds-dropdownmenu-v2/custom-width/DSDDMenuV2.custom-width.func.spec.js +50 -0
  359. package/ds-dropdownmenu-v2/empty-state/DSDDMenuV2.empty-state.func.spec.js +16 -0
  360. package/ds-dropdownmenu-v2/loading/DSDDMenuV2.loading.func.spec.js +16 -0
  361. package/ds-dropdownmenu-v2/mandatory-single/DSDDMenuV2.mandatory-single.func.spec.js +32 -0
  362. package/ds-dropdownmenu-v2/multiple-sub-menus/DSDDMenuV2.multiple-sub-menus.func.spec.js +35 -0
  363. package/ds-dropdownmenu-v2/ten-thousand/DSDDMenuV2.ten-thousand.func.spec.js +38 -0
  364. package/ds-dropzone/DSDropzone.func.spec.js +24 -0
  365. package/ds-dropzone/DSDropzoneCO.js +17 -0
  366. package/ds-eol/ds-filterbar/DSFilterBar-basic.axe-core.func.spec.js +88 -0
  367. package/ds-eol/ds-filterbar/DSFilterBar-basic.func.spec.js +15 -0
  368. package/ds-eol/ds-filterbar/DSFilterBar-basic.visual.spec.js +92 -0
  369. package/ds-eol/ds-filterbar/DSFilterBar-dropdown-multipill.visual.spec.js +55 -0
  370. package/ds-eol/ds-filterbar/FilterbarCO.js +65 -0
  371. package/ds-eol/ds-number-range-field/NumberRangeField.func.spec.js +75 -0
  372. package/ds-eol/ds-number-range-field/NumberRangeField.visual.spec.js +30 -0
  373. package/ds-eol/ds-number-range-field/NumberRangeFieldCO.js +31 -0
  374. package/ds-eol/ds-page-number/DSPageNumber.func.spec.js +37 -0
  375. package/ds-eol/ds-page-number/DSPageNumber.visual.spec.js +39 -0
  376. package/ds-eol/ds-page-number/DSPageNumberCO.js +42 -0
  377. package/ds-eol/ds-search-field/SearchField.func.spec.js +109 -0
  378. package/ds-eol/ds-search-field/SearchField.visual.spec.js +86 -0
  379. package/ds-eol/ds-search-field/SearchFieldCO.js +117 -0
  380. package/ds-form/Checkbox/DSCheckbox.func.spec.js +69 -0
  381. package/ds-form/Checkbox/DSCheckbox.keyboard.navigation.func.spec.js +64 -0
  382. package/ds-form/Checkbox/DSCheckbox.visual.spec.js +37 -0
  383. package/ds-form/Checkbox/DSCheckboxCO.js +60 -0
  384. package/ds-form/Combobox/DSCombobox.accessibility.func.spec.js +150 -0
  385. package/ds-form/Combobox/DSCombobox.basic.func.spec.js +238 -0
  386. package/ds-form/Combobox/DSCombobox.freesolo.func.spec.js +98 -0
  387. package/ds-form/Combobox/DSCombobox.freesolo.visual.spec.js +25 -0
  388. package/ds-form/Combobox/DSCombobox.multi.func.spec.js +121 -0
  389. package/ds-form/Combobox/DSCombobox.multi.visual.spec.js +54 -0
  390. package/ds-form/Combobox/DSCombobox.tablet.func.spec.js +30 -0
  391. package/ds-form/Combobox/DSCombobox.visual.spec.js +93 -0
  392. package/ds-form/Combobox/DSComboboxCO.js +206 -0
  393. package/ds-form/DateInput/DSDateInputCO.js +51 -0
  394. package/ds-form/DateInput/DateInput.func.spec.js +217 -0
  395. package/ds-form/DateInput/DateInput.states.func.spec.js +55 -0
  396. package/ds-form/FormatItemLayout/FormItemLayout.func.spec.js +46 -0
  397. package/ds-form/FormatItemLayout/FormatItemLayout.js +53 -0
  398. package/ds-form/FormatItemLayout/FormatItemLayout.visual.spec.js +94 -0
  399. package/ds-form/InputGroup/DSInputGroup.visual.spec.js +15 -0
  400. package/ds-form/InputGroup/DSInputGroupCO.js +19 -0
  401. package/ds-form/InputMask/AlphaNumeric.InputMask.func.spec.js +41 -0
  402. package/ds-form/InputMask/AutoCorrectedDate.InputMask.func.spec.js +18 -0
  403. package/ds-form/InputMask/DSInputMask.visual.spec.js +21 -0
  404. package/ds-form/InputMask/DSInputMaskCO.js +92 -0
  405. package/ds-form/InputMask/Date.InputMask.func.spec.js +48 -0
  406. package/ds-form/InputMask/DateTime.InputMask.func.spec.js +48 -0
  407. package/ds-form/InputMask/Decimal.InputMask.func.spec.js +119 -0
  408. package/ds-form/InputMask/Number.InputMask.func.spec.js +98 -0
  409. package/ds-form/InputMask/Percent.InputMask.func.spec.js +54 -0
  410. package/ds-form/InputMask/Phone.InputMask.func.spec.js +48 -0
  411. package/ds-form/InputMask/PhoneInternational.InputMask.func.spec.js +60 -0
  412. package/ds-form/InputMask/Ssn.InputMask.func.spec.js +60 -0
  413. package/ds-form/InputMask/UsZipCode.InputMask.func.spec.js +46 -0
  414. package/ds-form/InputProtected/DSInputProtected.func.spec.js +19 -0
  415. package/ds-form/InputProtected/DSInputProtected.visual.spec.js +18 -0
  416. package/ds-form/InputProtected/DSInputProtectedCO.js +45 -0
  417. package/ds-form/LargeInputText/DSLargeInputText.func.spec.js +37 -0
  418. package/ds-form/LargeInputText/DSLargeInputText.visual.spec.js +18 -0
  419. package/ds-form/LargeInputText/DSLargeInputTextCO.js +45 -0
  420. package/ds-form/Radio/DSRadio.func.spec.js +13 -0
  421. package/ds-form/Radio/DSRadio.visual.spec.js +39 -0
  422. package/ds-form/Radio/DSRadioCO.js +49 -0
  423. package/ds-form/SearchBox/DSSearchBox.func.spec.js +90 -0
  424. package/ds-form/SearchBox/DSSearchBox.visual.spec.js +61 -0
  425. package/ds-form/SearchBox/DSSearchBoxCO.js +75 -0
  426. package/ds-form/Toggle/DSToggle.func.spec.js +70 -0
  427. package/ds-form/Toggle/DSToggle.visual.spec.js +21 -0
  428. package/ds-form/Toggle/DSToggleCO.js +45 -0
  429. package/ds-form-layout-blocks/form-layout-block-item/DSFormLayoutBlockItem.axe-core.func.spec.js +144 -0
  430. package/ds-form-layout-blocks/form-layout-block-item/DSFormLayoutBlockItem.func.spec.js +203 -0
  431. package/ds-form-layout-blocks/form-layout-block-item/DSFormLayoutBlockItem.visual.spec.js +181 -0
  432. package/ds-form-layout-blocks/form-layout-block-item/DSFormLayoutBlockItemCO.js +118 -0
  433. package/ds-form-layout-blocks/form-layout-checkbox-group/DSFormLayoutCheckboxGroup.visual.spec.js +13 -0
  434. package/ds-form-layout-blocks/form-layout-checkbox-group/DSFormLayoutCheckboxGroupCO.js +14 -0
  435. package/ds-form-layout-label/DSFormLayoutLabel.func.spec.js +24 -0
  436. package/ds-form-layout-label/DSFormLayoutLabelCO.js +17 -0
  437. package/ds-global-header/GlobalHeader.func.spec.js +34 -0
  438. package/ds-global-header/GlobalHeader.visual.spec.js +141 -0
  439. package/ds-global-header/GlobalHeaderCO.js +65 -0
  440. package/ds-grid/DSGrid.axe-core.func.spec.js +93 -0
  441. package/ds-grid/DSGrid.visual.mobile.spec.js +65 -0
  442. package/ds-grid/DSGrid.visual.spec.js +52 -0
  443. package/ds-grid/DSGridCO.js +81 -0
  444. package/ds-grid/border/DSGrid.border.visual.spec.js +37 -0
  445. package/ds-grid/breakpoints/DSGrid.breakpoints.visual.spec.js +25 -0
  446. package/ds-grid/columnsnrows/DSGrid.columnsnrows.visual.spec.js +66 -0
  447. package/ds-grid/display/DSGrid.layout.visual.spec.js +39 -0
  448. package/ds-grid/tables/DSGrid.tables.visual.spec.js +27 -0
  449. package/ds-header/DSHeaderCO.js +16 -0
  450. package/ds-hooks/DSHook.UseFontSizeDetector.visual.spec.js +57 -0
  451. package/ds-hooks/DSHook.UseFontSizeMedia.visual.spec.js +28 -0
  452. package/ds-hooks/DSHook.func.spec.js +86 -0
  453. package/ds-hooks/DSHook.useAsDsTree.func.spec.js +128 -0
  454. package/ds-hooks/DSHook.usetree.func.spec.js +114 -0
  455. package/ds-hooks/DSHookCO.js +196 -0
  456. package/ds-icon/DSIcon.visual.spec.js +58 -0
  457. package/ds-icon/DSIconCO.js +29 -0
  458. package/ds-image/DSImage.func.spec.js +40 -0
  459. package/ds-image/DSImage.visual.spec.js +42 -0
  460. package/ds-image/DSImageCO.js +33 -0
  461. package/ds-indeterminate-progress-indicator/DSIndeterminateProgressIndicatorCO.js +24 -0
  462. package/ds-indeterminate-progress-indicator/DSIndetermintateProgressIndicator.func.spec.js +17 -0
  463. package/ds-leftnavigation/LeftNavigation.axe-core.func.spec.js +175 -0
  464. package/ds-leftnavigation/LeftNavigation.func.spec.js +131 -0
  465. package/ds-leftnavigation/LeftNavigation.keeping.items.visual.spec.js +27 -0
  466. package/ds-leftnavigation/LeftNavigation.keyboard.func.spec.js +134 -0
  467. package/ds-leftnavigation/LeftNavigation.smoke.spec.js +54 -0
  468. package/ds-leftnavigation/LeftNavigation.states.func.spec.js +39 -0
  469. package/ds-leftnavigation/LeftNavigation.visual.spec.js +252 -0
  470. package/ds-leftnavigation/LeftNavigationCO.js +249 -0
  471. package/ds-list-section-header/ListSectionHeader.visual.spec.js +36 -0
  472. package/ds-list-section-header/ListSectionHeaderCO.js +20 -0
  473. package/ds-loading-Indicator/LoadingIndicator.func.spec.js +16 -0
  474. package/ds-loading-Indicator/LoadingIndicatorCO.js +23 -0
  475. package/ds-menu-item/DSMenuItems.axe-core.func.spec.js +95 -0
  476. package/ds-menu-item/DSMenuItems.func.spec.js +94 -0
  477. package/ds-menu-item/DSMenuItems.visual.spec.js +123 -0
  478. package/ds-menu-item/DSMenuItemsCO.js +35 -0
  479. package/ds-mobile/Accordion/DSAccordion.visual.spec.js +33 -0
  480. package/ds-mobile/Accordion/DSAccordionCO.js +37 -0
  481. package/ds-mobile/CategoryBox/CategoryBox.visual.spec.js +18 -0
  482. package/ds-mobile/CategoryBox/CategoryBoxCO.js +17 -0
  483. package/ds-mobile/CollectionBox/CollectionBox.visual.spec.js +16 -0
  484. package/ds-mobile/CollectionBox/CollectionBoxCO.js +15 -0
  485. package/ds-mobile/GlobalHeader/DSGlobalHeader.visual.spec.js +55 -0
  486. package/ds-mobile/GlobalHeader/DSGlobalHeaderCO.js +36 -0
  487. package/ds-mobile/GroupBox/GroupBox.visual.spec.js +15 -0
  488. package/ds-mobile/GroupBox/GroupBoxCO.js +15 -0
  489. package/ds-mobile/InfiniteLoader/InfiniteLoader.func.spec.js +93 -0
  490. package/ds-mobile/InfiniteLoader/InfiniteLoaderCO.js +29 -0
  491. package/ds-mobile/MobileActionToolbar/MobileActionToolbar.visual.spec.js +39 -0
  492. package/ds-mobile/MobileActionToolbar/MobileActionToolbarCO.js +19 -0
  493. package/ds-mobile/MobileBanner/MobileBanner.visual.spec.js +23 -0
  494. package/ds-mobile/MobileBanner/MobileBannerCO.js +23 -0
  495. package/ds-mobile/MobileCard/Card.func.spec.js +37 -0
  496. package/ds-mobile/MobileCard/Card.visual.spec.js +103 -0
  497. package/ds-mobile/MobileCard/MobileCardCO.js +42 -0
  498. package/ds-mobile/MobileContextMenu/MobileContextMenu.func.spec.js +58 -0
  499. package/ds-mobile/MobileContextMenu/MobileContextMenu.visual.spec.js +28 -0
  500. package/ds-mobile/MobileContextMenu/MobileContextMenuCO.js +66 -0
  501. package/ds-mobile/MobileDatePicker/MobileDatePicker.func.spec.js +15 -0
  502. package/ds-mobile/MobileDatePicker/MobileDatePicker.visual.spec.js +28 -0
  503. package/ds-mobile/MobileDatePicker/MobileDatePickerCO.js +35 -0
  504. package/ds-mobile/MobileDropdownMenu/MobileDropdownMenu.func.spec.js +38 -0
  505. package/ds-mobile/MobileDropdownMenu/MobileDropdownMenu.visual.spec.js +16 -0
  506. package/ds-mobile/MobileDropdownMenu/MobileDropdownMenuCO.js +37 -0
  507. package/ds-mobile/MobileEmptyState/MobileEmptyState.visual.spec.js +15 -0
  508. package/ds-mobile/MobileEmptyState/MobileEmptyStateCO.js +14 -0
  509. package/ds-mobile/MobileFilterbar/MobileFilterbar.visual.spec.js +39 -0
  510. package/ds-mobile/MobileFilterbar/MobileFilterbarCO.js +19 -0
  511. package/ds-mobile/MobileFooter/MobileFooter.func.spec.js +26 -0
  512. package/ds-mobile/MobileFooter/MobileFooter.visual.spec.js +51 -0
  513. package/ds-mobile/MobileFooter/MobileFooterCO.js +27 -0
  514. package/ds-mobile/MobileListItem/MobileListItem.visual.spec.js +56 -0
  515. package/ds-mobile/MobileListItem/MobileListItemCO.js +19 -0
  516. package/ds-mobile/MobileLoadingPage/MobileLoadingPage.visual.spec.js +37 -0
  517. package/ds-mobile/MobileLoadingPage/MobileLoadingPageCO.js +19 -0
  518. package/ds-mobile/MobilePageHeader/MobilePageHeader.func.spec.js +22 -0
  519. package/ds-mobile/MobilePageHeader/MobilePageHeader.visual.spec.js +135 -0
  520. package/ds-mobile/MobilePageHeader/MobilePageHeaderCO.js +67 -0
  521. package/ds-mobile/MobileSelectList/MobileSelectList.visual.spec.js +56 -0
  522. package/ds-mobile/MobileSelectList/MobileSelectListCO.js +21 -0
  523. package/ds-mobile/MobileSeparator/MobileSeparator.visual.spec.js +28 -0
  524. package/ds-mobile/MobileSeparator/MobileSeparatorCO.js +17 -0
  525. package/ds-mobile/MobileTimePicker/MobileTimePickerCO.js +41 -0
  526. package/ds-mobile/Modal/MobileModal.visual.spec.js +56 -0
  527. package/ds-mobile/Modal/MobileModalCO.js +28 -0
  528. package/ds-mobile/PageFilter/PageFilter.visual.spec.js +46 -0
  529. package/ds-mobile/PageFilter/PageFilterCO.js +19 -0
  530. package/ds-mobile/PageForm/PageForm.visual.spec.js +14 -0
  531. package/ds-mobile/PageForm/PageFormCO.js +11 -0
  532. package/ds-mobile/PageList/PageList.visual.spec.js +31 -0
  533. package/ds-mobile/PageList/PageListCO.js +19 -0
  534. package/ds-mobile/PageSummary/PageSummary.visual.spec.js +20 -0
  535. package/ds-mobile/PageSummary/PageSummaryCO.js +11 -0
  536. package/ds-mobile/SwipeToRefresh/SwipeToRefresh.func.spec.js +26 -0
  537. package/ds-mobile/SwipeToRefresh/SwipeToRefreshCO.js +20 -0
  538. package/ds-mobile/Tabs/MobileTabs.visual.spec.js +91 -0
  539. package/ds-mobile/Tabs/TabsCO.js +37 -0
  540. package/ds-mobile/Tooltip/MobileTooltip.func.spec.js +17 -0
  541. package/ds-mobile/Tooltip/MobileTooltip.visual.spec.js +16 -0
  542. package/ds-mobile/Tooltip/TooltipCO.js +23 -0
  543. package/ds-mobile/helpers.js +7 -0
  544. package/ds-modal/Modal.func.spec.js +35 -0
  545. package/ds-modal/Modal.visual.spec.js +84 -0
  546. package/ds-modal/ModalCO.js +43 -0
  547. package/ds-modal-slide/ModalSlide.func.spec.js +69 -0
  548. package/ds-modal-slide/ModalSlide.visual.spec.js +121 -0
  549. package/ds-modal-slide/ModalSlideCO.js +77 -0
  550. package/ds-notification-badge/DSNotificationBadge.axe-core.func.spec.js +62 -0
  551. package/ds-notification-badge/DSNotificationBadge.visual.spec.js +72 -0
  552. package/ds-notification-badge/DSNotificationBadgeCO.js +26 -0
  553. package/ds-page-header/DSPageHeader.axe-core.func.spec.js +41 -0
  554. package/ds-page-header/DSPageHeader.visual.spec.js +128 -0
  555. package/ds-page-header/DSPageHeaderCO.js +68 -0
  556. package/ds-page-layout/PageLayout.visual.spec.js +44 -0
  557. package/ds-page-layout/PageLayoutCO.js +23 -0
  558. package/ds-pagination/DSPagination.visual.spec.js +20 -0
  559. package/ds-pagination/DSPaginationCO.js +40 -0
  560. package/ds-pills/DSLabeledDropdownSinglePill.visual.spec.js +19 -0
  561. package/ds-pills/DSPills.func.spec.js +125 -0
  562. package/ds-pills/DSPills.visual.spec.js +74 -0
  563. package/ds-pills/DSPillsCO.js +110 -0
  564. package/ds-pills-v2/DSPills.axe-core.func.spec.js +136 -0
  565. package/ds-pills-v2/DSPills.func.spec.js +46 -0
  566. package/ds-pills-v2/DSPills.visual.spec.js +93 -0
  567. package/ds-pills-v2/DSPillsV2CO.js +70 -0
  568. package/ds-progress-indicator/DSProgressIndicator.func.spec.js +14 -0
  569. package/ds-progress-indicator/DSProgressIndicator.visual.spec.js +15 -0
  570. package/ds-progress-indicator/DSProgressIndicatorCO.js +24 -0
  571. package/ds-query-builder/DSQueryBuilder.error-states.spec.js +49 -0
  572. package/ds-query-builder/DSQueryBuilder.func.spec.js +72 -0
  573. package/ds-query-builder/DSQueryBuilder.visual.spec.js +121 -0
  574. package/ds-query-builder/DSQueryBuilderCO.js +153 -0
  575. package/ds-read-more/DSReadMore.func.spec.js +117 -0
  576. package/ds-read-more/DSReadMore.visual.spec.js +66 -0
  577. package/ds-read-more/DSReadMoreCO.js +52 -0
  578. package/ds-ribbon/DSRibbon.visual.spec.js +16 -0
  579. package/ds-ribbon/DSRibbonCO.js +15 -0
  580. package/ds-separator-v2/DSSeparatorV2.visual.spec.js +14 -0
  581. package/ds-separator-v2/DSSeparatorV2CO.js +11 -0
  582. package/ds-shuttle/DSShuttle-infinite-scroll.func.spec.js +67 -0
  583. package/ds-shuttle/DSShuttle-infinite-scroll.visual.spec.js +65 -0
  584. package/ds-shuttle/DSShuttle-truncate-option.visual.spec.js +23 -0
  585. package/ds-shuttle/DSShuttle.func.spec.js +138 -0
  586. package/ds-shuttle/DSShuttleCO.js +193 -0
  587. package/ds-shuttle-v2/DSShuttleV2CO.js +173 -0
  588. package/ds-shuttle-v2/basic/DSShuttleV2.a11y.func.spec.js +43 -0
  589. package/ds-shuttle-v2/basic/DSShuttleV2.axe-core.func.spec.js +74 -0
  590. package/ds-shuttle-v2/basic/DSShuttleV2.func.spec.js +67 -0
  591. package/ds-shuttle-v2/basic/DSShuttleV2.keyboard.func.spec.js +260 -0
  592. package/ds-shuttle-v2/basic/DSShuttleV2.visual.spec.js +198 -0
  593. package/ds-shuttle-v2/drillingdown/DSShuttleV2.drilldown.axe-core.func.spec.js +83 -0
  594. package/ds-shuttle-v2/drillingdown/DSShuttleV2.drilldown.func.spec.js +108 -0
  595. package/ds-shuttle-v2/drillingdown/DSShuttleV2.drilldown.kb.func.spec.js +151 -0
  596. package/ds-shuttle-v2/extra/DSShuttleV2.extra.axe-core.func.spec.js +28 -0
  597. package/ds-shuttle-v2/extra/DSShuttleV2.extra.func.spec.js +35 -0
  598. package/ds-shuttle-v2/extra/DSShuttleV2.extra.visual.spec.js +30 -0
  599. package/ds-shuttle-v2/filtering/DSShuttleV2.filter.axe-core.func.spec.js +35 -0
  600. package/ds-shuttle-v2/filtering/DSShuttleV2.filter.func.spec.js +65 -0
  601. package/ds-shuttle-v2/filtering/DSShuttleV2.filter.kb.func.spec.js +50 -0
  602. package/ds-shuttle-v2/globalcheckbox/DSShuttleV2.globalcheckbox.axe-core.func.spec.js +33 -0
  603. package/ds-shuttle-v2/globalcheckbox/DSShuttleV2.globalcheckbox.func.spec.js +106 -0
  604. package/ds-shuttle-v2/globalcheckbox/DSShuttleV2.globalcheckbox.kb.func.spec.js +67 -0
  605. package/ds-shuttle-v2/items/DSShuttleV2.items.axe-core.func.spec.js +68 -0
  606. package/ds-shuttle-v2/items/DSShuttleV2.items.func.spec.js +110 -0
  607. package/ds-shuttle-v2/items/DSShuttleV2.items.kb.func.spec.js +44 -0
  608. package/ds-side-panel/DSSidePanel.func.spec.js +98 -0
  609. package/ds-side-panel/DSSidePanelCO.js +47 -0
  610. package/ds-side-panel/DSSlidePanel.visual.spec.js +61 -0
  611. package/ds-skeleton/DSSkeleton.js +11 -0
  612. package/ds-skipTo/DSSkipTo.func.spec.js +85 -0
  613. package/ds-skipTo/DSSkipToCO.js +28 -0
  614. package/ds-slider/DSSlider.func.spec.js +17 -0
  615. package/ds-slider/DSSlider.visual.spec.js +51 -0
  616. package/ds-slider/DSSliderCO.js +37 -0
  617. package/ds-squareindicator/DSSquareIndicator.func.spec.js +17 -0
  618. package/ds-squareindicator/DSSquareIndicator.visual.spec.js +21 -0
  619. package/ds-squareindicator/DSSquareIndicatorCO.js +37 -0
  620. package/ds-stepper/Stepper.func.spec.js +30 -0
  621. package/ds-stepper/Stepper.visual.spec.js +57 -0
  622. package/ds-stepper/StepperCO.js +32 -0
  623. package/ds-svg/DSSvg.func.spec.js +54 -0
  624. package/ds-svg/DSSvg.visual.spec.js +58 -0
  625. package/ds-svg/DSSvgCO.js +37 -0
  626. package/ds-tabs/DSTabs.func.spec.js +160 -0
  627. package/ds-tabs/DSTabs.visual.spec.js +268 -0
  628. package/ds-tabs/DSTabsCO.js +122 -0
  629. package/ds-text-box/DSTextBox.func.spec.js +40 -0
  630. package/ds-text-box/DSTextBox.visual.spec.js +51 -0
  631. package/ds-text-box/DSTextBoxCO.js +40 -0
  632. package/ds-time-picker/DSTimePicker.func.spec.js +48 -0
  633. package/ds-time-picker/DSTimePickerCO.js +113 -0
  634. package/ds-toast/DSToast.axe-core.func.spec.js +35 -0
  635. package/ds-toast/DSToast.func.spec.js +29 -0
  636. package/ds-toast/DSToast.visual.spec.js +216 -0
  637. package/ds-toast/DSToastCO.js +84 -0
  638. package/ds-toggle/DSToggle.axe-core.spec.js +35 -0
  639. package/ds-toggle/DSToggle.func.spec.js +124 -0
  640. package/ds-toggle/DSToggle.visual.spec.js +55 -0
  641. package/ds-toggle/DSToggleCO.js +61 -0
  642. package/ds-toolbar/Toolbar.func.spec.js +26 -0
  643. package/ds-toolbar/ToolbarCO.js +23 -0
  644. package/ds-toolbar-v2/DSToolbarV2.func.spec.js +61 -0
  645. package/ds-toolbar-v2/DSToolbarV2.visual.spec.js +94 -0
  646. package/ds-toolbar-v2/DSToolbarV2CO.js +31 -0
  647. package/ds-tooltip/DSTooltip.func.spec.js +86 -0
  648. package/ds-tooltip/DSTooltip.visual.spec.js +31 -0
  649. package/ds-tooltip/DSTooltipCO.js +44 -0
  650. package/ds-transition/DSTransition.visual.spec.js +40 -0
  651. package/ds-transition/DSTransitionCO.js +19 -0
  652. package/ds-treeview/DSTreeViewCO.js +465 -0
  653. package/ds-treeview/TreeView-autoscroll.func.spec.js +47 -0
  654. package/ds-treeview/TreeView-controlled.func.spec.js +62 -0
  655. package/ds-treeview/TreeView-dnd.func.spec.js +104 -0
  656. package/ds-treeview/TreeView-dnd.visual.spec.js +41 -0
  657. package/ds-treeview/TreeView-expand-collapse.func.spec.js +96 -0
  658. package/ds-treeview/TreeView-right-addon.func.spec.js +80 -0
  659. package/ds-treeview/TreeView-search.func.spec.js +138 -0
  660. package/ds-treeview/TreeView-single-multi.func.spec.js +416 -0
  661. package/ds-treeview/TreeView-specs.func.spec.js +39 -0
  662. package/ds-treeview/TreeView-states.func.spec.js +155 -0
  663. package/ds-treeview/TreeView-truncate-tooltip.func.spec.js +20 -0
  664. package/ds-treeview/Treeview.visual.spec.js +116 -0
  665. package/ds-typography/DSTypography.func.spec.js +23 -0
  666. package/ds-typography/DSTypography.resize.visual.spec.js +69 -0
  667. package/ds-typography/DSTypography.visual.spec.js +72 -0
  668. package/ds-typography/DSTypographyCO.js +34 -0
  669. package/ds-uploader/Uploader.func.spec.js +29 -0
  670. package/ds-uploader/Uploader.visual.spec.js +45 -0
  671. package/ds-uploader/UploaderCO.js +38 -0
  672. package/ds-virtuallist/DSVirtualList.visual.spec.js +31 -0
  673. package/ds-virtuallist/DSVirtualListCO.js +23 -0
  674. package/ds-wizard/DSWizard.axe-core.func.spec.js +53 -0
  675. package/ds-wizard/DSWizard.visual.spec.js +49 -0
  676. package/ds-wizard/DSWizardCO.js +25 -0
  677. package/ds-wysiwyg/DSWysiwyg.func.spec.js +234 -0
  678. package/ds-wysiwyg/DSWysiwyg.image-positioning.func.spec.js +43 -0
  679. package/ds-wysiwyg/DSWysiwyg.visual.spec.js +81 -0
  680. package/ds-wysiwyg/DSWysiwygCO.js +166 -0
  681. package/ds-zipcode-search/DSZipCodeSearch.func.spec.js +55 -0
  682. package/ds-zipcode-search/DSZipCodeSearchCO.js +37 -0
  683. package/ds-zoom/DSZoom.func.spec.js +17 -0
  684. package/ds-zoom/DSZoom.visual.spec.js +26 -0
  685. package/ds-zoom/DSZoomCO.js +28 -0
  686. package/gestures.js +182 -0
  687. package/helpers.js +413 -0
  688. package/jsconfig.json +5 -0
  689. package/package.json +125 -0
  690. package/utils.js +1 -0
  691. package/z-index/ZIndex.visual.spec.js +183 -0
  692. package/z-index/ZindexCO.js +155 -0
  693. package/zzz-eol/ds-date-range-selector/DSDateRangeSelector.axe-core.func.spec.js +48 -0
  694. package/zzz-eol/ds-date-range-selector/DSDateRangeSelector.func.spec.js +22 -0
  695. package/zzz-eol/ds-date-range-selector/DSDateRangeSelector.visual.spec.js +115 -0
  696. package/zzz-eol/ds-date-range-selector/DSDateRangeSelectorCO.js +44 -0
  697. package/zzz-eol/ds-group-box/DSGroupBox.axe-core.func.spec.js +28 -0
  698. package/zzz-eol/ds-group-box/DSGroupBox.visual.spec.js +44 -0
  699. package/zzz-eol/ds-group-box/DSGroupBoxCO.js +29 -0
  700. package/zzz-eol/ds-mini-toolbar/MiniToolbal.axe-core.func.spec.js +26 -0
  701. package/zzz-eol/ds-mini-toolbar/MiniToolbal.func.spec.js +82 -0
  702. package/zzz-eol/ds-mini-toolbar/MiniToolbal.visual.spec.js +34 -0
  703. package/zzz-eol/ds-mini-toolbar/MiniToolbarCO.js +45 -0
@@ -0,0 +1,54 @@
1
+ import DSComboboxCO from './DSComboboxCO';
2
+ import { mouseOver } from '../../helpers';
3
+
4
+ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
5
+ describe('PUI-6174 - ComboBox - Multi, Truncated options - Visual Test', () => {
6
+ before('loading page', async () => {
7
+ const errorOnGo = await DSComboboxCO.multiWithtruncateURL.go();
8
+ if (errorOnGo) throw errorOnGo;
9
+ });
10
+ it('should display the combobox with truncated options properly', async () => {
11
+ const snapshot = await browser.checkSnapshot(DSComboboxCO.snapshotPath('multi-truncated-open'));
12
+ await expect(snapshot).toEqual(0);
13
+ });
14
+ });
15
+ describe('PUI-6175 - ComboBox - Multi, Truncated options tooltip - Visual Test', () => {
16
+ before('loading page', async () => {
17
+ const errorOnGo = await DSComboboxCO.multiWithtruncateURL.go();
18
+ if (errorOnGo) throw errorOnGo;
19
+ });
20
+ it('should display the tooltip after a mouse over', async () => {
21
+ await mouseOver(await DSComboboxCO.getTruncatedTextOption(0));
22
+ const snapshot = await browser.checkSnapshot(DSComboboxCO.snapshotPath('multi-truncated-tooltip'));
23
+ await expect(snapshot).toEqual(0);
24
+ });
25
+ it('should show the tooltip after a scroll', async () => {
26
+ await DSComboboxCO.scrollToMultiOption(22);
27
+ await browser.pause(1000);
28
+ await mouseOver(await DSComboboxCO.getTruncatedTextOption(22));
29
+ const snapshot = await browser.checkSnapshot(DSComboboxCO.snapshotPath('multi-truncated-tooltip'));
30
+ await expect(snapshot).toEqual(0);
31
+ });
32
+ });
33
+ describe('PUI-6178 - ComboBox - Multi, All/Clear - Visual Test', () => {
34
+ before('loading page', async () => {
35
+ const errorOnGo = await DSComboboxCO.multiWithtruncateURL.go();
36
+ if (errorOnGo) throw errorOnGo;
37
+ });
38
+ it('should display the clear/all button properly after selecting an option', async () => {
39
+ await (await DSComboboxCO.getTruncatedTextOption(0)).click();
40
+ const snapshot = await browser.checkSnapshot(DSComboboxCO.snapshotPath('multi-truncated-one-selected'));
41
+ await expect(snapshot).toEqual(0);
42
+ });
43
+ it('should display the clear/all button properly after clicking the all buttons', async () => {
44
+ await (await DSComboboxCO.getAllButton()).click();
45
+ const snapshot = await browser.checkSnapshot(DSComboboxCO.snapshotPath('multi-truncated-all-selected'));
46
+ await expect(snapshot).toEqual(0);
47
+ });
48
+ it('should display the clear/all button properly after clicking the clear buttons', async () => {
49
+ await (await DSComboboxCO.getClearButton()).click();
50
+ const snapshot = await browser.checkSnapshot(DSComboboxCO.snapshotPath('multi-truncated-none-selected'));
51
+ await expect(snapshot).toEqual(0);
52
+ });
53
+ });
54
+ }
@@ -0,0 +1,30 @@
1
+ import DSComboboxCO from './DSComboboxCO';
2
+
3
+ if (browser.capabilities['ice:options'].isTablet) {
4
+ describe('PUI-3364 - Combobox, Tablet, Basic Functionality', () => {
5
+ before('loading page', async () => {
6
+ const errorOnGo = await DSComboboxCO.basicURL.go();
7
+ if (errorOnGo) throw errorOnGo;
8
+ });
9
+ it('should show basic combobox with menu open', async () => {
10
+ await DSComboboxCO.toggleCombobox();
11
+ const comboBoxMenuList = await DSComboboxCO.getComboboxMenuList();
12
+ await expect(comboBoxMenuList).toBeDisplayed();
13
+ });
14
+ it('should close simple menu combobox after selecting one option', async () => {
15
+ await (await DSComboboxCO.getOptionByText('Luke Skywalker')).waitForDisplayed();
16
+ await (await DSComboboxCO.getOptionByText('Luke Skywalker')).click();
17
+ const comboBoxOpen = await DSComboboxCO.isComboboxOpen();
18
+ await expect(comboBoxOpen).not.toBeTruthy();
19
+ });
20
+ it('should reflect selected value', async () => {
21
+ const comboBoxInput = await DSComboboxCO.getComboboxInput();
22
+ await expect(comboBoxInput).toHaveTextContaining('Luke Skywalker');
23
+ });
24
+ it('should open dropdown menu when clicking on value container, after selecting a value', async () => {
25
+ await (await DSComboboxCO.getComboBoxValueContainer()).click();
26
+ const comboBoxMenuList = await DSComboboxCO.getComboboxMenuList();
27
+ await expect(comboBoxMenuList).toBeDisplayed();
28
+ });
29
+ });
30
+ }
@@ -0,0 +1,93 @@
1
+ import { Key } from 'webdriverio';
2
+ import DSComboboxCO from './DSComboboxCO';
3
+
4
+ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
5
+ describe('PUI-3499 - Combobox - visual tests', () => {
6
+ describe('Combobox basic', () => {
7
+ beforeEach('loading page', async () => {
8
+ const errorOnGo = await DSComboboxCO.basicURL.go();
9
+ if (errorOnGo) throw errorOnGo;
10
+ });
11
+ it('should display the basic', async () => {
12
+ await DSComboboxCO.toggleCombobox();
13
+ await (await DSComboboxCO.getComboboxMenuList()).waitForDisplayed();
14
+ const checkSnapshot = await browser.checkSnapshot(DSComboboxCO.snapshotPath());
15
+ await expect(checkSnapshot).toEqual(0);
16
+ });
17
+ if (!browser.capabilities['ice:options'].isTablet) {
18
+ it('should display last option focused', async () => {
19
+ await DSComboboxCO.toggleCombobox();
20
+ await browser.keys(Key.ArrowDown);
21
+ await browser.keys(Key.ArrowDown);
22
+ await browser.keys(Key.ArrowDown);
23
+ await browser.keys(Key.ArrowDown);
24
+ const checkSnapsot = await browser.checkSnapshot(DSComboboxCO.snapshotPath('last-option-focused'));
25
+ await expect(checkSnapsot).toEqual(0);
26
+ });
27
+ }
28
+ });
29
+ describe('Combobox groups', () => {
30
+ before('loading page', async () => {
31
+ const errorOnGo = await DSComboboxCO.groupsURL.go();
32
+ if (errorOnGo) throw errorOnGo;
33
+ });
34
+ it('should display the combobox with groups', async () => {
35
+ await DSComboboxCO.toggleCombobox();
36
+ const checkSnapsot = await browser.checkSnapshot(DSComboboxCO.snapshotPath('groups'));
37
+ await expect(checkSnapsot).toEqual(0);
38
+ });
39
+ });
40
+ });
41
+
42
+ describe('PUI-5183 - Combobox group max opts- visual tests', () => {
43
+ before('loading page', async () => {
44
+ const errorOnGo = await DSComboboxCO.groupMaxOpts2URL.go();
45
+ if (errorOnGo) throw errorOnGo;
46
+ });
47
+ it('should show 2 items and group title', async () => {
48
+ await (await DSComboboxCO.groupMaxOpts2URL).go();
49
+ const checkSnapsot = await browser.checkSnapshot(DSComboboxCO.snapshotPath('group-with-max-opts-2'));
50
+ await expect(checkSnapsot).toEqual(0);
51
+ });
52
+ });
53
+
54
+ describe('PUI-5739 - ComboBox max opts with only one group', () => {
55
+ before('loading page', async () => {
56
+ const errorOnGo = await DSComboboxCO.oneGroupURL.go();
57
+ if (errorOnGo) throw errorOnGo;
58
+ });
59
+ it('should display all the options in combobox with one group', async () => {
60
+ await (await DSComboboxCO.oneGroupURL).go();
61
+ await DSComboboxCO.toggleCombobox();
62
+ const checkSnapshot = await browser.checkSnapshot(DSComboboxCO.snapshotPath('one group options'));
63
+ await expect(checkSnapshot).toEqual(0);
64
+ });
65
+ });
66
+
67
+ if (!browser.capabilities['ice:options'].isTablet) {
68
+ describe('PUI-5796 - Focus behavior - Visual Test', () => {
69
+ before('loading page', async () => {
70
+ const errorOnGo = await DSComboboxCO.basicURL.go();
71
+ if (errorOnGo) throw errorOnGo;
72
+ });
73
+ it('should have first option focused', async () => {
74
+ await browser.keys(Key.Tab);
75
+ await browser.keys(Key.Enter);
76
+ const snapshot = await browser.checkSnapshot(DSComboboxCO.snapshotPath('first-opt-focused'));
77
+ await expect(snapshot).toEqual(0);
78
+ });
79
+ });
80
+ describe('PUI-8860 - Multiple groups - Visual Test', () => {
81
+ before('loading page', async () => {
82
+ const errorOnGo = await DSComboboxCO.pui8812groups.go();
83
+ if (errorOnGo) throw errorOnGo;
84
+ });
85
+ it('should display all the groups correctly', async () => {
86
+ await browser.eyesOpen();
87
+ await DSComboboxCO.toggleCombobox();
88
+ const snapshot = await browser.eyesCheckSnapshot(DSComboboxCO.snapshotPath('multiple-groups'));
89
+ await expect(snapshot).toEqual(0);
90
+ });
91
+ });
92
+ }
93
+ }
@@ -0,0 +1,206 @@
1
+ /* eslint-disable wdio/no-pause */
2
+ /* eslint-disable import/no-relative-packages */
3
+ /* eslint-disable max-lines */
4
+ import { PATH_END_OF_LIFE_COMBOBOX, PATH_E2E_COMBOBOX } from '../../../environments/storybook/paths';
5
+ import { PageObject, Urlbuilder } from '../../helpers';
6
+
7
+ export const knobs = {
8
+ IsMulti: 'knob-isMulti',
9
+ MenuIsOpen: 'knob-Menu is open',
10
+ selectAllDisabled: 'knob-selectAllDisabled',
11
+ clearable: 'knob-Clearable',
12
+ searchable: 'knob-Searchable',
13
+ };
14
+
15
+ export default class DSComboboxCO extends PageObject {
16
+ // Desktop
17
+ static basicURL = new Urlbuilder(PATH_END_OF_LIFE_COMBOBOX, 'basic');
18
+
19
+ static emptyOptsURL = new Urlbuilder(PATH_E2E_COMBOBOX, 'empty-options-array');
20
+
21
+ static tenThousandOptionsURL = new Urlbuilder(PATH_END_OF_LIFE_COMBOBOX, 'ten-thousand-options');
22
+
23
+ static multiUrl = new Urlbuilder(PATH_END_OF_LIFE_COMBOBOX, 'multi');
24
+
25
+ static multiSelectAllDisabled = new Urlbuilder(PATH_END_OF_LIFE_COMBOBOX, 'multi-select-all-disabled');
26
+
27
+ static groupsURL = new Urlbuilder(PATH_END_OF_LIFE_COMBOBOX, 'groups');
28
+
29
+ static expandedTopURL = new Urlbuilder(PATH_E2E_COMBOBOX, 'pui-4069-expanded-top');
30
+
31
+ static freeSolo = new Urlbuilder(PATH_END_OF_LIFE_COMBOBOX, 'free-solo');
32
+
33
+ static freeSoloMulti = new Urlbuilder(PATH_END_OF_LIFE_COMBOBOX, 'free-solo-multi');
34
+
35
+ static freeTruncatedOption = new Urlbuilder(PATH_END_OF_LIFE_COMBOBOX, 'free-solo-truncated');
36
+
37
+ static freeSoloDisabled = new Urlbuilder(PATH_END_OF_LIFE_COMBOBOX, 'free-solo-disabled');
38
+
39
+ static nonSearchable = new Urlbuilder(PATH_END_OF_LIFE_COMBOBOX, 'non-searchable');
40
+
41
+ static changeOptionsDynamicallyURL = new Urlbuilder(PATH_E2E_COMBOBOX, 'change-options-dynamically');
42
+
43
+ static groupMaxOpts2URL = new Urlbuilder(PATH_E2E_COMBOBOX, 'group-with-max-opts-2');
44
+
45
+ static oneGroupURL = new Urlbuilder(PATH_E2E_COMBOBOX, 'one-group');
46
+
47
+ static multiWithtruncateURL = new Urlbuilder(PATH_E2E_COMBOBOX, 'combobox-multi-with-truncate');
48
+
49
+ static focusedURL = new Urlbuilder(PATH_END_OF_LIFE_COMBOBOX, 'focused');
50
+
51
+ static pui8812groups = new Urlbuilder(PATH_E2E_COMBOBOX, 'pui-8812-groups');
52
+
53
+ static getUrl(component = 'basic') {
54
+ return PageObject.getUrl(PATH_END_OF_LIFE_COMBOBOX, component);
55
+ }
56
+
57
+ // Snapshots
58
+ static snapshotPath(example = 'basic') {
59
+ return PageObject.getSnapshotPathBuilder('Combobox', example);
60
+ }
61
+
62
+ // selectors
63
+ static async getComboboxInput() {
64
+ return $('[data-testid="combobox"]');
65
+ }
66
+
67
+ static async getTextInput() {
68
+ return $('[data-testid="combobox"]').$('input');
69
+ }
70
+
71
+ static async getComboBoxValueContainer() {
72
+ return $('[data-testid="combobox-value-container"]');
73
+ }
74
+
75
+ static async getComboboxButton() {
76
+ return $('[data-testid="combobox-dropdown-btn"]');
77
+ }
78
+
79
+ static async getAllButton() {
80
+ return $('//button[@aria-label="All"]');
81
+ }
82
+
83
+ static async getClearButton() {
84
+ return $('[data-testid="combobox-clear-btn"]');
85
+ }
86
+
87
+ static async getClearX() {
88
+ return $('[data-testid="free-solo-pill-clear-btn"]');
89
+ }
90
+
91
+ static async getComboboxMenuList() {
92
+ return $('[data-testid="combobox-menu-list"]');
93
+ }
94
+
95
+ static async getComboBoxOption(index) {
96
+ return $$('[data-testid="combobox-option"]')[index];
97
+ }
98
+
99
+ static async getOptionByText(text) {
100
+ return $(`//div[@data-testid="combobox-option"][contains(text(),"${text}")]`);
101
+ }
102
+
103
+ static async getComboBoxMultiCheckBox(index) {
104
+ return $(`#react-select-2-option-${index}`);
105
+ }
106
+
107
+ static async getChangeOptionsButton() {
108
+ return $('span*=Change options');
109
+ }
110
+
111
+ static async getNoOptionsFound() {
112
+ return $('div*=No options found');
113
+ }
114
+
115
+ static async getOptionSelected(text) {
116
+ return $(`//span[contains(text(),"${text}")]`);
117
+ }
118
+
119
+ static async getComboBoxMultiInput() {
120
+ return $('[data-testid="combobox"]').$('input');
121
+ }
122
+
123
+ static async getClearIcon() {
124
+ return $('[aria-label="clear-indicator"]');
125
+ }
126
+
127
+ static async getComboboxBorder() {
128
+ const border = await (await this.getComboboxInput()).getCSSProperty('outline-color');
129
+ return border.parsed.hex;
130
+ }
131
+
132
+ static async toggleCombobox() {
133
+ await (await this.getComboboxButton()).waitForDisplayed();
134
+ await (await this.getComboboxButton()).click();
135
+ }
136
+
137
+ static async getPopperContainer() {
138
+ return $('[data-testid="popper-container"]');
139
+ }
140
+
141
+ static async getComboboxControl() {
142
+ return $('[data-testid="combobox-control"]');
143
+ }
144
+
145
+ static async getCheckbox(index) {
146
+ return $$('[data-testid="ds-checkbox"]')[index];
147
+ }
148
+
149
+ static async getOptionsChecked() {
150
+ return $$('[data-testid="ds-checkbox"][aria-checked="true"]');
151
+ }
152
+
153
+ static async getPills() {
154
+ return $$('//div[@data-testid="pill-wrapper"]/span');
155
+ }
156
+
157
+ static async getPill(index) {
158
+ return $$('//div[@data-testid="pill-wrapper"]/span')[index];
159
+ }
160
+
161
+ static async getInput(text) {
162
+ return $(`//span[contains(text(),"${text}")]`);
163
+ }
164
+
165
+ // utils
166
+ static async isComboboxOpen() {
167
+ return (await this.getComboboxMenuList()).isDisplayed();
168
+ }
169
+
170
+ static async typeOption(chars) {
171
+ const text = [...chars];
172
+ // eslint-disable-next-line no-restricted-syntax
173
+ for (const char of text) {
174
+ // eslint-disable-next-line no-await-in-loop
175
+ await browser.keys(char);
176
+ }
177
+ await browser.pause(500);
178
+ }
179
+
180
+ // ARIA
181
+ static async getRole(element) {
182
+ return element.getAttribute('role');
183
+ }
184
+
185
+ static async getAriaSelected(element) {
186
+ return element.getAttribute('aria-selected');
187
+ }
188
+
189
+ static async getTruncatedTextOption(option) {
190
+ return (await this.getComboBoxMultiCheckBox(option)).$('[data-testid="DS-SimpleTruncateText"]');
191
+ }
192
+
193
+ static async scrollToMultiOption(option) {
194
+ for (let actualOption = 0; actualOption <= option; actualOption += 4) {
195
+ // eslint-disable-next-line no-await-in-loop
196
+ await (await this.getComboBoxMultiCheckBox(actualOption)).scrollIntoView();
197
+ }
198
+ }
199
+ }
200
+
201
+ export async function isDisabled(element) {
202
+ if ((await element.getAttribute('aria-disabled')) === 'true') {
203
+ return true;
204
+ }
205
+ return false;
206
+ }
@@ -0,0 +1,51 @@
1
+ import { PATH_END_OF_LIFE_DATE_INPUT } from '../../../environments/storybook/paths';
2
+ import { PageObject, Urlbuilder } from '../../helpers';
3
+
4
+ export default class DSDateInputCO extends PageObject {
5
+ // Atomic
6
+ static overview = new Urlbuilder(PATH_END_OF_LIFE_DATE_INPUT, 'overview');
7
+
8
+ // Snapshot
9
+ static snapshotPath(example = 'basic') {
10
+ return PageObject.getSnapshotPathBuilder('DateInput', example);
11
+ }
12
+
13
+ // selectors
14
+ static async getMonth() {
15
+ return $('[data-testid="month"]');
16
+ }
17
+
18
+ static async getDay() {
19
+ return $('[data-testid="day"]');
20
+ }
21
+
22
+ static async getYear() {
23
+ return $('[data-testid="year"]');
24
+ }
25
+
26
+ static async getFluidContainer() {
27
+ return $('[data-testid="date-input-fluidContainer"]');
28
+ }
29
+
30
+ static async activeElementId() {
31
+ const element = await browser.execute(() => document.activeElement.dataset.testid);
32
+ return element;
33
+ }
34
+
35
+ static async isHighlighted(element) {
36
+ const bg = await element.getCSSProperty('background-color');
37
+ return bg.parsed.hex === '#a3d6ff';
38
+ }
39
+
40
+ // actions
41
+ static async typeNumbers(chars = '1234567890') {
42
+ const numbers = [...chars];
43
+ // eslint-disable-next-line no-restricted-syntax
44
+ for (const char of numbers) {
45
+ // https://github.com/webdriverio/webdriverio/issues/5092
46
+ // using keys char by char results in correct order
47
+ // eslint-disable-next-line no-await-in-loop
48
+ await browser.keys(char);
49
+ }
50
+ }
51
+ }
@@ -0,0 +1,217 @@
1
+ /* eslint-disable max-lines */
2
+ import { Key } from 'webdriverio';
3
+ import DSDateInputCO from './DSDateInputCO';
4
+
5
+ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
6
+ describe('PUI-5798 - DateInput, auto-advance and auto-correct', () => {
7
+ beforeEach('loading page', async () => {
8
+ const errorOnGo = await DSDateInputCO.overview.go();
9
+ if (errorOnGo) throw errorOnGo;
10
+ });
11
+ // MONTH
12
+ it('enter 1 in month and should not advance to day input', async () => {
13
+ await browser.keys(Key.Tab);
14
+ DSDateInputCO.typeNumbers('1');
15
+ const month = await DSDateInputCO.getMonth();
16
+ const activeElemId = await DSDateInputCO.activeElementId();
17
+ await expect(month).toHaveValueContaining('01');
18
+ await expect(activeElemId).toBe('month');
19
+ });
20
+ it('enter 01 in month and should advance to day input', async () => {
21
+ await browser.keys(Key.Tab);
22
+ await DSDateInputCO.typeNumbers('01');
23
+ const month = await DSDateInputCO.getMonth();
24
+ const activeElemId = await DSDateInputCO.activeElementId();
25
+ await expect(month).toHaveValueContaining('01');
26
+ await expect(activeElemId).toBe('day');
27
+ });
28
+ it('enter 12 in month and should advance to day input', async () => {
29
+ await browser.keys(Key.Tab);
30
+ await DSDateInputCO.typeNumbers('12');
31
+ const month = await DSDateInputCO.getMonth();
32
+ const activeElemId = await DSDateInputCO.activeElementId();
33
+ await expect(month).toHaveValueContaining('12');
34
+ await expect(activeElemId).toBe('day');
35
+ });
36
+ it('enter 13 in month and should advance to day input', async () => {
37
+ await browser.keys(Key.Tab);
38
+ await DSDateInputCO.typeNumbers('12');
39
+ const month = await DSDateInputCO.getMonth();
40
+ const activeElemId = await DSDateInputCO.activeElementId();
41
+ await expect(month).toHaveValueContaining('12');
42
+ await expect(activeElemId).toBe('day');
43
+ });
44
+ it('enter 5 in month and should advance to day input', async () => {
45
+ await browser.keys(Key.Tab);
46
+ await DSDateInputCO.typeNumbers('5');
47
+ const month = await DSDateInputCO.getMonth();
48
+ const activeElemId = await DSDateInputCO.activeElementId();
49
+ await expect(month).toHaveValueContaining('05');
50
+ await expect(activeElemId).toBe('day');
51
+ });
52
+ // DAY
53
+ it('enter 2 in day and should not advance to year input', async () => {
54
+ await browser.keys(Key.Tab);
55
+ await browser.keys(Key.Tab);
56
+ await DSDateInputCO.typeNumbers('02');
57
+ const day = await DSDateInputCO.getDay();
58
+ const activeElemId = await DSDateInputCO.activeElementId();
59
+ await expect(day).toHaveValueContaining('02');
60
+ await expect(activeElemId).toBe('year');
61
+ });
62
+ it('enter 01 in day and should advance to year input', async () => {
63
+ await browser.keys(Key.Tab);
64
+ await browser.keys(Key.Tab);
65
+ await DSDateInputCO.typeNumbers('02');
66
+ const day = await DSDateInputCO.getDay();
67
+ const activeElemId = await DSDateInputCO.activeElementId();
68
+ await expect(day).toHaveValueContaining('02');
69
+ await expect(activeElemId).toBe('year');
70
+ });
71
+ it('enter 31 in day and should advance to year input', async () => {
72
+ await browser.keys(Key.Tab);
73
+ await browser.keys(Key.Tab);
74
+ await DSDateInputCO.typeNumbers('31');
75
+ const day = await DSDateInputCO.getDay();
76
+ const activeElemId = await DSDateInputCO.activeElementId();
77
+ await expect(day).toHaveValueContaining('31');
78
+ await expect(activeElemId).toBe('year');
79
+ });
80
+ it('enter 32 in day and should advance to year input', async () => {
81
+ await browser.keys(Key.Tab);
82
+ await browser.keys(Key.Tab);
83
+ await DSDateInputCO.typeNumbers('32');
84
+ const day = await DSDateInputCO.getDay();
85
+ const activeElemId = await DSDateInputCO.activeElementId();
86
+ await expect(day).toHaveValueContaining('31');
87
+ await expect(activeElemId).toBe('year');
88
+ });
89
+ it('enter 7 in day and should advance to year input', async () => {
90
+ await browser.keys(Key.Tab);
91
+ await browser.keys(Key.Tab);
92
+ await DSDateInputCO.typeNumbers('7');
93
+ const day = await DSDateInputCO.getDay();
94
+ const activeElemId = await DSDateInputCO.activeElementId();
95
+ await expect(day).toHaveValueContaining('07');
96
+ await expect(activeElemId).toBe('year');
97
+ });
98
+ // YEAR
99
+ it('enter 745 in year input', async () => {
100
+ await browser.keys(Key.Tab);
101
+ await browser.keys(Key.Tab);
102
+ await browser.keys(Key.Tab);
103
+ await DSDateInputCO.typeNumbers('745');
104
+ const year = await DSDateInputCO.getYear();
105
+ const activeElemId = await DSDateInputCO.activeElementId();
106
+ await expect(year).toHaveValueContaining('0745');
107
+ await expect(activeElemId).toBe('year');
108
+ });
109
+ it('enter 2021 in year input', async () => {
110
+ await browser.keys(Key.Tab);
111
+ await browser.keys(Key.Tab);
112
+ await browser.keys(Key.Tab);
113
+ await DSDateInputCO.typeNumbers('2021');
114
+ const year = await DSDateInputCO.getYear();
115
+ const activeElemId = await DSDateInputCO.activeElementId();
116
+ await expect(year).toHaveValueContaining('2021');
117
+ await expect(activeElemId).toBe('year');
118
+ });
119
+ it('enter 02021 in year input', async () => {
120
+ await browser.keys(Key.Tab);
121
+ await browser.keys(Key.Tab);
122
+ await browser.keys(Key.Tab);
123
+ await DSDateInputCO.typeNumbers('2021');
124
+ const year = await DSDateInputCO.getYear();
125
+ const activeElemId = await DSDateInputCO.activeElementId();
126
+ await expect(year).toHaveValueContaining('2021');
127
+ await expect(activeElemId).toBe('year');
128
+ });
129
+ // FULL DATE
130
+ it('enter a full date', async () => {
131
+ await browser.keys(Key.Tab);
132
+ await DSDateInputCO.typeNumbers('13332021');
133
+ const month = await DSDateInputCO.getMonth();
134
+ const day = await DSDateInputCO.getDay();
135
+ const year = await DSDateInputCO.getYear();
136
+ const activeElemId = await DSDateInputCO.activeElementId();
137
+ await expect(month).toHaveValueContaining('12');
138
+ await expect(day).toHaveValueContaining('31');
139
+ await expect(year).toHaveValueContaining('2021');
140
+ await expect(activeElemId).toBe('year');
141
+ });
142
+ });
143
+ describe('PUI-6097 - DateInput, click on the input triggers edit mode', () => {
144
+ before('loading page', async () => {
145
+ const errorOnGo = await DSDateInputCO.overview.go();
146
+ if (errorOnGo) throw errorOnGo;
147
+ });
148
+ it('should highlight month placeholder', async () => {
149
+ await (await DSDateInputCO.getFluidContainer()).click();
150
+ const isMonthHighlighted = await DSDateInputCO.isHighlighted(await DSDateInputCO.getMonth());
151
+ await expect(isMonthHighlighted).toBe(true);
152
+ });
153
+ it('should display the entered date', async () => {
154
+ await DSDateInputCO.typeNumbers('10021996');
155
+ const month = await DSDateInputCO.getMonth();
156
+ const day = await DSDateInputCO.getDay();
157
+ const year = await DSDateInputCO.getYear();
158
+ await expect(month).toHaveValueContaining('10');
159
+ await expect(day).toHaveValueContaining('02');
160
+ await expect(year).toHaveValueContaining('1996');
161
+ });
162
+ });
163
+ describe('PUI-6099 - DateInput, Placeholder, click on the input triggers edit mode', () => {
164
+ before('loading page', async () => {
165
+ const errorOnGo = await DSDateInputCO.overview.go();
166
+ if (errorOnGo) throw errorOnGo;
167
+ });
168
+ it('should highlight the month placeholder and display the correct input', async () => {
169
+ const month = await DSDateInputCO.getMonth();
170
+ await month.click();
171
+ const isMonthHighlighted = await DSDateInputCO.isHighlighted(month);
172
+ await expect(isMonthHighlighted).toBe(true);
173
+ await DSDateInputCO.typeNumbers('10');
174
+ await expect(month).toHaveValueContaining('10');
175
+ });
176
+ it('should highlight the day placeholder and display the correct input', async () => {
177
+ const day = await DSDateInputCO.getDay();
178
+ await day.click();
179
+ const isDayHighlighted = await DSDateInputCO.isHighlighted(day);
180
+ await expect(isDayHighlighted).toBe(true);
181
+ await DSDateInputCO.typeNumbers('10');
182
+ await expect(day).toHaveValueContaining('10');
183
+ });
184
+ it('should highlight the year placeholder and display the correct input', async () => {
185
+ const year = await DSDateInputCO.getYear();
186
+ await year.click();
187
+ const isYearHighlighted = await DSDateInputCO.isHighlighted(year);
188
+ await expect(isYearHighlighted).toBe(true);
189
+ await DSDateInputCO.typeNumbers('2020');
190
+ await expect(year).toHaveValueContaining('2020');
191
+ });
192
+ });
193
+ describe('PUI-6098 - DateInput, Arrows behavior', () => {
194
+ before('loading page', async () => {
195
+ const errorOnGo = await DSDateInputCO.overview.go();
196
+ if (errorOnGo) throw errorOnGo;
197
+ });
198
+ it('should display entered month', async () => {
199
+ await browser.keys(Key.Tab);
200
+ await browser.keys(Key.ArrowUp);
201
+ const month = await DSDateInputCO.getMonth();
202
+ await expect(month).toHaveValueContaining('01');
203
+ });
204
+ it('should move to day and display entered day', async () => {
205
+ await browser.keys(Key.ArrowRight);
206
+ await browser.keys(Key.ArrowUp);
207
+ const day = await DSDateInputCO.getDay();
208
+ await expect(day).toHaveValueContaining('01');
209
+ });
210
+ it('should move to year and display entered year', async () => {
211
+ await browser.keys(Key.ArrowRight);
212
+ await browser.keys(Key.ArrowUp);
213
+ const year = await DSDateInputCO.getYear();
214
+ await expect(year).toHaveValueContaining('0001');
215
+ });
216
+ });
217
+ }