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,87 @@
1
+ /* eslint-disable no-await-in-loop */
2
+ /* eslint-disable no-plusplus */
3
+ import { ComposerCO } from './components';
4
+ import { type } from '../helpers';
5
+
6
+ // Does not work on iPad 8th. Remove when upgraded to the latest one
7
+ if (
8
+ !browser.capabilities['ice:options']?.isPhone &&
9
+ !browser.capabilities?.['bstack:options']?.deviceName?.includes('iPad')
10
+ ) {
11
+ describe('PUI-6694 - Chat, Composer, Textarea - Visual Tests', () => {
12
+ before('loading page', async () => {
13
+ const errorOnGo = await ComposerCO.composerURL.go();
14
+ if (errorOnGo) throw errorOnGo;
15
+ });
16
+ it('should grow the textarea to 50% of the parent', async () => {
17
+ const composerTextArea = await ComposerCO.getTextareaInput();
18
+ await composerTextArea.click();
19
+ for (let i = 0; i < 8; i++) {
20
+ if (browser.capabilities['ice:options']?.isTablet) {
21
+ await composerTextArea.addValue(ComposerCO.LONG_STRING);
22
+ } else {
23
+ await type(ComposerCO.LONG_STRING);
24
+ }
25
+ }
26
+ const snapshot = await browser.checkSnapshot(ComposerCO.snapshotPath('composer'));
27
+ await expect(snapshot).toEqual(0);
28
+ });
29
+ });
30
+ }
31
+
32
+ if (browser.capabilities?.['ice:options']?.isPhone) {
33
+ describe('PUI-6695 - Chat, Composer, Phone - Visual Tests', () => {
34
+ before('loading page', async () => {
35
+ const errorOnGo = await ComposerCO.mobileComposerURL.go();
36
+ if (errorOnGo) throw errorOnGo;
37
+ });
38
+ it('should display the mobile container/composer properly', async () => {
39
+ const snapshot = await browser.checkSnapshot(ComposerCO.snapshotPath('composer'));
40
+ await expect(snapshot).toEqual(0);
41
+ });
42
+ // does not work automated but does when manually tested
43
+ if (!browser.capabilities?.['bstack:options']?.deviceName?.includes('iPhone')) {
44
+ it('should grow the textarea to 50% of parent', async () => {
45
+ const composerTextArea = await ComposerCO.getTextareaInput();
46
+ await composerTextArea.click();
47
+ for (let i = 0; i < 8; i++) await composerTextArea.addValue(ComposerCO.LONG_STRING);
48
+ const checkSnapshot = await browser.checkSnapshot(ComposerCO.snapshotPath('composer-mobile'));
49
+ await expect(checkSnapshot).toEqual(0);
50
+ });
51
+ }
52
+ });
53
+ if (browser.capabilities?.['bstack:options']?.deviceName?.includes('iPhone')) {
54
+ describe('PUI-7133 - Chat, Reponsive Behavior - Visual Tests', () => {
55
+ before('loading page', async () => {
56
+ const errorOnGo = await ComposerCO.responsiveContainerUCURL.go();
57
+ if (errorOnGo) throw errorOnGo;
58
+ });
59
+ it('should display the chat container + composer with the desktop styling but on mobile', async () => {
60
+ const checkSnapshot = await browser.checkSnapshot(ComposerCO.snapshotPath('container-default-view'));
61
+ await expect(checkSnapshot).toEqual(0);
62
+ });
63
+ });
64
+ }
65
+ }
66
+ if (!browser.capabilities?.['ice:options']?.isPhone && !browser.capabilities?.['ice:options']?.isTablet) {
67
+ describe('PUI-7001 - Chat, Composer, Character limit - Visual Tests', () => {
68
+ before('loading page', async () => {
69
+ const errorOnGo = await ComposerCO.characterCountURL.go();
70
+ if (errorOnGo) throw errorOnGo;
71
+ });
72
+ it('should the char limit message with no error', async () => {
73
+ await (await ComposerCO.getTextareaInput()).click();
74
+ await type(ComposerCO.LONG_STRING);
75
+ const snapshot = await browser.checkSnapshot(ComposerCO.snapshotPath('composer-char-limit-no-error'));
76
+ await expect(snapshot).toEqual(0);
77
+ });
78
+ it('should the char limit message with error', async () => {
79
+ await (await ComposerCO.getTextareaInput()).click();
80
+ await type(ComposerCO.LONG_STRING);
81
+ await type(ComposerCO.LONG_STRING);
82
+ await type(ComposerCO.LONG_STRING);
83
+ const snapshot = await browser.checkSnapshot(ComposerCO.snapshotPath('composer-char-limit-error'));
84
+ await expect(snapshot).toEqual(0);
85
+ });
86
+ });
87
+ }
@@ -0,0 +1,77 @@
1
+ import { Key } from 'webdriverio';
2
+ import { ChatCO, BubbleCO, ComposerCO } from './components';
3
+ import DSChatCO from './DSChatCO';
4
+ import { getElementByDataTestId } from './helpers';
5
+ import { type } from '../helpers';
6
+
7
+ if (!browser.capabilities?.['ice:options']?.isPhone) {
8
+ describe('PUI-6698 - Chat, Container, Thread container bubble scroll', () => {
9
+ before('loading page', async () => {
10
+ const errorOnGo = await ChatCO.containerURL.go();
11
+ if (errorOnGo) throw errorOnGo;
12
+ });
13
+ it('should display the 50th bubble properly', async () => {
14
+ await ChatCO.clickScrollButton();
15
+ const isVisible = await BubbleCO.isVisible(50);
16
+ await expect(isVisible).toBe(true);
17
+ });
18
+ });
19
+ }
20
+
21
+ if (!browser.capabilities?.['ice:options']?.isPhone && !browser.capabilities?.['ice:options']?.isTablet) {
22
+ // unskip until we have a proper interaction of the focus of the bubbles from UX.
23
+ describe.skip('PUI-6706 - Chat, Container, A11y, Up/down arrow scrolling', () => {
24
+ before('loading page', async () => {
25
+ const errorOnGo = await ComposerCO.composerURL.go();
26
+ if (errorOnGo) throw errorOnGo;
27
+ // add data to thread container
28
+ // eslint-disable-next-line no-await-in-loop, no-plusplus
29
+ for (let i = 0; i < 5; i++) await (await ChatCO.getAddItemButton()).click();
30
+ });
31
+ it('should focus the chat thread container', async () => {
32
+ await browser.keys(Key.Tab);
33
+ const threadContainer = await ChatCO.getThreadContainer();
34
+ await expect(threadContainer).toBeFocused();
35
+ });
36
+ it('should execute the scrolling on the container using the up arrow', async () => {
37
+ await browser.keys(Key.ArrowUp);
38
+ await browser.keys(Key.ArrowUp);
39
+ await browser.keys(Key.ArrowUp);
40
+ await browser.keys(Key.ArrowUp);
41
+ const isVisible = await BubbleCO.isVisible(4);
42
+ await expect(isVisible).toBeFalsy();
43
+ });
44
+ it('should execute the scrolling on the container using the down arrow', async () => {
45
+ await browser.keys(Key.ArrowDown);
46
+ await browser.keys(Key.ArrowDown);
47
+ await browser.keys(Key.ArrowDown);
48
+ await browser.keys(Key.ArrowDown);
49
+ const isVisible = await BubbleCO.isVisible(4);
50
+ await expect(isVisible).toBeTruthy();
51
+ });
52
+ });
53
+
54
+ describe('PUI-7241 - Chat, Container, Element Focus', () => {
55
+ before('loading page', async () => {
56
+ const errorOnGo = await ComposerCO.containerFocusCasesURL.go();
57
+ if (errorOnGo) throw errorOnGo;
58
+ });
59
+ it('should focus the composer', async () => {
60
+ await (await getElementByDataTestId('focus-composer-button')).click();
61
+ const textAreaInput = await ComposerCO.getTextareaInput();
62
+ await expect(textAreaInput).toBeFocused();
63
+ });
64
+ it('focus should be on the send button', async () => {
65
+ await (await ComposerCO.getTextareaInput()).click();
66
+ await type('This is a test');
67
+ await (await getElementByDataTestId('focus-send-button')).click();
68
+ const sendBt = await ComposerCO.getSendButton();
69
+ await expect(sendBt).toBeFocused();
70
+ });
71
+ it('should focus the 950 bubble', async () => {
72
+ await (await getElementByDataTestId('focus-950-button')).click();
73
+ const listItem = await DSChatCO.getElementListItemByDataIndex('949');
74
+ await expect(listItem).toBeFocused();
75
+ });
76
+ });
77
+ }
@@ -0,0 +1,40 @@
1
+ import { Key } from 'webdriverio';
2
+ import { FloatingButtonCO } from './components';
3
+ import { mouseOver, keyboardActions, tickActions, performKeyboardAction } from '../helpers';
4
+
5
+ if (!browser.capabilities['ice:options'].isPhone) {
6
+ describe('PUI-6669 - Chat, Floating Button, States - Visual Tests', () => {
7
+ beforeEach('loading page', async () => {
8
+ const errorOnGo = await FloatingButtonCO.floatingButtonURL.go();
9
+ if (errorOnGo) throw errorOnGo;
10
+ });
11
+ it('should display the floating button in default state', async () => {
12
+ const snapshot = await browser.checkSnapshot(FloatingButtonCO.snapshotPath('floating-button-default-state'));
13
+ await expect(snapshot).toEqual(0);
14
+ });
15
+ if (!browser.capabilities['ice:options'].isTablet) {
16
+ it('should display the floating button in hover state', async () => {
17
+ const floatingBtn = await FloatingButtonCO.getFloatingButton();
18
+ await mouseOver(floatingBtn, 10, 20);
19
+ const snapshot = await browser.checkSnapshot(FloatingButtonCO.snapshotPath('floating-button-hover-state'));
20
+ await expect(snapshot).toEqual(0);
21
+ });
22
+ it('should display the floating button in focus state', async () => {
23
+ await browser.keys(Key.Tab);
24
+ const snapshot = await browser.checkSnapshot(FloatingButtonCO.snapshotPath('floating-button-focus-state'));
25
+ await expect(snapshot).toEqual(0);
26
+ });
27
+ // Remove the firefox skip after PUI-6678 is fixed
28
+ if (browser.capabilities.browserName !== 'Firefox') {
29
+ it('should display the floating button in active state w/ space', async () => {
30
+ await browser.keys(Key.Tab);
31
+ await performKeyboardAction(keyboardActions.SPACE, tickActions.KEYDOWN);
32
+ const snapshot = await browser.checkSnapshot(
33
+ FloatingButtonCO.snapshotPath('floating-button-active-state-space'),
34
+ );
35
+ await expect(snapshot).toEqual(0);
36
+ });
37
+ }
38
+ }
39
+ });
40
+ }
@@ -0,0 +1,33 @@
1
+ import { Key } from 'webdriverio';
2
+ import { HeaderCO } from './components';
3
+
4
+ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
5
+ describe('PUI-6688 - Chat, Header, Keyboard Navigation', () => {
6
+ before('loading page', async () => {
7
+ const errorOnGo = await HeaderCO.headerURL.go();
8
+ if (errorOnGo) throw errorOnGo;
9
+ });
10
+ it('should focus the button on the chat header', async () => {
11
+ await browser.keys(Key.Tab);
12
+ await browser.keys(Key.Tab);
13
+ await browser.keys(Key.Tab);
14
+ const headerButton = await HeaderCO.getHeaderButton(2);
15
+ await expect(headerButton).toBeFocused();
16
+ });
17
+ it('should open the dropdown menu on enter', async () => {
18
+ await browser.keys(Key.Enter);
19
+ const dropDownMenu = await HeaderCO.getHeaderDropdownMenu();
20
+ await expect(dropDownMenu).toBeDisplayedInViewport();
21
+ });
22
+ });
23
+ describe('PUI-8293 - Chat, Header, ARIA for header', () => {
24
+ before('loading page', async () => {
25
+ const errorOnGo = await HeaderCO.headerURL.go();
26
+ if (errorOnGo) throw errorOnGo;
27
+ });
28
+ it('should focus the button on the chat header', async () => {
29
+ const header = await HeaderCO.getHeaderWithAria();
30
+ await expect(header).toBeDisplayed();
31
+ });
32
+ });
33
+ }
@@ -0,0 +1,34 @@
1
+ import { HeaderCO } from './components';
2
+
3
+ if (!browser.capabilities['ice:options'].isPhone) {
4
+ describe('PUI-6687 - Chat, Header, Visual Tests', () => {
5
+ before('loading page', async () => {
6
+ const errorOnGo = await HeaderCO.headerURL.go();
7
+ if (errorOnGo) throw errorOnGo;
8
+ });
9
+ it('should display the chat header properly', async () => {
10
+ const firstHeader = await HeaderCO.getHeaderTitleByIndex(0);
11
+ await firstHeader.waitForDisplayed();
12
+ const snapshot = await browser.checkSnapshot(HeaderCO.snapshotPath('chat-header'));
13
+ await expect(snapshot).toEqual(0);
14
+ });
15
+ it('should display the header dropdown menu properly', async () => {
16
+ const headerBtn = await HeaderCO.getHeaderButton(2);
17
+ await headerBtn.click();
18
+ const snapshot = await browser.checkSnapshot(HeaderCO.snapshotPath('chat-header-ddmenu-open'));
19
+ await expect(snapshot).toEqual(0);
20
+ });
21
+ });
22
+ describe('PUI-6858 - Chat, Header, Conditionally rendering children', () => {
23
+ before('loading page', async () => {
24
+ const errorOnGo = await HeaderCO.withConditionalRenderingUCURL.go();
25
+ if (errorOnGo) throw errorOnGo;
26
+ });
27
+ it('should display the conditionally rendered buttons properly', async () => {
28
+ const firstHeader = await HeaderCO.getHeaderTitleByIndex(0);
29
+ await firstHeader.waitForDisplayed();
30
+ const snapshot = await browser.checkSnapshot(HeaderCO.snapshotPath('chat-header-conditional-render-buttons'));
31
+ await expect(snapshot).toEqual(0);
32
+ });
33
+ });
34
+ }
@@ -0,0 +1,54 @@
1
+ import { Key } from 'webdriverio';
2
+ import { BubbleCO, ComposerCO, FloatingButtonCO } from './components';
3
+ import DSChatCO from './DSChatCO';
4
+
5
+ if (!browser.capabilities['ice:options'].isPhone) {
6
+ describe('PUI-7695 - Chat, Load More, - Func. Tests', () => {
7
+ beforeEach('loading page', async () => {
8
+ const errorOnGo = await DSChatCO.loadMoreURL.go();
9
+ if (errorOnGo) throw errorOnGo;
10
+ });
11
+ it('should scroll to the Load More Btn', async () => {
12
+ const loadMoreBtn = await DSChatCO.getLoadMoreBtn();
13
+ await loadMoreBtn.scrollIntoView();
14
+ await expect(loadMoreBtn).toBeDisplayedInViewport();
15
+ });
16
+ it('should display more messages when clicking the load more btn', async () => {
17
+ const loadMoreBtn = await DSChatCO.getLoadMoreBtn();
18
+ const bubble0 = BubbleCO.getBody(0);
19
+ await loadMoreBtn.click();
20
+ // eslint-disable-next-line wdio/no-pause
21
+ await browser.pause(2000);
22
+ const howManyMsgs = (await DSChatCO.getBubbleContainers()).length;
23
+ await expect(howManyMsgs).toEqual(20);
24
+ await expect(bubble0).toBeDisplayedInViewport();
25
+ });
26
+ });
27
+ }
28
+ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
29
+ describe('PUI-8005 - Chat, Correct shift+tab behavior, - Func. Tests', () => {
30
+ before('loading page', async () => {
31
+ const errorOnGo = await DSChatCO.floatingExampleURL.go();
32
+ if (errorOnGo) throw errorOnGo;
33
+ });
34
+ it('should scroll to the Load More Btn', async () => {
35
+ const floatBtn = await FloatingButtonCO.getFloatingButton();
36
+ await floatBtn.click();
37
+ const loadMoreBtn = await DSChatCO.getLoadMoreBtn();
38
+ await loadMoreBtn.scrollIntoView();
39
+ await expect(loadMoreBtn).toBeDisplayedInViewport();
40
+ });
41
+ it('should click the text input and focus it', async () => {
42
+ const textAreaInput = await ComposerCO.getTextareaInput();
43
+ await textAreaInput.click();
44
+ await expect(textAreaInput).toBeFocused();
45
+ });
46
+ it('should shift+tab x3 and focus the thread container', async () => {
47
+ await browser.keys([Key.Shift, Key.Tab]);
48
+ await browser.keys([Key.Shift, Key.Tab]);
49
+ await browser.keys([Key.Shift, Key.Tab]);
50
+ const threadContainer = await DSChatCO.getThreadContainer();
51
+ await expect(threadContainer).toBeFocused();
52
+ });
53
+ });
54
+ }
@@ -0,0 +1,27 @@
1
+ import DSChatCO from './DSChatCO';
2
+
3
+ if (!browser.capabilities['ice:options'].isPhone) {
4
+ describe('PUI-7746 - Chat, Load More, - Func. Tests', () => {
5
+ beforeEach('loading page', async () => {
6
+ const errorOnGo = await DSChatCO.loadMoreURL.go();
7
+ if (errorOnGo) throw errorOnGo;
8
+ });
9
+ it('01: should display a chat with loadMore', async () => {
10
+ await browser.eyesOpen();
11
+ const loadMoreBtn = await DSChatCO.getLoadMoreBtn();
12
+ await loadMoreBtn.scrollIntoView();
13
+ const snapshot = await browser.eyesCheckSnapshot(DSChatCO.snapshotPath('chat-loadmore-default'));
14
+ await expect(snapshot).toEqual(0);
15
+ });
16
+ it('02: should display a chat with loadMore and new loaded messages', async () => {
17
+ await browser.eyesOpen();
18
+ const loadMoreBtn = await DSChatCO.getLoadMoreBtn();
19
+ await loadMoreBtn.click();
20
+ // eslint-disable-next-line wdio/no-pause
21
+ await browser.pause(2000);
22
+ await loadMoreBtn.scrollIntoView();
23
+ const snapshot = await browser.eyesCheckSnapshot(DSChatCO.snapshotPath('chat-loadmore-after'));
24
+ await expect(snapshot).toEqual(0);
25
+ });
26
+ });
27
+ }
@@ -0,0 +1,32 @@
1
+ import { Key } from 'webdriverio';
2
+ import { TileCO } from './components';
3
+
4
+ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
5
+ describe('PUI-6684 - Chat, Tile, Keyboard Navigation', () => {
6
+ before('loading page', async () => {
7
+ const errorOnGo = await TileCO.sidebarURL.go();
8
+ if (errorOnGo) throw errorOnGo;
9
+ });
10
+ it('should trigger the selection of the tab after pressing enter', async () => {
11
+ await browser.keys(Key.Tab);
12
+ await browser.keys(Key.Tab);
13
+ await browser.keys(Key.Enter);
14
+ const selectedTile = await TileCO.getSideBarSelectedTile();
15
+ await expect(selectedTile).toBe('1');
16
+ });
17
+ it('should trigger the selection of the tab after pressing space', async () => {
18
+ await browser.keys(Key.Tab);
19
+ await browser.keys(Key.Space);
20
+ const selectedTile = await TileCO.getSideBarSelectedTile();
21
+ await expect(selectedTile).toBe('2');
22
+ });
23
+ it('should focus the previus tile after pressing shift+tab', async () => {
24
+ await browser.keys(Key.Tab);
25
+ await browser.keys(Key.Enter);
26
+ await browser.keys([Key.Shift, Key.Tab]);
27
+ await browser.keys(Key.Enter);
28
+ const chatTile = await TileCO.getChatTile(2);
29
+ await expect(chatTile).toBeFocused();
30
+ });
31
+ });
32
+ }
@@ -0,0 +1,43 @@
1
+ import { Key } from 'webdriverio';
2
+ import { TileCO } from './components';
3
+ import { mouseOver, keyboardActions, tickActions, performKeyboardAction } from '../helpers';
4
+
5
+ if (!browser.capabilities['ice:options'].isPhone) {
6
+ describe('PUI-6674 - Chat, Tile, Visual Tests', () => {
7
+ before('loading page', async () => {
8
+ const errorOnGo = await TileCO.tilesURL.go();
9
+ if (errorOnGo) throw errorOnGo;
10
+ });
11
+ it('should display the chat tiles properly', async () => {
12
+ const firstTile = await TileCO.getChatTile(0);
13
+ await firstTile.waitForDisplayed();
14
+ const checkSnapshot = await browser.checkSnapshot(TileCO.snapshotPath('chat-tiles'));
15
+ await expect(checkSnapshot).toEqual(0);
16
+ });
17
+ });
18
+ // Remove the firefox skip after PUI-6678 is fixed
19
+ if (browser.capabilities.browserName !== 'Firefox' && !browser.capabilities['ice:options'].isTablet) {
20
+ describe('PUI-6675 - Chat, Tile, States - Visual Tests', () => {
21
+ before('loading page', async () => {
22
+ const errorOnGo = await TileCO.tilesURL.go();
23
+ if (errorOnGo) throw errorOnGo;
24
+ });
25
+ it('should display the second tab in hover state', async () => {
26
+ await mouseOver(await TileCO.getChatTile(1));
27
+ const checkSnapshot = await browser.checkSnapshot(TileCO.snapshotPath('chat-tiles-hover'));
28
+ await expect(checkSnapshot).toEqual(0);
29
+ });
30
+ it('should focus the first tile', async () => {
31
+ await browser.keys(Key.Tab);
32
+ const checkSnapshot = await browser.checkSnapshot(TileCO.snapshotPath('chat-tiles-focus'));
33
+ await expect(checkSnapshot).toEqual(0);
34
+ });
35
+ it('should display the first tile in active state', async () => {
36
+ await performKeyboardAction(keyboardActions.SPACE, tickActions.KEYDOWN);
37
+ const checkSnapshot = await browser.checkSnapshot(TileCO.snapshotPath('chat-tiles-active'));
38
+ await expect(checkSnapshot).toEqual(0);
39
+ await performKeyboardAction(keyboardActions.SPACE, tickActions.KEYUP);
40
+ });
41
+ });
42
+ }
43
+ }
@@ -0,0 +1,33 @@
1
+ /* eslint-disable wdio/no-pause */
2
+ import { Key } from 'webdriverio';
3
+ import { TileCO } from './components';
4
+ import DSChatCO from './DSChatCO';
5
+ import { mouseOver } from '../helpers';
6
+
7
+ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
8
+ describe('PUI-7375 - Chat, Tooltip, Visual Tests', () => {
9
+ before('loading page', async () => {
10
+ const errorOnGo = await DSChatCO.tooltipPosition.go();
11
+ if (errorOnGo) throw errorOnGo;
12
+ });
13
+ it('should display the tooltip on focus', async () => {
14
+ await browser.eyesOpen();
15
+ const toolbarBtn = await DSChatCO.getToogleBtn();
16
+ await toolbarBtn.click();
17
+ await browser.pause(500);
18
+ await browser.keys(Key.Tab);
19
+ await (await TileCO.getTileTooltip('header')).waitForDisplayed();
20
+ const snapshot = await browser.eyesCheckSnapshot(TileCO.snapshotPath('chat-tile-tooltip-focus'));
21
+ await expect(snapshot).toEqual(0);
22
+ });
23
+ it('should display the tooltip on hover', async () => {
24
+ await browser.eyesOpen();
25
+ await browser.keys(Key.Escape);
26
+ const tile = await TileCO.getChatTileButtonItem(2);
27
+ await mouseOver(tile);
28
+ await (await TileCO.getTileTooltip(2)).waitForDisplayed();
29
+ const snapshot = await browser.eyesCheckSnapshot(TileCO.snapshotPath('chat-tile-tooltip-hover'));
30
+ await expect(snapshot).toEqual(0);
31
+ });
32
+ });
33
+ }
@@ -0,0 +1,181 @@
1
+ /* eslint-disable max-lines */
2
+ import { Key } from 'webdriverio';
3
+ import { ChatCO, ComposerCO, HeaderCO, StoryBtnsCO, BubbleCO, TileCO } from './components';
4
+ import { type } from '../helpers';
5
+
6
+ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
7
+ describe('PUI-9250 - Chat, Keyboard Navigation', () => {
8
+ before('loading page', async () => {
9
+ const errorOnGo = await ChatCO.floatingExampleURL.go();
10
+ if (errorOnGo) throw errorOnGo;
11
+ });
12
+ it('should open the floating chat', async () => {
13
+ await browser.keys(Key.Tab);
14
+ await browser.keys(Key.Enter);
15
+ const threadContainer = await ChatCO.getThreadContainer();
16
+ await expect(threadContainer).toBeDisplayedInViewport();
17
+ });
18
+ it('should focus the chat thread header icon', async () => {
19
+ const headerButton = await HeaderCO.getHeaderButton(0);
20
+ await expect(headerButton).toBeFocused();
21
+ });
22
+ it('should focus the chat thread container', async () => {
23
+ await browser.keys(Key.Tab);
24
+ const threadContainer = await ChatCO.getThreadContainer();
25
+ await expect(threadContainer).toBeFocused();
26
+ });
27
+ it('should focus the chat text area', async () => {
28
+ await browser.keys(Key.Tab);
29
+ const textAreaInput = await ComposerCO.getTextareaInput();
30
+ await expect(textAreaInput).toBeFocused();
31
+ });
32
+ });
33
+ describe(' PUI-7761 - Chat, Bubble Visibility', () => {
34
+ before('loading page', async () => {
35
+ const errorOnGo = await ChatCO.focusCasesURL.go();
36
+ if (errorOnGo) throw errorOnGo;
37
+ });
38
+ it('should show bubble 949 after clicking focus btn', async () => {
39
+ const focusBtn = await StoryBtnsCO.getFocusOn950Btn();
40
+ await focusBtn.click();
41
+ const bubble949 = await BubbleCO.getBody(949);
42
+ await expect(bubble949).toBeDisplayedInViewport();
43
+ });
44
+ it('should have bubble 950 in viewport and not 952', async () => {
45
+ const bubble950 = await BubbleCO.isVisible(950); // flaky test on bro
46
+ const bubble952 = await BubbleCO.isVisible(952); // bubble 951 is sometimes partially visible
47
+ await expect(bubble950).toEqual(true);
48
+ await expect(bubble952).toEqual(false);
49
+ });
50
+ });
51
+
52
+ describe(' PUI-8492 - Chat, Focus cases', () => {
53
+ before('loading page', async () => {
54
+ const errorOnGo = await ChatCO.focusCasesURL.go();
55
+ if (errorOnGo) throw errorOnGo;
56
+ });
57
+ it('should focus bubble 949 after clicking focus btn', async () => {
58
+ const focusBtn = await StoryBtnsCO.getFocusOn950Btn();
59
+ await focusBtn.click();
60
+ const bubble949 = await BubbleCO.getBubbleFocuseable('949');
61
+ await expect(bubble949).toBeFocused();
62
+ });
63
+ it('should focus composer after clicking focus btn', async () => {
64
+ const focusBtn = await StoryBtnsCO.getFocusOnComposer();
65
+ await focusBtn.click();
66
+ const composer = await ComposerCO.getTextareaInput();
67
+ await expect(composer).toBeFocused();
68
+ });
69
+ it('should ensable send button and focus it after typing and clicking focus btn', async () => {
70
+ await type('Hello there');
71
+ const focusBtn = await StoryBtnsCO.getFocusOnSendBtn();
72
+ await focusBtn.click();
73
+ const sendButton = await ComposerCO.getSendButton();
74
+ await expect(sendButton).toBeFocused();
75
+ });
76
+ });
77
+
78
+ describe('PUI-8493 - Chat, Focus banner, Func. Tests', () => {
79
+ before('loading page', async () => {
80
+ const errorOnGo = await ChatCO.focuseableBanners.go();
81
+ if (errorOnGo) throw errorOnGo;
82
+ });
83
+ it('should focus the top banner', async () => {
84
+ const triggerChat = await ChatCO.getSidebarFooterButton();
85
+ await triggerChat.click();
86
+ const openBannerTop = await ChatCO.getToggleBtnByIndex(0);
87
+ await openBannerTop.click();
88
+ const topBanner = await ChatCO.getBanner();
89
+ const bannerType = await topBanner.getAttribute('type');
90
+ await expect(bannerType).toEqual('danger');
91
+ await expect(topBanner).toBeFocused();
92
+ });
93
+ it('should focus the bottom banner', async () => {
94
+ const openBannerTop = await ChatCO.getToggleBtnByIndex(1);
95
+ await openBannerTop.click();
96
+ const bottomBanner = await ChatCO.getBanner();
97
+ const bannerType = await bottomBanner.getAttribute('type');
98
+ await expect(bannerType).toEqual('warning');
99
+ await expect(bottomBanner).toBeFocused();
100
+ });
101
+ });
102
+
103
+ describe('PUI-8524 - Chat, Full tabstop cycle, Func. Tests', () => {
104
+ before('loading page', async () => {
105
+ const errorOnGo = await ChatCO.sidePanelIntegrationURL.go();
106
+ if (errorOnGo) throw errorOnGo;
107
+ });
108
+ it('should focus the header item after pressing tab', async () => {
109
+ const chatTrigger = await ChatCO.getToogleBtn();
110
+ await chatTrigger.click();
111
+ await browser.keys(Key.Tab);
112
+ const headerItem = await ChatCO.getHeaderItem();
113
+ await expect(headerItem).toBeFocused();
114
+ });
115
+ it('should focus a chat tile after pressing tab', async () => {
116
+ await browser.keys(Key.Tab);
117
+ const firstChatTile = await TileCO.getChatTileButtonItem('1');
118
+ await expect(firstChatTile).toBeFocused();
119
+ });
120
+ it('should focus the last chat tile after pressing tab multiple times', async () => {
121
+ await browser.keys(Key.Tab);
122
+ await browser.keys(Key.Tab);
123
+ await browser.keys(Key.Tab);
124
+ await browser.keys(Key.Tab);
125
+ const lastChatTile = await TileCO.getChatTileButtonItem('5');
126
+ await expect(lastChatTile).toBeFocused();
127
+ });
128
+ it('should focus the expand/collapse sidebar btn after pressing tab', async () => {
129
+ await browser.keys(Key.Tab);
130
+ const sidebarBtn = await ChatCO.getSidebarFooterButton();
131
+ await expect(sidebarBtn).toBeFocused();
132
+ });
133
+ it('should focus the first header btn after pressing tab', async () => {
134
+ await browser.keys(Key.Tab);
135
+ const headerBtn1 = await ChatCO.getButtonByIndex(0);
136
+ await expect(headerBtn1).toBeFocused();
137
+ });
138
+ it('should focus the second header btn after pressing tab', async () => {
139
+ await browser.keys(Key.Tab);
140
+ const headerBtn2 = await ChatCO.getButtonByIndex(1);
141
+ await expect(headerBtn2).toBeFocused();
142
+ });
143
+ it('should focus the thread container after pressing tab', async () => {
144
+ await browser.keys(Key.Tab);
145
+ const threadContainer = await ChatCO.getThreadContainer(0);
146
+ await expect(threadContainer).toBeFocused();
147
+ });
148
+ it('should focus the composer after pressing tab', async () => {
149
+ await browser.keys(Key.Tab);
150
+ const composer = await ComposerCO.getTextareaInput();
151
+ await expect(composer).toBeFocused();
152
+ });
153
+ });
154
+ describe('PUI-9332 - Chat, Clean composer switching chats, Func. Tests', () => {
155
+ before('loading page', async () => {
156
+ const errorOnGo = await ChatCO.sidePanelIntegrationURL.go();
157
+ if (errorOnGo) throw errorOnGo;
158
+ });
159
+ it('should open a chat and write on composer', async () => {
160
+ const chatTile = await TileCO.getChatTileButtonItem(2);
161
+ await chatTile.click();
162
+ const composer = await ComposerCO.getTextareaInput();
163
+ await composer.click();
164
+ await type('Hello');
165
+ const composerText = await composer.getText();
166
+ await expect(composerText).toEqual('Hello');
167
+ });
168
+ it('should switch chats and composer should be empty', async () => {
169
+ const chatTile = await TileCO.getChatTileButtonItem(3);
170
+ await chatTile.click();
171
+ const composerText = await (await ComposerCO.getTextareaInput()).getText();
172
+ await expect(composerText).toEqual('');
173
+ });
174
+ it('should return to first chat and composer should be empty', async () => {
175
+ const chatTile = await TileCO.getChatTileButtonItem(2);
176
+ await chatTile.click();
177
+ const composerText = await (await ComposerCO.getTextareaInput()).getText();
178
+ await expect(composerText).toEqual('');
179
+ });
180
+ });
181
+ }
@@ -0,0 +1,16 @@
1
+ import { ChatCO } from './components';
2
+
3
+ if (browser.capabilities['ice:options'].isPhone) {
4
+ describe('PUI-8294 - Chat:: Mobile - Banner - Visual', () => {
5
+ before('loading page', async () => {
6
+ const errorOnGo = await ChatCO.unreadMessagesBanner.go();
7
+ if (errorOnGo) throw errorOnGo;
8
+ });
9
+ it('should display the banner correctly', async () => {
10
+ const toggleBanner = await ChatCO.getToogleBtn();
11
+ await toggleBanner.click();
12
+ const snapshot = await browser.checkSnapshot(ChatCO.snapshotPath('chat-mobile-banner'));
13
+ await expect(snapshot).toEqual(0);
14
+ });
15
+ });
16
+ }