@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,330 @@
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
+ /* eslint-disable no-console */
12
+ /* eslint-disable no-unused-expressions */
13
+ // @ts-nocheck
14
+ var clientsidescripts = require("../../clientsideUI5scripts");
15
+ function isEmptyObjectOrUndefined(obj) {
16
+ return !obj || (Object.keys(obj).length === 0 && obj.constructor === Object);
17
+ }
18
+ //TODO: Consider count stable later
19
+ var COUNT_STABLE = 1;
20
+ var LibScripts = function () {
21
+ this.mockServerActionInBrowser = function () {
22
+ return __awaiter(this, arguments, void 0, function* () {
23
+ const aCustomParams = [];
24
+ let browserFunction = null;
25
+ let mockServerPath = null;
26
+ if (typeof arguments[0] === "function") {
27
+ browserFunction = arguments[0];
28
+ }
29
+ else {
30
+ throw new Error("Make sure first parameter is a client function.");
31
+ }
32
+ if (arguments[1]) {
33
+ try {
34
+ mockServerPath = arguments[1];
35
+ }
36
+ catch (error) {
37
+ throw new Error("No web element found.");
38
+ }
39
+ }
40
+ else {
41
+ throw new Error("Make sure first parameter is an element or a selector.");
42
+ }
43
+ if (arguments.length > 2) {
44
+ for (var i = 2; i < arguments.length; i++) {
45
+ if (arguments[i] !== null && arguments[i] !== undefined) {
46
+ //console.log("Adding extra argument:" + arguments[i]);
47
+ aCustomParams.push(arguments[i]);
48
+ }
49
+ }
50
+ }
51
+ if (browserFunction !== null && browserFunction !== undefined && mockServerPath) {
52
+ var nConvFunction = function (browserFunction, mockServerPath, aCustomParams, callBack) {
53
+ var mockserver = null;
54
+ var userDefFunction = "userDefFunction = " + browserFunction;
55
+ try {
56
+ if (mockServerPath) {
57
+ // eslint-disable-next-line no-undef
58
+ mockserver = sap.ui.requireSync(mockServerPath);
59
+ }
60
+ }
61
+ catch (ex) {
62
+ throw new Error("Conversion to UI5 mockserver was unsuccesful:" + ex);
63
+ }
64
+ try {
65
+ userDefFunction = eval(userDefFunction);
66
+ }
67
+ catch (e) {
68
+ throw new Error("Eval failed:" + e);
69
+ }
70
+ if (aCustomParams && aCustomParams.length) {
71
+ const args = [mockserver].concat(aCustomParams).concat([callBack]);
72
+ return userDefFunction.apply(this, args);
73
+ // Note: here is a difference between 'controlActionInBrowser' and 'mockServerActionInBrowser'
74
+ // return userDefFunction(mockserver, aCustomParams.toString(), callBack);
75
+ }
76
+ return userDefFunction(mockserver, callBack);
77
+ };
78
+ return browser.executeAsync(nConvFunction, browserFunction.toString(), mockServerPath, aCustomParams);
79
+ }
80
+ else {
81
+ throw new Error("Invalid parameters.");
82
+ }
83
+ });
84
+ };
85
+ this.controlActionInBrowser = function () {
86
+ return __awaiter(this, arguments, void 0, function* () {
87
+ const aCustomParams = [];
88
+ let browserFunction = null;
89
+ let webElem = null;
90
+ if (typeof arguments[0] === "function") {
91
+ browserFunction = arguments[0];
92
+ }
93
+ else {
94
+ throw new Error("Make sure you provide a function to be executed in browser");
95
+ }
96
+ if (!arguments[1]) {
97
+ throw new Error("Make sure you provide an element or a selector. Currently is undefined");
98
+ }
99
+ try {
100
+ if (arguments[1].getAttribute) {
101
+ try {
102
+ webElem = arguments[1];
103
+ }
104
+ catch (error) {
105
+ throw new Error("No web element found.");
106
+ }
107
+ }
108
+ else if (arguments[1].elementProperties) {
109
+ const returnAllDomElements = arguments[1].returnAllDomElements;
110
+ webElem = yield this.uiControlExecuteLocator(arguments[1], 0, 30000, undefined, returnAllDomElements);
111
+ }
112
+ else if (arguments[1].selector) {
113
+ const index = arguments[1].index || 0;
114
+ const timeout = arguments[1].timeout || 30000;
115
+ const selector = arguments[1].selector;
116
+ const returnAllDomElements = arguments[1].returnAllDomElements;
117
+ webElem = yield this.uiControlExecuteLocator(selector, index, timeout, undefined, returnAllDomElements);
118
+ }
119
+ else {
120
+ throw new Error("Make sure you provide an element or a selector. Currently is undefined");
121
+ }
122
+ }
123
+ catch (error) {
124
+ throw error;
125
+ }
126
+ if (arguments.length > 2) {
127
+ for (var i = 2; i < arguments.length; i++) {
128
+ if (arguments[i]) {
129
+ aCustomParams.push(arguments[i]);
130
+ }
131
+ }
132
+ }
133
+ if (browserFunction !== null && browserFunction !== undefined &&
134
+ webElem !== null && webElem !== undefined) {
135
+ var nConvFunction = function (browserFunction, webElem, aCustomParams, callBack) {
136
+ var control = null;
137
+ var userDefFunction = "userDefFunction = " + browserFunction;
138
+ try {
139
+ if (webElem) {
140
+ // eslint-disable-next-line no-undef
141
+ control = sap.ui.core.Element.registry.get(webElem.getAttribute("id"));
142
+ }
143
+ }
144
+ catch (ex) {
145
+ throw new Error("Conversion to UI5 control was unsuccesful:" + ex);
146
+ }
147
+ try {
148
+ userDefFunction = eval(userDefFunction);
149
+ }
150
+ catch (e) {
151
+ throw new Error("Eval failed:" + e);
152
+ }
153
+ if (aCustomParams && aCustomParams.length) {
154
+ return userDefFunction(control, aCustomParams.toString(), callBack);
155
+ }
156
+ return userDefFunction(control, callBack);
157
+ };
158
+ return browser.executeAsync(nConvFunction, browserFunction.toString(), webElem, aCustomParams);
159
+ }
160
+ else {
161
+ throw new Error("Invalid parameters.");
162
+ }
163
+ });
164
+ };
165
+ this.waitUI5ToStabilize = function (ui5Selector) {
166
+ return __awaiter(this, void 0, void 0, function* () {
167
+ if (!browser.config.waitForUI5Timeout) {
168
+ browser.config.waitForUI5Timeout = 90000;
169
+ }
170
+ if (!browser.config.waitForUI5PollingInterval) {
171
+ browser.config.waitForUI5PollingInterval = 10;
172
+ }
173
+ try {
174
+ yield browser.waitUntil(() => __awaiter(this, void 0, void 0, function* () {
175
+ return (yield browser.execute(clientsidescripts.loadUI5CoreAndAutowaiter)) === true;
176
+ }), {
177
+ timeout: browser.config.waitForUI5Timeout,
178
+ timeoutMsg: `Timeout of ${browser.config.waitForUI5Timeout / 1000}s reached, UI5 libraries did not load`,
179
+ interval: 10
180
+ });
181
+ var mScriptParams = {};
182
+ mScriptParams.waitForUI5Timeout = browser.config.waitForUI5Timeout;
183
+ mScriptParams.waitForUI5PollingInterval = browser.config.waitForUI5PollingInterval;
184
+ yield browser.waitUntil(() => __awaiter(this, void 0, void 0, function* () {
185
+ return (yield browser.execute(clientsidescripts.loadUI5Page, mScriptParams)) === true;
186
+ }), {
187
+ timeout: browser.config.waitForUI5Timeout,
188
+ timeoutMsg: `Timeout of ${browser.config.waitForUI5Timeout / 1000}s reached, UI5 page did not load`,
189
+ interval: 10
190
+ });
191
+ }
192
+ catch (error) {
193
+ // eslint-disable-next-line no-console
194
+ //console.log(`waitUI5ToStabilize(ui5Selector): Function raised an exception and ignored... Selector: ${util.formatter.stringifyJSON(ui5Selector)} and error: ${error}`);
195
+ }
196
+ });
197
+ };
198
+ this.stableDomElementCount = function (ui5Selector, rootElement, countStable, elmLength, allTries) {
199
+ return __awaiter(this, void 0, void 0, function* () {
200
+ if (countStable && countStable > 0 && allTries && allTries > 0) {
201
+ let aElements = null;
202
+ if (!isEmptyObjectOrUndefined(ui5Selector)) {
203
+ if (ui5Selector && (ui5Selector.elementProperties || ui5Selector.ancestorProperties
204
+ || ui5Selector.descendantProperties || ui5Selector.siblingProperties
205
+ || ui5Selector.parentProperties || ui5Selector.childProperties
206
+ || ui5Selector.prevSiblingProperties || ui5Selector.nextSiblingProperties)) {
207
+ aElements = yield browser.custom$$("ui5All", ui5Selector, rootElement);
208
+ }
209
+ else if (ui5Selector && ui5Selector.controlType) {
210
+ aElements = yield browser.custom$$("ui5Veri5", ui5Selector);
211
+ }
212
+ }
213
+ if (!aElements || aElements.length === 0)
214
+ return null;
215
+ const displayedElements = [];
216
+ for (let i = 0; i < aElements.length; i++) {
217
+ const isDisplayedInPort = yield aElements[i].isDisplayedInViewport();
218
+ if (isDisplayedInPort) {
219
+ displayedElements.push(aElements[i]);
220
+ }
221
+ }
222
+ var newLength = elmLength;
223
+ if (displayedElements.length === newLength) {
224
+ countStable--;
225
+ }
226
+ else {
227
+ newLength = displayedElements.length;
228
+ countStable = COUNT_STABLE;
229
+ }
230
+ allTries--;
231
+ // eslint-disable-next-line no-console
232
+ //console.log("Countstable:" + countStable +" All tries" + allTries +" Stability check, found:" + displayedElements.length + " expected:" + newLength);
233
+ return this.stableDomElementCount(ui5Selector, rootElement, countStable, newLength, allTries);
234
+ }
235
+ });
236
+ };
237
+ this.getDisplayedElements = function (ui5Selector, rootElement, countStable, allTries, returnAllDomElements = false) {
238
+ return __awaiter(this, void 0, void 0, function* () {
239
+ var aElements = null;
240
+ try {
241
+ if (!isEmptyObjectOrUndefined(ui5Selector)) {
242
+ if (ui5Selector && (ui5Selector.elementProperties || ui5Selector.ancestorProperties
243
+ || ui5Selector.descendantProperties || ui5Selector.siblingProperties
244
+ || ui5Selector.parentProperties || ui5Selector.childProperties
245
+ || ui5Selector.prevSiblingProperties || ui5Selector.nextSiblingProperties)) {
246
+ if (!ui5Selector.elementProperties || isEmptyObjectOrUndefined(ui5Selector.elementProperties)) {
247
+ throw new Error(`The selector your provided ${ui5Selector ? JSON.stringify(ui5Selector) : ui5Selector} does not contain elementProperties, please provide a valid selector with elementProperties`);
248
+ }
249
+ aElements = yield browser.custom$$("ui5All", ui5Selector, rootElement);
250
+ }
251
+ else if (ui5Selector && ui5Selector.controlType) {
252
+ aElements = yield browser.custom$$("ui5Veri5", ui5Selector);
253
+ }
254
+ else {
255
+ return null;
256
+ }
257
+ }
258
+ if (aElements && Array.isArray(aElements) && aElements.length > 0) {
259
+ var displayedElements = [];
260
+ for (let i = 0; i < aElements.length; i++) {
261
+ if (returnAllDomElements) {
262
+ displayedElements.push(aElements[i]);
263
+ }
264
+ else {
265
+ const isDisplayed = yield aElements[i].isDisplayed();
266
+ if (isDisplayed) {
267
+ displayedElements.push(aElements[i]);
268
+ }
269
+ }
270
+ }
271
+ if (displayedElements && Array.isArray(displayedElements) && displayedElements.length > 0) {
272
+ yield this.stableDomElementCount(ui5Selector, rootElement, countStable, displayedElements.length, allTries);
273
+ return displayedElements;
274
+ }
275
+ }
276
+ }
277
+ catch (error) {
278
+ // If the element is not there yet will throw an error that node was not present,
279
+ // javascript error: no node html elements found
280
+ // In such cases we have to wait untill it appears until timeout is reached
281
+ // Later we have to investigate on appropriate messaging
282
+ // console.log(`getDisplayedElements(): Function raised exception and is ignored... Selector: ${ui5Selector} and error: ${error}`);
283
+ return null;
284
+ }
285
+ return null;
286
+ });
287
+ };
288
+ this.uiControlExecuteLocator = function (ui5Selector, index, timeout, rootElement, returnAllDomElements = false) {
289
+ return __awaiter(this, void 0, void 0, function* () {
290
+ var elems = null;
291
+ var that = this;
292
+ const countStable = COUNT_STABLE;
293
+ const allTries = browser.config.stableCountTries || 1;
294
+ const finalTimeout = timeout || browser.config.waitforTimeout;
295
+ if (browser.config.useWaitUI5ToStabilize !== false) {
296
+ /*
297
+ * If not used it will not wait for the page to be stabilized before next action
298
+ */
299
+ // console.log("Waiting page to stabilize");
300
+ yield this.waitUI5ToStabilize(ui5Selector);
301
+ // console.log("Page stabilized, continue...");
302
+ }
303
+ // Note: it is possible to use () => {} - arrow function to keep scope:
304
+ // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/Arrow_functions
305
+ yield browser.waitUntil(() => __awaiter(this, void 0, void 0, function* () {
306
+ elems = yield that.getDisplayedElements(ui5Selector, rootElement, countStable, allTries, returnAllDomElements);
307
+ return elems && Array.isArray(elems) && elems.length > 0;
308
+ }), {
309
+ timeout: finalTimeout,
310
+ timeoutMsg: `uiControlExecuteLocator(): No visible elements found with selector: ${util.formatter.stringifyJSON(ui5Selector)} in ${finalTimeout / 1000}s`,
311
+ interval: 50
312
+ });
313
+ if (elems && Array.isArray(elems) && elems.length > 0 &&
314
+ index !== null && index !== undefined && index < elems.length) {
315
+ return elems[index];
316
+ }
317
+ return elems;
318
+ });
319
+ };
320
+ this.loadMockData = function (responsePath, isText) {
321
+ return __awaiter(this, void 0, void 0, function* () {
322
+ return browser.executeAsync(clientsidescripts.loadMockData, {
323
+ responsePath: responsePath,
324
+ isText: isText
325
+ });
326
+ });
327
+ };
328
+ };
329
+ module.exports = new LibScripts();
330
+ //# sourceMappingURL=lib.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lib.js","sourceRoot":"","sources":["../../../../src/scripts/hooks/utils/lib.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,+BAA+B;AAC/B,0CAA0C;AAC1C,cAAc;AACd,IAAI,iBAAiB,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAAC;AAE9D,SAAS,wBAAwB,CAAC,GAAG;IACnC,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,GAAG,CAAC,WAAW,KAAK,MAAM,CAAC,CAAC;AAC/E,CAAC;AAED,mCAAmC;AACnC,IAAI,YAAY,GAAG,CAAC,CAAC;AACrB,IAAI,UAAU,GAAG;IAEf,IAAI,CAAC,yBAAyB,GAAG;;YAC/B,MAAM,aAAa,GAAG,EAAE,CAAC;YACzB,IAAI,eAAe,GAAG,IAAI,CAAC;YAC3B,IAAI,cAAc,GAAG,IAAI,CAAC;YAC1B,IAAI,OAAO,SAAS,CAAC,CAAC,CAAC,KAAK,UAAU,EAAE;gBACtC,eAAe,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;aAChC;iBAAM;gBACL,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;aACpE;YACD,IAAI,SAAS,CAAC,CAAC,CAAC,EAAE;gBAChB,IAAI;oBACF,cAAc,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;iBAC/B;gBAAC,OAAO,KAAK,EAAE;oBACd,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;iBAC1C;aACF;iBAAM;gBACL,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;aAC3E;YACD,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;gBACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBACzC,IAAI,SAAS,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,SAAS,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE;wBACvD,uDAAuD;wBACvD,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;qBAClC;iBACF;aACF;YACD,IAAI,eAAe,KAAK,IAAI,IAAI,eAAe,KAAK,SAAS,IAAI,cAAc,EAAE;gBAC/E,IAAI,aAAa,GAAG,UAAU,eAAe,EAAE,cAAc,EAAE,aAAa,EAAE,QAAQ;oBACpF,IAAI,UAAU,GAAG,IAAI,CAAC;oBACtB,IAAI,eAAe,GAAG,oBAAoB,GAAG,eAAe,CAAC;oBAC7D,IAAI;wBACF,IAAI,cAAc,EAAE;4BAClB,oCAAoC;4BACpC,UAAU,GAAG,GAAG,CAAC,EAAE,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;yBACjD;qBACF;oBAAC,OAAO,EAAE,EAAE;wBACX,MAAM,IAAI,KAAK,CAAC,+CAA+C,GAAG,EAAE,CAAC,CAAC;qBACvE;oBAED,IAAI;wBACF,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC;qBACzC;oBAAC,OAAO,CAAC,EAAE;wBACV,MAAM,IAAI,KAAK,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC;qBACrC;oBACD,IAAI,aAAa,IAAI,aAAa,CAAC,MAAM,EAAE;wBACzC,MAAM,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;wBACnE,OAAO,eAAe,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;wBAEzC,8FAA8F;wBAC9F,0EAA0E;qBAC3E;oBACD,OAAO,eAAe,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;gBAC/C,CAAC,CAAC;gBACF,OAAO,OAAO,CAAC,YAAY,CAAC,aAAa,EAAE,eAAe,CAAC,QAAQ,EAAE,EAAE,cAAc,EAAE,aAAa,CAAC,CAAC;aACvG;iBAAM;gBACL,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;aACxC;QACH,CAAC;KAAA,CAAC;IAEF,IAAI,CAAC,sBAAsB,GAAG;;YAC5B,MAAM,aAAa,GAAG,EAAE,CAAC;YACzB,IAAI,eAAe,GAAG,IAAI,CAAC;YAC3B,IAAI,OAAO,GAAG,IAAI,CAAC;YACnB,IAAI,OAAO,SAAS,CAAC,CAAC,CAAC,KAAK,UAAU,EAAE;gBACtC,eAAe,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;aAChC;iBAAM;gBACL,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;aAC/E;YAED,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;gBACjB,MAAM,IAAI,KAAK,CAAC,wEAAwE,CAAC,CAAC;aAC3F;YAED,IAAI;gBACF,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE;oBAC7B,IAAI;wBACF,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;qBACxB;oBAAC,OAAO,KAAK,EAAE;wBACd,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;qBAC1C;iBACF;qBAAM,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,iBAAiB,EAAE;oBACzC,MAAM,oBAAoB,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC;oBAC/D,OAAO,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,oBAAoB,CAAC,CAAC;iBACvG;qBAAM,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;oBAChC,MAAM,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;oBACtC,MAAM,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,KAAK,CAAC;oBAC9C,MAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;oBACvC,MAAM,oBAAoB,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC;oBAC/D,OAAO,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,oBAAoB,CAAC,CAAC;iBACzG;qBAAM;oBACL,MAAM,IAAI,KAAK,CAAC,wEAAwE,CAAC,CAAC;iBAC3F;aACF;YAAC,OAAO,KAAK,EAAE;gBACd,MAAM,KAAK,CAAC;aACb;YAGD,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;gBACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBACzC,IAAI,SAAS,CAAC,CAAC,CAAC,EAAE;wBAChB,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;qBAClC;iBACF;aACF;YACD,IAAI,eAAe,KAAK,IAAI,IAAI,eAAe,KAAK,SAAS;gBACzD,OAAO,KAAK,IAAI,IAAI,OAAO,KAAK,SAAS,EAAE;gBAC7C,IAAI,aAAa,GAAG,UAAU,eAAe,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ;oBAC7E,IAAI,OAAO,GAAG,IAAI,CAAC;oBACnB,IAAI,eAAe,GAAG,oBAAoB,GAAG,eAAe,CAAC;oBAC7D,IAAI;wBACF,IAAI,OAAO,EAAE;4BACX,oCAAoC;4BACpC,OAAO,GAAG,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;yBACxE;qBACF;oBAAC,OAAO,EAAE,EAAE;wBACX,MAAM,IAAI,KAAK,CAAC,4CAA4C,GAAG,EAAE,CAAC,CAAC;qBACpE;oBAED,IAAI;wBACF,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC;qBACzC;oBAAC,OAAO,CAAC,EAAE;wBACV,MAAM,IAAI,KAAK,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC;qBACrC;oBACD,IAAI,aAAa,IAAI,aAAa,CAAC,MAAM,EAAE;wBACzC,OAAO,eAAe,CAAC,OAAO,EAAE,aAAa,CAAC,QAAQ,EAAE,EAAE,QAAQ,CAAC,CAAC;qBACrE;oBACD,OAAO,eAAe,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;gBAC5C,CAAC,CAAC;gBACF,OAAO,OAAO,CAAC,YAAY,CAAC,aAAa,EAAE,eAAe,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;aAChG;iBAAM;gBACL,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;aACxC;QACH,CAAC;KAAA,CAAC;IAEF,IAAI,CAAC,kBAAkB,GAAG,UAAgB,WAAW;;YACnD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,EAAE;gBACrC,OAAO,CAAC,MAAM,CAAC,iBAAiB,GAAG,KAAK,CAAC;aAC1C;YACD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,yBAAyB,EAAE;gBAC7C,OAAO,CAAC,MAAM,CAAC,yBAAyB,GAAG,EAAE,CAAC;aAC/C;YACD,IAAI;gBACF,MAAM,OAAO,CAAC,SAAS,CAAC,GAAS,EAAE;oBACjC,OAAO,CAAC,MAAM,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,wBAAwB,CAAC,CAAC,KAAK,IAAI,CAAC;gBACtF,CAAC,CAAA,EAAE;oBACD,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,iBAAiB;oBACzC,UAAU,EAAE,cAAc,OAAO,CAAC,MAAM,CAAC,iBAAiB,GAAG,IAAI,uCAAuC;oBACxG,QAAQ,EAAE,EAAE;iBACb,CAAC,CAAC;gBAEH,IAAI,aAAa,GAAG,EAAE,CAAC;gBACvB,aAAa,CAAC,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC;gBACnE,aAAa,CAAC,yBAAyB,GAAG,OAAO,CAAC,MAAM,CAAC,yBAAyB,CAAC;gBACnF,MAAM,OAAO,CAAC,SAAS,CAAC,GAAS,EAAE;oBACjC,OAAO,CAAC,MAAM,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC,KAAK,IAAI,CAAC;gBACxF,CAAC,CAAA,EAAE;oBACD,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,iBAAiB;oBACzC,UAAU,EAAE,cAAc,OAAO,CAAC,MAAM,CAAC,iBAAiB,GAAG,IAAI,kCAAkC;oBACnG,QAAQ,EAAE,EAAE;iBACb,CAAC,CAAC;aACJ;YAAC,OAAO,KAAK,EAAE;gBACd,sCAAsC;gBACtC,yKAAyK;aAC1K;QAEH,CAAC;KAAA,CAAC;IAEF,IAAI,CAAC,qBAAqB,GAAG,UAAgB,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ;;YACrG,IAAI,WAAW,IAAI,WAAW,GAAG,CAAC,IAAI,QAAQ,IAAI,QAAQ,GAAG,CAAC,EAAE;gBAC9D,IAAI,SAAS,GAAG,IAAI,CAAC;gBACrB,IAAI,CAAC,wBAAwB,CAAC,WAAW,CAAC,EAAE;oBAC1C,IAAI,WAAW,IAAI,CAAC,WAAW,CAAC,iBAAiB,IAAI,WAAW,CAAC,kBAAkB;2BAC5E,WAAW,CAAC,oBAAoB,IAAI,WAAW,CAAC,iBAAiB;2BACjE,WAAW,CAAC,gBAAgB,IAAI,WAAW,CAAC,eAAe;2BAC3D,WAAW,CAAC,qBAAqB,IAAI,WAAW,CAAC,qBAAqB,CAAC,EAAE;wBAC9E,SAAS,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,QAAQ,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;qBACxE;yBAAM,IAAI,WAAW,IAAI,WAAW,CAAC,WAAW,EAAE;wBACjD,SAAS,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;qBAC7D;iBACF;gBACD,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAO,IAAI,CAAC;gBACtD,MAAM,iBAAiB,GAAG,EAAE,CAAC;gBAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBACzC,MAAM,iBAAiB,GAAG,MAAM,SAAS,CAAC,CAAC,CAAC,CAAC,qBAAqB,EAAE,CAAC;oBACrE,IAAI,iBAAiB,EAAE;wBACrB,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;qBACtC;iBACF;gBACD,IAAI,SAAS,GAAG,SAAS,CAAC;gBAC1B,IAAI,iBAAiB,CAAC,MAAM,KAAK,SAAS,EAAE;oBAC1C,WAAW,EAAE,CAAC;iBACf;qBAAM;oBACL,SAAS,GAAG,iBAAiB,CAAC,MAAM,CAAC;oBACrC,WAAW,GAAG,YAAY,CAAC;iBAC5B;gBACD,QAAQ,EAAE,CAAC;gBACX,sCAAsC;gBACtC,uJAAuJ;gBACvJ,OAAO,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;aAC/F;QACH,CAAC;KAAA,CAAC;IAEF,IAAI,CAAC,oBAAoB,GAAG,UAAgB,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,oBAAoB,GAAG,KAAK;;YACvH,IAAI,SAAS,GAAG,IAAI,CAAC;YACrB,IAAI;gBACF,IAAI,CAAC,wBAAwB,CAAC,WAAW,CAAC,EAAE;oBAC1C,IAAI,WAAW,IAAI,CAAC,WAAW,CAAC,iBAAiB,IAAI,WAAW,CAAC,kBAAkB;2BAC5E,WAAW,CAAC,oBAAoB,IAAI,WAAW,CAAC,iBAAiB;2BACjE,WAAW,CAAC,gBAAgB,IAAI,WAAW,CAAC,eAAe;2BAC3D,WAAW,CAAC,qBAAqB,IAAI,WAAW,CAAC,qBAAqB,CAAC,EAAE;wBAC9E,IAAI,CAAC,WAAW,CAAC,iBAAiB,IAAI,wBAAwB,CAAC,WAAW,CAAC,iBAAiB,CAAC,EAAE;4BAC7F,MAAM,IAAI,KAAK,CAAC,8BAA8B,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,6FAA6F,CAAC,CAAC;yBACrM;wBACD,SAAS,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,QAAQ,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;qBACxE;yBAAM,IAAI,WAAW,IAAI,WAAW,CAAC,WAAW,EAAC;wBAChD,SAAS,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;qBAC7D;yBAAM;wBACL,OAAO,IAAI,CAAC;qBACb;iBACF;gBACD,IAAI,SAAS,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;oBACjE,IAAI,iBAAiB,GAAG,EAAE,CAAC;oBAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;wBACzC,IAAI,oBAAoB,EAAE;4BACxB,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;yBACtC;6BAAM;4BACL,MAAM,WAAW,GAAG,MAAM,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;4BACrD,IAAI,WAAW,EAAE;gCACf,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;6BACtC;yBACF;qBACF;oBAED,IAAI,iBAAiB,IAAI,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE;wBACzF,MAAM,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,iBAAiB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;wBAC5G,OAAO,iBAAiB,CAAC;qBAC1B;iBACF;aACF;YAAC,OAAO,KAAK,EAAE;gBACd,iFAAiF;gBACjF,gDAAgD;gBAChD,2EAA2E;gBAC3E,wDAAwD;gBACxD,mIAAmI;gBACnI,OAAO,IAAI,CAAC;aACb;YACD,OAAO,IAAI,CAAC;QACd,CAAC;KAAA,CAAC;IAEF,IAAI,CAAC,uBAAuB,GAAG,UAAgB,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,oBAAoB,GAAG,KAAK;;YACnH,IAAI,KAAK,GAAG,IAAI,CAAC;YACjB,IAAI,IAAI,GAAG,IAAI,CAAC;YAChB,MAAM,WAAW,GAAG,YAAY,CAAC;YACjC,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,gBAAgB,IAAI,CAAC,CAAC;YACtD,MAAM,YAAY,GAAG,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC;YAE9D,IAAI,OAAO,CAAC,MAAM,CAAC,qBAAqB,KAAK,KAAK,EAAE;gBAClD;;kBAEE;gBACF,4CAA4C;gBAC5C,MAAM,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;gBAC3C,+CAA+C;aAChD;YAED,uEAAuE;YACvE,8FAA8F;YAC9F,MAAM,OAAO,CAAC,SAAS,CAAC,GAAS,EAAE;gBACjC,KAAK,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,oBAAoB,CAAC,CAAC;gBAC/G,OAAO,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;YAE3D,CAAC,CAAA,EAAE;gBACD,OAAO,EAAE,YAAY;gBACrB,UAAU,EAAE,uEAAuE,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,WAAW,CAAC,OAAO,YAAY,GAAG,IAAI,GAAG;gBACzJ,QAAQ,EAAE,EAAE;aACb,CAAC,CAAC;YACH,IAAI,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;gBACjD,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE;gBACjE,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC;aACrB;YACD,OAAO,KAAK,CAAC;QACf,CAAC;KAAA,CAAC;IAEF,IAAI,CAAC,YAAY,GAAG,UAAgB,YAAY,EAAE,MAAM;;YACtD,OAAO,OAAO,CAAC,YAAY,CAAC,iBAAiB,CAAC,YAAY,EAAE;gBAC1D,YAAY,EAAE,YAAY;gBAC1B,MAAM,EAAE,MAAM;aACf,CAAC,CAAC;QACL,CAAC;KAAA,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,OAAO,GAAG,IAAI,UAAU,EAAE,CAAC"}
@@ -0,0 +1,10 @@
1
+ export function ui5ControlLocator(ui5Selector: any, index: number | undefined, timeout: number | undefined, rootElement: any, returnAllDomElements?: boolean): Promise<any>;
2
+ export function ui5ControlsLocators(ui5Selector: any, timeout: number | undefined, rootElement: any): Promise<any>;
3
+ export function getUI5Property(propName: any, selectorOrElement: any): Promise<any>;
4
+ export function getUI5Aggregation(propName: any, selectorOrElement: any): Promise<any>;
5
+ export function getUI5Association(propName: any, selectorOrElement: any): Promise<any>;
6
+ export function getBindingContextPath(selectorOrElement: any): Promise<any>;
7
+ export function getBindingProperty(propName: any, selectorOrElement: any): Promise<any>;
8
+ export function getAllUI5Properties(selectorOrElement: any): Promise<any>;
9
+ export function getAllUI5Aggregations(selectorOrElement: any): Promise<any>;
10
+ export function getAllUI5Associations(selectorOrElement: any): Promise<any>;
@@ -0,0 +1,216 @@
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
+ const lib = require("./lib");
12
+ module.exports = {
13
+ ui5ControlLocator: function (ui5Selector, index = 0, timeout = 60000, rootElement, returnAllDomElements = false) {
14
+ return __awaiter(this, void 0, void 0, function* () {
15
+ return lib.uiControlExecuteLocator(ui5Selector, index, timeout, rootElement, returnAllDomElements);
16
+ });
17
+ },
18
+ ui5ControlsLocators: function (ui5Selector, timeout = 60000, rootElement) {
19
+ return __awaiter(this, void 0, void 0, function* () {
20
+ return lib.uiControlExecuteLocator(ui5Selector, null, timeout, rootElement);
21
+ });
22
+ },
23
+ getUI5Property: function (propName, selectorOrElement) {
24
+ return __awaiter(this, void 0, void 0, function* () {
25
+ return lib.controlActionInBrowser(function (control, propName, done) {
26
+ let val = null;
27
+ try {
28
+ val = control.getProperty(propName);
29
+ }
30
+ catch (error) {
31
+ // exception ignore it for now, need to check further
32
+ }
33
+ // Need to stringify array values
34
+ val = val && val.hasOwnProperty("length") ? val.toString() : val; // need to stringify arrays and objects
35
+ done(val);
36
+ }, selectorOrElement, propName);
37
+ });
38
+ },
39
+ getUI5Aggregation: function (propName, selectorOrElement) {
40
+ return __awaiter(this, void 0, void 0, function* () {
41
+ return lib.controlActionInBrowser(function (control, propName, done) {
42
+ let value = null;
43
+ try {
44
+ value = control.getAggregation(propName);
45
+ }
46
+ catch (error) {
47
+ // exception ignore it for now, need to check further
48
+ }
49
+ done(value);
50
+ }, selectorOrElement, propName);
51
+ });
52
+ },
53
+ getUI5Association: function (propName, selectorOrElement) {
54
+ return __awaiter(this, void 0, void 0, function* () {
55
+ return lib.controlActionInBrowser(function (control, propName, done) {
56
+ let value = null;
57
+ try {
58
+ value = control.getAssociation(propName);
59
+ }
60
+ catch (error) {
61
+ // exception ignore it for now, need to check further
62
+ }
63
+ done(value);
64
+ }, selectorOrElement, propName);
65
+ });
66
+ },
67
+ getBindingContextPath: function (selectorOrElement) {
68
+ return __awaiter(this, void 0, void 0, function* () {
69
+ return lib.controlActionInBrowser(function (control, done) {
70
+ let bindingContextPath = null;
71
+ let bindingContexts = jQuery.extend({}, control.oPropagatedProperties && control.oPropagatedProperties.oBindingContexts, control.oBindingContexts, control.mElementBindingContexts);
72
+ // reduce object to non-empty contexts
73
+ bindingContexts = Object.keys(bindingContexts).reduce(function (finalContexts, key) {
74
+ if (bindingContexts[key]) {
75
+ finalContexts[key] = bindingContexts[key];
76
+ }
77
+ return finalContexts;
78
+ }, {});
79
+ if (bindingContexts && Object.keys(bindingContexts).length > 0) {
80
+ const aKeys = Object.keys(bindingContexts);
81
+ for (let index = 0; index < aKeys.length; index++) {
82
+ const oBindingContext = bindingContexts[aKeys[index]];
83
+ if (oBindingContext &&
84
+ oBindingContext.getPath &&
85
+ oBindingContext.getPath())
86
+ bindingContextPath = oBindingContext.getPath();
87
+ }
88
+ }
89
+ done(bindingContextPath);
90
+ }, selectorOrElement);
91
+ });
92
+ },
93
+ getBindingProperty: function (propName, selectorOrElement) {
94
+ return __awaiter(this, void 0, void 0, function* () {
95
+ return lib.controlActionInBrowser(function (control, propertyName, done) {
96
+ let aBindingInfos = [];
97
+ function retrieveCompositeBindings(oBinding, aBindingInfos) {
98
+ if (!oBinding)
99
+ return;
100
+ if (oBinding.getBindings && oBinding.getBindings() && aBindingInfos) {
101
+ const aBindings = oBinding.getBindings();
102
+ for (let i = 0; i < aBindings.length; i++) {
103
+ for (let j = 0; j < aBindingInfos.length; j++) {
104
+ try {
105
+ if (!aBindings[i].getBindings &&
106
+ aBindingInfos[j].path === aBindings[i].getPath() &&
107
+ aBindings[i].getValue) {
108
+ aBindingInfos[j].value = aBindings[i].getValue();
109
+ }
110
+ else if (aBindings[i].getBindings) {
111
+ retrieveCompositeBindings(aBindings[i], aBindingInfos);
112
+ }
113
+ // eslint-disable-next-line no-empty
114
+ }
115
+ catch (error) {
116
+ }
117
+ }
118
+ }
119
+ }
120
+ else if (!oBinding.getBindings && aBindingInfos) {
121
+ for (let j = 0; j < aBindingInfos.length; j++) {
122
+ try {
123
+ if (aBindingInfos[j].path === oBinding.getPath() &&
124
+ oBinding.getValue) {
125
+ aBindingInfos[j].value = oBinding.getValue();
126
+ }
127
+ // eslint-disable-next-line no-empty
128
+ }
129
+ catch (error) {
130
+ }
131
+ }
132
+ }
133
+ }
134
+ function retrieverBindingPaths(oControl, sPropKey) {
135
+ const aBindingInfos = [];
136
+ const aBindingInfoParts = oControl.getBindingInfo(sPropKey).parts;
137
+ try {
138
+ if (aBindingInfoParts && aBindingInfoParts.length > 0) {
139
+ for (let i = 0; i < aBindingInfoParts.length; i++) {
140
+ let sModel = "";
141
+ if (!aBindingInfoParts[i].path)
142
+ continue;
143
+ if (aBindingInfoParts[i].model)
144
+ sModel = aBindingInfoParts[i].model;
145
+ aBindingInfos.push({
146
+ model: sModel,
147
+ path: aBindingInfoParts[i].path,
148
+ value: ""
149
+ });
150
+ }
151
+ }
152
+ else {
153
+ const sBindingDataStr = oControl.getBindingInfo(sPropKey).path;
154
+ const sBindingDataModelStr = oControl.getBindingInfo(sPropKey).model;
155
+ if (sBindingDataStr) {
156
+ aBindingInfos.push({
157
+ model: sBindingDataModelStr,
158
+ path: sBindingDataStr,
159
+ value: ""
160
+ });
161
+ }
162
+ }
163
+ // Get values
164
+ if (oControl.getBinding && oControl.getBinding(sPropKey)) {
165
+ const oBinding = oControl.getBinding(sPropKey);
166
+ retrieveCompositeBindings(oBinding, aBindingInfos);
167
+ }
168
+ }
169
+ catch (error) {
170
+ //Continue
171
+ }
172
+ return aBindingInfos;
173
+ }
174
+ aBindingInfos = retrieverBindingPaths(control, propertyName);
175
+ done(aBindingInfos);
176
+ }, selectorOrElement, propName);
177
+ });
178
+ },
179
+ getAllUI5Properties: function (selectorOrElement) {
180
+ return __awaiter(this, void 0, void 0, function* () {
181
+ return lib.controlActionInBrowser(function (control, done) {
182
+ let allProps = null;
183
+ if (control.getMetadata()) {
184
+ const controlMetadata = control.getMetadata();
185
+ allProps = Object.keys(controlMetadata.getAllProperties());
186
+ }
187
+ done(allProps);
188
+ }, selectorOrElement);
189
+ });
190
+ },
191
+ getAllUI5Aggregations: function (selectorOrElement) {
192
+ return __awaiter(this, void 0, void 0, function* () {
193
+ return lib.controlActionInBrowser(function (control, done) {
194
+ let allProps = null;
195
+ if (control.getMetadata()) {
196
+ const controlMetadata = control.getMetadata();
197
+ allProps = Object.keys(controlMetadata.getAllAggregations());
198
+ }
199
+ done(allProps);
200
+ }, selectorOrElement);
201
+ });
202
+ },
203
+ getAllUI5Associations: function (selectorOrElement) {
204
+ return __awaiter(this, void 0, void 0, function* () {
205
+ return lib.controlActionInBrowser(function (control, done) {
206
+ let allProps = null;
207
+ if (control.getMetadata()) {
208
+ const controlMetadata = control.getMetadata();
209
+ allProps = Object.keys(controlMetadata.getAllAssociations());
210
+ }
211
+ done(allProps);
212
+ }, selectorOrElement);
213
+ });
214
+ }
215
+ };
216
+ //# sourceMappingURL=locatorCommands.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"locatorCommands.js","sourceRoot":"","sources":["../../../../src/scripts/hooks/utils/locatorCommands.js"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;;;;;;AACb,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAE7B,MAAM,CAAC,OAAO,GAAG;IACf,iBAAiB,EAAE,UAAgB,WAAW,EAAE,KAAK,GAAG,CAAC,EAAE,OAAO,GAAG,KAAK,EAAE,WAAW,EAAE,oBAAoB,GAAG,KAAK;;YACnH,OAAO,GAAG,CAAC,uBAAuB,CAAC,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,oBAAoB,CAAC,CAAC;QACrG,CAAC;KAAA;IAED,mBAAmB,EAAE,UAAgB,WAAW,EAAE,OAAO,GAAG,KAAK,EAAE,WAAW;;YAC5E,OAAO,GAAG,CAAC,uBAAuB,CAAC,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;QAC9E,CAAC;KAAA;IAED,cAAc,EAAE,UAAgB,QAAQ,EAAE,iBAAiB;;YACzD,OAAO,GAAG,CAAC,sBAAsB,CAAC,UAAU,OAAO,EAAE,QAAQ,EAAE,IAAI;gBACjE,IAAI,GAAG,GAAG,IAAI,CAAC;gBACf,IAAI;oBACF,GAAG,GAAG,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;iBACrC;gBAAC,OAAO,KAAK,EAAE;oBACd,qDAAqD;iBACtD;gBACD,iCAAiC;gBACjC,GAAG,GAAG,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,uCAAuC;gBACzG,IAAI,CAAC,GAAG,CAAC,CAAC;YACZ,CAAC,EAAE,iBAAiB,EAAE,QAAQ,CAAC,CAAC;QAClC,CAAC;KAAA;IAED,iBAAiB,EAAE,UAAgB,QAAQ,EAAE,iBAAiB;;YAC5D,OAAO,GAAG,CAAC,sBAAsB,CAAC,UAAU,OAAO,EAAE,QAAQ,EAAE,IAAI;gBACjE,IAAI,KAAK,GAAG,IAAI,CAAC;gBACjB,IAAI;oBACF,KAAK,GAAG,OAAO,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;iBAC1C;gBAAC,OAAO,KAAK,EAAE;oBACd,qDAAqD;iBACtD;gBACD,IAAI,CAAC,KAAK,CAAC,CAAC;YACd,CAAC,EAAE,iBAAiB,EAAE,QAAQ,CAAC,CAAC;QAClC,CAAC;KAAA;IAED,iBAAiB,EAAE,UAAgB,QAAQ,EAAE,iBAAiB;;YAC5D,OAAO,GAAG,CAAC,sBAAsB,CAAC,UAAU,OAAO,EAAE,QAAQ,EAAE,IAAI;gBACjE,IAAI,KAAK,GAAG,IAAI,CAAC;gBACjB,IAAI;oBACF,KAAK,GAAG,OAAO,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;iBAC1C;gBAAC,OAAO,KAAK,EAAE;oBACd,qDAAqD;iBACtD;gBACD,IAAI,CAAC,KAAK,CAAC,CAAC;YACd,CAAC,EAAE,iBAAiB,EAAE,QAAQ,CAAC,CAAC;QAClC,CAAC;KAAA;IAED,qBAAqB,EAAE,UAAgB,iBAAiB;;YACtD,OAAO,GAAG,CAAC,sBAAsB,CAAC,UAAU,OAAO,EAAE,IAAI;gBACvD,IAAI,kBAAkB,GAAG,IAAI,CAAC;gBAC9B,IAAI,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EACpC,OAAO,CAAC,qBAAqB,IAAI,OAAO,CAAC,qBAAqB,CAAC,gBAAgB,EAC/E,OAAO,CAAC,gBAAgB,EACxB,OAAO,CAAC,uBAAuB,CAChC,CAAC;gBACF,sCAAsC;gBACtC,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,UAAU,aAAa,EAAE,GAAG;oBAChF,IAAI,eAAe,CAAC,GAAG,CAAC,EAAE;wBACxB,aAAa,CAAC,GAAG,CAAC,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;qBAC3C;oBACD,OAAO,aAAa,CAAC;gBACvB,CAAC,EAAE,EAAE,CAAC,CAAC;gBAEP,IAAI,eAAe,IAAI,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;oBAC9D,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;oBAC3C,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;wBACjD,MAAM,eAAe,GAAG,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;wBACtD,IAAI,eAAe;4BACf,eAAe,CAAC,OAAO;4BACvB,eAAe,CAAC,OAAO,EAAE;4BAC3B,kBAAkB,GAAG,eAAe,CAAC,OAAO,EAAE,CAAC;qBAClD;iBACF;gBACD,IAAI,CAAC,kBAAkB,CAAC,CAAC;YAC3B,CAAC,EAAE,iBAAiB,CAAC,CAAC;QACxB,CAAC;KAAA;IAED,kBAAkB,EAAE,UAAgB,QAAQ,EAAE,iBAAiB;;YAC7D,OAAO,GAAG,CAAC,sBAAsB,CAAC,UAAU,OAAO,EAAE,YAAY,EAAE,IAAI;gBACrE,IAAI,aAAa,GAAG,EAAE,CAAC;gBACvB,SAAS,yBAAyB,CAAC,QAAQ,EAAE,aAAa;oBACxD,IAAI,CAAC,QAAQ;wBAAE,OAAO;oBACtB,IAAI,QAAQ,CAAC,WAAW,IAAI,QAAQ,CAAC,WAAW,EAAE,IAAI,aAAa,EAAE;wBACnE,MAAM,SAAS,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;wBACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;4BACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gCAC7C,IAAI;oCACF,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW;wCACzB,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE;wCAChD,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;wCACzB,aAAa,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;qCAClD;yCAAM,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;wCACnC,yBAAyB,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC;qCACxD;oCACD,oCAAoC;iCACrC;gCAAC,OAAO,KAAK,EAAE;iCACf;6BACF;yBACF;qBACF;yBAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,IAAI,aAAa,EAAE;wBACjD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;4BAC7C,IAAI;gCACF,IAAI,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,OAAO,EAAE;oCAC5C,QAAQ,CAAC,QAAQ,EAAE;oCACrB,aAAa,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC;iCAC9C;gCACD,oCAAoC;6BACrC;4BAAC,OAAO,KAAK,EAAE;6BACf;yBACF;qBACF;gBACH,CAAC;gBAED,SAAS,qBAAqB,CAAC,QAAQ,EAAE,QAAQ;oBAC/C,MAAM,aAAa,GAAG,EAAE,CAAC;oBACzB,MAAM,iBAAiB,GAAG,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC;oBAClE,IAAI;wBACF,IAAI,iBAAiB,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE;4BACrD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,iBAAiB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gCACjD,IAAI,MAAM,GAAG,EAAE,CAAC;gCAChB,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,IAAI;oCAAE,SAAS;gCACzC,IAAI,iBAAiB,CAAC,CAAC,CAAC,CAAC,KAAK;oCAAE,MAAM,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;gCACpE,aAAa,CAAC,IAAI,CAAC;oCACjB,KAAK,EAAE,MAAM;oCACb,IAAI,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,IAAI;oCAC/B,KAAK,EAAE,EAAE;iCACV,CAAC,CAAC;6BACJ;yBACF;6BAAM;4BACL,MAAM,eAAe,GAAG,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC;4BAC/D,MAAM,oBAAoB,GAAG,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC;4BACrE,IAAI,eAAe,EAAE;gCACnB,aAAa,CAAC,IAAI,CAAC;oCACjB,KAAK,EAAE,oBAAoB;oCAC3B,IAAI,EAAE,eAAe;oCACrB,KAAK,EAAE,EAAE;iCACV,CAAC,CAAC;6BACJ;yBACF;wBACD,aAAa;wBACb,IAAI,QAAQ,CAAC,UAAU,IAAI,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;4BACxD,MAAM,QAAQ,GAAG,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;4BAC/C,yBAAyB,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;yBACpD;qBACF;oBAAC,OAAO,KAAK,EAAE;wBACd,UAAU;qBACX;oBACD,OAAO,aAAa,CAAC;gBACvB,CAAC;gBACD,aAAa,GAAG,qBAAqB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;gBAC7D,IAAI,CAAC,aAAa,CAAC,CAAC;YACtB,CAAC,EAAE,iBAAiB,EAAE,QAAQ,CAAC,CAAC;QAClC,CAAC;KAAA;IAED,mBAAmB,EAAE,UAAgB,iBAAiB;;YACpD,OAAO,GAAG,CAAC,sBAAsB,CAAC,UAAU,OAAO,EAAE,IAAI;gBACvD,IAAI,QAAQ,GAAG,IAAI,CAAC;gBACpB,IAAI,OAAO,CAAC,WAAW,EAAE,EAAE;oBACzB,MAAM,eAAe,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;oBAC9C,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,gBAAgB,EAAE,CAAC,CAAC;iBAC5D;gBACD,IAAI,CAAC,QAAQ,CAAC,CAAC;YACjB,CAAC,EAAE,iBAAiB,CAAC,CAAC;QACxB,CAAC;KAAA;IAED,qBAAqB,EAAE,UAAgB,iBAAiB;;YACtD,OAAO,GAAG,CAAC,sBAAsB,CAAC,UAAU,OAAO,EAAE,IAAI;gBACvD,IAAI,QAAQ,GAAG,IAAI,CAAC;gBACpB,IAAI,OAAO,CAAC,WAAW,EAAE,EAAE;oBACzB,MAAM,eAAe,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;oBAC9C,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,kBAAkB,EAAE,CAAC,CAAC;iBAC9D;gBACD,IAAI,CAAC,QAAQ,CAAC,CAAC;YACjB,CAAC,EAAE,iBAAiB,CAAC,CAAC;QACxB,CAAC;KAAA;IAED,qBAAqB,EAAE,UAAgB,iBAAiB;;YACtD,OAAO,GAAG,CAAC,sBAAsB,CAAC,UAAU,OAAO,EAAE,IAAI;gBACvD,IAAI,QAAQ,GAAG,IAAI,CAAC;gBACpB,IAAI,OAAO,CAAC,WAAW,EAAE,EAAE;oBACzB,MAAM,eAAe,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;oBAC9C,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,kBAAkB,EAAE,CAAC,CAAC;iBAC9D;gBACD,IAAI,CAAC,QAAQ,CAAC,CAAC;YACjB,CAAC,EAAE,iBAAiB,CAAC,CAAC;QACxB,CAAC;KAAA;CACF,CAAC"}
@@ -0,0 +1 @@
1
+ export function ui5All(ui5Selector: any, index: any, opt_parentElement: any): any[];