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,162 @@
1
+ /* eslint-disable max-lines */
2
+ import { Key } from 'webdriverio';
3
+ import DSControlledDateTimePickerCO from './DSControlledDateTimePickerCO';
4
+ import { type } from '../../helpers';
5
+
6
+ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
7
+ describe('PUI-7255 - DSControlledDateTimePicker:: DateInput basic', () => {
8
+ before('loading page', async () => {
9
+ const errorOnGo = await DSControlledDateTimePickerCO.dateOnly.go();
10
+ if (errorOnGo) throw errorOnGo;
11
+ });
12
+ it('should complete correctly date', async () => {
13
+ const month = await DSControlledDateTimePickerCO.getMonthInput();
14
+ const day = await DSControlledDateTimePickerCO.getDayInput();
15
+ const year = await DSControlledDateTimePickerCO.getYearInput();
16
+
17
+ await browser.keys(Key.Tab);
18
+ await type('02032020');
19
+ await expect(month).toHaveValueContaining('02');
20
+ await expect(day).toHaveValueContaining('03');
21
+ await expect(year).toHaveValueContaining('2020');
22
+ await expect(year).toBeFocused();
23
+ });
24
+ });
25
+ describe('PUI-7256 - DSControlledDateTimePicker:: DateInput clearable', () => {
26
+ before('loading page', async () => {
27
+ const errorOnGo = await DSControlledDateTimePickerCO.clearable.go();
28
+ if (errorOnGo) throw errorOnGo;
29
+ await (await DSControlledDateTimePickerCO.getButton('date-inputs')).click();
30
+ });
31
+ it('01: clear button should not be displayed', async () => {
32
+ const clearBtn = await DSControlledDateTimePickerCO.getClearBtn();
33
+ await expect(clearBtn).not.toBeDisplayedInViewport();
34
+ });
35
+ it('02: should complete correctly day and clear btn should be focused', async () => {
36
+ const month = await DSControlledDateTimePickerCO.getMonthInput();
37
+ const day = await DSControlledDateTimePickerCO.getDayInput();
38
+ const year = await DSControlledDateTimePickerCO.getYearInput();
39
+ const clearBtn = await DSControlledDateTimePickerCO.getClearBtn();
40
+
41
+ await month.click();
42
+ await type('02');
43
+ await expect(month).toHaveValueContaining('02');
44
+ await expect(day).toBeFocused();
45
+ await expect(clearBtn).toBeDisplayedInViewport();
46
+ await type('03');
47
+ await expect(day).toHaveValueContaining('03');
48
+ await expect(year).toBeFocused();
49
+ await type('2020');
50
+ await expect(year).toHaveValueContaining('2020');
51
+ await expect(clearBtn).toBeFocused();
52
+ });
53
+ it('03: should clear correctly date and focus return to month input', async () => {
54
+ const month = await DSControlledDateTimePickerCO.getMonthInput();
55
+ const day = await DSControlledDateTimePickerCO.getDayInput();
56
+ const year = await DSControlledDateTimePickerCO.getYearInput();
57
+ const clearBtn = await DSControlledDateTimePickerCO.getClearBtn();
58
+
59
+ await browser.keys(Key.Enter);
60
+ await expect(month).toHaveValueContaining('');
61
+ await expect(day).toHaveValueContaining('');
62
+ await expect(year).toHaveValueContaining('');
63
+ await expect(month).toBeFocused();
64
+ await expect(clearBtn).not.toBeDisplayedInViewport();
65
+ });
66
+ // eslint-disable-next-line max-len
67
+ it('04: should change to time input and complete hours, minutes and merifieand, clear btn should be focused', async () => {
68
+ const timeInputBtn = await DSControlledDateTimePickerCO.getChangeInputByIndex(2);
69
+ await timeInputBtn.click();
70
+ const hour = await DSControlledDateTimePickerCO.getHourInput();
71
+ const minute = await DSControlledDateTimePickerCO.getMinutesInput();
72
+ const meridiem = await DSControlledDateTimePickerCO.getMeridiemInput();
73
+ const clearBtn = await DSControlledDateTimePickerCO.getClearBtn();
74
+
75
+ await hour.click();
76
+ await type('02');
77
+ await expect(hour).toHaveValueContaining('02');
78
+ await expect(minute).toBeFocused();
79
+ await expect(clearBtn).toBeDisplayedInViewport();
80
+ await type('03');
81
+ await expect(minute).toHaveValueContaining('03');
82
+ await expect(meridiem).toBeFocused();
83
+ await type('A');
84
+ await expect(meridiem).toHaveValueContaining('A');
85
+ await expect(clearBtn).toBeFocused();
86
+ });
87
+ it('05: should clear correctly time and focus return to hour input', async () => {
88
+ const hour = await DSControlledDateTimePickerCO.getHourInput();
89
+ const minute = await DSControlledDateTimePickerCO.getMinutesInput();
90
+ const meridiem = await DSControlledDateTimePickerCO.getMeridiemInput();
91
+ const clearBtn = await DSControlledDateTimePickerCO.getClearBtn();
92
+
93
+ await browser.keys(Key.Enter);
94
+ await expect(hour).toHaveValueContaining('');
95
+ await expect(minute).toHaveValueContaining('');
96
+ await expect(meridiem).toHaveValueContaining('');
97
+ await expect(hour).toBeFocused();
98
+ await expect(clearBtn).not.toBeDisplayedInViewport();
99
+ });
100
+ });
101
+ describe('PUI-8225 - DSControlledDateTimePicker:: DateInput manage focus on open', () => {
102
+ before('loading page', async () => {
103
+ const errorOnGo = await DSControlledDateTimePickerCO.fullFeatures.go();
104
+ if (errorOnGo) throw errorOnGo;
105
+ });
106
+ it('should open datetimepicker and manage focus to be at december 27 2000', async () => {
107
+ const openPickerBtn = await DSControlledDateTimePickerCO.getCalendarTimeWheelPickerBtn();
108
+ await openPickerBtn.click();
109
+ // eslint-disable-next-line wdio/no-pause
110
+ await browser.pause(500);
111
+ await browser.keys(Key.Space);
112
+ const day = await DSControlledDateTimePickerCO.getCalendarTimeWheelPickerBtn();
113
+ const dayText = await day.getAttribute('aria-label');
114
+ await expect(dayText).toBe(
115
+ // eslint-disable-next-line max-len
116
+ 'date time picker context menu trigger, current values: December, twentie seventh, 2000, empty hours, empty minutes, empty meriediem',
117
+ );
118
+ });
119
+ });
120
+
121
+ describe('PUI-8286 - DSControlledDateTimePicker:: Populate input when picking', () => {
122
+ before('loading page', async () => {
123
+ const errorOnGo = await DSControlledDateTimePickerCO.fullFeatures.go();
124
+ if (errorOnGo) throw errorOnGo;
125
+ });
126
+ it('should change the text input to the picked date', async () => {
127
+ const openPickerBtn = await DSControlledDateTimePickerCO.getCalendarTimeWheelPickerBtn();
128
+ await openPickerBtn.click();
129
+ const exampleDate = await DSControlledDateTimePickerCO.getCalendarDay(8);
130
+ await exampleDate.click();
131
+ const month = await DSControlledDateTimePickerCO.getMonthInput();
132
+ const day = await DSControlledDateTimePickerCO.getDayInput();
133
+ const year = await DSControlledDateTimePickerCO.getYearInput();
134
+ await expect(month).toHaveValueContaining('12');
135
+ await expect(day).toHaveValueContaining('08');
136
+ await expect(year).toHaveValueContaining('2000');
137
+ });
138
+ it('should change the text input minutes section to the picked minutes', async () => {
139
+ const exampleMinutes = await DSControlledDateTimePickerCO.getTimeWheelMinute(31);
140
+ await exampleMinutes.click();
141
+ const minutes = await DSControlledDateTimePickerCO.getMinutesInput();
142
+ await expect(minutes).toHaveValueContaining('31');
143
+ });
144
+ });
145
+
146
+ describe('PUI-7950 - DateTimePicker - Fixed on open values', () => {
147
+ before(async () => {
148
+ const errorOnGo = await DSControlledDateTimePickerCO.fullFeatures.go();
149
+ if (errorOnGo) throw errorOnGo;
150
+ });
151
+ it('should open day time picker and have the date setted 27 12 2000', async () => {
152
+ const openPickerBtn = await DSControlledDateTimePickerCO.getCalendarTimeWheelPickerBtn();
153
+ await openPickerBtn.click();
154
+ const hours = await DSControlledDateTimePickerCO.getTimeWheelCurrentHour();
155
+ const minutes = await DSControlledDateTimePickerCO.getTimeWheelCurrentMinute();
156
+ const currentHours = await hours.getAttribute('aria-label');
157
+ const currentMinutes = await minutes.getAttribute('aria-label');
158
+ await expect(currentHours).toBe('10 hours');
159
+ await expect(currentMinutes).toBe('30 minutes');
160
+ });
161
+ });
162
+ }
@@ -0,0 +1,260 @@
1
+ /* eslint-disable wdio/no-pause */
2
+ /* eslint-disable max-len */
3
+ /* eslint-disable max-lines */
4
+ import { Key } from 'webdriverio';
5
+ import { ControlledDateTimePickerDatatestid } from '@elliemae/ds-legacy-form-date-time-picker';
6
+ import {
7
+ PATH_CONTROLLED_FORM_DATE_TIME_PICKER,
8
+ PATH_E2E_CONTROLLEDFORM,
9
+ PATH_E2E_CONTROLLED_FORM_DATE_TIME_PICKER,
10
+ } from '../../../environments/storybook/paths';
11
+ import { PageObject, Urlbuilder, getElementByIndex } from '../../helpers';
12
+ // eslint-disable-next-line import/extensions
13
+
14
+ const DATATESTID = ControlledDateTimePickerDatatestid;
15
+
16
+ export default class DSDateTimePickerCO extends PageObject {
17
+ static dateShowcase = new Urlbuilder(PATH_E2E_CONTROLLED_FORM_DATE_TIME_PICKER, 'date-showcase');
18
+
19
+ static dateTimeShowcase = new Urlbuilder(PATH_E2E_CONTROLLED_FORM_DATE_TIME_PICKER, 'date-time-showcase');
20
+
21
+ static timeShowcase = new Urlbuilder(PATH_E2E_CONTROLLED_FORM_DATE_TIME_PICKER, 'time-showcase');
22
+
23
+ static basic = new Urlbuilder(PATH_CONTROLLED_FORM_DATE_TIME_PICKER, 'basic');
24
+
25
+ static clearable = new Urlbuilder(PATH_CONTROLLED_FORM_DATE_TIME_PICKER, 'clearable');
26
+
27
+ static dateAndDatePicker = new Urlbuilder(PATH_CONTROLLED_FORM_DATE_TIME_PICKER, 'date-and-date-picker');
28
+
29
+ static dateOnly = new Urlbuilder(PATH_CONTROLLED_FORM_DATE_TIME_PICKER, 'date-only');
30
+
31
+ static fullFeatures = new Urlbuilder(PATH_E2E_CONTROLLED_FORM_DATE_TIME_PICKER, 'full-features');
32
+
33
+ static formItemLayoutBlocksURL = new Urlbuilder(PATH_E2E_CONTROLLEDFORM, 'date-time-with-form-item-layout');
34
+
35
+ static scrollTest = new Urlbuilder(PATH_E2E_CONTROLLED_FORM_DATE_TIME_PICKER, 'scroll-test');
36
+
37
+ static datePickerControlledOnly = new Urlbuilder(
38
+ PATH_CONTROLLED_FORM_DATE_TIME_PICKER,
39
+ 'date-picker-controller-only',
40
+ );
41
+
42
+ static datePickerOnly = new Urlbuilder(PATH_CONTROLLED_FORM_DATE_TIME_PICKER, 'date-picker-only');
43
+
44
+ static dateTimeOnly = new Urlbuilder(PATH_CONTROLLED_FORM_DATE_TIME_PICKER, 'date-time-only');
45
+
46
+ static dateTimePickerControlledOnly = new Urlbuilder(
47
+ PATH_CONTROLLED_FORM_DATE_TIME_PICKER,
48
+ 'date-time-picker-controller-only',
49
+ );
50
+
51
+ static dateTimePickerOnly = new Urlbuilder(PATH_CONTROLLED_FORM_DATE_TIME_PICKER, 'date-time-picker-only');
52
+
53
+ static disabledShowCase = new Urlbuilder(PATH_CONTROLLED_FORM_DATE_TIME_PICKER, 'disabled-show-case');
54
+
55
+ static emptyDatePickerStartingMonth = new Urlbuilder(
56
+ PATH_CONTROLLED_FORM_DATE_TIME_PICKER,
57
+ 'empty-date-picker-starting-month',
58
+ );
59
+
60
+ static exampleWithValidation = new Urlbuilder(PATH_E2E_CONTROLLED_FORM_DATE_TIME_PICKER, 'example-with-validation');
61
+
62
+ static timeAndTimePicker = new Urlbuilder(PATH_CONTROLLED_FORM_DATE_TIME_PICKER, 'time-and-time-picker');
63
+
64
+ static timeOnly = new Urlbuilder(PATH_CONTROLLED_FORM_DATE_TIME_PICKER, 'time-only');
65
+
66
+ static timePickerControlledOnly = new Urlbuilder(
67
+ PATH_CONTROLLED_FORM_DATE_TIME_PICKER,
68
+ 'time-picker-controller-only',
69
+ );
70
+
71
+ static timePickerOnly = new Urlbuilder(PATH_CONTROLLED_FORM_DATE_TIME_PICKER, 'time-picker-only');
72
+
73
+ static timeWithMinuteIntervals = new Urlbuilder(
74
+ PATH_E2E_CONTROLLED_FORM_DATE_TIME_PICKER,
75
+ 'time-with-minute-intervals',
76
+ );
77
+
78
+ static customAriaAndDataAttributes = new Urlbuilder(
79
+ PATH_E2E_CONTROLLED_FORM_DATE_TIME_PICKER,
80
+ 'custom-aria-and-data-attributes-test',
81
+ );
82
+
83
+ // Story elements
84
+ static getButton = async (text) => $(`button*=${text}`);
85
+
86
+ static getDateString = async () => $('//b[text()="date string:"]/ancestor::div/p');
87
+
88
+ static getTimeString = async () => $('//b[text()="time string:"]/ancestor::div/p');
89
+
90
+ static getDateTimeString = async () => $('//b[text()="date-time string:"]/ancestor::div/p');
91
+
92
+ static getMonthString = async () => $('//b[text()="month string:"]/ancestor::div/p');
93
+
94
+ static getDayString = async () => $('//b[text()="day string:"]/ancestor::div/p');
95
+
96
+ static getYearString = async () => $('//b[text()="year string:"]/ancestor::div/p');
97
+
98
+ static getHourString = async () => $('//b[text()="hour string:"]/ancestor::div/p');
99
+
100
+ static getMinuteString = async () => $('//b[text()="minute string:"]/ancestor::div/p');
101
+
102
+ static getMeridiemsString = async () => $('//b[text()="meridiem string:"]/ancestor::div/p');
103
+
104
+ static async getInputByDataTestId(testid, selector) {
105
+ return $(`[data-testid="${testid}"]`).$(() => selector);
106
+ }
107
+
108
+ // CONTAINER
109
+ static getContainer = async () => $(`[data-testid=${DATATESTID.CONTAINER}]`);
110
+
111
+ // DATE INPUTS
112
+ static async getMonthInput(testId) {
113
+ return testId
114
+ ? $(`[data-testid=${testId}]`).$(`[data-testid=${DATATESTID.DATE_INPUTS.MONTH}]`)
115
+ : $(`[data-testid=${DATATESTID.DATE_INPUTS.MONTH}]`);
116
+ }
117
+
118
+ static async getDayInput(testId) {
119
+ return testId
120
+ ? $(`[data-testid=${testId}]`).$(`[data-testid=${DATATESTID.DATE_INPUTS.DAY}]`)
121
+ : $(`[data-testid=${DATATESTID.DATE_INPUTS.DAY}]`);
122
+ }
123
+
124
+ static async getYearInput(testId) {
125
+ return testId
126
+ ? $(`[data-testid=${testId}]`).$(`[data-testid=${DATATESTID.DATE_INPUTS.YEAR}]`)
127
+ : $(`[data-testid=${DATATESTID.DATE_INPUTS.YEAR}]`);
128
+ }
129
+
130
+ // TIME INPUTS
131
+ static async getHourInput(testId) {
132
+ return testId
133
+ ? $(`[data-testid=${testId}]`).$(`[data-testid=${DATATESTID.TIME_INPUTS.HOUR}]`)
134
+ : $(`[data-testid=${DATATESTID.TIME_INPUTS.HOUR}]`);
135
+ }
136
+
137
+ static async getMinutesInput(testId) {
138
+ return testId
139
+ ? $(`[data-testid=${testId}]`).$(`[data-testid=${DATATESTID.TIME_INPUTS.MINUTE}]`)
140
+ : $(`[data-testid=${DATATESTID.TIME_INPUTS.MINUTE}]`);
141
+ }
142
+
143
+ static async getMeridiemInput(testId) {
144
+ return testId
145
+ ? $(`[data-testid=${testId}]`).$(`[data-testid=${DATATESTID.TIME_INPUTS.MERIDIEM}]`)
146
+ : $(`[data-testid=${DATATESTID.TIME_INPUTS.MERIDIEM}]`);
147
+ }
148
+
149
+ // PICKER ICONS
150
+ static async getCalendarPickerBtn(testId) {
151
+ return testId
152
+ ? $(`[data-testid=${testId}]`).$(`[data-testid=${DATATESTID.PICKER_ICONS.CALENDAR}]`)
153
+ : $(`[data-testid=${DATATESTID.PICKER_ICONS.CALENDAR}]`);
154
+ }
155
+
156
+ static getTrigger = async () => $('[data-testid="ds-controlled-date-time-picker-calendar-trigger-icon"]');
157
+
158
+ static getTimeWheelPickerBtn = async () => $(`[data-testid=${DATATESTID.PICKER_ICONS.TIMEWHEEL}]`);
159
+
160
+ static getCalendarTimeWheelPickerBtn = async () => $(`[data-testid=${DATATESTID.PICKER_ICONS.CALENDAR_TIMEWHEEL}]`);
161
+
162
+ // CALENDAR
163
+ static getCalendarHeaderLabel = async () => $(`[data-testid=${DATATESTID.CALENDAR.HEADER_LABEL}]`);
164
+
165
+ static getCalendarPrevYearBtn = async () => $(`[data-testid=${DATATESTID.CALENDAR.PREV_YEAR}]`);
166
+
167
+ static getCalendarPrevMonthBtn = async () => $(`[data-testid=${DATATESTID.CALENDAR.PREV_MONTH}]`);
168
+
169
+ static getCalendarNextMonthBtn = async () => $(`[data-testid=${DATATESTID.CALENDAR.NEXT_MONTH}]`);
170
+
171
+ static getCalendarNextYearBtn = async () => $(`[data-testid=${DATATESTID.CALENDAR.NEXT_YEAR}]`);
172
+
173
+ static getCalendarDay = async (value) => $(`//button[@data-testid="${DATATESTID.CALENDAR.DAY}"][text()="${value}"]`);
174
+
175
+ static getCalendarFocusedDay = async () => $(`[data-testid=${DATATESTID.CALENDAR.FOCUSED_DAY}]`);
176
+
177
+ static getCalendarStartRangeDay = async () => $(`[data-testid=${DATATESTID.CALENDAR.START_RANGE_DAY}]`);
178
+
179
+ static getCalendarInRangeDay = async () => $(`[data-testid=${DATATESTID.CALENDAR.IN_RANGE_DAY}]`);
180
+
181
+ static getCalendarEndRangeDay = async () => $(`[data-testid=${DATATESTID.CALENDAR.END_RANGE_DAY}]`);
182
+
183
+ static getCalendarSelectedDay = async () => $(`[data-testid=${DATATESTID.CALENDAR.SELECTED_DAY}]`);
184
+
185
+ static getCalendarSelectedFocusedDay = async () => $(`[data-testid=${DATATESTID.CALENDAR.SELECTED_FOCUSED_DAY}]`);
186
+
187
+ // TIMEWHEEL
188
+ static getTimeWheelHeaderLabel = async () => $(`[data-testid=${DATATESTID.TIMEWHEEL.HEADER_LABEL}]`);
189
+
190
+ static getTimeWheelPrevHour = async () => $(`[data-testid=${DATATESTID.TIMEWHEEL.PREV_HOUR}]`);
191
+
192
+ static getTimeWheelHour = async () => $(`[data-testid=${DATATESTID.TIMEWHEEL.HOUR}]`);
193
+
194
+ static getTimeWheelCurrentHour = async () => $(`[data-testid=${DATATESTID.TIMEWHEEL.CURRENT_HOUR}]`);
195
+
196
+ static getTimeWheelNextHour = async () => $(`[data-testid=${DATATESTID.TIMEWHEEL.NEXT_HOUR}]`);
197
+
198
+ static getTimeWheelPrevMinute = async () => $(`[data-testid=${DATATESTID.TIMEWHEEL.PREV_MINUTE}]`);
199
+
200
+ static getTimeWheelMinute = async (value) =>
201
+ $(`//button[@data-testid="${DATATESTID.TIMEWHEEL.MINUTE}"][text()="${value}"]`);
202
+
203
+ static getTimeWheelCurrentMinute = async () => $(`[data-testid=${DATATESTID.TIMEWHEEL.CURRENT_MINUTE}]`);
204
+
205
+ static getTimeWheelNextMinute = async () => $(`[data-testid=${DATATESTID.TIMEWHEEL.NEXT_MINUTE}]`);
206
+
207
+ static getTimeWheelPrevMeridiem = async () => $(`[data-testid=${DATATESTID.TIMEWHEEL.PREV_MERIDIEM}]`);
208
+
209
+ static getTimeWheelMeridiem = async () => $(`[data-testid=${DATATESTID.TIMEWHEEL.MERIDIEM}]`);
210
+
211
+ static getTimeWheelCurrentMeridiem = async () => $(`[data-testid=${DATATESTID.TIMEWHEEL.CURRENT_MERIDIEM}]`);
212
+
213
+ static getTimeWheelNextMeridiem = async () => $(`[data-testid=${DATATESTID.TIMEWHEEL.NEXT_MERIDIEM}]`);
214
+
215
+ // CONTEXTUAL MENU
216
+ static getContextualMenuCalendar = async () => $(`[data-testid=${DATATESTID.CONTEXTUAL_MENU.CALENDAR}]`);
217
+
218
+ static getContextualMenuTimeWheel = async () => $(`[data-testid=${DATATESTID.CONTEXTUAL_MENU.TIMEWHEEL}]`);
219
+
220
+ static getContextualMenuCalendarTimeWheel = async () =>
221
+ $(`[data-testid=${DATATESTID.CONTEXTUAL_MENU.CALENDAR_TIMEWHEEL}]`);
222
+
223
+ // CLEAR BTN
224
+ static async getClearBtn(testId) {
225
+ return testId
226
+ ? $(`[data-testid=${testId}]`).$(`[data-testid=${DATATESTID.CLEAR_BUTTON}]`)
227
+ : $(`[data-testid=${DATATESTID.CLEAR_BUTTON}]`);
228
+ }
229
+
230
+ // FOOTERS
231
+ static getFooterCalendar = async () => $(`[data-testid=${DATATESTID.FOOTERS.CALENDAR}]`);
232
+
233
+ static getFooterTimeWheel = async () => $(`[data-testid=${DATATESTID.FOOTERS.TIMEWHEEL}]`);
234
+
235
+ static getFooterCalendarTimeWheel = async () => $(`[data-testid=${DATATESTID.FOOTERS.CALENDAR_TIMEWHEEL}]`);
236
+
237
+ // CONTROLLER COMPONENT
238
+ static getControllerCalendar = async () => $(`[data-testid=${DATATESTID.CONTROLLER_COMPONENT.CALENDAR}]`);
239
+
240
+ static getControllerTimeWheel = async () => $(`[data-testid=${DATATESTID.CONTROLLER_COMPONENT.TIMEWHEEL}]`);
241
+
242
+ static getControllerCalendarTimeWheel = async () =>
243
+ $(`[data-testid=${DATATESTID.CONTROLLER_COMPONENT.CALENDAR_TIMEWHEEL}]`);
244
+
245
+ static getChangeInputTypeBtns = async () => $$('[data-testid="ds-button"]');
246
+
247
+ static getChangeInputByIndex = async (index) => getElementByIndex(this.getChangeInputTypeBtns, index);
248
+
249
+ static pressBackspace = async (number) => {
250
+ for (let x = 0; x < number; x += 1) {
251
+ browser.keys(Key.Backspace);
252
+ browser.pause(100);
253
+ }
254
+ };
255
+
256
+ // SCREENSHOT
257
+ static snapshotPath(example = 'basic') {
258
+ return PageObject.getSnapshotPathBuilder('DSControlledDateTimePicker', example, 'ds-controlled-date-time-picker');
259
+ }
260
+ }
@@ -0,0 +1,137 @@
1
+ /* eslint-disable max-lines */
2
+ import { Key } from 'webdriverio';
3
+ import { type } from '../../../helpers';
4
+ import DateTimePickerCO from '../DSControlledDateTimePickerCO';
5
+
6
+ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
7
+ describe('PUI-6673 - DSControlledDateTimePicker:: DateInput: auto-advance', () => {
8
+ beforeEach('loading page', async () => {
9
+ const errorOnGo = await DateTimePickerCO.dateInput.go();
10
+ if (errorOnGo) throw errorOnGo;
11
+ });
12
+ it('01: should not auto-advance to day input - Enter "1"', async () => {
13
+ const month = await DateTimePickerCO.getMonthInput('date-input');
14
+ const day = await DateTimePickerCO.getDayInput('date-input');
15
+ const year = await DateTimePickerCO.getYearInput('date-input');
16
+
17
+ await browser.keys(Key.Tab);
18
+ await type('1');
19
+ await expect(month).toHaveValueContaining('1');
20
+ await expect(day).toHaveValueContaining('');
21
+ await expect(year).toHaveValueContaining('');
22
+ await expect(month).toBeFocused();
23
+ });
24
+ it('02: should auto-advance to day input - Enter "01"', async () => {
25
+ const month = await DateTimePickerCO.getMonthInput('date-input');
26
+ const day = await DateTimePickerCO.getDayInput('date-input');
27
+ const year = await DateTimePickerCO.getYearInput('date-input');
28
+
29
+ await browser.keys(Key.Tab);
30
+ await type('01');
31
+ await expect(month).toHaveValueContaining('01');
32
+ await expect(day).toHaveValueContaining('');
33
+ await expect(year).toHaveValueContaining('');
34
+ await expect(day).toBeFocused();
35
+ });
36
+ it('03: should auto-advance to day input Enter "12"', async () => {
37
+ const month = await DateTimePickerCO.getMonthInput('date-input');
38
+ const day = await DateTimePickerCO.getDayInput('date-input');
39
+ const year = await DateTimePickerCO.getYearInput('date-input');
40
+
41
+ await browser.keys(Key.Tab);
42
+ await type('12');
43
+ await expect(month).toHaveValueContaining('12');
44
+ await expect(day).toHaveValueContaining('');
45
+ await expect(year).toHaveValueContaining('');
46
+ await expect(day).toBeFocused();
47
+ });
48
+ it('04: should auto-advance to day input Enter "05"', async () => {
49
+ const month = await DateTimePickerCO.getMonthInput('date-input');
50
+ const day = await DateTimePickerCO.getDayInput('date-input');
51
+ const year = await DateTimePickerCO.getYearInput('date-input');
52
+
53
+ await browser.keys(Key.Tab);
54
+ await type('05');
55
+ await expect(month).toHaveValueContaining('05');
56
+ await expect(day).toHaveValueContaining('');
57
+ await expect(year).toHaveValueContaining('');
58
+ await expect(day).toBeFocused();
59
+ });
60
+ it('05: should not auto-advance to year input Enter "2"', async () => {
61
+ const month = await DateTimePickerCO.getMonthInput('date-input');
62
+ const day = await DateTimePickerCO.getDayInput('date-input');
63
+ const year = await DateTimePickerCO.getYearInput('date-input');
64
+
65
+ await browser.keys(Key.Tab);
66
+ await type('12');
67
+ await type('2');
68
+ await expect(month).toHaveValueContaining('12');
69
+ await expect(day).toHaveValueContaining('2');
70
+ await expect(year).toHaveValueContaining('');
71
+ await expect(day).toBeFocused();
72
+ });
73
+ it('06: should auto-advance to year input Enter "01"', async () => {
74
+ const month = await DateTimePickerCO.getMonthInput('date-input');
75
+ const day = await DateTimePickerCO.getDayInput('date-input');
76
+ const year = await DateTimePickerCO.getYearInput('date-input');
77
+
78
+ await browser.keys(Key.Tab);
79
+ await type('12');
80
+ await type('01');
81
+ await expect(month).toHaveValueContaining('12');
82
+ await expect(day).toHaveValueContaining('01');
83
+ await expect(year).toHaveValueContaining('');
84
+ await expect(year).toBeFocused();
85
+ });
86
+ it('07: should auto-advance to year input Enter "31"', async () => {
87
+ const month = await DateTimePickerCO.getMonthInput('date-input');
88
+ const day = await DateTimePickerCO.getDayInput('date-input');
89
+ const year = await DateTimePickerCO.getYearInput('date-input');
90
+
91
+ await browser.keys(Key.Tab);
92
+ await type('12');
93
+ await type('31');
94
+ await expect(month).toHaveValueContaining('12');
95
+ await expect(day).toHaveValueContaining('31');
96
+ await expect(year).toHaveValueContaining('');
97
+ await expect(year).toBeFocused();
98
+ });
99
+ it('08: should auto-advance to clear btn Enter "2030"', async () => {
100
+ const month = await DateTimePickerCO.getMonthInput('date-input-clearable');
101
+ const day = await DateTimePickerCO.getDayInput('date-input-clearable');
102
+ const year = await DateTimePickerCO.getYearInput('date-input-clearable');
103
+ const clearBtn = await DateTimePickerCO.getClearBtn('date-input-clearable');
104
+
105
+ await browser.keys(Key.Tab);
106
+ await browser.keys(Key.Tab);
107
+ await browser.keys(Key.Tab);
108
+ await browser.keys(Key.Tab);
109
+ await type('12');
110
+ await type('31');
111
+ await type('2030');
112
+ await expect(month).toHaveValueContaining('12');
113
+ await expect(day).toHaveValueContaining('31');
114
+ await expect(year).toHaveValueContaining('2030');
115
+ await expect(clearBtn).toBeFocused();
116
+ });
117
+ it('09: should auto-complete year - Enter "745"', async () => {
118
+ const month = await DateTimePickerCO.getMonthInput('date-input-clearable');
119
+ const day = await DateTimePickerCO.getDayInput('date-input-clearable');
120
+ const year = await DateTimePickerCO.getYearInput('date-input-clearable');
121
+ const clearBtn = await DateTimePickerCO.getClearBtn('date-input-clearable');
122
+
123
+ await browser.keys(Key.Tab);
124
+ await browser.keys(Key.Tab);
125
+ await browser.keys(Key.Tab);
126
+ await browser.keys(Key.Tab);
127
+ await type('12');
128
+ await type('31');
129
+ await type('745');
130
+ await browser.keys(Key.Tab);
131
+ await expect(month).toHaveValueContaining('12');
132
+ await expect(day).toHaveValueContaining('31');
133
+ await expect(year).toHaveValueContaining('7450');
134
+ await expect(clearBtn).toBeFocused();
135
+ });
136
+ });
137
+ }
@@ -0,0 +1,101 @@
1
+ /* eslint-disable max-lines */
2
+ import { Key } from 'webdriverio';
3
+ import DateTimePickerCO from '../DSControlledDateTimePickerCO';
4
+ import { type } from '../../../helpers';
5
+
6
+ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
7
+ describe('PUI-7255 - DSControlledDateTimePicker:: DateInput basic', () => {
8
+ before('loading page', async () => {
9
+ const errorOnGo = await DateTimePickerCO.dateOnly.go();
10
+ if (errorOnGo) throw errorOnGo;
11
+ });
12
+ it('should complete correctly date', async () => {
13
+ const month = await DateTimePickerCO.getMonthInput();
14
+ const day = await DateTimePickerCO.getDayInput();
15
+ const year = await DateTimePickerCO.getYearInput();
16
+
17
+ await browser.keys(Key.Tab);
18
+ await type('02032020');
19
+ await expect(month).toHaveValueContaining('02');
20
+ await expect(day).toHaveValueContaining('03');
21
+ await expect(year).toHaveValueContaining('2020');
22
+ await expect(year).toBeFocused();
23
+ });
24
+ });
25
+ describe('PUI-7256 - DSControlledDateTimePicker:: DateInput clearable', () => {
26
+ before('loading page', async () => {
27
+ const errorOnGo = await DateTimePickerCO.clearable.go();
28
+ if (errorOnGo) throw errorOnGo;
29
+ await (await DateTimePickerCO.getButton('date-inputs')).click();
30
+ });
31
+ it('01: clear button should not be displayed', async () => {
32
+ const clearBtn = await DateTimePickerCO.getClearBtn();
33
+ await expect(clearBtn).not.toBeDisplayedInViewport();
34
+ });
35
+ it('02: should complete correctly day and clear btn should be focused', async () => {
36
+ const month = await DateTimePickerCO.getMonthInput();
37
+ const day = await DateTimePickerCO.getDayInput();
38
+ const year = await DateTimePickerCO.getYearInput();
39
+ const clearBtn = await DateTimePickerCO.getClearBtn();
40
+
41
+ await month.click();
42
+ await type('02');
43
+ await expect(month).toHaveValueContaining('02');
44
+ await expect(day).toBeFocused();
45
+ await expect(clearBtn).toBeDisplayedInViewport();
46
+ await type('03');
47
+ await expect(day).toHaveValueContaining('03');
48
+ await expect(year).toBeFocused();
49
+ await type('2020');
50
+ await expect(year).toHaveValueContaining('2020');
51
+ await expect(clearBtn).toBeFocused();
52
+ });
53
+ it('03: should clear correctly date and focus return to month input', async () => {
54
+ const month = await DateTimePickerCO.getMonthInput();
55
+ const day = await DateTimePickerCO.getDayInput();
56
+ const year = await DateTimePickerCO.getYearInput();
57
+ const clearBtn = await DateTimePickerCO.getClearBtn();
58
+
59
+ await browser.keys(Key.Enter);
60
+ await expect(month).toHaveValueContaining('');
61
+ await expect(day).toHaveValueContaining('');
62
+ await expect(year).toHaveValueContaining('');
63
+ await expect(month).toBeFocused();
64
+ await expect(clearBtn).not.toBeDisplayedInViewport();
65
+ });
66
+ // eslint-disable-next-line max-len
67
+ it('04: should change to time input and complete hours, minutes and merifieand, clear btn should be focused', async () => {
68
+ const timeInputBtn = await DateTimePickerCO.getChangeInputByIndex(2);
69
+ await timeInputBtn.click();
70
+ const hour = await DateTimePickerCO.getHourInput();
71
+ const minute = await DateTimePickerCO.getMinutesInput();
72
+ const meridiem = await DateTimePickerCO.getMeridiemInput();
73
+ const clearBtn = await DateTimePickerCO.getClearBtn();
74
+
75
+ await hour.click();
76
+ await type('02');
77
+ await expect(hour).toHaveValueContaining('02');
78
+ await expect(minute).toBeFocused();
79
+ await expect(clearBtn).toBeDisplayedInViewport();
80
+ await type('03');
81
+ await expect(minute).toHaveValueContaining('03');
82
+ await expect(meridiem).toBeFocused();
83
+ await type('A');
84
+ await expect(meridiem).toHaveValueContaining('A');
85
+ await expect(clearBtn).toBeFocused();
86
+ });
87
+ it('05: should clear correctly time and focus return to hour input', async () => {
88
+ const hour = await DateTimePickerCO.getHourInput();
89
+ const minute = await DateTimePickerCO.getMinutesInput();
90
+ const meridiem = await DateTimePickerCO.getMeridiemInput();
91
+ const clearBtn = await DateTimePickerCO.getClearBtn();
92
+
93
+ await browser.keys(Key.Enter);
94
+ await expect(hour).toHaveValueContaining('');
95
+ await expect(minute).toHaveValueContaining('');
96
+ await expect(meridiem).toHaveValueContaining('');
97
+ await expect(hour).toBeFocused();
98
+ await expect(clearBtn).not.toBeDisplayedInViewport();
99
+ });
100
+ });
101
+ }