@sap_oss/wdio-qmate-service 1.0.0

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 (625) hide show
  1. package/.eslintignore +3 -0
  2. package/.eslintrc.yml +33 -0
  3. package/.reuse/dep5 +29 -0
  4. package/LICENSE +201 -0
  5. package/LICENSES/Apache-2.0.txt +73 -0
  6. package/README.md +20 -0
  7. package/docs/contact.md +10 -0
  8. package/docs/doc.md +5188 -0
  9. package/docs/gettingStarted/selectors.md +168 -0
  10. package/docs/gettingStarted/setup.md +8 -0
  11. package/docs/index.md +14 -0
  12. package/docs/style/custom.css +24 -0
  13. package/lib/index.d.ts +1 -0
  14. package/lib/index.js +171 -0
  15. package/lib/index.js.map +1 -0
  16. package/lib/reuse/authenticator/authConfig.d.ts +54 -0
  17. package/lib/reuse/authenticator/authConfig.js +55 -0
  18. package/lib/reuse/authenticator/authConfig.js.map +1 -0
  19. package/lib/reuse/authenticator/authHandler.d.ts +6 -0
  20. package/lib/reuse/authenticator/authHandler.js +37 -0
  21. package/lib/reuse/authenticator/authHandler.js.map +1 -0
  22. package/lib/reuse/authenticator/basicUrlAuthenticator.d.ts +2 -0
  23. package/lib/reuse/authenticator/basicUrlAuthenticator.js +36 -0
  24. package/lib/reuse/authenticator/basicUrlAuthenticator.js.map +1 -0
  25. package/lib/reuse/authenticator/customAuthenticator.d.ts +2 -0
  26. package/lib/reuse/authenticator/customAuthenticator.js +60 -0
  27. package/lib/reuse/authenticator/customAuthenticator.js.map +1 -0
  28. package/lib/reuse/authenticator/formAuthenticator.d.ts +2 -0
  29. package/lib/reuse/authenticator/formAuthenticator.js +57 -0
  30. package/lib/reuse/authenticator/formAuthenticator.js.map +1 -0
  31. package/lib/reuse/authenticator/plainAuthenticator.d.ts +2 -0
  32. package/lib/reuse/authenticator/plainAuthenticator.js +20 -0
  33. package/lib/reuse/authenticator/plainAuthenticator.js.map +1 -0
  34. package/lib/reuse/data/authenticators.json +16 -0
  35. package/lib/reuse/helper/clientsideUI5scripts.d.ts +1 -0
  36. package/lib/reuse/helper/clientsideUI5scripts.js +388 -0
  37. package/lib/reuse/helper/clientsideUI5scripts.js.map +1 -0
  38. package/lib/reuse/helper/jsDocGen.d.ts +1 -0
  39. package/lib/reuse/helper/jsDocGen.js +45 -0
  40. package/lib/reuse/helper/jsDocGen.js.map +1 -0
  41. package/lib/reuse/index.d.ts +5 -0
  42. package/lib/reuse/index.js +89 -0
  43. package/lib/reuse/index.js.map +1 -0
  44. package/lib/reuse/modules/common/Common.d.ts +12 -0
  45. package/lib/reuse/modules/common/Common.js +21 -0
  46. package/lib/reuse/modules/common/Common.js.map +1 -0
  47. package/lib/reuse/modules/common/assertion.d.ts +65 -0
  48. package/lib/reuse/modules/common/assertion.js +91 -0
  49. package/lib/reuse/modules/common/assertion.js.map +1 -0
  50. package/lib/reuse/modules/common/constants/date.constants.d.ts +8 -0
  51. package/lib/reuse/modules/common/constants/date.constants.js +13 -0
  52. package/lib/reuse/modules/common/constants/date.constants.js.map +1 -0
  53. package/lib/reuse/modules/common/constants/userInteraction.constants.d.ts +9 -0
  54. package/lib/reuse/modules/common/constants/userInteraction.constants.js +14 -0
  55. package/lib/reuse/modules/common/constants/userInteraction.constants.js.map +1 -0
  56. package/lib/reuse/modules/common/date.d.ts +84 -0
  57. package/lib/reuse/modules/common/date.js +164 -0
  58. package/lib/reuse/modules/common/date.js.map +1 -0
  59. package/lib/reuse/modules/common/navigation.d.ts +26 -0
  60. package/lib/reuse/modules/common/navigation.js +56 -0
  61. package/lib/reuse/modules/common/navigation.js.map +1 -0
  62. package/lib/reuse/modules/common/types/date.types.d.ts +2 -0
  63. package/lib/reuse/modules/common/types/date.types.js +3 -0
  64. package/lib/reuse/modules/common/types/date.types.js.map +1 -0
  65. package/lib/reuse/modules/common/userInteraction.d.ts +104 -0
  66. package/lib/reuse/modules/common/userInteraction.js +199 -0
  67. package/lib/reuse/modules/common/userInteraction.js.map +1 -0
  68. package/lib/reuse/modules/nonUi5/NonUi5.d.ts +12 -0
  69. package/lib/reuse/modules/nonUi5/NonUi5.js +21 -0
  70. package/lib/reuse/modules/nonUi5/NonUi5.js.map +1 -0
  71. package/lib/reuse/modules/nonUi5/assertion.d.ts +62 -0
  72. package/lib/reuse/modules/nonUi5/assertion.js +127 -0
  73. package/lib/reuse/modules/nonUi5/assertion.js.map +1 -0
  74. package/lib/reuse/modules/nonUi5/constants/userInteraction.constants.d.ts +6 -0
  75. package/lib/reuse/modules/nonUi5/constants/userInteraction.constants.js +11 -0
  76. package/lib/reuse/modules/nonUi5/constants/userInteraction.constants.js.map +1 -0
  77. package/lib/reuse/modules/nonUi5/element.d.ts +286 -0
  78. package/lib/reuse/modules/nonUi5/element.js +639 -0
  79. package/lib/reuse/modules/nonUi5/element.js.map +1 -0
  80. package/lib/reuse/modules/nonUi5/navigation.d.ts +17 -0
  81. package/lib/reuse/modules/nonUi5/navigation.js +44 -0
  82. package/lib/reuse/modules/nonUi5/navigation.js.map +1 -0
  83. package/lib/reuse/modules/nonUi5/userInteraction.d.ts +170 -0
  84. package/lib/reuse/modules/nonUi5/userInteraction.js +415 -0
  85. package/lib/reuse/modules/nonUi5/userInteraction.js.map +1 -0
  86. package/lib/reuse/modules/service/Service.d.ts +8 -0
  87. package/lib/reuse/modules/service/Service.js +17 -0
  88. package/lib/reuse/modules/service/Service.js.map +1 -0
  89. package/lib/reuse/modules/service/odata.d.ts +177 -0
  90. package/lib/reuse/modules/service/odata.js +347 -0
  91. package/lib/reuse/modules/service/odata.js.map +1 -0
  92. package/lib/reuse/modules/service/rest.d.ts +66 -0
  93. package/lib/reuse/modules/service/rest.js +168 -0
  94. package/lib/reuse/modules/service/rest.js.map +1 -0
  95. package/lib/reuse/modules/service/soap.d.ts +0 -0
  96. package/lib/reuse/modules/service/soap.js +2 -0
  97. package/lib/reuse/modules/service/soap.js.map +1 -0
  98. package/lib/reuse/modules/ui5/Ui5.d.ts +34 -0
  99. package/lib/reuse/modules/ui5/Ui5.js +41 -0
  100. package/lib/reuse/modules/ui5/Ui5.js.map +1 -0
  101. package/lib/reuse/modules/ui5/assertion.d.ts +183 -0
  102. package/lib/reuse/modules/ui5/assertion.js +493 -0
  103. package/lib/reuse/modules/ui5/assertion.js.map +1 -0
  104. package/lib/reuse/modules/ui5/confirmationDialog.d.ts +86 -0
  105. package/lib/reuse/modules/ui5/confirmationDialog.js +145 -0
  106. package/lib/reuse/modules/ui5/confirmationDialog.js.map +1 -0
  107. package/lib/reuse/modules/ui5/constants/mockserver.constants.d.ts +4 -0
  108. package/lib/reuse/modules/ui5/constants/mockserver.constants.js +9 -0
  109. package/lib/reuse/modules/ui5/constants/mockserver.constants.js.map +1 -0
  110. package/lib/reuse/modules/ui5/control.d.ts +84 -0
  111. package/lib/reuse/modules/ui5/control.js +132 -0
  112. package/lib/reuse/modules/ui5/control.js.map +1 -0
  113. package/lib/reuse/modules/ui5/date.d.ts +48 -0
  114. package/lib/reuse/modules/ui5/date.js +153 -0
  115. package/lib/reuse/modules/ui5/date.js.map +1 -0
  116. package/lib/reuse/modules/ui5/element.d.ts +160 -0
  117. package/lib/reuse/modules/ui5/element.js +349 -0
  118. package/lib/reuse/modules/ui5/element.js.map +1 -0
  119. package/lib/reuse/modules/ui5/errorDialog.d.ts +39 -0
  120. package/lib/reuse/modules/ui5/errorDialog.js +65 -0
  121. package/lib/reuse/modules/ui5/errorDialog.js.map +1 -0
  122. package/lib/reuse/modules/ui5/footerBar.d.ts +153 -0
  123. package/lib/reuse/modules/ui5/footerBar.js +240 -0
  124. package/lib/reuse/modules/ui5/footerBar.js.map +1 -0
  125. package/lib/reuse/modules/ui5/mockserver.d.ts +154 -0
  126. package/lib/reuse/modules/ui5/mockserver.js +665 -0
  127. package/lib/reuse/modules/ui5/mockserver.js.map +1 -0
  128. package/lib/reuse/modules/ui5/navigation.d.ts +103 -0
  129. package/lib/reuse/modules/ui5/navigation.js +275 -0
  130. package/lib/reuse/modules/ui5/navigation.js.map +1 -0
  131. package/lib/reuse/modules/ui5/navigationBar.d.ts +48 -0
  132. package/lib/reuse/modules/ui5/navigationBar.js +141 -0
  133. package/lib/reuse/modules/ui5/navigationBar.js.map +1 -0
  134. package/lib/reuse/modules/ui5/qunit.d.ts +17 -0
  135. package/lib/reuse/modules/ui5/qunit.js +52 -0
  136. package/lib/reuse/modules/ui5/qunit.js.map +1 -0
  137. package/lib/reuse/modules/ui5/session.d.ts +117 -0
  138. package/lib/reuse/modules/ui5/session.js +374 -0
  139. package/lib/reuse/modules/ui5/session.js.map +1 -0
  140. package/lib/reuse/modules/ui5/table.d.ts +61 -0
  141. package/lib/reuse/modules/ui5/table.js +188 -0
  142. package/lib/reuse/modules/ui5/table.js.map +1 -0
  143. package/lib/reuse/modules/ui5/types/mockserver.types.d.ts +2 -0
  144. package/lib/reuse/modules/ui5/types/mockserver.types.js +3 -0
  145. package/lib/reuse/modules/ui5/types/mockserver.types.js.map +1 -0
  146. package/lib/reuse/modules/ui5/userInteraction.d.ts +304 -0
  147. package/lib/reuse/modules/ui5/userInteraction.js +690 -0
  148. package/lib/reuse/modules/ui5/userInteraction.js.map +1 -0
  149. package/lib/reuse/modules/util/Util.d.ts +22 -0
  150. package/lib/reuse/modules/util/Util.js +27 -0
  151. package/lib/reuse/modules/util/Util.js.map +1 -0
  152. package/lib/reuse/modules/util/browser.d.ts +167 -0
  153. package/lib/reuse/modules/util/browser.js +367 -0
  154. package/lib/reuse/modules/util/browser.js.map +1 -0
  155. package/lib/reuse/modules/util/console.d.ts +56 -0
  156. package/lib/reuse/modules/util/console.js +152 -0
  157. package/lib/reuse/modules/util/console.js.map +1 -0
  158. package/lib/reuse/modules/util/constants/formatter.constants.d.ts +11 -0
  159. package/lib/reuse/modules/util/constants/formatter.constants.js +16 -0
  160. package/lib/reuse/modules/util/constants/formatter.constants.js.map +1 -0
  161. package/lib/reuse/modules/util/data.d.ts +36 -0
  162. package/lib/reuse/modules/util/data.js +87 -0
  163. package/lib/reuse/modules/util/data.js.map +1 -0
  164. package/lib/reuse/modules/util/file.d.ts +55 -0
  165. package/lib/reuse/modules/util/file.js +159 -0
  166. package/lib/reuse/modules/util/file.js.map +1 -0
  167. package/lib/reuse/modules/util/formatter.d.ts +90 -0
  168. package/lib/reuse/modules/util/formatter.js +210 -0
  169. package/lib/reuse/modules/util/formatter.js.map +1 -0
  170. package/lib/reuse/modules/util/function.d.ts +48 -0
  171. package/lib/reuse/modules/util/function.js +161 -0
  172. package/lib/reuse/modules/util/function.js.map +1 -0
  173. package/lib/reuse/modules/util/system.d.ts +17 -0
  174. package/lib/reuse/modules/util/system.js +58 -0
  175. package/lib/reuse/modules/util/system.js.map +1 -0
  176. package/lib/reuse/modules/util/types/formatter.types.d.ts +2 -0
  177. package/lib/reuse/modules/util/types/formatter.types.js +3 -0
  178. package/lib/reuse/modules/util/types/formatter.types.js.map +1 -0
  179. package/lib/scripts/clientsideUI5scripts.d.ts +1 -0
  180. package/lib/scripts/clientsideUI5scripts.js +315 -0
  181. package/lib/scripts/clientsideUI5scripts.js.map +1 -0
  182. package/lib/scripts/dataExchange/dataExchange.d.ts +1 -0
  183. package/lib/scripts/dataExchange/dataExchange.js +224 -0
  184. package/lib/scripts/dataExchange/dataExchange.js.map +1 -0
  185. package/lib/scripts/dataExchange/dataExchangeUtil.d.ts +63 -0
  186. package/lib/scripts/dataExchange/dataExchangeUtil.js +211 -0
  187. package/lib/scripts/dataExchange/dataExchangeUtil.js.map +1 -0
  188. package/lib/scripts/hooks/after.d.ts +8 -0
  189. package/lib/scripts/hooks/after.js +30 -0
  190. package/lib/scripts/hooks/after.js.map +1 -0
  191. package/lib/scripts/hooks/before.d.ts +8 -0
  192. package/lib/scripts/hooks/before.js +38 -0
  193. package/lib/scripts/hooks/before.js.map +1 -0
  194. package/lib/scripts/hooks/beforeSession.d.ts +8 -0
  195. package/lib/scripts/hooks/beforeSession.js +37 -0
  196. package/lib/scripts/hooks/beforeSession.js.map +1 -0
  197. package/lib/scripts/hooks/onComplete.d.ts +9 -0
  198. package/lib/scripts/hooks/onComplete.js +31 -0
  199. package/lib/scripts/hooks/onComplete.js.map +1 -0
  200. package/lib/scripts/hooks/onPrepare.d.ts +6 -0
  201. package/lib/scripts/hooks/onPrepare.js +36 -0
  202. package/lib/scripts/hooks/onPrepare.js.map +1 -0
  203. package/lib/scripts/hooks/utils/addLocatorCommands.d.ts +2 -0
  204. package/lib/scripts/hooks/utils/addLocatorCommands.js +193 -0
  205. package/lib/scripts/hooks/utils/addLocatorCommands.js.map +1 -0
  206. package/lib/scripts/hooks/utils/browserLog.d.ts +2 -0
  207. package/lib/scripts/hooks/utils/browserLog.js +39 -0
  208. package/lib/scripts/hooks/utils/browserLog.js.map +1 -0
  209. package/lib/scripts/hooks/utils/dataExchangeCommands.d.ts +9 -0
  210. package/lib/scripts/hooks/utils/dataExchangeCommands.js +46 -0
  211. package/lib/scripts/hooks/utils/dataExchangeCommands.js.map +1 -0
  212. package/lib/scripts/hooks/utils/decryption.d.ts +13 -0
  213. package/lib/scripts/hooks/utils/decryption.js +90 -0
  214. package/lib/scripts/hooks/utils/decryption.js.map +1 -0
  215. package/lib/scripts/hooks/utils/lib.d.ts +4 -0
  216. package/lib/scripts/hooks/utils/lib.js +330 -0
  217. package/lib/scripts/hooks/utils/lib.js.map +1 -0
  218. package/lib/scripts/hooks/utils/locatorCommands.d.ts +10 -0
  219. package/lib/scripts/hooks/utils/locatorCommands.js +216 -0
  220. package/lib/scripts/hooks/utils/locatorCommands.js.map +1 -0
  221. package/lib/scripts/locators/qmateLocator.d.ts +1 -0
  222. package/lib/scripts/locators/qmateLocator.js +1384 -0
  223. package/lib/scripts/locators/qmateLocator.js.map +1 -0
  224. package/lib/scripts/locators/uiveri5Locator.d.ts +1 -0
  225. package/lib/scripts/locators/uiveri5Locator.js +21 -0
  226. package/lib/scripts/locators/uiveri5Locator.js.map +1 -0
  227. package/mkdocs.yml +53 -0
  228. package/package.json +152 -0
  229. package/test/.eslintrc.yml +6 -0
  230. package/test/authenticator/package.json +13 -0
  231. package/test/authenticator/staticLogin/configCustom.js +22 -0
  232. package/test/authenticator/staticLogin/configCustomViaConfig.js +20 -0
  233. package/test/authenticator/staticLogin/configFiori.js +19 -0
  234. package/test/authenticator/staticLogin/configPlain.js +17 -0
  235. package/test/authenticator/staticLogin/configSapCloud.js +18 -0
  236. package/test/authenticator/staticLogin/html/custom.html +10 -0
  237. package/test/authenticator/staticLogin/html/fiori.html +10 -0
  238. package/test/authenticator/staticLogin/html/home.html +7 -0
  239. package/test/authenticator/staticLogin/html/sapCloud.html +10 -0
  240. package/test/authenticator/staticLogin/specs/custom.spec.js +6 -0
  241. package/test/authenticator/staticLogin/specs/customViaConfig.spec.js +10 -0
  242. package/test/authenticator/staticLogin/specs/fiori.spec.js +6 -0
  243. package/test/authenticator/staticLogin/specs/plain.spec.js +64 -0
  244. package/test/authenticator/staticLogin/specs/sapCloud.spec.js +6 -0
  245. package/test/authenticator/staticLogin/staticServerConfig.js +20 -0
  246. package/test/authenticator/systemLogin/configCustom.js +26 -0
  247. package/test/authenticator/systemLogin/configFiori.js +24 -0
  248. package/test/authenticator/systemLogin/configPlain.js +22 -0
  249. package/test/authenticator/systemLogin/configSapCloud.js +24 -0
  250. package/test/authenticator/systemLogin/specs/custom.spec.js +13 -0
  251. package/test/authenticator/systemLogin/specs/fiori.spec.js +12 -0
  252. package/test/authenticator/systemLogin/specs/plain.spec.js +21 -0
  253. package/test/authenticator/systemLogin/specs/sapCloud.spec.js +13 -0
  254. package/test/core/README.md +17 -0
  255. package/test/core/dataExchange/config.export.js +56 -0
  256. package/test/core/dataExchange/config.import.js +47 -0
  257. package/test/core/dataExchange/config.js +52 -0
  258. package/test/core/dataExchange/config.parallel.group.js +61 -0
  259. package/test/core/dataExchange/config.parallel.js +58 -0
  260. package/test/core/dataExchange/data/another/folder/data/anotherFolder/dummy1.txt +0 -0
  261. package/test/core/dataExchange/data/another/folder/data/anotherFolder/purchase-orders/Limit-Purchase-Order.json +29 -0
  262. package/test/core/dataExchange/data/another/folder/data/anotherFolder/purchase-orders/ServicePurchaseOrder.2Items.json +67 -0
  263. package/test/core/dataExchange/data/another/folder/data/anotherFolder/purchaseRequisition_HI.json +31 -0
  264. package/test/core/dataExchange/data/another/folder/data/anotherFolder/subfolder/LimitPurchaseOrder.json +29 -0
  265. package/test/core/dataExchange/data/another/folder/data/anotherFolder/subfolder/PurchaseOrderItems.json +58 -0
  266. package/test/core/dataExchange/data/another/folder/data/anotherFolder/subfolder/PurchaseOrderWithScheduline.json +27 -0
  267. package/test/core/dataExchange/data/another/folder/data/anotherFolder/subfolder/ServiceAndMaterialPurchaseOrder.json +65 -0
  268. package/test/core/dataExchange/data/another/folder/data/anotherFolder/subfolder/ServicePurchaseOrder.json +39 -0
  269. package/test/core/dataExchange/data/another/folder/data/anotherFolder/subfolder/ServicePurchaseOrder2Items.json +67 -0
  270. package/test/core/dataExchange/data/my/folder/data/qs9/data.json +5 -0
  271. package/test/core/dataExchange/data/my/folder/data/qs9/dummy1.txt +0 -0
  272. package/test/core/dataExchange/data/my/folder/data/qs9/dummy2.txt +0 -0
  273. package/test/core/dataExchange/data/my/folder/data/qs9/empty.json +0 -0
  274. package/test/core/dataExchange/data/my/folder/data/qs9/purchaseRequisition.json +31 -0
  275. package/test/core/dataExchange/data/my/folder/data/qs9/supplierInvoice.json +17 -0
  276. package/test/core/dataExchange/data/my/folder/data/qs9/webUser.json +6 -0
  277. package/test/core/dataExchange/data/ui/moreDataFolder/anotherUser.json +6 -0
  278. package/test/core/dataExchange/data/ui/user.json +6 -0
  279. package/test/core/dataExchange/data/ui/webUser.json +6 -0
  280. package/test/core/dataExchange/specs/export.fast.spec.js +48 -0
  281. package/test/core/dataExchange/specs/export.slow.spec.js +50 -0
  282. package/test/core/dataExchange/specs/export.spec.js +103 -0
  283. package/test/core/dataExchange/specs/import.spec.js +144 -0
  284. package/test/core/dataExchange/specs/importExport.spec.js +196 -0
  285. package/test/core/dataExchange/utils.js +160 -0
  286. package/test/core/functional/README.md +30 -0
  287. package/test/core/functional/chaining/chaining.test.js +137 -0
  288. package/test/core/functional/chaining/test.conf.js +31 -0
  289. package/test/core/functional/locators/ancestorProperties.test.js +99 -0
  290. package/test/core/functional/locators/childProperties.test.js +40 -0
  291. package/test/core/functional/locators/descendantProperties.test.js +107 -0
  292. package/test/core/functional/locators/domProperties.test.js +60 -0
  293. package/test/core/functional/locators/elementProperties.test.js +114 -0
  294. package/test/core/functional/locators/mixedProperties.test.js +170 -0
  295. package/test/core/functional/locators/parentProperties.test.js +47 -0
  296. package/test/core/functional/locators/siblingProperties.test.js +120 -0
  297. package/test/core/functional/locators/test.locator.conf.js +38 -0
  298. package/test/core/functional/locators/utils.js +6 -0
  299. package/test/core/functional/nativeBrowser/runInBrowser.test.js +111 -0
  300. package/test/core/functional/nativeBrowser/test.conf.js +31 -0
  301. package/test/core/functional/nonUi5/basic.test.js +10 -0
  302. package/test/core/functional/nonUi5/getWithDomElement.test.js +51 -0
  303. package/test/core/functional/nonUi5/getWithDomElements.test.js +141 -0
  304. package/test/core/functional/nonUi5/test.conf.js +32 -0
  305. package/test/core/functional/ui5Properties/getAggregations.test.js +102 -0
  306. package/test/core/functional/ui5Properties/getAssociations.test.js +24 -0
  307. package/test/core/functional/ui5Properties/getBindingInfos.test.js +71 -0
  308. package/test/core/functional/ui5Properties/getProperties.test.js +226 -0
  309. package/test/core/functional/ui5Properties/test.conf.js +16 -0
  310. package/test/core/functional/uiveri5/sample.test.js +61 -0
  311. package/test/core/functional/uiveri5/test.conf.js +31 -0
  312. package/test/core/package-lock.json +0 -0
  313. package/test/core/package.json +12 -0
  314. package/test/core/testIntegration/config.js +17 -0
  315. package/test/core/testIntegration/configMultiCombo.js +17 -0
  316. package/test/core/testIntegration/configTable.js +18 -0
  317. package/test/core/testIntegration/filters1.spec.js +1849 -0
  318. package/test/core/testIntegration/multicombobox.spec.js +134 -0
  319. package/test/core/testIntegration/table.spec.js +80 -0
  320. package/test/helper/configurations/base.conf.js +43 -0
  321. package/test/helper/configurations/chrome.conf.js +47 -0
  322. package/test/helper/configurations/chrome.headless.conf.js +45 -0
  323. package/test/helper/configurations/sauce.labs.conf.js +37 -0
  324. package/test/helper/configurations/sauce.labs.tunnel.conf.js +39 -0
  325. package/test/helper/sleeper.js +19 -0
  326. package/test/helper/utils.js +15 -0
  327. package/test/helper/website/buttons.html +85 -0
  328. package/test/helper/website/checkBox.html +83 -0
  329. package/test/helper/website/dragAndDropFailing.html +83 -0
  330. package/test/helper/website/dragAndDropWdioExample.html +41 -0
  331. package/test/helper/website/dropdown.html +78 -0
  332. package/test/helper/website/forms.html +82 -0
  333. package/test/helper/website/hiddenAndVisible.html +60 -0
  334. package/test/helper/website/main.css +36 -0
  335. package/test/helper/website/scrollPage.html +261 -0
  336. package/test/helper/website/style.css +52 -0
  337. package/test/helper/website/tables.html +140 -0
  338. package/test/helper/website/waitForElements.html +73 -0
  339. package/test/reuse/common/assertion/expectDefined.spec.js +11 -0
  340. package/test/reuse/common/assertion/expectEqual.spec.js +52 -0
  341. package/test/reuse/common/assertion/expectFalse.spec.js +9 -0
  342. package/test/reuse/common/assertion/expectTrue.spec.js +9 -0
  343. package/test/reuse/common/assertion/expectUndefined.spec.js +11 -0
  344. package/test/reuse/common/assertion/expectUnequal.spec.js +25 -0
  345. package/test/reuse/common/assertion/expectUrlToBe.spec.js +27 -0
  346. package/test/reuse/common/assertion/test.assertion.conf.js +59 -0
  347. package/test/reuse/common/date/calculate.spec.js +163 -0
  348. package/test/reuse/common/date/getNextMonth.spec.js +105 -0
  349. package/test/reuse/common/date/getNextYear.spec.js +72 -0
  350. package/test/reuse/common/date/getPreviousMonth.spec.js +71 -0
  351. package/test/reuse/common/date/getPreviousYear.spec.js +72 -0
  352. package/test/reuse/common/date/getSpecific.spec.js +63 -0
  353. package/test/reuse/common/date/getToday.spec.js +78 -0
  354. package/test/reuse/common/date/getTomorrow.spec.js +72 -0
  355. package/test/reuse/common/date/test.date.conf.js +19 -0
  356. package/test/reuse/common/date/utils.js +6 -0
  357. package/test/reuse/common/navigation/navigateToUrl.spec.js +28 -0
  358. package/test/reuse/common/navigation/navigateToUrlAndRetry.spec.js +27 -0
  359. package/test/reuse/common/navigation/test.navigation.conf.js +25 -0
  360. package/test/reuse/common/userInteraction/clearAndFillActive.spec.js +100 -0
  361. package/test/reuse/common/userInteraction/clearAndFillActiveAndRetry.spec.js +106 -0
  362. package/test/reuse/common/userInteraction/fillActive.spec.js +230 -0
  363. package/test/reuse/common/userInteraction/fillActiveAndRetry.spec.js +172 -0
  364. package/test/reuse/common/userInteraction/pressKey.spec.js +105 -0
  365. package/test/reuse/common/userInteraction/test.userInteraction.conf.js +53 -0
  366. package/test/reuse/nonUi5/assertion/expectAttributeToBe.spec.js +45 -0
  367. package/test/reuse/nonUi5/assertion/expectAttributeToContain.spec.js +43 -0
  368. package/test/reuse/nonUi5/assertion/expectToBeNotVisible.spec.js +37 -0
  369. package/test/reuse/nonUi5/assertion/expectToBeVisible.spec.js +63 -0
  370. package/test/reuse/nonUi5/assertion/expectValueToBe.spec.js +25 -0
  371. package/test/reuse/nonUi5/assertion/test.assertion.conf.js +60 -0
  372. package/test/reuse/nonUi5/assertion/test.assertion.sauceLabs.conf.js +64 -0
  373. package/test/reuse/nonUi5/element/getAllDisplayed.spec.js +39 -0
  374. package/test/reuse/nonUi5/element/getAttributeValue.spec.js +58 -0
  375. package/test/reuse/nonUi5/element/getByChild.spec.js +70 -0
  376. package/test/reuse/nonUi5/element/getByClass.spec.js +64 -0
  377. package/test/reuse/nonUi5/element/getByCss.spec.js +65 -0
  378. package/test/reuse/nonUi5/element/getByCssContainingText.spec.js +83 -0
  379. package/test/reuse/nonUi5/element/getById.spec.js +35 -0
  380. package/test/reuse/nonUi5/element/getByName.spec.js +30 -0
  381. package/test/reuse/nonUi5/element/getByParent.spec.js +71 -0
  382. package/test/reuse/nonUi5/element/getByXPath.spec.js +30 -0
  383. package/test/reuse/nonUi5/element/getValue.spec.js +51 -0
  384. package/test/reuse/nonUi5/element/highlight.spec.js +18 -0
  385. package/test/reuse/nonUi5/element/isPresent.spec.js +39 -0
  386. package/test/reuse/nonUi5/element/isPresentByCss.spec.js +73 -0
  387. package/test/reuse/nonUi5/element/isPresentByXPath.spec.js +31 -0
  388. package/test/reuse/nonUi5/element/setInnerHTML.spec.js +23 -0
  389. package/test/reuse/nonUi5/element/test.element.conf.js +55 -0
  390. package/test/reuse/nonUi5/element/test.element.sauceLabs.conf.js +58 -0
  391. package/test/reuse/nonUi5/element/waitForAll.spec.js +24 -0
  392. package/test/reuse/nonUi5/element/waitToBeClickable.spec.js +24 -0
  393. package/test/reuse/nonUi5/element/waitToBePresent.spec.js +32 -0
  394. package/test/reuse/nonUi5/element/waitToBeVisible.spec.js +36 -0
  395. package/test/reuse/nonUi5/navigation/navigateToApplication.spec.js +13 -0
  396. package/test/reuse/nonUi5/navigation/test.navigation.conf.js +14 -0
  397. package/test/reuse/nonUi5/userInteraction/checkAttributeAndValue.spec.js +135 -0
  398. package/test/reuse/nonUi5/userInteraction/clear.spec.js +43 -0
  399. package/test/reuse/nonUi5/userInteraction/clearAndFill.spec.js +51 -0
  400. package/test/reuse/nonUi5/userInteraction/clearAndFillAndRetry.spec.js +58 -0
  401. package/test/reuse/nonUi5/userInteraction/clearAndRetry.spec.js +43 -0
  402. package/test/reuse/nonUi5/userInteraction/click.spec.js +60 -0
  403. package/test/reuse/nonUi5/userInteraction/clickAndRetry.spec.js +60 -0
  404. package/test/reuse/nonUi5/userInteraction/clickElementInSvg.spec.js +24 -0
  405. package/test/reuse/nonUi5/userInteraction/doubleClick.spec.js +22 -0
  406. package/test/reuse/nonUi5/userInteraction/dragAndDrop.spec.js +40 -0
  407. package/test/reuse/nonUi5/userInteraction/fill.spec.js +37 -0
  408. package/test/reuse/nonUi5/userInteraction/fillAndRetry.spec.js +39 -0
  409. package/test/reuse/nonUi5/userInteraction/mouseOverElement.spec.js +36 -0
  410. package/test/reuse/nonUi5/userInteraction/moveCursorAndClick.spec.js +24 -0
  411. package/test/reuse/nonUi5/userInteraction/rightClick.spec.js +13 -0
  412. package/test/reuse/nonUi5/userInteraction/scrollToElement.spec.js +35 -0
  413. package/test/reuse/nonUi5/userInteraction/test.userInteraction.conf.js +72 -0
  414. package/test/reuse/nonUi5/userInteraction/test.userInteraction.sauceLabs.conf.js +78 -0
  415. package/test/reuse/service/rest/db.json +8 -0
  416. package/test/reuse/service/rest/delete.spec.js +20 -0
  417. package/test/reuse/service/rest/get.spec.js +19 -0
  418. package/test/reuse/service/rest/init.spec.js +35 -0
  419. package/test/reuse/service/rest/patch.spec.js +29 -0
  420. package/test/reuse/service/rest/post.spec.js +37 -0
  421. package/test/reuse/service/rest/test.rest.conf.js +18 -0
  422. package/test/reuse/ui5/assertion/expectAttributeToBe.spec.js +106 -0
  423. package/test/reuse/ui5/assertion/expectAttributeToContain.spec.js +78 -0
  424. package/test/reuse/ui5/assertion/expectBindingContextPathToBe.spec.js +103 -0
  425. package/test/reuse/ui5/assertion/expectBindingPathToBe.spec.js +164 -0
  426. package/test/reuse/ui5/assertion/expectMessageToastTextToBe.spec.js +43 -0
  427. package/test/reuse/ui5/assertion/expectTextToBe.spec.js +39 -0
  428. package/test/reuse/ui5/assertion/expectToBeEnabled.spec.js +90 -0
  429. package/test/reuse/ui5/assertion/expectToBeNotEnabled.spec.js +62 -0
  430. package/test/reuse/ui5/assertion/expectToBeNotVisible.spec.js +52 -0
  431. package/test/reuse/ui5/assertion/expectToBeVisible.spec.js +69 -0
  432. package/test/reuse/ui5/assertion/expectToBeVisibleInViewport.spec.js +49 -0
  433. package/test/reuse/ui5/assertion/expectValidationError.spec.js +54 -0
  434. package/test/reuse/ui5/assertion/expectValidationSuccess.spec.js +53 -0
  435. package/test/reuse/ui5/assertion/expectValueToBe.spec.js +57 -0
  436. package/test/reuse/ui5/assertion/expectValueToBeDefined.spec.js +35 -0
  437. package/test/reuse/ui5/assertion/test.assertion.conf.js +28 -0
  438. package/test/reuse/ui5/assertion/test.assertion.sauceLab.conf.js +37 -0
  439. package/test/reuse/ui5/confirmationDialog/clickCancel.spec.js +88 -0
  440. package/test/reuse/ui5/confirmationDialog/clickCreate.spec.js +3 -0
  441. package/test/reuse/ui5/confirmationDialog/clickDelete.spec.js +89 -0
  442. package/test/reuse/ui5/confirmationDialog/clickNo.spec.js +96 -0
  443. package/test/reuse/ui5/confirmationDialog/clickOk.spec.js +66 -0
  444. package/test/reuse/ui5/confirmationDialog/clickRevokeApproval.spec.js +3 -0
  445. package/test/reuse/ui5/confirmationDialog/clickYes.spec.js +70 -0
  446. package/test/reuse/ui5/confirmationDialog/test.confirmationDialog.conf.js +20 -0
  447. package/test/reuse/ui5/confirmationDialog/test.confirmationDialog.sauceLab.conf.js +29 -0
  448. package/test/reuse/ui5/control/execute.spec.js +29 -0
  449. package/test/reuse/ui5/control/getAggregationProperty.spec.js +29 -0
  450. package/test/reuse/ui5/control/getAssociationProperty.spec.js +1 -0
  451. package/test/reuse/ui5/control/getBindingContextPathProperty.spec.js +30 -0
  452. package/test/reuse/ui5/control/getProperty.spec.js +30 -0
  453. package/test/reuse/ui5/control/getPropertyBinding.spec.js +30 -0
  454. package/test/reuse/ui5/control/test.control.conf.js +19 -0
  455. package/test/reuse/ui5/control/test.control.sauceLab.conf.js +30 -0
  456. package/test/reuse/ui5/date/fillRange.spec.js +53 -0
  457. package/test/reuse/ui5/date/pick.spec.js +136 -0
  458. package/test/reuse/ui5/date/pickRange.spec.js +143 -0
  459. package/test/reuse/ui5/date/test.date.conf.js +14 -0
  460. package/test/reuse/ui5/date/test.date.sauceLab.conf.js +26 -0
  461. package/test/reuse/ui5/element/getAllDisplayed.spec.js +71 -0
  462. package/test/reuse/ui5/element/getBindingValue.spec.js +78 -0
  463. package/test/reuse/ui5/element/getByChild.spec.js +124 -0
  464. package/test/reuse/ui5/element/getByParent.spec.js +134 -0
  465. package/test/reuse/ui5/element/getByText.spec.js +67 -0
  466. package/test/reuse/ui5/element/getDisplayed.spec.js +82 -0
  467. package/test/reuse/ui5/element/getId.spec.js +72 -0
  468. package/test/reuse/ui5/element/getPropertyValue.spec.js +91 -0
  469. package/test/reuse/ui5/element/highlight.spec.js +46 -0
  470. package/test/reuse/ui5/element/isVisible.spec.js +68 -0
  471. package/test/reuse/ui5/element/test.element.conf.js +22 -0
  472. package/test/reuse/ui5/element/test.element.sauceLab.conf.js +33 -0
  473. package/test/reuse/ui5/errorDialog/clickClose.spec.js +31 -0
  474. package/test/reuse/ui5/errorDialog/expectToBeVisible.spec.js +30 -0
  475. package/test/reuse/ui5/errorDialog/test.errorDialog.conf.js +13 -0
  476. package/test/reuse/ui5/errorDialog/test.errorDialog.sauceLab.conf.js +26 -0
  477. package/test/reuse/ui5/formatter/addRemoveLeadingZeros.spec.js +18 -0
  478. package/test/reuse/ui5/formatter/extractNumberFromString.spec.js +34 -0
  479. package/test/reuse/ui5/formatter/formatDate.spec.js +103 -0
  480. package/test/reuse/ui5/formatter/test.formatter.conf.js +14 -0
  481. package/test/reuse/ui5/formatter/test.formatter.sauceLab.conf.js +24 -0
  482. package/test/reuse/ui5/mockserver_qunit/Component.js +23 -0
  483. package/test/reuse/ui5/mockserver_qunit/LICENSE.txt +957 -0
  484. package/test/reuse/ui5/mockserver_qunit/NOTICE.txt +1 -0
  485. package/test/reuse/ui5/mockserver_qunit/controller/App.controller.js +37 -0
  486. package/test/reuse/ui5/mockserver_qunit/controller/BaseController.js +30 -0
  487. package/test/reuse/ui5/mockserver_qunit/controller/Home.controller.js +27 -0
  488. package/test/reuse/ui5/mockserver_qunit/controller/NotFound.controller.js +34 -0
  489. package/test/reuse/ui5/mockserver_qunit/controller/employee/Employee.controller.js +64 -0
  490. package/test/reuse/ui5/mockserver_qunit/controller/employee/EmployeeList.controller.js +22 -0
  491. package/test/reuse/ui5/mockserver_qunit/controller/employee/Resume.controller.js +83 -0
  492. package/test/reuse/ui5/mockserver_qunit/controller/employee/overview/EmployeeOverview.controller.js +11 -0
  493. package/test/reuse/ui5/mockserver_qunit/controller/employee/overview/EmployeeOverviewContent.controller.js +192 -0
  494. package/test/reuse/ui5/mockserver_qunit/i18n/i18n.properties +42 -0
  495. package/test/reuse/ui5/mockserver_qunit/index.html +21 -0
  496. package/test/reuse/ui5/mockserver_qunit/initMockServer.js +16 -0
  497. package/test/reuse/ui5/mockserver_qunit/localService/metadata.xml +61 -0
  498. package/test/reuse/ui5/mockserver_qunit/localService/mockdata/Employees.json +155 -0
  499. package/test/reuse/ui5/mockserver_qunit/localService/mockdata/Resumes.json +65 -0
  500. package/test/reuse/ui5/mockserver_qunit/localService/mockserver.js +146 -0
  501. package/test/reuse/ui5/mockserver_qunit/localService/mockserverLoadAllData.js +75 -0
  502. package/test/reuse/ui5/mockserver_qunit/manifest.json +169 -0
  503. package/test/reuse/ui5/mockserver_qunit/test/flpSandboxMockServer.html +63 -0
  504. package/test/reuse/ui5/mockserver_qunit/test/flpSandboxMockServerAllData.html +68 -0
  505. package/test/reuse/ui5/mockserver_qunit/test/qmate/ui/config.js +92 -0
  506. package/test/reuse/ui5/mockserver_qunit/test/qmate/ui/qunitExecution/specs/runQUnitTests.spec.js +14 -0
  507. package/test/reuse/ui5/mockserver_qunit/test/qmate/ui/testDisplayNotFound/data/setup.json +11 -0
  508. package/test/reuse/ui5/mockserver_qunit/test/qmate/ui/testDisplayNotFound/specs/testDisplayNotFound.spec.js +71 -0
  509. package/test/reuse/ui5/mockserver_qunit/test/qmate/ui/testShowEmployeeList/data/mock/Employees.json +204 -0
  510. package/test/reuse/ui5/mockserver_qunit/test/qmate/ui/testShowEmployeeList/data/mock/Resumes.json +114 -0
  511. package/test/reuse/ui5/mockserver_qunit/test/qmate/ui/testShowEmployeeList/data/setup.json +11 -0
  512. package/test/reuse/ui5/mockserver_qunit/test/qmate/ui/testShowEmployeeList/data/testShowEmployeeList.json +1 -0
  513. package/test/reuse/ui5/mockserver_qunit/test/qmate/ui/testShowEmployeeList/specs/testShowEmployeeList.spec.js +118 -0
  514. package/test/reuse/ui5/mockserver_qunit/test/qmate/ui/utils/constants.js +25 -0
  515. package/test/reuse/ui5/mockserver_qunit/test/qmate/ui/utils/mockDataMapper.js +23 -0
  516. package/test/reuse/ui5/mockserver_qunit/test/qmate/ui/utils/mockHelper.js +222 -0
  517. package/test/reuse/ui5/mockserver_qunit/test/unit/allTests.js +6 -0
  518. package/test/reuse/ui5/mockserver_qunit/test/unit/unitTests.qunit.html +38 -0
  519. package/test/reuse/ui5/mockserver_qunit/test/unit/utils/Conversions.js +13 -0
  520. package/test/reuse/ui5/mockserver_qunit/view/App.view.xml +9 -0
  521. package/test/reuse/ui5/mockserver_qunit/view/Home.view.xml +12 -0
  522. package/test/reuse/ui5/mockserver_qunit/view/NotFound.view.xml +11 -0
  523. package/test/reuse/ui5/mockserver_qunit/view/employee/Employee.view.xml +52 -0
  524. package/test/reuse/ui5/mockserver_qunit/view/employee/EmployeeList.view.xml +24 -0
  525. package/test/reuse/ui5/mockserver_qunit/view/employee/Resume.view.xml +35 -0
  526. package/test/reuse/ui5/mockserver_qunit/view/employee/ResumeHobbies.view.xml +3 -0
  527. package/test/reuse/ui5/mockserver_qunit/view/employee/ResumeNotes.view.xml +3 -0
  528. package/test/reuse/ui5/mockserver_qunit/view/employee/ResumeProjects.view.xml +3 -0
  529. package/test/reuse/ui5/mockserver_qunit/view/employee/overview/EmployeeOverview.view.xml +13 -0
  530. package/test/reuse/ui5/mockserver_qunit/view/employee/overview/EmployeeOverviewContent.view.xml +43 -0
  531. package/test/reuse/ui5/mockserver_qunit/view/employee/overview/EmployeeOverviewTop.view.xml +3 -0
  532. package/test/reuse/ui5/navigation/closePopups.spec.js +16 -0
  533. package/test/reuse/ui5/navigation/expectUnsupportedNavigationPopup.spec.js +81 -0
  534. package/test/reuse/ui5/navigation/navigateToApplication.spec.js +148 -0
  535. package/test/reuse/ui5/navigation/navigateToApplicationAndRetry.spec.js +153 -0
  536. package/test/reuse/ui5/navigation/navigateToApplicationWithQueryParams.spec.js +63 -0
  537. package/test/reuse/ui5/navigation/navigateToApplicationWithQueryParamsAndRetry.spec.js +64 -0
  538. package/test/reuse/ui5/navigation/navigateToSystemAndApplication.spec.js +45 -0
  539. package/test/reuse/ui5/navigation/navigateToSystemAndApplicationAndRetry.spec.js +43 -0
  540. package/test/reuse/ui5/navigation/test.navigation.conf.js +17 -0
  541. package/test/reuse/ui5/navigation/test.navigation.sauceLab.conf.js +33 -0
  542. package/test/reuse/ui5/navigation/test.navigation.static.conf.js +34 -0
  543. package/test/reuse/ui5/navigation/test.navigation.static.sauceLab.conf.js +41 -0
  544. package/test/reuse/ui5/navigation/website/main.css +36 -0
  545. package/test/reuse/ui5/navigation/website/main.html +50 -0
  546. package/test/reuse/ui5/navigationBar/clickBack.spec.js +38 -0
  547. package/test/reuse/ui5/navigationBar/clickUserIcon.spec.js +36 -0
  548. package/test/reuse/ui5/navigationBar/expectPageTitle.spec.js +22 -0
  549. package/test/reuse/ui5/navigationBar/expectShellHeader.spec.js +22 -0
  550. package/test/reuse/ui5/navigationBar/test.navigationBar.conf.js +17 -0
  551. package/test/reuse/ui5/navigationBar/test.navigationBar.sauceLab.conf.js +28 -0
  552. package/test/reuse/ui5/session/login.spec.js +78 -0
  553. package/test/reuse/ui5/session/loginFiori.spec.js +52 -0
  554. package/test/reuse/ui5/session/loginSapCloud.spec.js +51 -0
  555. package/test/reuse/ui5/session/logout.spec.js +48 -0
  556. package/test/reuse/ui5/session/switchUser.spec.js +48 -0
  557. package/test/reuse/ui5/session/test.session.conf.js +20 -0
  558. package/test/reuse/ui5/session/test.session.sauceLab.conf.js +29 -0
  559. package/test/reuse/ui5/table/clickSettingsButton.spec.js +58 -0
  560. package/test/reuse/ui5/table/sortColumnAscending.spec.js +84 -0
  561. package/test/reuse/ui5/table/sortColumnDescending.spec.js +84 -0
  562. package/test/reuse/ui5/table/test.table.conf.js +14 -0
  563. package/test/reuse/ui5/table/test.table.sauceLab.conf.js +25 -0
  564. package/test/reuse/ui5/table/test.table.sauceLab.tunnel.conf.js +25 -0
  565. package/test/reuse/ui5/userInteraction/clear.spec.js +75 -0
  566. package/test/reuse/ui5/userInteraction/clearAndFill.spec.js +157 -0
  567. package/test/reuse/ui5/userInteraction/clearAndFillAndRetry.spec.js +132 -0
  568. package/test/reuse/ui5/userInteraction/clearAndFillSmartFieldInput.spec.js +73 -0
  569. package/test/reuse/ui5/userInteraction/clearAndRetry.spec.js +57 -0
  570. package/test/reuse/ui5/userInteraction/click.spec.js +73 -0
  571. package/test/reuse/ui5/userInteraction/clickAndRetry.spec.js +52 -0
  572. package/test/reuse/ui5/userInteraction/clickSelectArrow.spec.js +87 -0
  573. package/test/reuse/ui5/userInteraction/clickSelectArrowAndRetry.spec.js +147 -0
  574. package/test/reuse/ui5/userInteraction/clickTab.spec.js +59 -0
  575. package/test/reuse/ui5/userInteraction/doubleClick.spec.js +73 -0
  576. package/test/reuse/ui5/userInteraction/dragAndDrop.spec.js +34 -0
  577. package/test/reuse/ui5/userInteraction/fill.spec.js +114 -0
  578. package/test/reuse/ui5/userInteraction/fillAndRetry.spec.js +120 -0
  579. package/test/reuse/ui5/userInteraction/mouseOverElement.spec.js +55 -0
  580. package/test/reuse/ui5/userInteraction/openF4Help.spec.js +56 -0
  581. package/test/reuse/ui5/userInteraction/rightClick.spec.js +72 -0
  582. package/test/reuse/ui5/userInteraction/scrollToElement.spec.js +89 -0
  583. package/test/reuse/ui5/userInteraction/searchFor.spec.js +155 -0
  584. package/test/reuse/ui5/userInteraction/selectBox.spec.js +128 -0
  585. package/test/reuse/ui5/userInteraction/selectCombobox.spec.js +115 -0
  586. package/test/reuse/ui5/userInteraction/selectMultiComboBox.spec.js +155 -0
  587. package/test/reuse/ui5/userInteraction/test.userInteraction.conf.js +35 -0
  588. package/test/reuse/ui5/userInteraction/test.userInteraction.sauceLab.conf.js +46 -0
  589. package/test/reuse/util/browser/back.spec.js +32 -0
  590. package/test/reuse/util/browser/clearBrowser.spec.js +35 -0
  591. package/test/reuse/util/browser/executeScript.spec.js +49 -0
  592. package/test/reuse/util/browser/getBaseUrl.spec.js +13 -0
  593. package/test/reuse/util/browser/getBrowserName.spec.js +18 -0
  594. package/test/reuse/util/browser/getCurrentUrl.spec.js +34 -0
  595. package/test/reuse/util/browser/getCurrentWindow.spec.js +42 -0
  596. package/test/reuse/util/browser/getUI5Version.spec.js +31 -0
  597. package/test/reuse/util/browser/logCurrentUrl.spec.js +23 -0
  598. package/test/reuse/util/browser/refresh.spec.js +52 -0
  599. package/test/reuse/util/browser/setBaseUrl.spec.js +13 -0
  600. package/test/reuse/util/browser/switchToDefaultContent.spec.js +34 -0
  601. package/test/reuse/util/browser/switchToIframe.spec.js +29 -0
  602. package/test/reuse/util/browser/switchToNewWindow.spec.js +142 -0
  603. package/test/reuse/util/browser/switchToWindow.spec.js +57 -0
  604. package/test/reuse/util/browser/test.browser.conf.js +27 -0
  605. package/test/reuse/util/data/data/test.json +3 -0
  606. package/test/reuse/util/data/data/test.secure.json +11 -0
  607. package/test/reuse/util/data/decrypt.spec.js +15 -0
  608. package/test/reuse/util/data/getData.spec.js +15 -0
  609. package/test/reuse/util/data/getSecureData.spec.js +57 -0
  610. package/test/reuse/util/data/test.data.conf.js +22 -0
  611. package/test/reuse/util/file/file.spec.js +90 -0
  612. package/test/reuse/util/file/pdfParser.spec.js +55 -0
  613. package/test/reuse/util/file/test.file.conf.js +15 -0
  614. package/test/reuse/util/file/testFiles/sample.pdf +198 -0
  615. package/test/reuse/util/file/testFiles/test.txt +5 -0
  616. package/test/reuse/util/file/testFiles/test2.txt +2 -0
  617. package/test/reuse/util/formatter/addRemoveLeadingZeros.spec.js +38 -0
  618. package/test/reuse/util/formatter/extractNumberFromString.spec.js +67 -0
  619. package/test/reuse/util/formatter/formatDate.spec.js +150 -0
  620. package/test/reuse/util/formatter/sliceStringAfter.spec.js +62 -0
  621. package/test/reuse/util/formatter/sliceStringAt.spec.js +62 -0
  622. package/test/reuse/util/formatter/stringifyJSON.spec.js +24 -0
  623. package/test/reuse/util/formatter/test.formatter.conf.js +20 -0
  624. package/test/reuse/util/formatter/trimString.spec.js +37 -0
  625. package/tsconfig.json +26 -0
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.Navigation = void 0;
13
+ /**
14
+ * @class navigation
15
+ * @memberof common
16
+ */
17
+ class Navigation {
18
+ /**
19
+ * @function navigateToUrl
20
+ * @memberOf common.navigation
21
+ * @description Navigates to the passed url.
22
+ * @param {String} url - The url.
23
+ * @example await common.navigation.navigateToUrl("www.sap.com");
24
+ */
25
+ navigateToUrl(url) {
26
+ return __awaiter(this, void 0, void 0, function* () {
27
+ if (url) {
28
+ yield browser.navigateTo(url);
29
+ yield util.browser.logCurrentUrl();
30
+ }
31
+ else {
32
+ throw new Error("Function 'navigateToUrl' failed: Please provide an url as argument.");
33
+ }
34
+ });
35
+ }
36
+ ;
37
+ /**
38
+ * @function navigateToUrlAndRetry
39
+ * @memberOf common.navigation
40
+ * @description Navigates to the passed url and retries the function in case of a failure.
41
+ * @param {String} url - The url to navigate to.
42
+ * @param {Integer} [retries=3] - The number of retries, can be set in config for all functions under params stepsRetries.
43
+ * @param {Integer} [interval=5000] - The interval of the retries (ms), can be set in config for all functions under params stepRetriesIntervals.
44
+ * @example await common.navigation.navigateToUrlAndRetry("www.sap.com");
45
+ */
46
+ navigateToUrlAndRetry(url, retries = 3, interval = 5000) {
47
+ return __awaiter(this, void 0, void 0, function* () {
48
+ yield util.function.retry(this.navigateToUrl, [url], retries, interval, this);
49
+ });
50
+ }
51
+ ;
52
+ }
53
+ exports.Navigation = Navigation;
54
+ ;
55
+ exports.default = new Navigation();
56
+ //# sourceMappingURL=navigation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"navigation.js","sourceRoot":"","sources":["../../../../src/reuse/modules/common/navigation.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;;;;;;;;AAEb;;;GAGG;AACH,MAAa,UAAU;IAErB;;;;;;OAMG;IACG,aAAa,CAAE,GAAW;;YAC9B,IAAI,GAAG,EAAE;gBACP,MAAM,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;gBAC9B,MAAM,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;aACpC;iBAAM;gBACL,MAAM,IAAI,KAAK,CAAC,qEAAqE,CAAC,CAAC;aACxF;QACH,CAAC;KAAA;IAAA,CAAC;IAEF;;;;;;;;OAQG;IACG,qBAAqB,CAAE,GAAW,EAAE,UAAkB,CAAC,EAAE,WAAmB,IAAI;;YACpF,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;QAChF,CAAC;KAAA;IAAA,CAAC;CAEH;AA/BD,gCA+BC;AAAA,CAAC;AACF,kBAAe,IAAI,UAAU,EAAE,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { CalculateDates } from "../constants/date.constants";
2
+ export declare type CalculateDatesType = `${CalculateDates}`;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=date.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"date.types.js","sourceRoot":"","sources":["../../../../../src/reuse/modules/common/types/date.types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,104 @@
1
+ /**
2
+ * @class userInteraction
3
+ * @memberof common
4
+ */
5
+ export declare class UserInteraction {
6
+ /**
7
+ * @function fillActive
8
+ * @memberOf common.userInteraction
9
+ * @description Fills the active input with the given value.
10
+ * @param {String} value - The value with witch the input should be filled.
11
+ * @example await common.userInteraction.fillActive("My Value");
12
+ */
13
+ fillActive(value: string): Promise<void>;
14
+ /**
15
+ * @function fillActiveAndRetry
16
+ * @memberOf common.userInteraction
17
+ * @description Enters the given value to the active input field and retries the action in case it fails.
18
+ * @param {String} value - The value with witch the input should be filled.
19
+ * @param {Number} [retries=3] - The number of retries, can be set in config for all functions under params stepsRetries.
20
+ * @param {Number} [interval=5000] - The delay between the retries (ms). Can be set in config for all functions under params.stepRetriesIntervals.
21
+ * @example await common.userInteraction.fillActiveAndRetry("My Value");
22
+ */
23
+ fillActiveAndRetry(value: string, retries?: number, interval?: number): Promise<void>;
24
+ /**
25
+ * @function clearAndFillActive
26
+ * @memberOf common.userInteraction
27
+ * @description Clears and fills the active input.
28
+ * @param {String} value - The value to fill.
29
+ * @example await common.userInteraction.clearAndFillActive("My Value");
30
+ */
31
+ clearAndFillActive(value: string): Promise<void>;
32
+ /**
33
+ * @function clearAndFillActiveAndRetry
34
+ * @memberOf common.userInteraction
35
+ * @description CClears and fills the active input. Retries the action in case of a failure.
36
+ * @param {String} value - The value to fill.
37
+ * @param {Number} [retries=3] - The number of retries, can be set in config for all functions under params stepsRetries.
38
+ * @param {Number} [interval=5000] - The delay between the retries (ms). Can be set in config for all functions under params.stepRetriesIntervals.
39
+ * @example await common.userInteraction.clearAndFillActiveAndRetry("My Value");
40
+ */
41
+ clearAndFillActiveAndRetry(value: string, retries?: number, interval?: number): Promise<void>;
42
+ /**
43
+ * @function pressKey
44
+ * @memberOf common.userInteraction
45
+ * @description Performs the specified keypress. Possible values: https://w3c.github.io/webdriver/#keyboard-actions
46
+ * @param {String | String[]} keys - The key or combination of keys to execute.
47
+ * @example await common.userInteraction.pressKey("Enter");
48
+ * @example await common.userInteraction.pressKey("\uE004");
49
+ * @example await common.userInteraction.pressKey(["\uE009", "Alt"]);
50
+ */
51
+ pressKey(keys: string | string[]): Promise<void>;
52
+ /**
53
+ * @function pressEnter
54
+ * @memberOf common.userInteraction
55
+ * @description Performs the Enter keypress.
56
+ * @example await common.userInteraction.pressEnter();
57
+ */
58
+ pressEnter(): Promise<void>;
59
+ /**
60
+ * @function pressTab
61
+ * @memberOf common.userInteraction
62
+ * @description Performs the Tab keypress.
63
+ * @example await common.userInteraction.pressTab();
64
+ */
65
+ pressTab(): Promise<void>;
66
+ /**
67
+ * @function pressF4
68
+ * @memberOf common.userInteraction
69
+ * @description Performs the F4 keypress.
70
+ * @example await common.userInteraction.pressF4();
71
+ */
72
+ pressF4(): Promise<void>;
73
+ /**
74
+ * @function pressBackspace
75
+ * @memberOf common.userInteraction
76
+ * @description Performs the Backspace keypress.
77
+ * @example await common.userInteraction.pressBackspace();
78
+ */
79
+ pressBackspace(): Promise<void>;
80
+ /**
81
+ * @function pressEscape
82
+ * @memberOf common.userInteraction
83
+
84
+ * @description Performs the Escape keypress.
85
+ * @example await common.userInteraction.pressEscape();
86
+ */
87
+ pressEscape(): Promise<void>;
88
+ /**
89
+ * @function pressArrowLeft
90
+ * @memberOf common.userInteraction
91
+ * @description Performs the Arrow Left keypress.
92
+ * @example await common.userInteraction.pressArrowLeft();
93
+ */
94
+ pressArrowLeft(): Promise<void>;
95
+ /**
96
+ * @function pressArrowRight
97
+ * @memberOf common.userInteraction
98
+ * @description Performs the Arrow Right keypress.
99
+ * @example await common.userInteraction.pressArrowRight();
100
+ */
101
+ pressArrowRight(): Promise<void>;
102
+ }
103
+ declare const _default: UserInteraction;
104
+ export default _default;
@@ -0,0 +1,199 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.UserInteraction = void 0;
13
+ const userInteraction_constants_1 = require("./constants/userInteraction.constants");
14
+ /**
15
+ * @class userInteraction
16
+ * @memberof common
17
+ */
18
+ class UserInteraction {
19
+ // =================================== FILL ===================================
20
+ /**
21
+ * @function fillActive
22
+ * @memberOf common.userInteraction
23
+ * @description Fills the active input with the given value.
24
+ * @param {String} value - The value with witch the input should be filled.
25
+ * @example await common.userInteraction.fillActive("My Value");
26
+ */
27
+ fillActive(value) {
28
+ return __awaiter(this, void 0, void 0, function* () {
29
+ try {
30
+ if (value !== null) {
31
+ const elem = yield $(yield browser.getActiveElement());
32
+ yield elem.addValue(value); //TODO: open issue on wdio github for different behavior in terms of the active element of addValue() and setValue()
33
+ }
34
+ else {
35
+ throw new Error("Function 'fillActive' failed: Please provide a value as argument.");
36
+ }
37
+ }
38
+ catch (error) {
39
+ // @ts-ignore
40
+ throw new Error("Function 'fillActive' failed: ", error);
41
+ }
42
+ });
43
+ }
44
+ ;
45
+ /**
46
+ * @function fillActiveAndRetry
47
+ * @memberOf common.userInteraction
48
+ * @description Enters the given value to the active input field and retries the action in case it fails.
49
+ * @param {String} value - The value with witch the input should be filled.
50
+ * @param {Number} [retries=3] - The number of retries, can be set in config for all functions under params stepsRetries.
51
+ * @param {Number} [interval=5000] - The delay between the retries (ms). Can be set in config for all functions under params.stepRetriesIntervals.
52
+ * @example await common.userInteraction.fillActiveAndRetry("My Value");
53
+ */
54
+ fillActiveAndRetry(value, retries = 3, interval = 5000) {
55
+ return __awaiter(this, void 0, void 0, function* () {
56
+ yield util.function.retry(this.fillActive, [value], retries, interval, this);
57
+ });
58
+ }
59
+ ;
60
+ /**
61
+ * @function clearAndFillActive
62
+ * @memberOf common.userInteraction
63
+ * @description Clears and fills the active input.
64
+ * @param {String} value - The value to fill.
65
+ * @example await common.userInteraction.clearAndFillActive("My Value");
66
+ */
67
+ clearAndFillActive(value) {
68
+ return __awaiter(this, void 0, void 0, function* () {
69
+ if (value !== null) {
70
+ const elem = yield $(yield browser.getActiveElement());
71
+ yield elem.setValue(value);
72
+ }
73
+ else {
74
+ throw new Error("Function 'clearAndFillActive' failed. Please provide a value as argument.");
75
+ }
76
+ });
77
+ }
78
+ ;
79
+ /**
80
+ * @function clearAndFillActiveAndRetry
81
+ * @memberOf common.userInteraction
82
+ * @description CClears and fills the active input. Retries the action in case of a failure.
83
+ * @param {String} value - The value to fill.
84
+ * @param {Number} [retries=3] - The number of retries, can be set in config for all functions under params stepsRetries.
85
+ * @param {Number} [interval=5000] - The delay between the retries (ms). Can be set in config for all functions under params.stepRetriesIntervals.
86
+ * @example await common.userInteraction.clearAndFillActiveAndRetry("My Value");
87
+ */
88
+ clearAndFillActiveAndRetry(value, retries = 3, interval = 5000) {
89
+ return __awaiter(this, void 0, void 0, function* () {
90
+ yield util.function.retry(this.clearAndFillActive, [value], retries, interval, this);
91
+ });
92
+ }
93
+ ;
94
+ // =================================== KEYS ===================================
95
+ /**
96
+ * @function pressKey
97
+ * @memberOf common.userInteraction
98
+ * @description Performs the specified keypress. Possible values: https://w3c.github.io/webdriver/#keyboard-actions
99
+ * @param {String | String[]} keys - The key or combination of keys to execute.
100
+ * @example await common.userInteraction.pressKey("Enter");
101
+ * @example await common.userInteraction.pressKey("\uE004");
102
+ * @example await common.userInteraction.pressKey(["\uE009", "Alt"]);
103
+ */
104
+ pressKey(keys) {
105
+ return __awaiter(this, void 0, void 0, function* () {
106
+ yield browser.keys(keys);
107
+ });
108
+ }
109
+ ;
110
+ /**
111
+ * @function pressEnter
112
+ * @memberOf common.userInteraction
113
+ * @description Performs the Enter keypress.
114
+ * @example await common.userInteraction.pressEnter();
115
+ */
116
+ pressEnter() {
117
+ return __awaiter(this, void 0, void 0, function* () {
118
+ yield browser.keys(userInteraction_constants_1.KeyCodes.ENTER);
119
+ });
120
+ }
121
+ ;
122
+ /**
123
+ * @function pressTab
124
+ * @memberOf common.userInteraction
125
+ * @description Performs the Tab keypress.
126
+ * @example await common.userInteraction.pressTab();
127
+ */
128
+ pressTab() {
129
+ return __awaiter(this, void 0, void 0, function* () {
130
+ yield browser.keys(userInteraction_constants_1.KeyCodes.TAB);
131
+ });
132
+ }
133
+ ;
134
+ /**
135
+ * @function pressF4
136
+ * @memberOf common.userInteraction
137
+ * @description Performs the F4 keypress.
138
+ * @example await common.userInteraction.pressF4();
139
+ */
140
+ pressF4() {
141
+ return __awaiter(this, void 0, void 0, function* () {
142
+ yield browser.keys(userInteraction_constants_1.KeyCodes.F4);
143
+ });
144
+ }
145
+ ;
146
+ /**
147
+ * @function pressBackspace
148
+ * @memberOf common.userInteraction
149
+ * @description Performs the Backspace keypress.
150
+ * @example await common.userInteraction.pressBackspace();
151
+ */
152
+ pressBackspace() {
153
+ return __awaiter(this, void 0, void 0, function* () {
154
+ yield browser.keys(userInteraction_constants_1.KeyCodes.BACKSPACE);
155
+ });
156
+ }
157
+ ;
158
+ /**
159
+ * @function pressEscape
160
+ * @memberOf common.userInteraction
161
+
162
+ * @description Performs the Escape keypress.
163
+ * @example await common.userInteraction.pressEscape();
164
+ */
165
+ pressEscape() {
166
+ return __awaiter(this, void 0, void 0, function* () {
167
+ yield browser.keys(userInteraction_constants_1.KeyCodes.ESCAPE);
168
+ });
169
+ }
170
+ ;
171
+ /**
172
+ * @function pressArrowLeft
173
+ * @memberOf common.userInteraction
174
+ * @description Performs the Arrow Left keypress.
175
+ * @example await common.userInteraction.pressArrowLeft();
176
+ */
177
+ pressArrowLeft() {
178
+ return __awaiter(this, void 0, void 0, function* () {
179
+ yield browser.keys(userInteraction_constants_1.KeyCodes.ARROW_LEFT);
180
+ });
181
+ }
182
+ ;
183
+ /**
184
+ * @function pressArrowRight
185
+ * @memberOf common.userInteraction
186
+ * @description Performs the Arrow Right keypress.
187
+ * @example await common.userInteraction.pressArrowRight();
188
+ */
189
+ pressArrowRight() {
190
+ return __awaiter(this, void 0, void 0, function* () {
191
+ yield browser.keys(userInteraction_constants_1.KeyCodes.ARROW_RIGHT);
192
+ });
193
+ }
194
+ ;
195
+ }
196
+ exports.UserInteraction = UserInteraction;
197
+ ;
198
+ exports.default = new UserInteraction();
199
+ //# sourceMappingURL=userInteraction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"userInteraction.js","sourceRoot":"","sources":["../../../../src/reuse/modules/common/userInteraction.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;;;;;;;;AAEb,qFAAiE;AAEjE;;;GAGG;AACH,MAAa,eAAe;IAE1B,+EAA+E;IAC/E;;;;;;OAMG;IACG,UAAU,CAAE,KAAa;;YAC7B,IAAI;gBACF,IAAI,KAAK,KAAK,IAAI,EAAE;oBAClB,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,MAAM,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC;oBACvD,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,oHAAoH;iBACjJ;qBAAM;oBACL,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;iBACtF;aACF;YAAC,OAAO,KAAK,EAAE;gBACd,aAAa;gBACb,MAAM,IAAI,KAAK,CAAC,gCAAgC,EAAE,KAAK,CAAC,CAAC;aAC1D;QAEH,CAAC;KAAA;IAAA,CAAC;IAEF;;;;;;;;OAQG;IACG,kBAAkB,CAAE,KAAa,EAAE,UAAkB,CAAC,EAAE,WAAmB,IAAI;;YACnF,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;QAC/E,CAAC;KAAA;IAAA,CAAC;IAGF;;;;;;OAMG;IACG,kBAAkB,CAAE,KAAa;;YACrC,IAAI,KAAK,KAAK,IAAI,EAAE;gBAClB,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,MAAM,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC;gBACvD,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;aAC5B;iBAAM;gBACL,MAAM,IAAI,KAAK,CAAC,2EAA2E,CAAC,CAAC;aAC9F;QACH,CAAC;KAAA;IAAA,CAAC;IAEF;;;;;;;;OAQG;IACG,0BAA0B,CAAE,KAAa,EAAE,UAAkB,CAAC,EAAE,WAAmB,IAAI;;YAC3F,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;QACvF,CAAC;KAAA;IAAA,CAAC;IAGF,+EAA+E;IAC/E;;;;;;;;OAQG;IACG,QAAQ,CAAE,IAAuB;;YACrC,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;KAAA;IAAA,CAAC;IAEF;;;;;OAKG;IACG,UAAU;;YACd,MAAM,OAAO,CAAC,IAAI,CAAC,oCAAQ,CAAC,KAAK,CAAC,CAAC;QACrC,CAAC;KAAA;IAAA,CAAC;IAEF;;;;;OAKG;IACG,QAAQ;;YACZ,MAAM,OAAO,CAAC,IAAI,CAAC,oCAAQ,CAAC,GAAG,CAAC,CAAC;QACnC,CAAC;KAAA;IAAA,CAAC;IAEF;;;;;OAKG;IACG,OAAO;;YACX,MAAM,OAAO,CAAC,IAAI,CAAC,oCAAQ,CAAC,EAAE,CAAC,CAAC;QAClC,CAAC;KAAA;IAAA,CAAC;IAEF;;;;;OAKG;IACG,cAAc;;YAClB,MAAM,OAAO,CAAC,IAAI,CAAC,oCAAQ,CAAC,SAAS,CAAC,CAAC;QACzC,CAAC;KAAA;IAAA,CAAC;IAEF;;;;;;OAMG;IACG,WAAW;;YACf,MAAM,OAAO,CAAC,IAAI,CAAC,oCAAQ,CAAC,MAAM,CAAC,CAAC;QACtC,CAAC;KAAA;IAAA,CAAC;IAEF;;;;;OAKG;IACG,cAAc;;YAClB,MAAM,OAAO,CAAC,IAAI,CAAC,oCAAQ,CAAC,UAAU,CAAC,CAAC;QAC1C,CAAC;KAAA;IAAA,CAAC;IAEF;;;;;OAKG;IACG,eAAe;;YACnB,MAAM,OAAO,CAAC,IAAI,CAAC,oCAAQ,CAAC,WAAW,CAAC,CAAC;QAC3C,CAAC;KAAA;IAAA,CAAC;CAEH;AA1JD,0CA0JC;AAAA,CAAC;AACF,kBAAe,IAAI,eAAe,EAAE,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { Assertion } from "./assertion";
2
+ import { ElementModule } from "./element";
3
+ import { Navigation } from "./navigation";
4
+ import { UserInteraction } from "./userInteraction";
5
+ export declare class NonUi5 {
6
+ assertion: Assertion;
7
+ element: ElementModule;
8
+ navigation: Navigation;
9
+ userInteraction: UserInteraction;
10
+ }
11
+ declare const _default: NonUi5;
12
+ export default _default;
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.NonUi5 = void 0;
7
+ const assertion_1 = __importDefault(require("./assertion"));
8
+ const element_1 = __importDefault(require("./element"));
9
+ const navigation_1 = __importDefault(require("./navigation"));
10
+ const userInteraction_1 = __importDefault(require("./userInteraction"));
11
+ class NonUi5 {
12
+ constructor() {
13
+ this.assertion = assertion_1.default;
14
+ this.element = element_1.default;
15
+ this.navigation = navigation_1.default;
16
+ this.userInteraction = userInteraction_1.default;
17
+ }
18
+ }
19
+ exports.NonUi5 = NonUi5;
20
+ exports.default = new NonUi5();
21
+ //# sourceMappingURL=NonUi5.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NonUi5.js","sourceRoot":"","sources":["../../../../src/reuse/modules/nonUi5/NonUi5.ts"],"names":[],"mappings":";;;;;;AAAA,4DAAmD;AACnD,wDAAmD;AACnD,8DAAsD;AACtD,wEAAqE;AAErE,MAAa,MAAM;IAAnB;QACI,cAAS,GAAc,mBAAS,CAAA;QAChC,YAAO,GAAkB,iBAAO,CAAA;QAChC,eAAU,GAAe,oBAAU,CAAA;QACnC,oBAAe,GAAoB,yBAAe,CAAA;IACtD,CAAC;CAAA;AALD,wBAKC;AAED,kBAAe,IAAI,MAAM,EAAE,CAAA"}
@@ -0,0 +1,62 @@
1
+ import { Element } from "../../../../@types/wdio";
2
+ /**
3
+ * @class assertion
4
+ * @memberof nonUi5
5
+ */
6
+ export declare class Assertion {
7
+ /**
8
+ * @function expectAttributeToBe
9
+ * @memberOf nonUi5.assertion
10
+ * @description Expects the attributes value of the passed element to be the compare value.
11
+ * @param {Object} elem - The element.
12
+ * @param {String} compareValue - The compare value.
13
+ * @param {String} [attribute] - The attribute to compare. If not passed, it will compare the inner HTML content of the element.
14
+ * @example const elem = await nonUi5.element.getById("button01");
15
+ * await nonUi5.assertion.expectAttributeToBe(elem, "Save");
16
+ * @example const elem = await nonUi5.element.getById("button01");
17
+ * await nonUi5.assertion.expectAttributeToBe(element, "Save", "title");
18
+ */
19
+ expectAttributeToBe(elem: Element, compareValue: string, attribute: string): Promise<void>;
20
+ /**
21
+ * @function expectAttributeToContain
22
+ * @memberOf nonUi5.assertion
23
+ * @description Expects the attributes value of the passed element to contain the compare value.
24
+ * @param {Object} elem - The element.
25
+ * @param {String} compareValue - The compare value.
26
+ * @param {String} [attribute] - The attribute to compare. If not passed, it will compare the inner HTML content of the element.
27
+ * @example const elem = await nonUi5.element.getById("button01");
28
+ * await nonUi5.assertion.expectAttributeToContain(element, "Save", "title");
29
+ */
30
+ expectAttributeToContain(elem: Element, compareValue: string, attribute: string): Promise<any>;
31
+ /**
32
+ * @function expectValueToBe
33
+ * @memberOf nonUi5.assertion
34
+ * @description Expects the attributes value of the passed element to be the compare value.
35
+ * @param {Object} elem - The element.
36
+ * @param {String} compareValue - The compare value.
37
+ * @example const elem = await nonUi5.element.getById("button01");
38
+ * await nonUi5.assertion.expectValueToBe(elem, "Save");
39
+ */
40
+ expectValueToBe(elem: Element, compareValue: string): Promise<void>;
41
+ /**
42
+ * @function expectToBeVisible
43
+ * @memberOf nonUi5.assertion
44
+ * @description Expects that the element is visible to the user.
45
+ * @param {Object} element - The element.
46
+ * @example const elem = await nonUi5.element.getById("button01");
47
+ * await nonUi5.assertion.expectToBeVisible(elem);
48
+ */
49
+ expectToBeVisible(element: Element): Promise<void>;
50
+ /**
51
+ * @function expectToBeNotVisible
52
+ * @memberOf nonUi5.assertion
53
+ * @description Expects that the element is not visible to the user.
54
+ * @param {Object} element - The element.
55
+ * @param {Number} [timeout=30000] - The timeout to wait (ms). Recommendation is to lower the timeout since the element is not expected to show up.
56
+ * @example const elem = await nonUi5.element.getById("button01");
57
+ * await nonUi5.assertion.expectToBeNotVisible(elem, 5000);
58
+ */
59
+ expectToBeNotVisible(element: Element, timeout?: string | number): Promise<void>;
60
+ }
61
+ declare const _default: Assertion;
62
+ export default _default;
@@ -0,0 +1,127 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.Assertion = void 0;
13
+ /**
14
+ * @class assertion
15
+ * @memberof nonUi5
16
+ */
17
+ class Assertion {
18
+ // =================================== PROPERTIES ===================================
19
+ /**
20
+ * @function expectAttributeToBe
21
+ * @memberOf nonUi5.assertion
22
+ * @description Expects the attributes value of the passed element to be the compare value.
23
+ * @param {Object} elem - The element.
24
+ * @param {String} compareValue - The compare value.
25
+ * @param {String} [attribute] - The attribute to compare. If not passed, it will compare the inner HTML content of the element.
26
+ * @example const elem = await nonUi5.element.getById("button01");
27
+ * await nonUi5.assertion.expectAttributeToBe(elem, "Save");
28
+ * @example const elem = await nonUi5.element.getById("button01");
29
+ * await nonUi5.assertion.expectAttributeToBe(element, "Save", "title");
30
+ */
31
+ expectAttributeToBe(elem, compareValue, attribute) {
32
+ return __awaiter(this, void 0, void 0, function* () {
33
+ const value = yield nonUi5.element.getAttributeValue(elem, attribute);
34
+ return common.assertion.expectEqual(value, compareValue);
35
+ });
36
+ }
37
+ ;
38
+ /**
39
+ * @function expectAttributeToContain
40
+ * @memberOf nonUi5.assertion
41
+ * @description Expects the attributes value of the passed element to contain the compare value.
42
+ * @param {Object} elem - The element.
43
+ * @param {String} compareValue - The compare value.
44
+ * @param {String} [attribute] - The attribute to compare. If not passed, it will compare the inner HTML content of the element.
45
+ * @example const elem = await nonUi5.element.getById("button01");
46
+ * await nonUi5.assertion.expectAttributeToContain(element, "Save", "title");
47
+ */
48
+ expectAttributeToContain(elem, compareValue, attribute) {
49
+ return __awaiter(this, void 0, void 0, function* () {
50
+ const value = yield nonUi5.element.getAttributeValue(elem, attribute);
51
+ return expect(value).toContain(compareValue);
52
+ });
53
+ }
54
+ ;
55
+ /**
56
+ * @function expectValueToBe
57
+ * @memberOf nonUi5.assertion
58
+ * @description Expects the attributes value of the passed element to be the compare value.
59
+ * @param {Object} elem - The element.
60
+ * @param {String} compareValue - The compare value.
61
+ * @example const elem = await nonUi5.element.getById("button01");
62
+ * await nonUi5.assertion.expectValueToBe(elem, "Save");
63
+ */
64
+ expectValueToBe(elem, compareValue) {
65
+ return __awaiter(this, void 0, void 0, function* () {
66
+ // Note: it is not required to send 'value' here, because 'expectAttributeToBe' is calling 'getValue' inside
67
+ // @ts-ignore
68
+ yield this.expectAttributeToBe(elem, compareValue);
69
+ });
70
+ }
71
+ ;
72
+ // =================================== VISIBILITY ===================================
73
+ /**
74
+ * @function expectToBeVisible
75
+ * @memberOf nonUi5.assertion
76
+ * @description Expects that the element is visible to the user.
77
+ * @param {Object} element - The element.
78
+ * @example const elem = await nonUi5.element.getById("button01");
79
+ * await nonUi5.assertion.expectToBeVisible(elem);
80
+ */
81
+ expectToBeVisible(element) {
82
+ return __awaiter(this, void 0, void 0, function* () {
83
+ if (!element) {
84
+ throw new Error("Function 'expectToBeVisible' failed. Please provide an element as argument.");
85
+ }
86
+ yield browser.waitUntil(function () {
87
+ return __awaiter(this, void 0, void 0, function* () {
88
+ const isPresent = yield element.isExisting();
89
+ const isDisplayed = yield element.isDisplayed();
90
+ return isPresent && isDisplayed;
91
+ });
92
+ }, {
93
+ interval: 100,
94
+ timeout: 30000,
95
+ timeoutMsg: "Function 'expectToBeVisible' failed. Timeout by waiting for element to be visible."
96
+ });
97
+ });
98
+ }
99
+ ;
100
+ /**
101
+ * @function expectToBeNotVisible
102
+ * @memberOf nonUi5.assertion
103
+ * @description Expects that the element is not visible to the user.
104
+ * @param {Object} element - The element.
105
+ * @param {Number} [timeout=30000] - The timeout to wait (ms). Recommendation is to lower the timeout since the element is not expected to show up.
106
+ * @example const elem = await nonUi5.element.getById("button01");
107
+ * await nonUi5.assertion.expectToBeNotVisible(elem, 5000);
108
+ */
109
+ expectToBeNotVisible(element, timeout = process.env.QMATE_CUSTOM_TIMEOUT || 30000) {
110
+ return __awaiter(this, void 0, void 0, function* () {
111
+ if (!element) {
112
+ throw new Error("Function 'expectToBeNotVisible' failed. Please provide an element as argument.");
113
+ }
114
+ yield element.waitForDisplayed({
115
+ timeout: +timeout,
116
+ reverse: true,
117
+ timeoutMsg: "Function 'expectToBeNotVisible' failed. Element is visible but was expected to be not.",
118
+ interval: 100
119
+ });
120
+ });
121
+ }
122
+ ;
123
+ }
124
+ exports.Assertion = Assertion;
125
+ ;
126
+ exports.default = new Assertion();
127
+ //# sourceMappingURL=assertion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assertion.js","sourceRoot":"","sources":["../../../../src/reuse/modules/nonUi5/assertion.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;;;;;;;;AAIb;;;GAGG;AACH,MAAa,SAAS;IAEpB,qFAAqF;IACrF;;;;;;;;;;;OAWG;IACG,mBAAmB,CAAE,IAAa,EAAE,YAAoB,EAAE,SAAiB;;YAC/E,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;YACtE,OAAO,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;QAC3D,CAAC;KAAA;IAAA,CAAC;IAEF;;;;;;;;;OASG;IACG,wBAAwB,CAAE,IAAa,EAAE,YAAoB,EAAE,SAAiB;;YACpF,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;YACtE,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QAC/C,CAAC;KAAA;IAAA,CAAC;IAEF;;;;;;;;OAQG;IACG,eAAe,CAAE,IAAa,EAAE,YAAoB;;YACxD,4GAA4G;YAC5G,aAAa;YACb,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QACrD,CAAC;KAAA;IAAA,CAAC;IAGF,qFAAqF;IACrF;;;;;;;OAOG;IACG,iBAAiB,CAAE,OAAgB;;YACvC,IAAI,CAAC,OAAO,EAAE;gBACZ,MAAM,IAAI,KAAK,CAAC,6EAA6E,CAAC,CAAC;aAChG;YACD,MAAM,OAAO,CAAC,SAAS,CAAC;;oBACtB,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,UAAU,EAAE,CAAC;oBAC7C,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,WAAW,EAAE,CAAC;oBAChD,OAAO,SAAS,IAAI,WAAW,CAAC;gBAClC,CAAC;aAAA,EAAE;gBACD,QAAQ,EAAE,GAAG;gBACb,OAAO,EAAE,KAAK;gBACd,UAAU,EAAE,oFAAoF;aACjG,CAAC,CAAC;QACL,CAAC;KAAA;IAAA,CAAC;IAEF;;;;;;;;KAQC;IACK,oBAAoB,CAAE,OAAgB,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,KAAK;;YAC/F,IAAI,CAAC,OAAO,EAAE;gBACZ,MAAM,IAAI,KAAK,CAAC,gFAAgF,CAAC,CAAC;aACnG;YACD,MAAM,OAAO,CAAC,gBAAgB,CAAC;gBAC7B,OAAO,EAAE,CAAC,OAAO;gBACjB,OAAO,EAAE,IAAI;gBACb,UAAU,EAAE,wFAAwF;gBACpG,QAAQ,EAAE,GAAG;aACd,CAAC,CAAC;QACL,CAAC;KAAA;IAAA,CAAC;CAEH;AAhGD,8BAgGC;AAAA,CAAC;AACF,kBAAe,IAAI,SAAS,EAAE,CAAC"}
@@ -0,0 +1,6 @@
1
+ export declare enum AlignmentValues {
2
+ START = "start",
3
+ CENTER = "center",
4
+ END = "end",
5
+ NEAREST = "nearest"
6
+ }
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AlignmentValues = void 0;
4
+ var AlignmentValues;
5
+ (function (AlignmentValues) {
6
+ AlignmentValues["START"] = "start";
7
+ AlignmentValues["CENTER"] = "center";
8
+ AlignmentValues["END"] = "end";
9
+ AlignmentValues["NEAREST"] = "nearest";
10
+ })(AlignmentValues = exports.AlignmentValues || (exports.AlignmentValues = {}));
11
+ //# sourceMappingURL=userInteraction.constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"userInteraction.constants.js","sourceRoot":"","sources":["../../../../../src/reuse/modules/nonUi5/constants/userInteraction.constants.ts"],"names":[],"mappings":";;;AAAA,IAAY,eAKX;AALD,WAAY,eAAe;IACvB,kCAAe,CAAA;IACf,oCAAiB,CAAA;IACjB,8BAAW,CAAA;IACX,sCAAmB,CAAA;AACvB,CAAC,EALW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAK1B"}