@eclipse-che/che-e2e 7.58.1-dev-43d35ee → 7.58.1-dev-156c2d9

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 (226) hide show
  1. package/dist/TestConstants.js +244 -0
  2. package/dist/TestConstants.js.map +1 -0
  3. package/dist/TimeoutConstants.js +184 -0
  4. package/dist/TimeoutConstants.js.map +1 -0
  5. package/dist/driver/CheReporter.js +170 -0
  6. package/dist/driver/CheReporter.js.map +1 -0
  7. package/dist/driver/ChromeDriver.js +77 -0
  8. package/dist/driver/ChromeDriver.js.map +1 -0
  9. package/dist/driver/IDriver.js +3 -0
  10. package/dist/driver/IDriver.js.map +1 -0
  11. package/dist/index.js +94 -0
  12. package/dist/index.js.map +1 -0
  13. package/dist/inversify.config.js +132 -0
  14. package/dist/inversify.config.js.map +1 -0
  15. package/dist/inversify.types.js +75 -0
  16. package/dist/inversify.types.js.map +1 -0
  17. package/dist/pageobjects/dashboard/CreateWorkspace.js +106 -0
  18. package/dist/pageobjects/dashboard/CreateWorkspace.js.map +1 -0
  19. package/dist/pageobjects/dashboard/Dashboard.js +115 -0
  20. package/dist/pageobjects/dashboard/Dashboard.js.map +1 -0
  21. package/dist/pageobjects/dashboard/Workspaces.js +165 -0
  22. package/dist/pageobjects/dashboard/Workspaces.js.map +1 -0
  23. package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetails.js +138 -0
  24. package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetails.js.map +1 -0
  25. package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetailsPlugins.js +97 -0
  26. package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetailsPlugins.js.map +1 -0
  27. package/dist/pageobjects/ide/theia/ContextMenu.js +66 -0
  28. package/dist/pageobjects/ide/theia/ContextMenu.js.map +1 -0
  29. package/dist/pageobjects/ide/theia/DebugView.js +98 -0
  30. package/dist/pageobjects/ide/theia/DebugView.js.map +1 -0
  31. package/dist/pageobjects/ide/theia/DialogWindow.js +102 -0
  32. package/dist/pageobjects/ide/theia/DialogWindow.js.map +1 -0
  33. package/dist/pageobjects/ide/theia/Editor.js +463 -0
  34. package/dist/pageobjects/ide/theia/Editor.js.map +1 -0
  35. package/dist/pageobjects/ide/theia/Ide.js +336 -0
  36. package/dist/pageobjects/ide/theia/Ide.js.map +1 -0
  37. package/dist/pageobjects/ide/theia/LeftToolBar.js +81 -0
  38. package/dist/pageobjects/ide/theia/LeftToolBar.js.map +1 -0
  39. package/dist/pageobjects/ide/theia/NavigationBar.js +57 -0
  40. package/dist/pageobjects/ide/theia/NavigationBar.js.map +1 -0
  41. package/dist/pageobjects/ide/theia/NotificationCenter.js +76 -0
  42. package/dist/pageobjects/ide/theia/NotificationCenter.js.map +1 -0
  43. package/dist/pageobjects/ide/theia/OpenDialogWidget.js +100 -0
  44. package/dist/pageobjects/ide/theia/OpenDialogWidget.js.map +1 -0
  45. package/dist/pageobjects/ide/theia/OpenEditors.js +73 -0
  46. package/dist/pageobjects/ide/theia/OpenEditors.js.map +1 -0
  47. package/dist/pageobjects/ide/theia/OpenWorkspaceWidget.js +62 -0
  48. package/dist/pageobjects/ide/theia/OpenWorkspaceWidget.js.map +1 -0
  49. package/dist/pageobjects/ide/theia/PreviewWidget.js +134 -0
  50. package/dist/pageobjects/ide/theia/PreviewWidget.js.map +1 -0
  51. package/dist/pageobjects/ide/theia/ProjectTree.js +282 -0
  52. package/dist/pageobjects/ide/theia/ProjectTree.js.map +1 -0
  53. package/dist/pageobjects/ide/theia/QuickOpenContainer.js +70 -0
  54. package/dist/pageobjects/ide/theia/QuickOpenContainer.js.map +1 -0
  55. package/dist/pageobjects/ide/theia/RightToolBar.js +51 -0
  56. package/dist/pageobjects/ide/theia/RightToolBar.js.map +1 -0
  57. package/dist/pageobjects/ide/theia/Terminal.js +184 -0
  58. package/dist/pageobjects/ide/theia/Terminal.js.map +1 -0
  59. package/dist/pageobjects/ide/theia/TopMenu.js +109 -0
  60. package/dist/pageobjects/ide/theia/TopMenu.js.map +1 -0
  61. package/dist/pageobjects/ide/theia/plugins/GitHubPullRequestPlugin.js +128 -0
  62. package/dist/pageobjects/ide/theia/plugins/GitHubPullRequestPlugin.js.map +1 -0
  63. package/dist/pageobjects/ide/theia/plugins/GitPlugin.js +120 -0
  64. package/dist/pageobjects/ide/theia/plugins/GitPlugin.js.map +1 -0
  65. package/dist/pageobjects/ide/theia/plugins/KubernetesPlugin.js +107 -0
  66. package/dist/pageobjects/ide/theia/plugins/KubernetesPlugin.js.map +1 -0
  67. package/dist/pageobjects/ide/theia/plugins/OpenshiftPlugin.js +99 -0
  68. package/dist/pageobjects/ide/theia/plugins/OpenshiftPlugin.js.map +1 -0
  69. package/dist/pageobjects/ide/theia/plugins/PluginsView.js +166 -0
  70. package/dist/pageobjects/ide/theia/plugins/PluginsView.js.map +1 -0
  71. package/dist/pageobjects/login/ICheLoginPage.js +12 -0
  72. package/dist/pageobjects/login/ICheLoginPage.js.map +1 -0
  73. package/dist/pageobjects/login/IOcpLoginPage.js +12 -0
  74. package/dist/pageobjects/login/IOcpLoginPage.js.map +1 -0
  75. package/dist/pageobjects/login/MultiUserLoginPage.js +49 -0
  76. package/dist/pageobjects/login/MultiUserLoginPage.js.map +1 -0
  77. package/dist/pageobjects/login/OcpUserLoginPage.js +53 -0
  78. package/dist/pageobjects/login/OcpUserLoginPage.js.map +1 -0
  79. package/dist/pageobjects/login/RegularUserOcpCheLoginPage.js +86 -0
  80. package/dist/pageobjects/login/RegularUserOcpCheLoginPage.js.map +1 -0
  81. package/dist/pageobjects/login/UpdateAccountInformationPage.js +74 -0
  82. package/dist/pageobjects/login/UpdateAccountInformationPage.js.map +1 -0
  83. package/dist/pageobjects/openshift/CheLoginPage.js +88 -0
  84. package/dist/pageobjects/openshift/CheLoginPage.js.map +1 -0
  85. package/dist/pageobjects/openshift/OcpLoginPage.js +106 -0
  86. package/dist/pageobjects/openshift/OcpLoginPage.js.map +1 -0
  87. package/dist/pageobjects/third-parties/GitLoginPage.js +85 -0
  88. package/dist/pageobjects/third-parties/GitLoginPage.js.map +1 -0
  89. package/dist/pageobjects/third-parties/GitOauthAppsSettings.js +110 -0
  90. package/dist/pageobjects/third-parties/GitOauthAppsSettings.js.map +1 -0
  91. package/dist/tests/MochaHooks.js +65 -0
  92. package/dist/tests/MochaHooks.js.map +1 -0
  93. package/dist/tests/devfiles/che-code/EmptyWorkspace.spec.js +48 -0
  94. package/dist/tests/devfiles/che-code/EmptyWorkspace.spec.js.map +1 -0
  95. package/dist/tests/devfiles/theia/CSlashCPlusPlus.spec.js +73 -0
  96. package/dist/tests/devfiles/theia/CSlashCPlusPlus.spec.js.map +1 -0
  97. package/dist/tests/devfiles/theia/DevfileSmoke.spec.js +47 -0
  98. package/dist/tests/devfiles/theia/DevfileSmoke.spec.js.map +1 -0
  99. package/dist/tests/devfiles/theia/DotNetCore.spec.js +81 -0
  100. package/dist/tests/devfiles/theia/DotNetCore.spec.js.map +1 -0
  101. package/dist/tests/devfiles/theia/Go.spec.js +72 -0
  102. package/dist/tests/devfiles/theia/Go.spec.js.map +1 -0
  103. package/dist/tests/devfiles/theia/JavaMaven.spec.js +60 -0
  104. package/dist/tests/devfiles/theia/JavaMaven.spec.js.map +1 -0
  105. package/dist/tests/devfiles/theia/JavaSpringBoot.spec.js +66 -0
  106. package/dist/tests/devfiles/theia/JavaSpringBoot.spec.js.map +1 -0
  107. package/dist/tests/devfiles/theia/JavaVertx.spec.js +60 -0
  108. package/dist/tests/devfiles/theia/JavaVertx.spec.js.map +1 -0
  109. package/dist/tests/devfiles/theia/NodeJS.spec.js +64 -0
  110. package/dist/tests/devfiles/theia/NodeJS.spec.js.map +1 -0
  111. package/dist/tests/devfiles/theia/PHPSimple.spec.js +74 -0
  112. package/dist/tests/devfiles/theia/PHPSimple.spec.js.map +1 -0
  113. package/dist/tests/devfiles/theia/Python.spec.js +58 -0
  114. package/dist/tests/devfiles/theia/Python.spec.js.map +1 -0
  115. package/dist/tests/devfiles/theia/PythonDjango.spec.js +61 -0
  116. package/dist/tests/devfiles/theia/PythonDjango.spec.js.map +1 -0
  117. package/dist/tests/devfiles/theia/Quarkus.spec.js +69 -0
  118. package/dist/tests/devfiles/theia/Quarkus.spec.js.map +1 -0
  119. package/dist/tests/devfiles/theia/Scala.spec.js +66 -0
  120. package/dist/tests/devfiles/theia/Scala.spec.js.map +1 -0
  121. package/dist/tests/e2e/theia/FactoryUrl.spec.js +40 -0
  122. package/dist/tests/e2e/theia/FactoryUrl.spec.js.map +1 -0
  123. package/dist/tests/e2e/theia/GitPublishBranch.spec.js +90 -0
  124. package/dist/tests/e2e/theia/GitPublishBranch.spec.js.map +1 -0
  125. package/dist/tests/e2e/theia/GitSelfSignCert.spec.js +90 -0
  126. package/dist/tests/e2e/theia/GitSelfSignCert.spec.js.map +1 -0
  127. package/dist/tests/e2e/theia/GitSsh.spec.js +120 -0
  128. package/dist/tests/e2e/theia/GitSsh.spec.js.map +1 -0
  129. package/dist/tests/e2e/theia/OpenshiftConnector.spec.js +124 -0
  130. package/dist/tests/e2e/theia/OpenshiftConnector.spec.js.map +1 -0
  131. package/dist/tests/e2e/theia/factories/DirectUrlFactoryWithKeepDirectoryTest.spec.js +50 -0
  132. package/dist/tests/e2e/theia/factories/DirectUrlFactoryWithKeepDirectoryTest.spec.js.map +1 -0
  133. package/dist/tests/e2e/theia/factories/DirectUrlFactoryWithRootFolderTest.spec.js +48 -0
  134. package/dist/tests/e2e/theia/factories/DirectUrlFactoryWithRootFolderTest.spec.js.map +1 -0
  135. package/dist/tests/e2e/theia/factories/DirectUrlFactoryWithSpecificBranchTest.spec.js +48 -0
  136. package/dist/tests/e2e/theia/factories/DirectUrlFactoryWithSpecificBranchTest.spec.js.map +1 -0
  137. package/dist/tests/e2e_happy_path/theia/DevWorkspaceHappyPath.spec.js +277 -0
  138. package/dist/tests/e2e_happy_path/theia/DevWorkspaceHappyPath.spec.js.map +1 -0
  139. package/dist/tests/e2e_happy_path/theia/HappyPath.spec.js +314 -0
  140. package/dist/tests/e2e_happy_path/theia/HappyPath.spec.js.map +1 -0
  141. package/dist/tests/intelij/IntelijOpenWorkspace.spec.js +39 -0
  142. package/dist/tests/intelij/IntelijOpenWorkspace.spec.js.map +1 -0
  143. package/dist/tests/load_test/theia/LoadTest.spec.js +41 -0
  144. package/dist/tests/load_test/theia/LoadTest.spec.js.map +1 -0
  145. package/dist/tests/login/LinkCheAndOcpUsers.spec.js +39 -0
  146. package/dist/tests/login/LinkCheAndOcpUsers.spec.js.map +1 -0
  147. package/dist/tests/login/Login.spec.js +28 -0
  148. package/dist/tests/login/Login.spec.js.map +1 -0
  149. package/dist/tests/plugins/theia/GitHubPullRequestPlugin.spec.js +117 -0
  150. package/dist/tests/plugins/theia/GitHubPullRequestPlugin.spec.js.map +1 -0
  151. package/dist/tests/plugins/theia/InstallPluginUsingUI.spec.js +62 -0
  152. package/dist/tests/plugins/theia/InstallPluginUsingUI.spec.js.map +1 -0
  153. package/dist/tests/plugins/theia/JavaPlugin.spec.js +82 -0
  154. package/dist/tests/plugins/theia/JavaPlugin.spec.js.map +1 -0
  155. package/dist/tests/plugins/theia/PhpPlugin.spec.js +96 -0
  156. package/dist/tests/plugins/theia/PhpPlugin.spec.js.map +1 -0
  157. package/dist/tests/plugins/theia/PythonPlugin.spec.js +72 -0
  158. package/dist/tests/plugins/theia/PythonPlugin.spec.js.map +1 -0
  159. package/dist/tests/plugins/theia/TypescriptPlugin.spec.js +135 -0
  160. package/dist/tests/plugins/theia/TypescriptPlugin.spec.js.map +1 -0
  161. package/dist/tests/plugins/theia/VscodeKubernetesPlugin.spec.js +69 -0
  162. package/dist/tests/plugins/theia/VscodeKubernetesPlugin.spec.js.map +1 -0
  163. package/dist/tests/plugins/theia/VscodeShellcheckPlugin.spec.js +82 -0
  164. package/dist/tests/plugins/theia/VscodeShellcheckPlugin.spec.js.map +1 -0
  165. package/dist/tests/plugins/theia/VscodeValePlugin.spec.js +70 -0
  166. package/dist/tests/plugins/theia/VscodeValePlugin.spec.js.map +1 -0
  167. package/dist/tests/plugins/theia/VscodeXmlPlugin.spec.js +81 -0
  168. package/dist/tests/plugins/theia/VscodeXmlPlugin.spec.js.map +1 -0
  169. package/dist/tests/plugins/theia/VscodeYamlPlugin.spec.js +78 -0
  170. package/dist/tests/plugins/theia/VscodeYamlPlugin.spec.js.map +1 -0
  171. package/dist/testsLibrary/WorkspaceHandlingTests.js +150 -0
  172. package/dist/testsLibrary/WorkspaceHandlingTests.js.map +1 -0
  173. package/dist/testsLibrary/che-code/ProjectAndFileTestsCheCode.js +54 -0
  174. package/dist/testsLibrary/che-code/ProjectAndFileTestsCheCode.js.map +1 -0
  175. package/dist/testsLibrary/theia/CodeExecutionTestsTheia.js +248 -0
  176. package/dist/testsLibrary/theia/CodeExecutionTestsTheia.js.map +1 -0
  177. package/dist/testsLibrary/theia/LanguageServerTestsTheia.js +230 -0
  178. package/dist/testsLibrary/theia/LanguageServerTestsTheia.js.map +1 -0
  179. package/dist/testsLibrary/theia/ProjectAndFileTestsTheia.js +133 -0
  180. package/dist/testsLibrary/theia/ProjectAndFileTestsTheia.js.map +1 -0
  181. package/dist/utils/AnimationChecker.js +45 -0
  182. package/dist/utils/AnimationChecker.js.map +1 -0
  183. package/dist/utils/BrowserTabsUtil.js +115 -0
  184. package/dist/utils/BrowserTabsUtil.js.map +1 -0
  185. package/dist/utils/DriverHelper.js +613 -0
  186. package/dist/utils/DriverHelper.js.map +1 -0
  187. package/dist/utils/Logger.js +84 -0
  188. package/dist/utils/Logger.js.map +1 -0
  189. package/dist/utils/Sanitizer.js +29 -0
  190. package/dist/utils/Sanitizer.js.map +1 -0
  191. package/dist/utils/ScreenCatcher.js +107 -0
  192. package/dist/utils/ScreenCatcher.js.map +1 -0
  193. package/dist/utils/VCS/CheGitApi.js +42 -0
  194. package/dist/utils/VCS/CheGitApi.js.map +1 -0
  195. package/dist/utils/VCS/github/GitHubUtil.js +126 -0
  196. package/dist/utils/VCS/github/GitHubUtil.js.map +1 -0
  197. package/dist/utils/WorkspaceNameHandler.js +60 -0
  198. package/dist/utils/WorkspaceNameHandler.js.map +1 -0
  199. package/dist/utils/requestHandlers/CheApiRequestHandler.js +126 -0
  200. package/dist/utils/requestHandlers/CheApiRequestHandler.js.map +1 -0
  201. package/dist/utils/requestHandlers/headers/CheMultiuserAuthorizationHeaderHandler.js +49 -0
  202. package/dist/utils/requestHandlers/headers/CheMultiuserAuthorizationHeaderHandler.js.map +1 -0
  203. package/dist/utils/requestHandlers/headers/IAuthorizationHeaderHandler.js +12 -0
  204. package/dist/utils/requestHandlers/headers/IAuthorizationHeaderHandler.js.map +1 -0
  205. package/dist/utils/requestHandlers/tokens/CheMultiuserTokenHandler.js +50 -0
  206. package/dist/utils/requestHandlers/tokens/CheMultiuserTokenHandler.js.map +1 -0
  207. package/dist/utils/requestHandlers/tokens/ITokenHandler.js +12 -0
  208. package/dist/utils/requestHandlers/tokens/ITokenHandler.js.map +1 -0
  209. package/dist/utils/theia/PreferencesHandlerTheia.js +142 -0
  210. package/dist/utils/theia/PreferencesHandlerTheia.js.map +1 -0
  211. package/dist/utils/workspace/ApiUrlResolver.js +67 -0
  212. package/dist/utils/workspace/ApiUrlResolver.js.map +1 -0
  213. package/dist/utils/workspace/ITestWorkspaceUtil.js +12 -0
  214. package/dist/utils/workspace/ITestWorkspaceUtil.js.map +1 -0
  215. package/dist/utils/workspace/TestWorkspaceUtil.js +357 -0
  216. package/dist/utils/workspace/TestWorkspaceUtil.js.map +1 -0
  217. package/dist/utils/workspace/WorkspaceStatus.js +19 -0
  218. package/dist/utils/workspace/WorkspaceStatus.js.map +1 -0
  219. package/driver/CheReporter.ts +5 -7
  220. package/package.json +2 -2
  221. package/tests/MochaHooks.ts +4 -4
  222. package/tests/e2e_happy_path/theia/DevWorkspaceHappyPath.spec.ts +2 -2
  223. package/tests/e2e_happy_path/theia/HappyPath.spec.ts +1 -1
  224. package/testsLibrary/WorkspaceHandlingTests.ts +30 -23
  225. package/tslint.json +1 -1
  226. package/utils/DriverHelper.ts +0 -4
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Logger = void 0;
4
+ const TestConstants_1 = require("../TestConstants");
5
+ /*********************************************************************
6
+ * Copyright (c) 2019 Red Hat, Inc.
7
+ *
8
+ * This program and the accompanying materials are made
9
+ * available under the terms of the Eclipse Public License 2.0
10
+ * which is available at https://www.eclipse.org/legal/epl-2.0/
11
+ *
12
+ * SPDX-License-Identifier: EPL-2.0
13
+ **********************************************************************/
14
+ class Logger {
15
+ /**
16
+ * Uses for logging of fatal errors.
17
+ * @param text log text
18
+ */
19
+ static error(text, indentLevel = 1) {
20
+ this.logText(indentLevel, `[ERROR] ${text}`);
21
+ }
22
+ /**
23
+ * Uses for logging of recoverable errors and general warnings.
24
+ * @param text log text
25
+ */
26
+ static warn(text, indentLevel = 1) {
27
+ if (TestConstants_1.TestConstants.TS_SELENIUM_LOG_LEVEL === 'ERROR') {
28
+ return;
29
+ }
30
+ this.logText(indentLevel, `[WARN] ${text}`);
31
+ }
32
+ /**
33
+ * Uses for logging of the public methods of the pageobjects.
34
+ * @param text log text
35
+ */
36
+ static info(text, indentLevel = 3) {
37
+ if (TestConstants_1.TestConstants.TS_SELENIUM_LOG_LEVEL === 'ERROR' ||
38
+ TestConstants_1.TestConstants.TS_SELENIUM_LOG_LEVEL === 'WARN') {
39
+ return;
40
+ }
41
+ this.logText(indentLevel, `• ${text}`);
42
+ }
43
+ /**
44
+ * Uses for logging of the public methods of the pageobjects.
45
+ * @param text log text
46
+ */
47
+ static debug(text, indentLevel = 5) {
48
+ if (TestConstants_1.TestConstants.TS_SELENIUM_LOG_LEVEL === 'ERROR' ||
49
+ TestConstants_1.TestConstants.TS_SELENIUM_LOG_LEVEL === 'WARN' ||
50
+ TestConstants_1.TestConstants.TS_SELENIUM_LOG_LEVEL === 'INFO') {
51
+ return;
52
+ }
53
+ this.logText(indentLevel, `▼ ${text}`);
54
+ }
55
+ /**
56
+ * Uses for logging of the public methods of the {@link DriverHelper} or
57
+ * private methods inside of pageobjects.
58
+ * @param text log text
59
+ */
60
+ static trace(text, indentLevel = 6) {
61
+ if (TestConstants_1.TestConstants.TS_SELENIUM_LOG_LEVEL === 'ERROR' ||
62
+ TestConstants_1.TestConstants.TS_SELENIUM_LOG_LEVEL === 'WARN' ||
63
+ TestConstants_1.TestConstants.TS_SELENIUM_LOG_LEVEL === 'INFO' ||
64
+ TestConstants_1.TestConstants.TS_SELENIUM_LOG_LEVEL === 'DEBUG') {
65
+ return;
66
+ }
67
+ this.logText(indentLevel, `‣ ${text}`);
68
+ }
69
+ static logText(messageIndentationLevel, text) {
70
+ // start group for every level
71
+ for (let i = 0; i < messageIndentationLevel; i++) {
72
+ console.group();
73
+ }
74
+ // print the trimmed text
75
+ // if multiline, the message should be properly padded
76
+ console.log(text);
77
+ // end group for every level
78
+ for (let i = 0; i < messageIndentationLevel; i++) {
79
+ console.groupEnd();
80
+ }
81
+ }
82
+ }
83
+ exports.Logger = Logger;
84
+ //# sourceMappingURL=Logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Logger.js","sourceRoot":"","sources":["../../utils/Logger.ts"],"names":[],"mappings":";;;AAAA,oDAAiD;AAEjD;;;;;;;;wEAQwE;AAExE,MAAsB,MAAM;IAExB;;;OAGG;IACI,MAAM,CAAC,KAAK,CAAC,IAAY,EAAE,cAAsB,CAAC;QACrD,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,WAAW,IAAI,EAAE,CAAC,CAAC;IACjD,CAAC;IAED;;;OAGG;IACI,MAAM,CAAC,IAAI,CAAC,IAAY,EAAE,cAAsB,CAAC;QACpD,IAAI,6BAAa,CAAC,qBAAqB,KAAK,OAAO,EAAE;YACjD,OAAO;SACV;QACD,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,UAAU,IAAI,EAAE,CAAC,CAAC;IAChD,CAAC;IAED;;;OAGG;IACI,MAAM,CAAC,IAAI,CAAC,IAAY,EAAE,cAAsB,CAAC;QACpD,IAAI,6BAAa,CAAC,qBAAqB,KAAK,OAAO;YAC/C,6BAAa,CAAC,qBAAqB,KAAK,MAAM,EAAE;YAChD,OAAO;SACV;QACD,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED;;;OAGG;IACI,MAAM,CAAC,KAAK,CAAC,IAAY,EAAE,cAAsB,CAAC;QACrD,IAAI,6BAAa,CAAC,qBAAqB,KAAK,OAAO;YAC/C,6BAAa,CAAC,qBAAqB,KAAK,MAAM;YAC9C,6BAAa,CAAC,qBAAqB,KAAK,MAAM,EAAE;YAChD,OAAO;SACV;QACD,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED;;;;OAIG;IACI,MAAM,CAAC,KAAK,CAAC,IAAY,EAAE,cAAsB,CAAC;QACrD,IAAI,6BAAa,CAAC,qBAAqB,KAAK,OAAO;YAC/C,6BAAa,CAAC,qBAAqB,KAAK,MAAM;YAC9C,6BAAa,CAAC,qBAAqB,KAAK,MAAM;YAC9C,6BAAa,CAAC,qBAAqB,KAAK,OAAO,EAAE;YACjD,OAAO;SACV;QACD,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;IAC3C,CAAC;IAEO,MAAM,CAAC,OAAO,CAAC,uBAA+B,EAAE,IAAY;QAChE,8BAA8B;QAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,uBAAuB,EAAE,CAAC,EAAE,EAAE;YAC9C,OAAO,CAAC,KAAK,EAAE,CAAC;SACnB;QACD,yBAAyB;QACzB,sDAAsD;QACtD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,4BAA4B;QAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,uBAAuB,EAAE,CAAC,EAAE,EAAE;YAC9C,OAAO,CAAC,QAAQ,EAAE,CAAC;SACtB;IACL,CAAC;CACJ;AA1ED,wBA0EC"}
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ /*********************************************************************
3
+ * Copyright (c) 2021 Red Hat, Inc.
4
+ *
5
+ * This program and the accompanying materials are made
6
+ * available under the terms of the Eclipse Public License 2.0
7
+ * which is available at https://www.eclipse.org/legal/epl-2.0/
8
+ *
9
+ * SPDX-License-Identifier: EPL-2.0
10
+ **********************************************************************/
11
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
12
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
13
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
14
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
15
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
16
+ };
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.Sanitizer = void 0;
19
+ const inversify_1 = require("inversify");
20
+ let Sanitizer = class Sanitizer {
21
+ sanitize(arg) {
22
+ return arg.replace(/[\/]/g, '+').replace(/[\,]/g, '.').replace(/[\:]/g, '-').replace(/[\'\"]/g, '').replace(/[^a-z0-9\+\-\.\(\)\[\]\_]/gi, '_');
23
+ }
24
+ };
25
+ Sanitizer = __decorate([
26
+ inversify_1.injectable()
27
+ ], Sanitizer);
28
+ exports.Sanitizer = Sanitizer;
29
+ //# sourceMappingURL=Sanitizer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Sanitizer.js","sourceRoot":"","sources":["../../utils/Sanitizer.ts"],"names":[],"mappings":";AAAA;;;;;;;;wEAQwE;;;;;;;;;AAExE,yCAAuC;AAGvC,IAAa,SAAS,GAAtB,MAAa,SAAS;IAEX,QAAQ,CAAC,GAAW;QACvB,OAAO,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,6BAA6B,EAAE,GAAG,CAAC,CAAC;IACpJ,CAAC;CAEJ,CAAA;AANY,SAAS;IADrB,sBAAU,EAAE;GACA,SAAS,CAMrB;AANY,8BAAS"}
@@ -0,0 +1,107 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
15
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
16
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
17
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
18
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
19
+ };
20
+ var __importStar = (this && this.__importStar) || function (mod) {
21
+ if (mod && mod.__esModule) return mod;
22
+ var result = {};
23
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
24
+ __setModuleDefault(result, mod);
25
+ return result;
26
+ };
27
+ var __metadata = (this && this.__metadata) || function (k, v) {
28
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
29
+ };
30
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
31
+ return function (target, key) { decorator(target, key, paramIndex); }
32
+ };
33
+ Object.defineProperty(exports, "__esModule", { value: true });
34
+ exports.ScreenCatcher = void 0;
35
+ /*********************************************************************
36
+ * Copyright (c) 2021 Red Hat, Inc.
37
+ *
38
+ * This program and the accompanying materials are made
39
+ * available under the terms of the Eclipse Public License 2.0
40
+ * which is available at https://www.eclipse.org/legal/epl-2.0/
41
+ *
42
+ * SPDX-License-Identifier: EPL-2.0
43
+ **********************************************************************/
44
+ const fs = __importStar(require("fs"));
45
+ const inversify_1 = require("inversify");
46
+ const inversify_types_1 = require("../inversify.types");
47
+ const DriverHelper_1 = require("./DriverHelper");
48
+ const __1 = require("..");
49
+ const Sanitizer_1 = require("./Sanitizer");
50
+ const selenium_webdriver_1 = require("selenium-webdriver");
51
+ let ScreenCatcher = class ScreenCatcher {
52
+ constructor(driverHelper, sanitizer) {
53
+ this.driverHelper = driverHelper;
54
+ this.sanitizer = sanitizer;
55
+ }
56
+ async catchMethodScreen(methodName, methodIndex, screenshotIndex) {
57
+ const executionScreenCastDir = `${__1.TestConstants.TS_SELENIUM_REPORT_FOLDER}/executionScreencast`;
58
+ const executionScreenCastErrorsDir = `${__1.TestConstants.TS_SELENIUM_REPORT_FOLDER}/executionScreencastErrors`;
59
+ const formattedMethodIndex = new Intl.NumberFormat('en-us', { minimumIntegerDigits: 3 }).format(methodIndex);
60
+ const formattedScreenshotIndex = new Intl.NumberFormat('en-us', { minimumIntegerDigits: 5 }).format(screenshotIndex).replace(/,/g, '');
61
+ if (!fs.existsSync(__1.TestConstants.TS_SELENIUM_REPORT_FOLDER)) {
62
+ fs.mkdirSync(__1.TestConstants.TS_SELENIUM_REPORT_FOLDER);
63
+ }
64
+ if (!fs.existsSync(executionScreenCastDir)) {
65
+ fs.mkdirSync(executionScreenCastDir);
66
+ }
67
+ const date = new Date();
68
+ const timeStr = date.toLocaleTimeString('en-us', { hour12: false }) + '.' + new Intl.NumberFormat('en-us', { minimumIntegerDigits: 3 }).format(date.getMilliseconds());
69
+ const screenshotPath = `${executionScreenCastDir}/${formattedMethodIndex}-${formattedScreenshotIndex}--(${this.sanitizer.sanitize(timeStr)})_${this.sanitizer.sanitize(methodName)}.png`;
70
+ try {
71
+ await this.catchScreen(screenshotPath);
72
+ }
73
+ catch (err) {
74
+ if (!fs.existsSync(executionScreenCastErrorsDir)) {
75
+ fs.mkdirSync(executionScreenCastErrorsDir);
76
+ }
77
+ let errorLogFilePath = screenshotPath.replace('.png', '.txt');
78
+ errorLogFilePath = errorLogFilePath.replace(executionScreenCastDir, executionScreenCastErrorsDir);
79
+ if (err instanceof selenium_webdriver_1.error.IError) {
80
+ await this.writeErrorLog(errorLogFilePath, err);
81
+ }
82
+ }
83
+ }
84
+ async catchScreen(screenshotPath) {
85
+ const screenshot = await this.driverHelper.getDriver().takeScreenshot();
86
+ const screenshotStream = fs.createWriteStream(screenshotPath);
87
+ screenshotStream.write(Buffer.from(screenshot, 'base64'));
88
+ screenshotStream.end();
89
+ }
90
+ async writeErrorLog(errorLogPath, err) {
91
+ console.log(`Failed to save screenshot, additional information in the ${errorLogPath}`);
92
+ if (err.stack) {
93
+ const screenshotStream = fs.createWriteStream(errorLogPath);
94
+ screenshotStream.write(Buffer.from(err.stack, 'utf8'));
95
+ screenshotStream.end();
96
+ }
97
+ }
98
+ };
99
+ ScreenCatcher = __decorate([
100
+ inversify_1.injectable(),
101
+ __param(0, inversify_1.inject(inversify_types_1.CLASSES.DriverHelper)),
102
+ __param(1, inversify_1.inject(inversify_types_1.CLASSES.Sanitizer)),
103
+ __metadata("design:paramtypes", [DriverHelper_1.DriverHelper,
104
+ Sanitizer_1.Sanitizer])
105
+ ], ScreenCatcher);
106
+ exports.ScreenCatcher = ScreenCatcher;
107
+ //# sourceMappingURL=ScreenCatcher.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ScreenCatcher.js","sourceRoot":"","sources":["../../utils/ScreenCatcher.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ var CheGitApi_1;
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.CheGitApi = void 0;
17
+ const inversify_1 = require("inversify");
18
+ const inversify_types_1 = require("../../inversify.types");
19
+ const CheApiRequestHandler_1 = require("../../utils/requestHandlers/CheApiRequestHandler");
20
+ let CheGitApi = CheGitApi_1 = class CheGitApi {
21
+ constructor(processRequestHandler) {
22
+ this.processRequestHandler = processRequestHandler;
23
+ }
24
+ async getPublicSSHKey() {
25
+ try {
26
+ const responce = await this.processRequestHandler.get(CheGitApi_1.GIT_API_ENTRIPOINT_URL);
27
+ return responce.data[0].publicKey;
28
+ }
29
+ catch (error) {
30
+ console.error('Cannot get public ssh key with API \n' + error);
31
+ throw error;
32
+ }
33
+ }
34
+ };
35
+ CheGitApi.GIT_API_ENTRIPOINT_URL = 'api/ssh/vcs';
36
+ CheGitApi = CheGitApi_1 = __decorate([
37
+ inversify_1.injectable(),
38
+ __param(0, inversify_1.inject(inversify_types_1.CLASSES.CheApiRequestHandler)),
39
+ __metadata("design:paramtypes", [CheApiRequestHandler_1.CheApiRequestHandler])
40
+ ], CheGitApi);
41
+ exports.CheGitApi = CheGitApi;
42
+ //# sourceMappingURL=CheGitApi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CheGitApi.js","sourceRoot":"","sources":["../../../utils/VCS/CheGitApi.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAA+C;AAC/C,2DAAgD;AAChD,2FAAwF;AAIxF,IAAa,SAAS,iBAAtB,MAAa,SAAS;IAGpB,YAAmE,qBAA2C;QAA3C,0BAAqB,GAArB,qBAAqB,CAAsB;IAAI,CAAC;IAI5G,KAAK,CAAE,eAAe;QAE3B,IAAI;YACF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,WAAS,CAAC,sBAAsB,CAAC,CAAC;YACxF,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;SACnC;QAAC,OAAO,KAAK,EAAE;YACd,OAAO,CAAC,KAAK,CAAC,uCAAuC,GAAG,KAAK,CAAC,CAAC;YAC/D,MAAM,KAAK,CAAC;SACb;IAEH,CAAC;CAEF,CAAA;AAlBiB,gCAAsB,GAAG,aAAa,CAAC;AAD5C,SAAS;IADrB,sBAAU,EAAE;IAIE,WAAA,kBAAM,CAAC,yBAAO,CAAC,oBAAoB,CAAC,CAAA;qCAAyC,2CAAoB;GAHnG,SAAS,CAmBrB;AAnBY,8BAAS"}
@@ -0,0 +1,126 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __importDefault = (this && this.__importDefault) || function (mod) {
9
+ return (mod && mod.__esModule) ? mod : { "default": mod };
10
+ };
11
+ var GitHubUtil_1;
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.GitHubUtil = void 0;
14
+ const inversify_1 = require("inversify");
15
+ const axios_1 = __importDefault(require("axios"));
16
+ let GitHubUtil = GitHubUtil_1 = class GitHubUtil {
17
+ /**
18
+ * add public part of ssh key to the defied github account
19
+ * @param authToken
20
+ * @param title
21
+ * @param key
22
+ */
23
+ async addPublicSshKeyToUserAccount(authToken, title, key) {
24
+ const gitHubApiSshURL = GitHubUtil_1.GITHUB_API_ENTRIPOINT_URL + 'user/keys';
25
+ const authHeader = { headers: { 'Authorization': 'token ' + authToken, 'Content-Type': 'application/json' } };
26
+ const data = {
27
+ title: `${title}`,
28
+ key: `${key}`
29
+ };
30
+ try {
31
+ await axios_1.default.post(gitHubApiSshURL, JSON.stringify(data), authHeader);
32
+ }
33
+ catch (error) {
34
+ console.error('Cannot add the public key to the GitHub account: ');
35
+ console.error(error);
36
+ throw error;
37
+ }
38
+ }
39
+ async getRawContentFromFile(pathToFile) {
40
+ const gitHubContentEntryPointUrl = 'https://raw.githubusercontent.com/';
41
+ const pathToRawContent = `${gitHubContentEntryPointUrl}${pathToFile}`;
42
+ const authorization = 'Authorization';
43
+ const contentType = 'Content-Type';
44
+ try {
45
+ delete axios_1.default.defaults.headers.common[authorization];
46
+ delete axios_1.default.defaults.headers.common[contentType];
47
+ const response = await axios_1.default.get(`${gitHubContentEntryPointUrl}${pathToFile}`);
48
+ return response.data;
49
+ }
50
+ catch (error) {
51
+ console.error('Cannot get content form the raw github content: ' + pathToRawContent);
52
+ console.error(error);
53
+ throw error;
54
+ }
55
+ }
56
+ async getPublicSshKeys(authToken) {
57
+ const gitHubApiSshURL = GitHubUtil_1.GITHUB_API_ENTRIPOINT_URL + 'user/keys';
58
+ const authHeader = { headers: { 'Authorization': 'token ' + authToken, 'Content-Type': 'application/json' } };
59
+ try {
60
+ const response = await axios_1.default.get(gitHubApiSshURL, authHeader);
61
+ const stringified = JSON.stringify(response.data);
62
+ const arrayOfWorkspaces = JSON.parse(stringified);
63
+ const idOfRunningWorkspace = new Array();
64
+ for (let entry of arrayOfWorkspaces) {
65
+ idOfRunningWorkspace.push(entry.id);
66
+ }
67
+ return idOfRunningWorkspace;
68
+ }
69
+ catch (error) {
70
+ console.error('Cannot get public Keys from github: ' + gitHubApiSshURL);
71
+ console.error(error);
72
+ throw error;
73
+ }
74
+ }
75
+ async removePublicSshKey(authToken, keyId) {
76
+ const gitHubApiSshURL = GitHubUtil_1.GITHUB_API_ENTRIPOINT_URL + 'user/keys/' + keyId;
77
+ const authHeader = { headers: { 'Authorization': 'token ' + authToken, 'Content-Type': 'application/json' } };
78
+ try {
79
+ await axios_1.default.delete(gitHubApiSshURL, authHeader);
80
+ }
81
+ catch (error) {
82
+ console.error('Cannot delete the public key from the GitHub account: ');
83
+ console.error(error);
84
+ throw error;
85
+ }
86
+ }
87
+ async deletePublicSshKeyByName(authToken, keyName) {
88
+ const gitHubApiSshURL = GitHubUtil_1.GITHUB_API_ENTRIPOINT_URL + 'user/keys';
89
+ const authHeader = { headers: { 'Authorization': 'token ' + authToken, 'Content-Type': 'application/json' } };
90
+ try {
91
+ const response = await axios_1.default.get(gitHubApiSshURL, authHeader);
92
+ const stringified = JSON.stringify(response.data);
93
+ const arrayOfPublicKeys = JSON.parse(stringified);
94
+ for (let entry of arrayOfPublicKeys) {
95
+ if (entry.title === keyName) {
96
+ await this.removePublicSshKey(authToken, entry.id);
97
+ break;
98
+ }
99
+ }
100
+ }
101
+ catch (error) {
102
+ console.error('Cannot delete the ' + keyName + ' public key from the GitHub account');
103
+ console.error(error);
104
+ throw error;
105
+ }
106
+ }
107
+ async removeAllPublicSshKeys(authToken) {
108
+ try {
109
+ const idList = await this.getPublicSshKeys(authToken);
110
+ for (let id of idList) {
111
+ await this.removePublicSshKey(authToken, id);
112
+ }
113
+ }
114
+ catch (error) {
115
+ console.error('Cannot delete the public key from the GitHub account: ');
116
+ console.error(error);
117
+ throw error;
118
+ }
119
+ }
120
+ };
121
+ GitHubUtil.GITHUB_API_ENTRIPOINT_URL = 'https://api.github.com/';
122
+ GitHubUtil = GitHubUtil_1 = __decorate([
123
+ inversify_1.injectable()
124
+ ], GitHubUtil);
125
+ exports.GitHubUtil = GitHubUtil;
126
+ //# sourceMappingURL=GitHubUtil.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GitHubUtil.js","sourceRoot":"","sources":["../../../../utils/VCS/github/GitHubUtil.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ /*********************************************************************
3
+ * Copyright (c) 2019 Red Hat, Inc.
4
+ *
5
+ * This program and the accompanying materials are made
6
+ * available under the terms of the Eclipse Public License 2.0
7
+ * which is available at https://www.eclipse.org/legal/epl-2.0/
8
+ *
9
+ * SPDX-License-Identifier: EPL-2.0
10
+ **********************************************************************/
11
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
12
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
13
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
14
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
15
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
16
+ };
17
+ var __metadata = (this && this.__metadata) || function (k, v) {
18
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
19
+ };
20
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
21
+ return function (target, key) { decorator(target, key, paramIndex); }
22
+ };
23
+ Object.defineProperty(exports, "__esModule", { value: true });
24
+ exports.WorkspaceNameHandler = void 0;
25
+ const inversify_types_1 = require("../inversify.types");
26
+ const inversify_1 = require("inversify");
27
+ const BrowserTabsUtil_1 = require("./BrowserTabsUtil");
28
+ const Logger_1 = require("./Logger");
29
+ let WorkspaceNameHandler = class WorkspaceNameHandler {
30
+ constructor(browserTabsUtil) {
31
+ this.browserTabsUtil = browserTabsUtil;
32
+ }
33
+ generateWorkspaceName(prefix, randomLength) {
34
+ const possibleCharacters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
35
+ const possibleCharactersLength = possibleCharacters.length;
36
+ let randomPart = '';
37
+ Logger_1.Logger.debug('WorkspaceNameHandler.generateWorkspaceName');
38
+ for (let i = 0; i < randomLength; i++) {
39
+ let currentRandomIndex = Math.floor(Math.random() * Math.floor(possibleCharactersLength));
40
+ randomPart += possibleCharacters[currentRandomIndex];
41
+ }
42
+ return prefix + randomPart;
43
+ }
44
+ async getNameFromUrl() {
45
+ let workspaceUrl = await this.browserTabsUtil.getCurrentUrl();
46
+ Logger_1.Logger.debug(`WorkspaceNameHandler.fromWorkspaceUrl workspaceUrl: ${workspaceUrl}`);
47
+ const workspaceUrlParts = workspaceUrl.split('/');
48
+ const workspaceNameQueryString = workspaceUrlParts[workspaceUrlParts.length - 1];
49
+ const workspaceName = workspaceNameQueryString.split('?')[0];
50
+ Logger_1.Logger.debug(`workspaceName: ${workspaceName}`);
51
+ return workspaceName;
52
+ }
53
+ };
54
+ WorkspaceNameHandler = __decorate([
55
+ inversify_1.injectable(),
56
+ __param(0, inversify_1.inject(inversify_types_1.CLASSES.BrowserTabsUtil)),
57
+ __metadata("design:paramtypes", [BrowserTabsUtil_1.BrowserTabsUtil])
58
+ ], WorkspaceNameHandler);
59
+ exports.WorkspaceNameHandler = WorkspaceNameHandler;
60
+ //# sourceMappingURL=WorkspaceNameHandler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WorkspaceNameHandler.js","sourceRoot":"","sources":["../../utils/WorkspaceNameHandler.ts"],"names":[],"mappings":";AAAA;;;;;;;;wEAQwE;;;;;;;;;;;;;;;AAExE,wDAA6C;AAC7C,yCAA+C;AAC/C,uDAAoD;AACpD,qCAAkC;AAGlC,IAAa,oBAAoB,GAAjC,MAAa,oBAAoB;IAE7B,YAA8D,eAAgC;QAAhC,oBAAe,GAAf,eAAe,CAAiB;IAAG,CAAC;IAE3F,qBAAqB,CAAC,MAAc,EAAE,YAAoB;QAC7D,MAAM,kBAAkB,GAAW,sDAAsD,CAAC;QAC1F,MAAM,wBAAwB,GAAW,kBAAkB,CAAC,MAAM,CAAC;QACnE,IAAI,UAAU,GAAW,EAAE,CAAC;QAC5B,eAAM,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAE3D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,EAAE,CAAC,EAAE,EAAE;YACnC,IAAI,kBAAkB,GAAW,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAC;YAElG,UAAU,IAAI,kBAAkB,CAAC,kBAAkB,CAAC,CAAC;SACxD;QAED,OAAO,MAAM,GAAG,UAAU,CAAC;IAC/B,CAAC;IAEM,KAAK,CAAC,cAAc;QACvB,IAAI,YAAY,GAAW,MAAM,IAAI,CAAC,eAAe,CAAC,aAAa,EAAE,CAAC;QACtE,eAAM,CAAC,KAAK,CAAC,wDAAwD,YAAY,EAAE,CAAC,CAAC;QAErF,MAAM,iBAAiB,GAAa,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC5D,MAAM,wBAAwB,GAAW,iBAAiB,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACzF,MAAM,aAAa,GAAW,wBAAwB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAErE,eAAM,CAAC,KAAK,CAAC,kBAAkB,aAAa,EAAE,CAAC,CAAC;QAEhD,OAAO,aAAa,CAAC;IACzB,CAAC;CACJ,CAAA;AA/BY,oBAAoB;IADhC,sBAAU,EAAE;IAGI,WAAA,kBAAM,CAAC,yBAAO,CAAC,eAAe,CAAC,CAAA;qCAAmC,iCAAe;GAFrF,oBAAoB,CA+BhC;AA/BY,oDAAoB"}
@@ -0,0 +1,126 @@
1
+ "use strict";
2
+ /*********************************************************************
3
+ * Copyright (c) 2019 Red Hat, Inc.
4
+ *
5
+ * This program and the accompanying materials are made
6
+ * available under the terms of the Eclipse Public License 2.0
7
+ * which is available at https://www.eclipse.org/legal/epl-2.0/
8
+ *
9
+ * SPDX-License-Identifier: EPL-2.0
10
+ **********************************************************************/
11
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
12
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
13
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
14
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
15
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
16
+ };
17
+ var __metadata = (this && this.__metadata) || function (k, v) {
18
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
19
+ };
20
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
21
+ return function (target, key) { decorator(target, key, paramIndex); }
22
+ };
23
+ var __importDefault = (this && this.__importDefault) || function (mod) {
24
+ return (mod && mod.__esModule) ? mod : { "default": mod };
25
+ };
26
+ Object.defineProperty(exports, "__esModule", { value: true });
27
+ exports.CheApiRequestHandler = void 0;
28
+ const axios_1 = __importDefault(require("axios"));
29
+ const TestConstants_1 = require("../../TestConstants");
30
+ const inversify_types_1 = require("../../inversify.types");
31
+ const inversify_1 = require("inversify");
32
+ const Logger_1 = require("../Logger");
33
+ let CheApiRequestHandler = class CheApiRequestHandler {
34
+ constructor(headerHandler) {
35
+ this.headerHandler = headerHandler;
36
+ }
37
+ /**
38
+ * This method adds a request interceptor into axios request interceptors list and returns an ID of the interceptor
39
+ */
40
+ static enableRequestInteceptor() {
41
+ Logger_1.Logger.debug(`CheApiRequestHandler.enableRequestInterceptor`);
42
+ return axios_1.default.interceptors.request.use(request => {
43
+ try {
44
+ let request_censored = JSON.parse(JSON.stringify(request));
45
+ if (request_censored === undefined) {
46
+ Logger_1.Logger.error('JSON.parse returned an undefined object, cannot process request');
47
+ return request;
48
+ }
49
+ if (request_censored.headers === undefined) {
50
+ Logger_1.Logger.warn('Request does not contain any headers object');
51
+ return request;
52
+ }
53
+ request_censored.headers.Authorization = 'CENSORED';
54
+ request_censored.headers.Cookie = 'CENSORED';
55
+ Logger_1.Logger.info(`RequestHandler request:\n` + request_censored);
56
+ }
57
+ catch (err) {
58
+ Logger_1.Logger.error(`RequestHandler request: Failed to deep clone AxiosRequestConfig:` + err);
59
+ }
60
+ return request;
61
+ });
62
+ }
63
+ /**
64
+ * This method adds a response interceptor into axios response interceptors list and returns an ID of the interceptor
65
+ */
66
+ static enableResponseInterceptor() {
67
+ Logger_1.Logger.debug(`CheApiRequestHandler.enableResponseRedirects`);
68
+ return axios_1.default.interceptors.response.use(response => {
69
+ try {
70
+ let response_censored = JSON.parse(JSON.stringify(response, (key, value) => {
71
+ switch (key) {
72
+ case 'request': return 'CENSORED';
73
+ default: return value;
74
+ }
75
+ }));
76
+ if (response_censored === undefined) {
77
+ Logger_1.Logger.error('JSON.parse returned an undefined object, cannot process response');
78
+ return response;
79
+ }
80
+ if (response_censored.config === undefined) {
81
+ Logger_1.Logger.warn('Response does not contain any config object');
82
+ return response;
83
+ }
84
+ if (response_censored.config.headers === undefined) {
85
+ Logger_1.Logger.warn('Response does not contain any config.headers object');
86
+ return response;
87
+ }
88
+ response_censored.config.headers.Authorization = 'CENSORED';
89
+ response_censored.config.headers.Cookie = 'CENSORED';
90
+ if (response_censored.data.access_token !== null) {
91
+ response_censored.data.access_token = 'CENSORED';
92
+ }
93
+ if (response_censored.data.refresh_token !== null) {
94
+ response_censored.data.refresh_token = 'CENSORED';
95
+ }
96
+ Logger_1.Logger.info(`RequestHandler response:\n` + response_censored);
97
+ }
98
+ catch (err) {
99
+ Logger_1.Logger.error(`RequestHandler response: Failed to deep clone AxiosResponse:` + err);
100
+ }
101
+ return response;
102
+ });
103
+ }
104
+ async get(relativeUrl) {
105
+ return await axios_1.default.get(this.assembleUrl(relativeUrl), await this.headerHandler.get());
106
+ }
107
+ async post(relativeUrl, data) {
108
+ return await axios_1.default.post(this.assembleUrl(relativeUrl), data, await this.headerHandler.get());
109
+ }
110
+ async delete(relativeUrl) {
111
+ return await axios_1.default.delete(this.assembleUrl(relativeUrl), await this.headerHandler.get());
112
+ }
113
+ async patch(relativeUrl, patchParams) {
114
+ return await axios_1.default.patch(this.assembleUrl(relativeUrl), patchParams, await this.headerHandler.get());
115
+ }
116
+ assembleUrl(relativeUrl) {
117
+ return `${TestConstants_1.TestConstants.TS_SELENIUM_BASE_URL}/${relativeUrl}`;
118
+ }
119
+ };
120
+ CheApiRequestHandler = __decorate([
121
+ inversify_1.injectable(),
122
+ __param(0, inversify_1.inject(inversify_types_1.TYPES.IAuthorizationHeaderHandler)),
123
+ __metadata("design:paramtypes", [Object])
124
+ ], CheApiRequestHandler);
125
+ exports.CheApiRequestHandler = CheApiRequestHandler;
126
+ //# sourceMappingURL=CheApiRequestHandler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CheApiRequestHandler.js","sourceRoot":"","sources":["../../../utils/requestHandlers/CheApiRequestHandler.ts"],"names":[],"mappings":"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"}