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,215 @@
1
+ /* eslint-disable max-lines */
2
+ import { Key } from 'webdriverio';
3
+ import DSComboboxCO from '../DSComboboxCO';
4
+ import { type } from '../../../helpers';
5
+
6
+ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
7
+ describe('PUI-8134 - ComboboxV3:: Multi Select - basic- keyboard func', () => {
8
+ before('loading page', async () => {
9
+ const errorOnGo = await DSComboboxCO.multiSelectFixedWidth.go();
10
+ if (errorOnGo) throw errorOnGo;
11
+ });
12
+ it('01: should focus the combobox', async () => {
13
+ const combobox = await DSComboboxCO.getCombobox();
14
+ await combobox.waitForDisplayed();
15
+ await browser.keys(Key.Tab);
16
+ const input = await DSComboboxCO.getComboboxInput();
17
+ await expect(input).toBeFocused(true);
18
+ });
19
+ it('02: should open the dropdown menu - ENTER', async () => {
20
+ await browser.keys(Key.Enter);
21
+ const menulist = await DSComboboxCO.getMenuList();
22
+ await expect(menulist).toBeDisplayed();
23
+ });
24
+ it('03: should close the dropdown menu - ESC', async () => {
25
+ await browser.keys(Key.Escape);
26
+ const menulist = await DSComboboxCO.getMenuList();
27
+ await expect(menulist).not.toBeDisplayed();
28
+ });
29
+ it('04: should open the dropdown menu - Spacebar', async () => {
30
+ await browser.keys(Key.Space);
31
+ const menulist = await DSComboboxCO.getMenuList();
32
+ await expect(menulist).toBeDisplayed();
33
+ });
34
+ it('05: should select an option and not close the menu - ENTER', async () => {
35
+ const menulist = await DSComboboxCO.getMenuList();
36
+ await browser.keys(Key.Enter);
37
+ const selectedOption = await DSComboboxCO.getSelectedValues();
38
+ await expect(menulist).toBeDisplayed();
39
+ await expect(selectedOption).toHaveTextContaining('Luke Skywalker too long this text is super long 1');
40
+ });
41
+ it('06: should select last option and not close the menu - ArrowUp', async () => {
42
+ const menulist = await DSComboboxCO.getMenuList();
43
+ await browser.keys(Key.ArrowUp);
44
+ await browser.keys(Key.Enter);
45
+ const overflowPill = await DSComboboxCO.getPillByLabel('+1');
46
+ await expect(menulist).toBeDisplayed();
47
+ await expect(overflowPill).toBeDisplayedInViewport();
48
+ });
49
+ it('07: should unselect the same option correctly - Enter', async () => {
50
+ await browser.keys(Key.Enter);
51
+ const selectedOption = await DSComboboxCO.getPillByLabel('+1');
52
+ await expect(selectedOption).not.toBeDisplayedInViewport();
53
+ });
54
+ it('08: should select another option - ArrowDown', async () => {
55
+ await browser.keys(Key.ArrowDown);
56
+ await browser.keys(Key.ArrowDown);
57
+ await browser.keys(Key.ArrowDown);
58
+ await browser.keys(Key.Enter);
59
+ const selectedOption = await DSComboboxCO.getPillByLabel('+1');
60
+ await expect(selectedOption).toBeDisplayedInViewport();
61
+ });
62
+ });
63
+ describe('PUI-8135 - ComboboxV3:: Multi Select - unselect - keyboard func', () => {
64
+ before('loading page', async () => {
65
+ const errorOnGo = await DSComboboxCO.multiSelectFixedWidth.go();
66
+ if (errorOnGo) throw errorOnGo;
67
+ });
68
+ it('01: should unselect an option - Backspace', async () => {
69
+ await browser.keys(Key.Tab);
70
+ await type(')');
71
+ await browser.keys(Key.Enter);
72
+ const selectedOption = await DSComboboxCO.getPillByLabel('(555) 555-5555');
73
+ await selectedOption.waitForDisplayed();
74
+ await browser.keys(Key.Backspace);
75
+ await expect(selectedOption).not.toBeDisplayedInViewport();
76
+ });
77
+ it('02: should unselect an option - using X close pill btn', async () => {
78
+ await type('2');
79
+ await browser.keys(Key.Enter);
80
+ const selectedOption = await DSComboboxCO.getPillByLabel('Luke Skywalker too long this text is super long 2');
81
+ await selectedOption.waitForDisplayed();
82
+ await browser.keys(Key.ArrowLeft);
83
+ await browser.keys(Key.Enter);
84
+ await expect(selectedOption).not.toBeDisplayedInViewport();
85
+ });
86
+ });
87
+ describe('PUI-8136 - ComboboxV3:: Multi Select - filter - keyboard func', () => {
88
+ before('loading page', async () => {
89
+ const errorOnGo = await DSComboboxCO.multiSelectFixedWidth.go();
90
+ if (errorOnGo) throw errorOnGo;
91
+ });
92
+ it('01: type an inexistent option', async () => {
93
+ await browser.keys(Key.Tab);
94
+ await type('test');
95
+ const noMatchesFoundMsg = await DSComboboxCO.getNoMatchesFoundMsg();
96
+ await expect(noMatchesFoundMsg).toBeDisplayed();
97
+ });
98
+ it('02: press Escape and type an inexistent option', async () => {
99
+ await browser.keys(Key.Escape);
100
+ await type('lukes');
101
+ const noMatchesFoundMsg = await DSComboboxCO.getNoMatchesFoundMsg();
102
+ await expect(noMatchesFoundMsg).toBeDisplayed();
103
+ });
104
+ it('03: correct typed option - Backspace', async () => {
105
+ await browser.keys(Key.Backspace);
106
+ const option1 = await DSComboboxCO.getOptionByLabel('Luke Skywalker too long this text is super long 1');
107
+ const option2 = await DSComboboxCO.getOptionByLabel('Luke Skywalker too long this text is super long 2');
108
+ const numOptions = await DSComboboxCO.getNumberOptions();
109
+ await expect(option1).toBeDisplayedInViewport();
110
+ await expect(option2).toBeDisplayedInViewport();
111
+ await expect(numOptions).toBe(3);
112
+ });
113
+ it('04: select filtered option - Enter', async () => {
114
+ await browser.keys(Key.Enter);
115
+ const selectedOption = await DSComboboxCO.getPillByLabel('Luke Skywalker too long this text is super long 1');
116
+ await expect(selectedOption).toBeDisplayed();
117
+ });
118
+ });
119
+ describe('PUI-8138 - ComboboxV3:: Multi Select Disabled Option - keyboard func', () => {
120
+ before('loading page', async () => {
121
+ const errorOnGo = await DSComboboxCO.multiSelectFixedWidth.go();
122
+ if (errorOnGo) throw errorOnGo;
123
+ });
124
+ it('01: filter a disabled option', async () => {
125
+ await DSComboboxCO.openMenuUsingKeyboard();
126
+ await type('Han');
127
+ const option = await DSComboboxCO.getOptionByLabel('Han Solo 4');
128
+ const numOptions = await DSComboboxCO.getNumberOptions();
129
+ await expect(option).toBeDisplayedInViewport();
130
+ await expect(numOptions).toBe(1);
131
+ });
132
+ it('02: should not select a disabled option', async () => {
133
+ await browser.keys(Key.Enter);
134
+ const selectedOption = await DSComboboxCO.getPillByLabel('Han Solo 4');
135
+ const dropdownMenu = await DSComboboxCO.getMenuList();
136
+ await expect(selectedOption).not.toBeDisplayed();
137
+ await expect(dropdownMenu).toBeDisplayed();
138
+ });
139
+ it('03: should tab correctly to next element', async () => {
140
+ await browser.keys(Key.Tab);
141
+ const inputText = await DSComboboxCO.getInputText();
142
+ const menulist = await await DSComboboxCO.getMenuList();
143
+ await expect(menulist).not.toBeDisplayedInViewport();
144
+ await expect(inputText).toBeFocused();
145
+ });
146
+ });
147
+ describe('PUI-8139 - ComboboxV3:: Multi Select - selectAll - keyboard func', () => {
148
+ before('loading page', async () => {
149
+ const errorOnGo = await DSComboboxCO.multiSelectFixedWidth.go();
150
+ if (errorOnGo) throw errorOnGo;
151
+ });
152
+ it('01: select all options', async () => {
153
+ await DSComboboxCO.openMenuUsingKeyboard();
154
+ await browser.keys(Key.Tab);
155
+ await browser.keys(Key.Space);
156
+ const selectedOption = await DSComboboxCO.getOptionByLabel('Luke Skywalker too long this text is super long 1');
157
+ const overflowPill = await DSComboboxCO.getPillByLabel('+8');
158
+ const menulist = await DSComboboxCO.getMenuList();
159
+ const showSelectedBtn = await DSComboboxCO.getSelectedOptionsToggle();
160
+ await expect(showSelectedBtn).toHaveTextContaining('SHOW SELECTED [9]');
161
+ await expect(overflowPill).toBeDisplayedInViewport();
162
+ await expect(menulist).toBeDisplayedInViewport();
163
+ await expect(selectedOption).toBeDisplayedInViewport();
164
+ });
165
+ it('02: should display only selected options', async () => {
166
+ await browser.keys(Key.Tab);
167
+ await browser.keys(Key.Space);
168
+ const numOptions = await DSComboboxCO.getNumberOptions();
169
+ const showSelectedBtn = await DSComboboxCO.getSelectedOptionsToggle();
170
+ await expect(showSelectedBtn).toHaveTextContaining('SHOW ALL');
171
+ await expect(numOptions).toBe(9);
172
+ });
173
+ it('03: should unselect last item', async () => {
174
+ await browser.keys(Key.Tab);
175
+ await browser.keys(Key.Enter);
176
+ const option = await DSComboboxCO.getOptionByLabel('Anakin Skywalker 5');
177
+ const overflowPill = await DSComboboxCO.getPillByLabel('+7');
178
+ await expect(option).not.toBeDisplayedInViewport();
179
+ await expect(overflowPill).toBeDisplayedInViewport();
180
+ });
181
+ it('04: should unselect all items', async () => {
182
+ await browser.keys(Key.Tab);
183
+ await browser.keys(Key.Space);
184
+ const numOptions = await DSComboboxCO.getNumberOptions();
185
+ const zeroSelected = await DSComboboxCO.getZeroSelectedMsg();
186
+ const selectedOption = await DSComboboxCO.getPillByLabel('Luke Skywalker too long this text is super long 1');
187
+ const overflowPill = await DSComboboxCO.getPillByLabel('+8');
188
+ await expect(zeroSelected).toBeDisplayedInViewport();
189
+ await expect(numOptions).toBe(11);
190
+ await expect(selectedOption).not.toBeDisplayedInViewport();
191
+ await expect(overflowPill).not.toBeDisplayedInViewport();
192
+ });
193
+ it('05: should close menu list correctly - focus in selectAll checkbox', async () => {
194
+ await browser.keys(Key.Tab);
195
+ await browser.keys(Key.Escape);
196
+ const menulist = await DSComboboxCO.getMenuList();
197
+ const comboboxInput = await DSComboboxCO.getComboboxInput();
198
+ await expect(menulist).not.toBeDisplayedInViewport();
199
+ await expect(comboboxInput).toBeFocused();
200
+ });
201
+ it('06: should close menu list correctly - focus in show selected toggle btn', async () => {
202
+ await browser.keys(Key.Enter);
203
+ await browser.keys(Key.Tab);
204
+ await browser.keys(Key.Space);
205
+ const showSelectedBtn = await DSComboboxCO.getSelectedOptionsToggle();
206
+ await showSelectedBtn.waitForDisplayed();
207
+ await browser.keys(Key.Tab);
208
+ await browser.keys(Key.Escape);
209
+ const menulist = await DSComboboxCO.getMenuList();
210
+ const comboboxInput = await DSComboboxCO.getComboboxInput();
211
+ await expect(menulist).not.toBeDisplayedInViewport();
212
+ await expect(comboboxInput).toBeFocused();
213
+ });
214
+ });
215
+ }
@@ -0,0 +1,223 @@
1
+ /* eslint-disable max-lines */
2
+ import DSComboboxCO from '../DSComboboxCO';
3
+ import { type } from '../../../helpers';
4
+
5
+ if (!browser.capabilities['ice:options'].isPhone && browser.capabilities.browserName !== 'Android') {
6
+ describe('PUI-8162 - ComboboxV3:: Multi Select basic - func', () => {
7
+ before('loading page', async () => {
8
+ const errorOnGo = await DSComboboxCO.multiSelectFixedWidth.go();
9
+ if (errorOnGo) throw errorOnGo;
10
+ });
11
+ it('01: should open dropdown menu - click combobox', async () => {
12
+ const combobox = await DSComboboxCO.getComboboxWrapper();
13
+ await combobox.waitForDisplayed();
14
+ await combobox.click();
15
+ const dropdownMenu = await DSComboboxCO.getMenuList();
16
+ await dropdownMenu.waitForDisplayed();
17
+ await expect(dropdownMenu).toBeDisplayedInViewport();
18
+ });
19
+ it('02: should close the dropdown menu - click combobox', async () => {
20
+ const combobox = await DSComboboxCO.getComboboxWrapper();
21
+ await combobox.click();
22
+ const dropdownMenu = await DSComboboxCO.getMenuList();
23
+ await expect(dropdownMenu).not.toBeDisplayedInViewport();
24
+ });
25
+ it('03: should open dropdown menu - click dropdownMenuBtn', async () => {
26
+ const combobox = await DSComboboxCO.getDropDownMenuBtn();
27
+ await combobox.click();
28
+ const menuList = await DSComboboxCO.getMenuList();
29
+ await expect(menuList).toBeDisplayedInViewport();
30
+ });
31
+ it('04: should close the dropdown menu - click dropdownMenuBtn', async () => {
32
+ const combobox = await DSComboboxCO.getDropDownMenuBtn();
33
+ await combobox.click();
34
+ const dropdownMenu = await DSComboboxCO.getMenuList();
35
+ await expect(dropdownMenu).not.toBeDisplayedInViewport();
36
+ });
37
+ it('05: should select an option and not close the menu', async () => {
38
+ const combobox = await DSComboboxCO.getDropDownMenuBtn();
39
+ await combobox.click();
40
+ const option = await DSComboboxCO.getOptionByLabel('Luke Skywalker too long this text is super long 1');
41
+ await option.click();
42
+ const pill = await DSComboboxCO.getPillByLabel('Luke Skywalker too long this text is super long 1');
43
+ const menuList = await DSComboboxCO.getMenuList();
44
+ await expect(menuList).toBeDisplayed();
45
+ await expect(pill).toBeDisplayedInViewport();
46
+ });
47
+ it('06: should scroll and select last option and not close the menu', async () => {
48
+ const padmeOption = await DSComboboxCO.getOptionByLabel('Padme Amidala 3');
49
+ await padmeOption.scrollIntoView();
50
+ const lastOption = await DSComboboxCO.getOptionByLabel('Anakin Skywalker 5');
51
+ await lastOption.scrollIntoView();
52
+ await lastOption.click();
53
+ const menulist = await DSComboboxCO.getMenuList();
54
+ const overflowPill = await DSComboboxCO.getPillByLabel('+1');
55
+ await expect(menulist).toBeDisplayed();
56
+ await expect(overflowPill).toBeDisplayedInViewport();
57
+ });
58
+ it('07: should unselect the same option correctly - clicking option', async () => {
59
+ const lastOption = await DSComboboxCO.getOptionByLabel('Anakin Skywalker 5');
60
+ await lastOption.scrollIntoView();
61
+ await lastOption.click();
62
+ const selectedOption = await DSComboboxCO.getPillByLabel('+1');
63
+ await expect(selectedOption).not.toBeDisplayedInViewport();
64
+ });
65
+ it('08: should select another option', async () => {
66
+ const lastOption = await DSComboboxCO.getOptionByLabel('Padme Amidala 3');
67
+ await lastOption.scrollIntoView();
68
+ await lastOption.click();
69
+ const selectedOption = await DSComboboxCO.getPillByLabel('+1');
70
+ await expect(selectedOption).toBeDisplayedInViewport();
71
+ });
72
+ });
73
+ describe('PUI-8163 - ComboboxV3:: Multi Select - unselect - func', () => {
74
+ before('loading page', async () => {
75
+ const errorOnGo = await DSComboboxCO.multiSelectFixedWidth.go();
76
+ if (errorOnGo) throw errorOnGo;
77
+ });
78
+ it('01: should select options correctly', async () => {
79
+ await DSComboboxCO.openMenuListMouse();
80
+ const option = await DSComboboxCO.getOptionByLabel('(555) 555-5555');
81
+ const option2 = await DSComboboxCO.getOptionByLabel('Padme Amidala');
82
+ const option3 = await DSComboboxCO.getOptionByLabel('Luke Skywalker too long this text is super long 2');
83
+ await option.click();
84
+ await option2.click();
85
+ await option3.click();
86
+ const pill1 = await DSComboboxCO.getOptionByLabel('(555) 555-5555');
87
+ const pill2 = await DSComboboxCO.getOptionByLabel('Padme Amidala');
88
+ const pill3 = await DSComboboxCO.getOptionByLabel('Luke Skywalker too long this text is super long 2');
89
+ await expect(pill1).toBeDisplayedInViewport();
90
+ await expect(pill2).toBeDisplayedInViewport();
91
+ await expect(pill3).toBeDisplayedInViewport();
92
+ });
93
+ it('02: should unselect an option - using X close pill btn - menuList opened', async () => {
94
+ const pillCloseBtn = await DSComboboxCO.getPillCloseBtnByIndex(0);
95
+ await pillCloseBtn.click();
96
+ const menuList = await DSComboboxCO.getMenuList();
97
+ const pill1 = await DSComboboxCO.getPillByLabel('(555) 555-5555');
98
+ await expect(menuList).toBeDisplayedInViewport();
99
+ await expect(pill1).not.toBeDisplayedInViewport();
100
+ });
101
+ it('03: should unselect an option - using checkbox', async () => {
102
+ const optionCheckbox = await DSComboboxCO.getCheckboxByLabel('Padme Amidala');
103
+ await optionCheckbox.click();
104
+ const menuList = await DSComboboxCO.getMenuList();
105
+ const pill2 = await DSComboboxCO.getPillByLabel('Padme Amidala');
106
+ await expect(menuList).toBeDisplayedInViewport();
107
+ await expect(pill2).not.toBeDisplayedInViewport();
108
+ });
109
+ it('04: should unselect an option - using X close pill btn - menuList closed', async () => {
110
+ const dropdownMenuBtn = await DSComboboxCO.getDropDownMenuBtn();
111
+ await dropdownMenuBtn.click();
112
+ const pillCloseBtn = await DSComboboxCO.getPillCloseBtnByIndex(0);
113
+ await pillCloseBtn.click();
114
+ const menuList = await DSComboboxCO.getMenuList();
115
+ const pill3 = await DSComboboxCO.getPillByLabel('Luke Skywalker too long this text is super long 2');
116
+ await expect(menuList).not.toBeDisplayedInViewport();
117
+ await expect(pill3).not.toBeDisplayedInViewport();
118
+ });
119
+ });
120
+ if (!browser.capabilities['ice:options'].isTablet) {
121
+ describe('PUI-8164 - ComboboxV3:: Multi Select - filter - func', () => {
122
+ before('loading page', async () => {
123
+ const errorOnGo = await DSComboboxCO.multiSelectFixedWidth.go();
124
+ if (errorOnGo) throw errorOnGo;
125
+ });
126
+ it('01: select a filtered option', async () => {
127
+ await DSComboboxCO.openMenuListMouse();
128
+ await type('Luke');
129
+ const option1 = await DSComboboxCO.getOptionByLabel('Luke Skywalker too long this text is super long 1');
130
+ await option1.click();
131
+ const pill = await DSComboboxCO.getPillByLabel('Luke Skywalker too long this text is super long 1');
132
+ await expect(pill).toBeDisplayed();
133
+ });
134
+ it('02: unselect a filtered option', async () => {
135
+ await type('Luke');
136
+ const option1 = await DSComboboxCO.getOptionByLabel('Luke Skywalker too long this text is super long 1');
137
+ await option1.click();
138
+ const pill = await DSComboboxCO.getPillByLabel('Luke Skywalker too long this text is super long 1');
139
+ await expect(pill).not.toBeDisplayed();
140
+ });
141
+ });
142
+ describe('PUI-8165 - ComboboxV3:: Multi Select Disabled Option - func', () => {
143
+ before('loading page', async () => {
144
+ const errorOnGo = await DSComboboxCO.multiSelectFixedWidth.go();
145
+ if (errorOnGo) throw errorOnGo;
146
+ });
147
+ it('01: filter a disabled option', async () => {
148
+ await DSComboboxCO.openMenuUsingKeyboard();
149
+ await type('Han');
150
+ const option = await DSComboboxCO.getOptionByLabel('Han Solo');
151
+ const numOptions = await DSComboboxCO.getNumberOptions();
152
+ await expect(option).toBeDisplayedInViewport();
153
+ await expect(numOptions).toBe(1);
154
+ });
155
+ it('02: should not select a disabled option', async () => {
156
+ const option = await DSComboboxCO.getOptionByLabel('Han Solo');
157
+ await option.click();
158
+ const selectedOption = await DSComboboxCO.getPillByLabel('Han Solo');
159
+ const dropdownMenu = await DSComboboxCO.getMenuList();
160
+ await expect(selectedOption).not.toBeDisplayed();
161
+ await expect(dropdownMenu).toBeDisplayed();
162
+ });
163
+ });
164
+ }
165
+ describe('PUI-8166 - ComboboxV3:: Multi Select - selectAll - func', () => {
166
+ before('loading page', async () => {
167
+ const errorOnGo = await DSComboboxCO.multiSelectFixedWidth.go();
168
+ if (errorOnGo) throw errorOnGo;
169
+ });
170
+ it('01: select all options', async () => {
171
+ await DSComboboxCO.openMenuListMouse();
172
+ const selectAllCheckbox = await DSComboboxCO.getSelectAllCheckbox();
173
+ await selectAllCheckbox.click();
174
+ const selectedOption = await DSComboboxCO.getOptionByLabel('Luke Skywalker too long this text is super long 1');
175
+ const overflowPill = await DSComboboxCO.getPillByLabel('+8');
176
+ const menulist = await DSComboboxCO.getMenuList();
177
+ const showSelectedBtn = await DSComboboxCO.getSelectedOptionsToggle();
178
+ await expect(showSelectedBtn).toHaveTextContaining('SHOW SELECTED [9]');
179
+ await expect(overflowPill).toBeDisplayedInViewport();
180
+ await expect(menulist).toBeDisplayedInViewport();
181
+ await expect(selectedOption).toBeDisplayedInViewport();
182
+ });
183
+ it('02: should display only selected options', async () => {
184
+ const selectedOptionBtn = await DSComboboxCO.getSelectedOptionsToggle();
185
+ await selectedOptionBtn.click();
186
+ const numOptions = await DSComboboxCO.getNumberOptions();
187
+ const showSelectedBtn = await DSComboboxCO.getSelectedOptionsToggle();
188
+ await expect(showSelectedBtn).toHaveTextContaining('SHOW ALL');
189
+ await expect(numOptions).toBe(9);
190
+ });
191
+ it('03: should display all options', async () => {
192
+ const showAllBtn = await DSComboboxCO.getSelectedOptionsToggle();
193
+ await showAllBtn.click();
194
+ const numOptions = await DSComboboxCO.getNumberOptions();
195
+ const showSelectedBtn = await DSComboboxCO.getSelectedOptionsToggle();
196
+ await expect(showSelectedBtn).toHaveTextContaining('SHOW SELECTED [9]');
197
+ await expect(numOptions).toBe(11);
198
+ });
199
+ it('04: should unselect last item', async () => {
200
+ const option = await DSComboboxCO.getOptionByLabel('Padme Amidala 3');
201
+ await option.scrollIntoView();
202
+ const option2 = await DSComboboxCO.getOptionByLabel('Anakin Skywalker 5');
203
+ await option2.scrollIntoView();
204
+ await option2.click();
205
+ const overflowPill = await DSComboboxCO.getPillByLabel('+7');
206
+ await expect(overflowPill).toBeDisplayedInViewport();
207
+ });
208
+ it('05: should unselect all items', async () => {
209
+ const showSelectedBtn = await DSComboboxCO.getSelectedOptionsToggle();
210
+ await showSelectedBtn.click();
211
+ const selectAllCheckbox = await DSComboboxCO.getSelectAllCheckbox();
212
+ await selectAllCheckbox.click();
213
+ const numOptions = await DSComboboxCO.getNumberOptions();
214
+ const zeroSelected = await DSComboboxCO.getZeroSelectedMsg();
215
+ const selectedOption = await DSComboboxCO.getPillByLabel('Luke Skywalker too long this text is super long 1');
216
+ const overflowPill = await DSComboboxCO.getPillByLabel('+7');
217
+ await expect(zeroSelected).toBeDisplayedInViewport();
218
+ await expect(numOptions).toBe(11);
219
+ await expect(selectedOption).not.toBeDisplayedInViewport();
220
+ await expect(overflowPill).not.toBeDisplayedInViewport();
221
+ });
222
+ });
223
+ }
@@ -0,0 +1,47 @@
1
+ /* eslint-disable max-lines */
2
+ import { Key } from 'webdriverio';
3
+ import DSComboboxCO from '../DSComboboxCO';
4
+ import { type } from '../../../helpers';
5
+ import { axeCoreCheck } from '../../../helpers';
6
+
7
+ if (
8
+ (!browser.capabilities['ice:options'].isPhone &&
9
+ !browser.capabilities['ice:options'].isTablet &&
10
+ browser.capabilities.browserName === 'chrome') ||
11
+ browser.capabilities.browserName === 'Chrome'
12
+ ) {
13
+ describe('PUI-10908 - ComboboxV3:: Multi Select - basic- keyboard func', () => {
14
+ before('loading page', async () => {
15
+ const errorOnGo = await DSComboboxCO.multiSelectFixedWidth.go();
16
+ if (errorOnGo) throw errorOnGo;
17
+ });
18
+ it('01: should have multiple options selected and be axe-core compliant', async () => {
19
+ const combobox = await DSComboboxCO.getCombobox();
20
+ await combobox.click();
21
+ await browser.keys(Key.Enter);
22
+ await browser.keys(Key.ArrowDown);
23
+ await browser.keys(Key.ArrowDown);
24
+ await browser.keys(Key.ArrowDown);
25
+ await browser.keys(Key.Enter);
26
+ const result = await axeCoreCheck();
27
+ expect(result.length).toBe(0);
28
+ });
29
+ });
30
+ describe('PUI-10909 - ComboboxV3:: Multi Select - filter - keyboard func', () => {
31
+ before('loading page', async () => {
32
+ const errorOnGo = await DSComboboxCO.multiSelectFixedWidth.go();
33
+ if (errorOnGo) throw errorOnGo;
34
+ });
35
+ it('01: filtering and not finding options should be axecore copliant', async () => {
36
+ await browser.keys(Key.Tab);
37
+ await type('lukes');
38
+ const result = await axeCoreCheck();
39
+ expect(result.length).toBe(0);
40
+ });
41
+ it('02: filter and finding options should be axecore compliant', async () => {
42
+ await browser.keys(Key.Backspace);
43
+ const result = await axeCoreCheck();
44
+ expect(result.length).toBe(0);
45
+ });
46
+ });
47
+ }
@@ -0,0 +1,142 @@
1
+ /* eslint-disable max-lines */
2
+ import { Key } from 'webdriverio';
3
+ import DSComboboxCO from '../DSComboboxCO';
4
+ import { mouseOver, type } from '../../../helpers';
5
+
6
+ // skiped Android tests - issue ' metadata is not defined ' PUI-10881
7
+ if (!browser.capabilities['ice:options'].isPhone && browser.capabilities.browserName !== 'Android') {
8
+ describe('PUI-8445 - ComboboxV3:: Multi Select - visual', () => {
9
+ before('loading page', async () => {
10
+ const errorOnGo = await DSComboboxCO.multiSelectFixedWidth.go();
11
+ if (errorOnGo) throw errorOnGo;
12
+ });
13
+ it('01: should display combobox closed', async () => {
14
+ await browser.eyesOpen();
15
+ const combobox = await DSComboboxCO.getCombobox();
16
+ await combobox.waitForDisplayed();
17
+ const snapshot = await browser.eyesCheckSnapshot(DSComboboxCO.snapshotPath('comboboxV3-multi-closed'));
18
+ await expect(snapshot).toEqual(0);
19
+ });
20
+ it('02: should display dropdown menu opened - click combobox', async () => {
21
+ await browser.eyesOpen();
22
+ const combobox = await DSComboboxCO.getComboboxWrapper();
23
+ await combobox.click();
24
+ const snapshot = await browser.eyesCheckSnapshot(DSComboboxCO.snapshotPath('comboboxV3-multi-opened'));
25
+ await expect(snapshot).toEqual(0);
26
+ });
27
+ it('03: should display option selected - click an option', async () => {
28
+ await browser.eyesOpen();
29
+ const option = await DSComboboxCO.getOptionByLabel('Luke Skywalker too long this text is super long 1');
30
+ await option.click();
31
+ const snapshot = await browser.eyesCheckSnapshot(DSComboboxCO.snapshotPath('comboboxV3-multi-option-selected'));
32
+ await expect(snapshot).toEqual(0);
33
+ });
34
+ it('04: should display last option selected - click last option', async () => {
35
+ await browser.eyesOpen();
36
+ const padmeOption = await DSComboboxCO.getOptionByLabel('Padme Amidala 3');
37
+ await padmeOption.scrollIntoView();
38
+ const lastOption = await DSComboboxCO.getOptionByLabel('Anakin Skywalker 5');
39
+ await lastOption.scrollIntoView();
40
+ await lastOption.click();
41
+ const snapshot = await browser.eyesCheckSnapshot(
42
+ DSComboboxCO.snapshotPath('comboboxV3-multi--last-option-selected'),
43
+ );
44
+ await expect(snapshot).toEqual(0);
45
+ });
46
+ it('05: should display only selected options - click show selected', async () => {
47
+ await browser.eyesOpen();
48
+ const showSelectedBtn = await DSComboboxCO.getSelectedOptionsToggle();
49
+ await showSelectedBtn.click();
50
+ const snapshot = await browser.eyesCheckSnapshot(DSComboboxCO.snapshotPath('comboboxV3-multi-show-selected'));
51
+ await expect(snapshot).toEqual(0);
52
+ });
53
+ it('06: should display all options - click select all', async () => {
54
+ await browser.eyesOpen();
55
+ const showSelectedBtn = await DSComboboxCO.getSelectedOptionsToggle();
56
+ await showSelectedBtn.click();
57
+ const selectAll = await DSComboboxCO.getSelectAllCheckbox();
58
+ await selectAll.click();
59
+ const snapshot = await browser.eyesCheckSnapshot(DSComboboxCO.snapshotPath('comboboxV3-multi-all-selected'));
60
+ await expect(snapshot).toEqual(0);
61
+ });
62
+ if (browser.capabilities['ice:options'].isTablet) {
63
+ it('07: should display tooltip - touch truncated pill', async () => {
64
+ await browser.eyesOpen();
65
+ const truncatedOption = await DSComboboxCO.getPillByLabel('Luke Skywalker too long this text is super long 1');
66
+ await truncatedOption.click();
67
+ const snapshot = await browser.eyesCheckSnapshot(
68
+ DSComboboxCO.snapshotPath('comboboxV3-tooltip-truncated-pill'),
69
+ );
70
+ await expect(snapshot).toEqual(0);
71
+ });
72
+ } else {
73
+ it('07: should display tooltip - hover truncated pill', async () => {
74
+ await browser.eyesOpen();
75
+ const truncatedOption = await DSComboboxCO.getPillByLabel('Luke Skywalker too long this text is super long 1');
76
+ await truncatedOption.waitForDisplayed();
77
+ await mouseOver(truncatedOption, 20, 5);
78
+ const snapshot = await browser.eyesCheckSnapshot(
79
+ DSComboboxCO.snapshotPath('comboboxV3-multi-tooltip-truncated-pill'),
80
+ );
81
+ await expect(snapshot).toEqual(0);
82
+ });
83
+ }
84
+ });
85
+ if (!browser.capabilities['ice:options'].isTablet) {
86
+ describe('PUI-8467 - ComboboxV3:: Multi Select - keyboard - visual', () => {
87
+ before('loading page', async () => {
88
+ const errorOnGo = await DSComboboxCO.multiSelectFixedWidth.go();
89
+ if (errorOnGo) throw errorOnGo;
90
+ });
91
+ it('01: should display combobox opened - Enter', async () => {
92
+ await browser.eyesOpen();
93
+ await browser.keys(Key.Tab);
94
+ await browser.keys(Key.Enter);
95
+ const snapshot = await browser.eyesCheckSnapshot(DSComboboxCO.snapshotPath('comboboxV3-multi-opened-keyboard'));
96
+ await expect(snapshot).toEqual(0);
97
+ });
98
+ it('02: should navigate to last option - ArrowDown', async () => {
99
+ await browser.eyesOpen();
100
+ await browser.keys(Key.ArrowDown);
101
+ await browser.keys(Key.ArrowDown);
102
+ await browser.keys(Key.ArrowDown);
103
+ await browser.keys(Key.ArrowDown);
104
+ await browser.keys(Key.ArrowDown);
105
+ await browser.keys(Key.ArrowDown);
106
+ await browser.keys(Key.ArrowDown);
107
+ await browser.keys(Key.ArrowDown);
108
+ await browser.keys(Key.Enter);
109
+ const snapshot = await browser.eyesCheckSnapshot(
110
+ DSComboboxCO.snapshotPath('comboboxV3-multi-scroll-down-keyboard'),
111
+ );
112
+ await expect(snapshot).toEqual(0);
113
+ });
114
+ it('03: should navigate to first option - ArrowUp', async () => {
115
+ await browser.eyesOpen();
116
+ await browser.keys(Key.ArrowUp);
117
+ await browser.keys(Key.ArrowUp);
118
+ await browser.keys(Key.ArrowUp);
119
+ await browser.keys(Key.ArrowUp);
120
+ await browser.keys(Key.ArrowUp);
121
+ await browser.keys(Key.ArrowUp);
122
+ await browser.keys(Key.ArrowUp);
123
+ await browser.keys(Key.ArrowUp);
124
+ await browser.keys(Key.Enter);
125
+ const snapshot = await browser.eyesCheckSnapshot(
126
+ DSComboboxCO.snapshotPath('comboboxV3-multi-scroll-up-keyboard'),
127
+ );
128
+ await expect(snapshot).toEqual(0);
129
+ });
130
+ it('04: type an invalid option', async () => {
131
+ await browser.eyesOpen();
132
+ await type('Luke Skywalker 1');
133
+ const combobox = await DSComboboxCO.getCombobox();
134
+ await combobox.waitForDisplayed();
135
+ const snapshot = await browser.eyesCheckSnapshot(
136
+ DSComboboxCO.snapshotPath('comboboxV3-multi-scroll-up-keyboard'),
137
+ );
138
+ await expect(snapshot).toEqual(0);
139
+ });
140
+ });
141
+ }
142
+ }
@@ -0,0 +1,47 @@
1
+ /* eslint-disable max-lines */
2
+ import { Key } from 'webdriverio';
3
+ import DSComboboxCO from '../DSComboboxCO';
4
+
5
+ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
6
+ describe('PUI-8176 - ComboboxV3:: Multi Select - Ten thousand options - func', () => {
7
+ before('loading page', async () => {
8
+ const errorOnGo = await DSComboboxCO.TenThousandOptionsFixedWidth.go();
9
+ if (errorOnGo) throw errorOnGo;
10
+ });
11
+ it('01: should select all the options correctly', async () => {
12
+ await DSComboboxCO.openMenuListMouse();
13
+ const selectAllCheckbox = await DSComboboxCO.getSelectAllCheckbox();
14
+ await selectAllCheckbox.click();
15
+ const selectedOption = await DSComboboxCO.getOptionByLabel('Option 9999');
16
+ const overflowPill = await DSComboboxCO.getPillByLabel('+9999');
17
+ const showSelectedBtn = await DSComboboxCO.getSelectedOptionsToggle();
18
+ await expect(showSelectedBtn).toHaveTextContaining('SHOW SELECTED [10000]');
19
+ await expect(overflowPill).toBeDisplayedInViewport();
20
+ await expect(selectedOption).toBeDisplayedInViewport();
21
+ });
22
+ it('02: should unselect one option', async () => {
23
+ await browser.keys(Key.ArrowDown);
24
+ const option = await DSComboboxCO.getOptionByLabel('Option 7');
25
+ await option.click();
26
+ const overflowPill = await DSComboboxCO.getPillByLabel('+9998');
27
+ await expect(overflowPill).toBeDisplayedInViewport();
28
+ });
29
+ it('03: should display selected options', async () => {
30
+ const option7 = await DSComboboxCO.getOptionByLabel('Option 7');
31
+ const selectedOptionBtn = await DSComboboxCO.getSelectedOptionsToggle();
32
+ await selectedOptionBtn.click();
33
+ const showSelectedBtn = await DSComboboxCO.getSelectedOptionsToggle();
34
+ await showSelectedBtn.waitForDisplayed();
35
+ await expect(showSelectedBtn).toHaveTextContaining('SHOW ALL');
36
+ await expect(option7).not.toBeDisplayedInViewport();
37
+ });
38
+ it('04: should unselect all options', async () => {
39
+ const overflowPill = await DSComboboxCO.getPillByLabel('+9998');
40
+ const selectedOption = await DSComboboxCO.getPillByLabel('Option 0');
41
+ const selectAllCheckbox = await DSComboboxCO.getSelectAllCheckbox();
42
+ await selectAllCheckbox.click();
43
+ await expect(overflowPill).not.toBeDisplayedInViewport();
44
+ await expect(selectedOption).not.toBeDisplayedInViewport();
45
+ });
46
+ });
47
+ }