@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,60 @@
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
+ function CustomAuthenticator() {
12
+ return __awaiter(this, void 0, void 0, function* () {
13
+ const username = browser.config.params.auth.username;
14
+ if (!username) {
15
+ throw new Error("Please provide a 'username' in the config.");
16
+ }
17
+ const password = browser.config.params.auth.password;
18
+ if (!password) {
19
+ throw new Error("Please provide a 'password' in the config.");
20
+ }
21
+ const usernameFieldSelector = browser.config.params.auth.usernameFieldSelector;
22
+ if (!usernameFieldSelector) {
23
+ throw new Error("Please provide a 'usernameFieldSelector' in the config.");
24
+ }
25
+ const passwordFieldSelector = browser.config.params.auth.passwordFieldSelector;
26
+ if (!passwordFieldSelector) {
27
+ throw new Error("Please provide a 'passwordFieldSelector' in the config.");
28
+ }
29
+ const logonButtonSelector = browser.config.params.auth.logonButtonSelector;
30
+ if (!logonButtonSelector) {
31
+ throw new Error("Please provide a 'logonButtonSelector' in the config.");
32
+ }
33
+ const url = browser.config.baseUrl;
34
+ if (!url) {
35
+ throw new Error("Please provide a 'baseUrl'.");
36
+ }
37
+ let userNameField = null;
38
+ let passwordField = null;
39
+ let logonField = null;
40
+ yield browser.url(url);
41
+ yield browser.waitUntil(function () {
42
+ return __awaiter(this, void 0, void 0, function* () {
43
+ userNameField = yield $(usernameFieldSelector);
44
+ passwordField = yield $(passwordFieldSelector);
45
+ logonField = yield $(logonButtonSelector);
46
+ return userNameField.isDisplayedInViewport() &&
47
+ passwordField.isDisplayedInViewport() &&
48
+ logonField.isDisplayedInViewport();
49
+ });
50
+ }, {
51
+ timeout: 60000,
52
+ timeoutMsg: "Expected user name field to be present after 60s"
53
+ });
54
+ yield userNameField.setValue(username);
55
+ yield passwordField.setValue(password);
56
+ yield logonField.click();
57
+ });
58
+ }
59
+ module.exports = CustomAuthenticator;
60
+ //# sourceMappingURL=customAuthenticator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"customAuthenticator.js","sourceRoot":"","sources":["../../../src/reuse/authenticator/customAuthenticator.js"],"names":[],"mappings":";;;;;;;;;;AAAA,SAAe,mBAAmB;;QAEhC,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;QACrD,IAAI,CAAC,QAAQ,EAAE;YACb,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;SAC/D;QACD,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;QACrD,IAAI,CAAC,QAAQ,EAAE;YACb,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;SAC/D;QACD,MAAM,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC;QAC/E,IAAI,CAAC,qBAAqB,EAAE;YAC1B,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;SAC5E;QACD,MAAM,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC;QAC/E,IAAI,CAAC,qBAAqB,EAAE;YAC1B,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;SAC5E;QACD,MAAM,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC;QAC3E,IAAI,CAAC,mBAAmB,EAAE;YACxB,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;SAC1E;QAED,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC;QACnC,IAAI,CAAC,GAAG,EAAE;YACR,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;SAChD;QAED,IAAI,aAAa,GAAG,IAAI,CAAC;QACzB,IAAI,aAAa,GAAG,IAAI,CAAC;QACzB,IAAI,UAAU,GAAG,IAAI,CAAC;QAEtB,MAAM,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACvB,MAAM,OAAO,CAAC,SAAS,CAAC;;gBACtB,aAAa,GAAG,MAAM,CAAC,CAAC,qBAAqB,CAAC,CAAC;gBAC/C,aAAa,GAAG,MAAM,CAAC,CAAC,qBAAqB,CAAC,CAAC;gBAC/C,UAAU,GAAG,MAAM,CAAC,CAAC,mBAAmB,CAAC,CAAC;gBAC1C,OAAO,aAAa,CAAC,qBAAqB,EAAE;oBAC1C,aAAa,CAAC,qBAAqB,EAAE;oBACrC,UAAU,CAAC,qBAAqB,EAAE,CAAC;YACvC,CAAC;SAAA,EAAE;YACD,OAAO,EAAE,KAAK;YACd,UAAU,EAAE,kDAAkD;SAC/D,CAAC,CAAC;QAEH,MAAM,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACvC,MAAM,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACvC,MAAM,UAAU,CAAC,KAAK,EAAE,CAAC;IAC3B,CAAC;CAAA;AAED,MAAM,CAAC,OAAO,GAAG,mBAAmB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export = FormAuthenticator;
2
+ declare function FormAuthenticator(): Promise<void>;
@@ -0,0 +1,57 @@
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-return-await */
12
+ const authConfig = require("./authConfig");
13
+ function FormAuthenticator() {
14
+ return __awaiter(this, void 0, void 0, function* () {
15
+ const username = browser.config.params.auth.username;
16
+ if (!username) {
17
+ throw new Error("Please provide a 'username' in the config.");
18
+ }
19
+ const password = browser.config.params.auth.password;
20
+ if (!password) {
21
+ throw new Error("Please provide a 'password' in the config.");
22
+ }
23
+ const formType = browser.config.params.auth.formType;
24
+ if (!authConfig[formType]) {
25
+ throw new Error("Please provide a valid 'formType' in the config.");
26
+ }
27
+ const usernameFieldSelector = authConfig[browser.config.params.auth.formType].usernameFieldSelector;
28
+ const passwordFieldSelector = authConfig[browser.config.params.auth.formType].passwordFieldSelector;
29
+ const logonButtonSelector = authConfig[browser.config.params.auth.formType].logonButtonSelector;
30
+ const url = browser.config.baseUrl;
31
+ if (!url) {
32
+ throw new Error("Please provide a 'baseUrl' in the config.");
33
+ }
34
+ let userNameField = null;
35
+ let passwordField = null;
36
+ let logonField = null;
37
+ yield browser.url(url);
38
+ yield browser.waitUntil(function () {
39
+ return __awaiter(this, void 0, void 0, function* () {
40
+ userNameField = yield $(usernameFieldSelector);
41
+ passwordField = yield $(passwordFieldSelector);
42
+ logonField = yield $(logonButtonSelector);
43
+ return (yield userNameField.isDisplayedInViewport()) &&
44
+ (yield passwordField.isDisplayedInViewport()) &&
45
+ (yield logonField.isDisplayedInViewport());
46
+ });
47
+ }, {
48
+ timeout: 60000,
49
+ timeoutMsg: "Expected user name field to be present after 60s"
50
+ });
51
+ yield userNameField.setValue(username);
52
+ yield passwordField.setValue(password);
53
+ yield logonField.click();
54
+ });
55
+ }
56
+ module.exports = FormAuthenticator;
57
+ //# sourceMappingURL=formAuthenticator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formAuthenticator.js","sourceRoot":"","sources":["../../../src/reuse/authenticator/formAuthenticator.js"],"names":[],"mappings":";;;;;;;;;;AAAA,oCAAoC;AACpC,MAAM,UAAU,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;AAE3C,SAAe,iBAAiB;;QAE9B,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;QACrD,IAAI,CAAC,QAAQ,EAAE;YACb,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;SAC/D;QACD,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;QACrD,IAAI,CAAC,QAAQ,EAAE;YACb,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;SAC/D;QACD,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;QACrD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;YACzB,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;SACrE;QAED,MAAM,qBAAqB,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,qBAAqB,CAAC;QACpG,MAAM,qBAAqB,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,qBAAqB,CAAC;QACpG,MAAM,mBAAmB,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,mBAAmB,CAAC;QAEhG,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC;QACnC,IAAI,CAAC,GAAG,EAAE;YACR,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;SAC9D;QAED,IAAI,aAAa,GAAG,IAAI,CAAC;QACzB,IAAI,aAAa,GAAG,IAAI,CAAC;QACzB,IAAI,UAAU,GAAG,IAAI,CAAC;QAEtB,MAAM,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACvB,MAAM,OAAO,CAAC,SAAS,CAAC;;gBACtB,aAAa,GAAG,MAAM,CAAC,CAAC,qBAAqB,CAAC,CAAC;gBAC/C,aAAa,GAAG,MAAM,CAAC,CAAC,qBAAqB,CAAC,CAAC;gBAC/C,UAAU,GAAG,MAAM,CAAC,CAAC,mBAAmB,CAAC,CAAC;gBAC1C,OAAO,CAAA,MAAM,aAAa,CAAC,qBAAqB,EAAE;qBAChD,MAAM,aAAa,CAAC,qBAAqB,EAAE,CAAA;qBAC3C,MAAM,UAAU,CAAC,qBAAqB,EAAE,CAAA,CAAC;YAC7C,CAAC;SAAA,EAAE;YACD,OAAO,EAAE,KAAK;YACd,UAAU,EAAE,kDAAkD;SAC/D,CAAC,CAAC;QAEH,MAAM,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACvC,MAAM,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACvC,MAAM,UAAU,CAAC,KAAK,EAAE,CAAC;IAC3B,CAAC;CAAA;AACD,MAAM,CAAC,OAAO,GAAG,iBAAiB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export = PlainAuthenticator;
2
+ declare function PlainAuthenticator(): Promise<void>;
@@ -0,0 +1,20 @@
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
+ function PlainAuthenticator() {
12
+ return __awaiter(this, void 0, void 0, function* () {
13
+ if (browser.config.baseUrl) {
14
+ const url = browser.config.baseUrl;
15
+ yield browser.navigateTo(url);
16
+ }
17
+ });
18
+ }
19
+ module.exports = PlainAuthenticator;
20
+ //# sourceMappingURL=plainAuthenticator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plainAuthenticator.js","sourceRoot":"","sources":["../../../src/reuse/authenticator/plainAuthenticator.js"],"names":[],"mappings":";;;;;;;;;;AAAA,SAAe,kBAAkB;;QAC/B,IAAI,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE;YAC1B,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC;YACnC,MAAM,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;SAC/B;IACH,CAAC;CAAA;AACD,MAAM,CAAC,OAAO,GAAG,kBAAkB,CAAC"}
@@ -0,0 +1,16 @@
1
+ {
2
+ "fioriForm": {
3
+ "formId": "#LOGIN_FORM",
4
+ "usernameFieldSelector": "#USERNAME_BLOCK input",
5
+ "passwordFieldSelector": "#PASSWORD_BLOCK input",
6
+ "logonButtonSelector": "#LOGIN_LINK",
7
+ "messageSelector": ".loginMessage"
8
+ },
9
+ "sapCloudForm": {
10
+ "formId": "#logOnForm",
11
+ "usernameFieldSelector": "#j_username",
12
+ "passwordFieldSelector": "#j_password",
13
+ "logonButtonSelector": "#logOnFormSubmit",
14
+ "messageSelector": ".fn-message-strip__text"
15
+ }
16
+ }
@@ -0,0 +1 @@
1
+ export const installInBrowser: string;
@@ -0,0 +1,388 @@
1
+ "use strict";
2
+ /* eslint-disable no-undef */
3
+ var functions = {};
4
+ functions.execQUnits = function (mScriptParams, done) {
5
+ if (QUnit) {
6
+ QUnit.config.current = true;
7
+ QUnit.start();
8
+ QUnit.done(function (details) {
9
+ const msg = "Total: " + details.total + "," + " Failed: " + details.failed + "," + " Passed: " + details.passed + "," + " Runtime: " + details.runtime;
10
+ console.log(msg);
11
+ if (details.failed > 0) {
12
+ done(null);
13
+ }
14
+ done(msg);
15
+ });
16
+ }
17
+ };
18
+ functions.loadMockData = function (mScriptParams, done) {
19
+ if (!mScriptParams.responsePath)
20
+ throw new Error("Please give a valid file path");
21
+ try {
22
+ var oData = null;
23
+ var isText = mScriptParams.isText;
24
+ var responsePath = mScriptParams.responsePath;
25
+ if (isText && isText !== "false") {
26
+ var oResponse = jQuery.sap.sjax({
27
+ url: responsePath,
28
+ dataType: "text"
29
+ });
30
+ }
31
+ else {
32
+ oResponse = jQuery.sap.sjax({
33
+ url: responsePath,
34
+ dataType: "json"
35
+ });
36
+ }
37
+ if (oResponse.success) {
38
+ if (isText && isText !== "false" && oResponse.data) {
39
+ oData = oResponse.data;
40
+ }
41
+ else if (oResponse.data.d) {
42
+ if (oResponse.data.d.results) {
43
+ oData = oResponse.data.d.results;
44
+ }
45
+ else if (oResponse.data.d) {
46
+ // Function Import or single data
47
+ oData = oResponse.data;
48
+ }
49
+ else {
50
+ throw new Error("The mock data are invalid");
51
+ }
52
+ }
53
+ else {
54
+ if (Array.isArray(oResponse.data)) {
55
+ oData = oResponse.data;
56
+ }
57
+ else {
58
+ throw new Error("The mock data could not be loaded due to wrong format!");
59
+ }
60
+ }
61
+ if (isText && isText !== "false") {
62
+ return done(oData);
63
+ }
64
+ else {
65
+ return done(oData);
66
+ }
67
+ }
68
+ done();
69
+ }
70
+ catch (error) {
71
+ throw new Error("File could not be retrieved, details: " + error);
72
+ }
73
+ };
74
+ functions.getUI5ControlProperty = function (mScriptParams) {
75
+ if (!mScriptParams.elementId || !mScriptParams.property)
76
+ throw new Error("Please give a valid element property with appropriate id");
77
+ try {
78
+ var oUI5Element = sap.ui.core.Element.registry.get(mScriptParams.elementId);
79
+ }
80
+ catch (error) {
81
+ throw new Error("Control could not be retrieved, details: " + error);
82
+ }
83
+ try {
84
+ return oUI5Element.getProperty(mScriptParams.property);
85
+ }
86
+ catch (error) {
87
+ throw new Error("Not valid property name, please specify a valid property name, details:" + error);
88
+ }
89
+ };
90
+ functions.getUI5AggregationProperty = function (mScriptParams) {
91
+ if (!mScriptParams.elementId || !mScriptParams.property)
92
+ throw new Error("Please give a valid element property with appropriate id");
93
+ try {
94
+ var oUI5Element = sap.ui.core.Element.registry.get(mScriptParams.elementId);
95
+ }
96
+ catch (error) {
97
+ throw new Error("Control could not be retrieved, details: " + error);
98
+ }
99
+ try {
100
+ return oUI5Element.getAggregation(mScriptParams.property);
101
+ }
102
+ catch (error) {
103
+ throw new Error("Not valid property name, please specify a valid aggregation property name, details:" + error);
104
+ }
105
+ };
106
+ functions.getUI5AssociationProperty = function (mScriptParams) {
107
+ if (!mScriptParams.elementId || !mScriptParams.property)
108
+ throw new Error("Please give a valid element property with appropriate id");
109
+ try {
110
+ var oUI5Element = sap.ui.core.Element.registry.get(mScriptParams.elementId);
111
+ }
112
+ catch (error) {
113
+ throw new Error("Control could not be retrieved, details: " + error);
114
+ }
115
+ try {
116
+ return oUI5Element.getAssociation(mScriptParams.property);
117
+ }
118
+ catch (error) {
119
+ throw new Error("Not valid property name, please specify a valid associaion property name, details:" + error);
120
+ }
121
+ };
122
+ functions.getControlBindingContextPath = function (mScriptParams) {
123
+ if (!mScriptParams.elementId)
124
+ throw new Error("Please give a valid element with appropriate id");
125
+ try {
126
+ var oUI5Element = sap.ui.core.Element.registry.get(mScriptParams.elementId);
127
+ }
128
+ catch (error) {
129
+ throw new Error("Control could not be retrieved, details: " + error);
130
+ }
131
+ if (!oUI5Element)
132
+ return null;
133
+ var bindingContexts = jQuery.extend({}, oUI5Element.oPropagatedProperties && oUI5Element.oPropagatedProperties.oBindingContexts, oUI5Element.oBindingContexts, oUI5Element.mElementBindingContexts);
134
+ // reduce object to non-empty contexts
135
+ bindingContexts = Object.keys(bindingContexts).reduce(function (finalContexts, key) {
136
+ if (bindingContexts[key]) {
137
+ finalContexts[key] = bindingContexts[key];
138
+ }
139
+ return finalContexts;
140
+ }, {});
141
+ if (bindingContexts && Object.keys(bindingContexts).length > 0) {
142
+ var aKeys = Object.keys(bindingContexts);
143
+ for (let index = 0; index < aKeys.length; index++) {
144
+ const oBindingContext = bindingContexts[aKeys[index]];
145
+ if (oBindingContext &&
146
+ oBindingContext.getPath &&
147
+ oBindingContext.getPath())
148
+ return oBindingContext.getPath();
149
+ }
150
+ }
151
+ return null;
152
+ };
153
+ functions.getControlPropertyBinding = function (mScriptParams) {
154
+ if (!mScriptParams.elementId || !mScriptParams.property)
155
+ throw new Error("Please give a valid element property with appropriate id");
156
+ try {
157
+ var oControl = sap.ui.core.Element.registry.get(mScriptParams.elementId);
158
+ }
159
+ catch (error) {
160
+ throw new Error("Control could not be retrieved, details: " + error);
161
+ }
162
+ var aBindingInfos = [];
163
+ var aBindingInfoParts = oControl.getBindingInfo(mScriptParams.property).parts;
164
+ if (aBindingInfoParts && aBindingInfoParts.length > 0) {
165
+ //console.log("Binding length has property--------> "+ sPropKey+ ", " + aBindingInfoParts.length);
166
+ for (var i = 0; i < aBindingInfoParts.length; i++) {
167
+ var sModel = "";
168
+ //console.log("Binding parts path--------> "+ aBindingInfoParts[i].path);
169
+ if (!aBindingInfoParts[i].path)
170
+ continue;
171
+ if (aBindingInfoParts[i].model)
172
+ sModel = aBindingInfoParts[i].model;
173
+ aBindingInfos.push({
174
+ model: sModel,
175
+ path: aBindingInfoParts[i].path
176
+ });
177
+ }
178
+ }
179
+ else {
180
+ var sBindingDataStr = oControl.getBindingInfo(sPropKey).path;
181
+ if (sBindingDataStr) {
182
+ aBindingInfos.push({
183
+ model: "",
184
+ path: sBindingDataStr
185
+ });
186
+ }
187
+ }
188
+ return aBindingInfos;
189
+ };
190
+ functions.loadUI5CoreAndAutowaiter = function () {
191
+ try {
192
+ if (window.sap &&
193
+ window.sap.ui.getCore &&
194
+ window.sap.ui.getCore() &&
195
+ !window.sap.ui.getCore().isLocked() &&
196
+ !window.sap.ui.getCore().getUIDirty() &&
197
+ document.readyState === "complete") {
198
+ sap.ui.require([
199
+ "sap/ui/test/_ControlFinder",
200
+ "sap/ui/test/RecordReplay",
201
+ "sap/base/Log"
202
+ ], function (_ControlFinder, RecordReplay, Log) {
203
+ // Use log globally
204
+ window.Log = Log;
205
+ // Attach RecordReplay globally
206
+ if (RecordReplay) {
207
+ window.RecordReplay = RecordReplay;
208
+ }
209
+ else {
210
+ window.RecordReplay = null;
211
+ }
212
+ //Workaround until I get multiple results
213
+ if (_ControlFinder) {
214
+ window._ControlFinder = _ControlFinder;
215
+ }
216
+ else {
217
+ // _findElements
218
+ window._ControlFinder = null;
219
+ }
220
+ });
221
+ }
222
+ if (window.RecordReplay && window._ControlFinder && window.Log) {
223
+ return true;
224
+ }
225
+ return false;
226
+ }
227
+ catch (oError) {
228
+ return false;
229
+ }
230
+ };
231
+ functions.loadUI5Page = function (mScriptParams) {
232
+ return window.RecordReplay.waitForUI5({
233
+ timeout: mScriptParams.waitForUI5Timeout,
234
+ interval: mScriptParams.waitForUI5PollingInterval
235
+ }).then(function () {
236
+ window.Log.warning("Finish loading");
237
+ // Can use also interactWithControl
238
+ return true;
239
+ }).catch(function (err) {
240
+ return false;
241
+ });
242
+ };
243
+ functions.waitForAngular = function (rootSelector, interval, callback) {
244
+ var findBusyIndicator = function () {
245
+ return Boolean(Array.from(document.getElementsByClassName("sapUiLocalBusyIndicator")).find(function (elem) {
246
+ var rect = elem.getBoundingClientRect();
247
+ var aModalDialog = Array.from(document.getElementsByClassName("sapMDialog"));
248
+ var nModalCount = 0;
249
+ if (aModalDialog && aModalDialog.length) {
250
+ nModalCount = aModalDialog.length;
251
+ }
252
+ return (rect.x > 0 || rect.y > 0) && rect.width > 0 && rect.height > 0 && nModalCount === 0;
253
+ }));
254
+ };
255
+ function defineTestCooperation() {
256
+ var TestCooperation = function (oCore) {
257
+ this._bSameTick = false;
258
+ this.iPendingXHRs = 0;
259
+ this.aDoNotTrack = [];
260
+ this.aPendingCallbacks = [];
261
+ this.oCore = oCore;
262
+ this._wrapXHR();
263
+ this.oCore.attachUIUpdated(this._tryToExecuteCallbacks);
264
+ };
265
+ // Constants for TestCooperation class
266
+ TestCooperation.EXECUTE_CALLBACKS_REG_EXP = /_tryToExecuteCallbacks/;
267
+ TestCooperation.prototype.notifyWhenStable = function (fnCallback) {
268
+ if (this.isStable()) {
269
+ fnCallback();
270
+ }
271
+ else {
272
+ this.aPendingCallbacks.push(fnCallback);
273
+ }
274
+ };
275
+ TestCooperation.prototype.isStable = function () {
276
+ return (!this.oCore.getUIDirty() && this.aPendingCallbacks.length === 0);
277
+ };
278
+ TestCooperation.prototype._wrapXHR = function () {
279
+ var that = this, fnOriginalSend = window.XMLHttpRequest.prototype.send;
280
+ window.XMLHttpRequest.prototype.send = function () {
281
+ this.addEventListener("readystatechange", function () {
282
+ if (this.readyState == 4 && this.isTracked) {
283
+ that.iPendingXHRs--;
284
+ that._tryToExecuteCallbacks();
285
+ }
286
+ });
287
+ this.isTracked = true;
288
+ that.iPendingXHRs++;
289
+ fnOriginalSend.apply(this, arguments);
290
+ };
291
+ };
292
+ TestCooperation.prototype._tryToExecuteCallbacks = function () {
293
+ if (!this._bSameTick) {
294
+ var that = this;
295
+ this._bSameTick = true;
296
+ window.setTimeout(function () {
297
+ if (!that.oCore.getUIDirty() && that.aPendingCallbacks.length > 0) {
298
+ do {
299
+ var fnCallback = that.aPendingCallbacks.shift();
300
+ fnCallback();
301
+ } while (!that.oCore.getUIDirty() && that.aPendingCallbacks.length > 0);
302
+ }
303
+ that._bSameTick = false;
304
+ }, 0);
305
+ }
306
+ };
307
+ return TestCooperation;
308
+ }
309
+ function waitForRendered() {
310
+ if (window.sap &&
311
+ window.sap.ui.getCore &&
312
+ window.sap.ui.getCore() &&
313
+ !window.sap.ui.getCore().isLocked() &&
314
+ !window.sap.ui.getCore().getUIDirty() &&
315
+ !findBusyIndicator() && // comment out in case of invisible busyIndicator (i.e. My Inbox) to prevent test getting stuck
316
+ document.readyState == "complete") {
317
+ callback();
318
+ }
319
+ else {
320
+ window.setTimeout(waitForRendered, interval);
321
+ }
322
+ }
323
+ var i = 0;
324
+ function waitForFirstRendered(cb) {
325
+ if (window.sap &&
326
+ window.sap.ui.getCore &&
327
+ window.sap.ui.getCore() &&
328
+ !window.sap.ui.getCore().isLocked() &&
329
+ !window.sap.ui.getCore().getUIDirty() &&
330
+ !findBusyIndicator() && // comment out in case of invisible busyIndicator (i.e. My Inbox) to prevent test getting stuck
331
+ document.readyState == "complete") {
332
+ findui5Busy();
333
+ }
334
+ else {
335
+ window.setTimeout(waitForFirstRendered, interval);
336
+ }
337
+ }
338
+ function findui5Busy() {
339
+ setTimeout(function () {
340
+ if (!window.sap) {
341
+ return window.setTimeout(waitForRendered, interval);
342
+ }
343
+ var oLcaTestCooperation = window.oLcaTestCooperation;
344
+ if (!oLcaTestCooperation) {
345
+ var LcaTestCooperation = window.TestCooperation || defineTestCooperation();
346
+ /* eslint-disable-next-line no-redeclare */
347
+ var oLcaTestCooperation = new LcaTestCooperation({
348
+ getUIDirty: window.sap.ui.getCore().getUIDirty.bind(window.sap.ui.getCore()),
349
+ attachUIUpdated: function () {
350
+ }
351
+ });
352
+ window.oLcaTestCooperation = oLcaTestCooperation;
353
+ }
354
+ if (!oLcaTestCooperation.isStable()) {
355
+ setTimeout(findui5Busy, interval);
356
+ }
357
+ else {
358
+ window.setTimeout(waitForRendered, interval);
359
+ }
360
+ }, 10);
361
+ }
362
+ window.setTimeout(function () {
363
+ waitForFirstRendered(findui5Busy);
364
+ }, interval);
365
+ };
366
+ /* Publish all the functions as strings to pass to WebDriver's
367
+ * exec[Async]Script. In addition, also include a script that will
368
+ * install all the functions on window (for debugging.)
369
+ *
370
+ * We also wrap any exceptions thrown by a clientSideScripts function
371
+ * that is not an instance of the Error type into an Error type. If we
372
+ * don't do so, then the resulting stack trace is completely unhelpful
373
+ * and the exception message is just 'unknown error.' These types of
374
+ * exceptins are the common case for dart2js code. This wrapping gives
375
+ * us the Dart stack trace and exception message.
376
+ */
377
+ var util = require("util");
378
+ var scriptsList = [];
379
+ var scriptFmt = ("try { return (%s).apply(this, arguments); }\n" +
380
+ "catch(e) { throw (e instanceof Error) ? e : new Error(e); }");
381
+ for (var fnName in functions) {
382
+ if (functions.hasOwnProperty(fnName)) {
383
+ exports[fnName] = util.format(scriptFmt, functions[fnName]);
384
+ scriptsList.push(util.format("%s: %s", fnName, functions[fnName]));
385
+ }
386
+ }
387
+ exports.installInBrowser = (util.format("window.clientSideScripts = {%s};", scriptsList.join(", ")));
388
+ //# sourceMappingURL=clientsideUI5scripts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clientsideUI5scripts.js","sourceRoot":"","sources":["../../../src/reuse/helper/clientsideUI5scripts.js"],"names":[],"mappings":";AAAA,6BAA6B;AAC7B,IAAI,SAAS,GAAG,EAAE,CAAC;AAEnB,SAAS,CAAC,UAAU,GAAG,UAAU,aAAa,EAAE,IAAI;IAClD,IAAI,KAAK,EAAE;QACT,KAAK,CAAC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;QAC5B,KAAK,CAAC,KAAK,EAAE,CAAC;QACd,KAAK,CAAC,IAAI,CAAC,UAAU,OAAO;YAC1B,MAAM,GAAG,GAAG,SAAS,GAAG,OAAO,CAAC,KAAK,GAAG,GAAG,GAAG,WAAW,GAAG,OAAO,CAAC,MAAM,GAAG,GAAG,GAAG,WAAW,GAAG,OAAO,CAAC,MAAM,GAAG,GAAG,GAAG,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;YACvJ,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACjB,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;gBACtB,IAAI,CAAC,IAAI,CAAC,CAAC;aACZ;YACD,IAAI,CAAC,GAAG,CAAC,CAAC;QACZ,CAAC,CAAC,CAAC;KACJ;AACH,CAAC,CAAC;AAEF,SAAS,CAAC,YAAY,GAAG,UAAU,aAAa,EAAE,IAAI;IACpD,IAAI,CAAC,aAAa,CAAC,YAAY;QAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IAClF,IAAI;QACF,IAAI,KAAK,GAAG,IAAI,CAAC;QACjB,IAAI,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC;QAClC,IAAI,YAAY,GAAG,aAAa,CAAC,YAAY,CAAC;QAC9C,IAAI,MAAM,IAAI,MAAM,KAAK,OAAO,EAAE;YAChC,IAAI,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC;gBAC9B,GAAG,EAAE,YAAY;gBACjB,QAAQ,EAAE,MAAM;aACjB,CAAC,CAAC;SACJ;aAAM;YACL,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC;gBAC1B,GAAG,EAAE,YAAY;gBACjB,QAAQ,EAAE,MAAM;aACjB,CAAC,CAAC;SACJ;QACD,IAAI,SAAS,CAAC,OAAO,EAAE;YACrB,IAAI,MAAM,IAAI,MAAM,KAAK,OAAO,IAAI,SAAS,CAAC,IAAI,EAAE;gBAClD,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC;aACxB;iBAAM,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE;gBAC3B,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE;oBAC5B,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;iBAClC;qBAAM,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE;oBAC3B,iCAAiC;oBACjC,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC;iBACxB;qBAAM;oBACL,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;iBAC9C;aACF;iBAAM;gBACL,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;oBACjC,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC;iBACxB;qBAAM;oBACL,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;iBAC3E;aACF;YACD,IAAI,MAAM,IAAI,MAAM,KAAK,OAAO,EAAE;gBAChC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC;aACpB;iBAAM;gBACL,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC;aACpB;SACF;QACD,IAAI,EAAE,CAAC;KACR;IAAC,OAAO,KAAK,EAAE;QACd,MAAM,IAAI,KAAK,CAAC,wCAAwC,GAAG,KAAK,CAAC,CAAC;KACnE;AACH,CAAC,CAAC;AAEF,SAAS,CAAC,qBAAqB,GAAG,UAAU,aAAa;IACvD,IAAI,CAAC,aAAa,CAAC,SAAS,IAAI,CAAC,aAAa,CAAC,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IACrI,IAAI;QACF,IAAI,WAAW,GAAG,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;KAC7E;IAAC,OAAO,KAAK,EAAE;QACd,MAAM,IAAI,KAAK,CAAC,2CAA2C,GAAG,KAAK,CAAC,CAAC;KACtE;IACD,IAAI;QACF,OAAO,WAAW,CAAC,WAAW,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;KACxD;IAAC,OAAO,KAAK,EAAE;QACd,MAAM,IAAI,KAAK,CAAC,yEAAyE,GAAG,KAAK,CAAC,CAAC;KACpG;AACH,CAAC,CAAC;AAEF,SAAS,CAAC,yBAAyB,GAAG,UAAU,aAAa;IAC3D,IAAI,CAAC,aAAa,CAAC,SAAS,IAAI,CAAC,aAAa,CAAC,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IACrI,IAAI;QACF,IAAI,WAAW,GAAG,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;KAC7E;IAAC,OAAO,KAAK,EAAE;QACd,MAAM,IAAI,KAAK,CAAC,2CAA2C,GAAG,KAAK,CAAC,CAAC;KACtE;IACD,IAAI;QACF,OAAO,WAAW,CAAC,cAAc,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;KAC3D;IAAC,OAAO,KAAK,EAAE;QACd,MAAM,IAAI,KAAK,CAAC,qFAAqF,GAAG,KAAK,CAAC,CAAC;KAChH;AACH,CAAC,CAAC;AAEF,SAAS,CAAC,yBAAyB,GAAG,UAAU,aAAa;IAC3D,IAAI,CAAC,aAAa,CAAC,SAAS,IAAI,CAAC,aAAa,CAAC,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IACrI,IAAI;QACF,IAAI,WAAW,GAAG,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;KAC7E;IAAC,OAAO,KAAK,EAAE;QACd,MAAM,IAAI,KAAK,CAAC,2CAA2C,GAAG,KAAK,CAAC,CAAC;KACtE;IACD,IAAI;QACF,OAAO,WAAW,CAAC,cAAc,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;KAC3D;IAAC,OAAO,KAAK,EAAE;QACd,MAAM,IAAI,KAAK,CAAC,oFAAoF,GAAG,KAAK,CAAC,CAAC;KAC/G;AACH,CAAC,CAAC;AAEF,SAAS,CAAC,4BAA4B,GAAG,UAAU,aAAa;IAC9D,IAAI,CAAC,aAAa,CAAC,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACjG,IAAI;QACF,IAAI,WAAW,GAAG,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;KAC7E;IAAC,OAAO,KAAK,EAAE;QACd,MAAM,IAAI,KAAK,CAAC,2CAA2C,GAAG,KAAK,CAAC,CAAC;KACtE;IACD,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IAC9B,IAAI,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EACpC,WAAW,CAAC,qBAAqB,IAAI,WAAW,CAAC,qBAAqB,CAAC,gBAAgB,EACvF,WAAW,CAAC,gBAAgB,EAC5B,WAAW,CAAC,uBAAuB,CACpC,CAAC;IACF,sCAAsC;IACtC,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,UAAU,aAAa,EAAE,GAAG;QAChF,IAAI,eAAe,CAAC,GAAG,CAAC,EAAE;YACxB,aAAa,CAAC,GAAG,CAAC,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;SAC3C;QACD,OAAO,aAAa,CAAC;IACvB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,IAAI,eAAe,IAAI,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;QAC9D,IAAI,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACzC,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YACjD,MAAM,eAAe,GAAG,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;YACtD,IAAI,eAAe;gBACjB,eAAe,CAAC,OAAO;gBACvB,eAAe,CAAC,OAAO,EAAE;gBACzB,OAAO,eAAe,CAAC,OAAO,EAAE,CAAC;SACpC;KACF;IACD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,SAAS,CAAC,yBAAyB,GAAG,UAAU,aAAa;IAC3D,IAAI,CAAC,aAAa,CAAC,SAAS,IAAI,CAAC,aAAa,CAAC,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IACrI,IAAI;QACF,IAAI,QAAQ,GAAG,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;KAC1E;IAAC,OAAO,KAAK,EAAE;QACd,MAAM,IAAI,KAAK,CAAC,2CAA2C,GAAG,KAAK,CAAC,CAAC;KACtE;IACD,IAAI,aAAa,GAAG,EAAE,CAAC;IACvB,IAAI,iBAAiB,GAAG,QAAQ,CAAC,cAAc,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC;IAC9E,IAAI,iBAAiB,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE;QACrD,kGAAkG;QAClG,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,iBAAiB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACjD,IAAI,MAAM,GAAG,EAAE,CAAC;YAChB,yEAAyE;YACzE,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,IAAI;gBAAE,SAAS;YACzC,IAAI,iBAAiB,CAAC,CAAC,CAAC,CAAC,KAAK;gBAAE,MAAM,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YACpE,aAAa,CAAC,IAAI,CAAC;gBACjB,KAAK,EAAE,MAAM;gBACb,IAAI,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,IAAI;aAChC,CAAC,CAAC;SACJ;KACF;SAAM;QACL,IAAI,eAAe,GAAG,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC;QAC7D,IAAI,eAAe,EAAE;YACnB,aAAa,CAAC,IAAI,CAAC;gBACjB,KAAK,EAAE,EAAE;gBACT,IAAI,EAAE,eAAe;aACtB,CAAC,CAAC;SACJ;KACF;IACD,OAAO,aAAa,CAAC;AACvB,CAAC,CAAC;AAEF,SAAS,CAAC,wBAAwB,GAAG;IACnC,IAAI;QACF,IACE,MAAM,CAAC,GAAG;YACV,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO;YACrB,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE;YACvB,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;YACnC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,UAAU,EAAE;YACrC,QAAQ,CAAC,UAAU,KAAK,UAAU,EAClC;YACA,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC;gBACb,4BAA4B;gBAC5B,0BAA0B;gBAC1B,cAAc;aACf,EAAE,UAAU,cAAc,EAAE,YAAY,EAAE,GAAG;gBAC5C,mBAAmB;gBACnB,MAAM,CAAC,GAAG,GAAG,GAAG,CAAC;gBACjB,+BAA+B;gBAC/B,IAAI,YAAY,EAAE;oBAChB,MAAM,CAAC,YAAY,GAAG,YAAY,CAAC;iBACpC;qBAAM;oBACL,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC;iBAC5B;gBACD,yCAAyC;gBACzC,IAAI,cAAc,EAAE;oBAClB,MAAM,CAAC,cAAc,GAAG,cAAc,CAAC;iBACxC;qBAAM;oBACL,gBAAgB;oBAChB,MAAM,CAAC,cAAc,GAAG,IAAI,CAAC;iBAC9B;YACH,CAAC,CAAC,CAAC;SACJ;QACD,IAAI,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,GAAG,EAAE;YAC9D,OAAO,IAAI,CAAC;SACb;QACD,OAAO,KAAK,CAAC;KACd;IAAC,OAAO,MAAM,EAAE;QACf,OAAO,KAAK,CAAC;KACd;AACH,CAAC,CAAC;AAEF,SAAS,CAAC,WAAW,GAAG,UAAU,aAAa;IAC7C,OAAO,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC;QACpC,OAAO,EAAE,aAAa,CAAC,iBAAiB;QACxC,QAAQ,EAAE,aAAa,CAAC,yBAAyB;KAClD,CAAC,CAAC,IAAI,CAAC;QACN,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;QACrC,mCAAmC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,GAAG;QACpB,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,SAAS,CAAC,cAAc,GAAG,UAAU,YAAY,EAAE,QAAQ,EAAE,QAAQ;IAEnE,IAAI,iBAAiB,GAAG;QACtB,OAAO,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC,yBAAyB,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,IAAI;YACvG,IAAI,IAAI,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;YACxC,IAAI,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC,YAAY,CAAC,CAAC,CAAC;YAC7E,IAAI,WAAW,GAAG,CAAC,CAAC;YACpB,IAAI,YAAY,IAAI,YAAY,CAAC,MAAM,EAAE;gBACvC,WAAW,GAAG,YAAY,CAAC,MAAM,CAAC;aACnC;YACD,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,WAAW,KAAK,CAAC,CAAC;QAC9F,CAAC,CAAC,CAAC,CAAC;IACN,CAAC,CAAC;IAEF,SAAS,qBAAqB;QAC5B,IAAI,eAAe,GAAG,UAAU,KAAK;YAEnC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;YACxB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;YACtB,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;YACtB,IAAI,CAAC,iBAAiB,GAAG,EAAE,CAAC;YAC5B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YAEnB,IAAI,CAAC,QAAQ,EAAE,CAAC;YAEhB,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QAC1D,CAAC,CAAC;QAEF,sCAAsC;QACtC,eAAe,CAAC,yBAAyB,GAAG,wBAAwB,CAAC;QAErE,eAAe,CAAC,SAAS,CAAC,gBAAgB,GAAG,UAAU,UAAU;YAC/D,IAAI,IAAI,CAAC,QAAQ,EAAE,EAAE;gBACnB,UAAU,EAAE,CAAC;aACd;iBAAM;gBACL,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;aACzC;QACH,CAAC,CAAC;QAEF,eAAe,CAAC,SAAS,CAAC,QAAQ,GAAG;YACnC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,IAAI,IAAI,CAAC,iBAAiB,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;QAC3E,CAAC,CAAC;QAEF,eAAe,CAAC,SAAS,CAAC,QAAQ,GAAG;YACnC,IAAI,IAAI,GAAG,IAAI,EACb,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC;YACxD,MAAM,CAAC,cAAc,CAAC,SAAS,CAAC,IAAI,GAAG;gBACrC,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,EAAE;oBACxC,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,IAAI,CAAC,SAAS,EAAE;wBAC1C,IAAI,CAAC,YAAY,EAAE,CAAC;wBACpB,IAAI,CAAC,sBAAsB,EAAE,CAAC;qBAC/B;gBACH,CAAC,CAAC,CAAC;gBACH,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;gBACtB,IAAI,CAAC,YAAY,EAAE,CAAC;gBACpB,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;YACxC,CAAC,CAAC;QACJ,CAAC,CAAC;QAEF,eAAe,CAAC,SAAS,CAAC,sBAAsB,GAAG;YACjD,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;gBACpB,IAAI,IAAI,GAAG,IAAI,CAAC;gBAChB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;gBACvB,MAAM,CAAC,UAAU,CAAC;oBAChB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,IAAI,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE;wBACjE,GAAG;4BACD,IAAI,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;4BAChD,UAAU,EAAE,CAAC;yBACd,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,IAAI,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE;qBACzE;oBACD,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;gBAC1B,CAAC,EAAE,CAAC,CAAC,CAAC;aACP;QACH,CAAC,CAAC;QAEF,OAAO,eAAe,CAAC;IACzB,CAAC;IAED,SAAS,eAAe;QACtB,IACE,MAAM,CAAC,GAAG;YACV,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO;YACrB,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE;YACvB,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;YACnC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,UAAU,EAAE;YACrC,CAAC,iBAAiB,EAAE,IAAc,+FAA+F;YACjI,QAAQ,CAAC,UAAU,IAAI,UAAU,EACjC;YACA,QAAQ,EAAE,CAAC;SACZ;aAAM;YACL,MAAM,CAAC,UAAU,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;SAC9C;IACH,CAAC;IAED,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,SAAS,oBAAoB,CAAC,EAAE;QAC9B,IACE,MAAM,CAAC,GAAG;YACV,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO;YACrB,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE;YACvB,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;YACnC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,UAAU,EAAE;YACrC,CAAC,iBAAiB,EAAE,IAAa,+FAA+F;YAChI,QAAQ,CAAC,UAAU,IAAI,UAAU,EACjC;YACA,WAAW,EAAE,CAAC;SACf;aAAM;YACL,MAAM,CAAC,UAAU,CAAC,oBAAoB,EAAE,QAAQ,CAAC,CAAC;SACnD;IACH,CAAC;IAED,SAAS,WAAW;QAClB,UAAU,CAAC;YACT,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE;gBACf,OAAO,MAAM,CAAC,UAAU,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;aACrD;YACD,IAAI,mBAAmB,GAAG,MAAM,CAAC,mBAAmB,CAAC;YACrD,IAAI,CAAC,mBAAmB,EAAE;gBACxB,IAAI,kBAAkB,GAAG,MAAM,CAAC,eAAe,IAAI,qBAAqB,EAAE,CAAC;gBAC3E,2CAA2C;gBAC3C,IAAI,mBAAmB,GAAG,IAAI,kBAAkB,CAAC;oBAC/C,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC;oBAC5E,eAAe,EAAE;oBAEjB,CAAC;iBACF,CAAC,CAAC;gBACH,MAAM,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;aAClD;YAED,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,EAAE;gBAEnC,UAAU,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;aACnC;iBAAM;gBACL,MAAM,CAAC,UAAU,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;aAC9C;QACH,CAAC,EAAE,EAAE,CAAC,CAAC;IACT,CAAC;IAED,MAAM,CAAC,UAAU,CAAC;QAChB,oBAAoB,CAAC,WAAW,CAAC,CAAC;IACpC,CAAC,EAAE,QAAQ,CAAC,CAAC;AAOf,CAAC,CAAC;AAEF;;;;;;;;;;EAUE;AACF,IAAI,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AAC3B,IAAI,WAAW,GAAG,EAAE,CAAC;AACrB,IAAI,SAAS,GAAG,CACd,+CAA+C;IAC/C,6DAA6D,CAAC,CAAC;AACjE,KAAK,IAAI,MAAM,IAAI,SAAS,EAAE;IAC5B,IAAI,SAAS,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE;QACpC,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;QAC5D,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;KACpE;CACF;AAED,OAAO,CAAC,gBAAgB,GAAG,CAAC,IAAI,CAAC,MAAM,CACrC,kCAAkC,EAAE,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,45 @@
1
+ /* eslint-disable no-console */
2
+ "use strict";
3
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
4
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
5
+ return new (P || (P = Promise))(function (resolve, reject) {
6
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
7
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
8
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
9
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
10
+ });
11
+ };
12
+ const glob = require("glob");
13
+ const fs = require("fs");
14
+ const path = require("path");
15
+ const jsdoc2md = require("jsdoc-to-markdown");
16
+ const readPath = path.join(__dirname, "../");
17
+ const writePath = path.join(__dirname, "../../../docs");
18
+ const filesToInclude = `{index.js,modules/**/*.js}`;
19
+ function generateDoc() {
20
+ glob(readPath + filesToInclude, (err, files) => __awaiter(this, void 0, void 0, function* () {
21
+ if (err) {
22
+ throw err;
23
+ }
24
+ console.log(files);
25
+ let markdownFile;
26
+ try {
27
+ markdownFile = yield jsdoc2md.render({
28
+ "files": files
29
+ });
30
+ }
31
+ catch (error) {
32
+ console.log("\x1b[33m%s\x1b[0m", `Error while rendering the files. Please investigate.`);
33
+ console.error(error);
34
+ return;
35
+ }
36
+ fs.writeFile(writePath + "/doc.md", markdownFile, (err) => {
37
+ if (err) {
38
+ throw err;
39
+ }
40
+ console.log("The files has been saved.");
41
+ });
42
+ }));
43
+ }
44
+ generateDoc();
45
+ //# sourceMappingURL=jsDocGen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jsDocGen.js","sourceRoot":"","sources":["../../../src/reuse/helper/jsDocGen.js"],"names":[],"mappings":"AAAA,+BAA+B;AAC/B,YAAY,CAAC;;;;;;;;;;AAEb,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AAC7B,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AACzB,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AAC7B,MAAM,QAAQ,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAE9C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;AAC7C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;AAExD,MAAM,cAAc,GAAG,4BAA4B,CAAC;AAEpD,SAAS,WAAW;IAClB,IAAI,CAAC,QAAQ,GAAG,cAAc,EAAE,CAAO,GAAG,EAAE,KAAK,EAAE,EAAE;QAEnD,IAAI,GAAG,EAAE;YACP,MAAM,GAAG,CAAC;SACX;QACD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAEnB,IAAI,YAAY,CAAC;QACjB,IAAI;YACF,YAAY,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;gBACnC,OAAO,EAAE,KAAK;aACf,CAAC,CAAC;SACJ;QAAC,OAAO,KAAK,EAAE;YACd,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,sDAAsD,CAAC,CAAC;YACzF,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,OAAO;SACR;QAED,EAAE,CAAC,SAAS,CAAC,SAAS,GAAG,SAAS,EAAE,YAAY,EAAE,CAAC,GAAG,EAAE,EAAE;YACxD,IAAI,GAAG,EAAE;gBACP,MAAM,GAAG,CAAC;aACX;YACD,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;QAC3C,CAAC,CAAC,CAAC;IAEL,CAAC,CAAA,CAAC,CAAC;AACL,CAAC;AAED,WAAW,EAAE,CAAC"}
@@ -0,0 +1,5 @@
1
+ declare class ReuseLibrary {
2
+ load(): void;
3
+ }
4
+ declare const _default: ReuseLibrary;
5
+ export default _default;