@eclipse-che/che-e2e 7.58.1-dev-43d35ee → 7.58.1-dev-ffb0b4b

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 (219) 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 +171 -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 +140 -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 +616 -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/package.json +2 -2
@@ -0,0 +1,49 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.CheMultiuserAuthorizationHeaderHandler = void 0;
16
+ const inversify_1 = require("inversify");
17
+ const DriverHelper_1 = require("../../DriverHelper");
18
+ const inversify_types_1 = require("../../../inversify.types");
19
+ const Logger_1 = require("../../Logger");
20
+ let CheMultiuserAuthorizationHeaderHandler = class CheMultiuserAuthorizationHeaderHandler {
21
+ constructor(driverHelper) {
22
+ this.driverHelper = driverHelper;
23
+ this.authorizationToken = '';
24
+ }
25
+ async get() {
26
+ try {
27
+ let token = await this.driverHelper.getDriver().manage().getCookie('_oauth_proxy');
28
+ if (this.authorizationToken !== token.value) {
29
+ this.authorizationToken = token.value;
30
+ }
31
+ }
32
+ catch (err) {
33
+ if (this.authorizationToken.length > 0) {
34
+ Logger_1.Logger.warn(`Could not obtain _oauth_proxy cookie from chromedriver, browser session may have been killed. Using stored value.`);
35
+ }
36
+ else {
37
+ throw new Error(`Could not obtain _oauth_proxy cookie from chromedriver, browser session may have been killed. No stored token present!`);
38
+ }
39
+ }
40
+ return { headers: { 'cookie': `_oauth_proxy=${this.authorizationToken}` } };
41
+ }
42
+ };
43
+ CheMultiuserAuthorizationHeaderHandler = __decorate([
44
+ inversify_1.injectable(),
45
+ __param(0, inversify_1.inject(inversify_types_1.CLASSES.DriverHelper)),
46
+ __metadata("design:paramtypes", [DriverHelper_1.DriverHelper])
47
+ ], CheMultiuserAuthorizationHeaderHandler);
48
+ exports.CheMultiuserAuthorizationHeaderHandler = CheMultiuserAuthorizationHeaderHandler;
49
+ //# sourceMappingURL=CheMultiuserAuthorizationHeaderHandler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CheMultiuserAuthorizationHeaderHandler.js","sourceRoot":"","sources":["../../../../utils/requestHandlers/headers/CheMultiuserAuthorizationHeaderHandler.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAWA,yCAA+C;AAC/C,qDAAkD;AAClD,8DAAmD;AACnD,yCAAsC;AAGtC,IAAa,sCAAsC,GAAnD,MAAa,sCAAsC;IAG/C,YAA2D,YAA0B;QAA1B,iBAAY,GAAZ,YAAY,CAAc;QAF7E,uBAAkB,GAAW,EAAE,CAAC;IAEiD,CAAC;IAE1F,KAAK,CAAC,GAAG;QACL,IAAI;YACA,IAAI,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;YACnF,IAAI,IAAI,CAAC,kBAAkB,KAAK,KAAK,CAAC,KAAK,EAAE;gBACzC,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC,KAAK,CAAC;aACzC;SACJ;QAAC,OAAO,GAAG,EAAE;YACV,IAAI,IAAI,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE;gBACpC,eAAM,CAAC,IAAI,CAAC,mHAAmH,CAAC,CAAC;aACpI;iBAAM;gBACH,MAAM,IAAI,KAAK,CAAC,wHAAwH,CAAC,CAAC;aAC7I;SACJ;QAED,OAAO,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,gBAAgB,IAAI,CAAC,kBAAkB,EAAE,EAAE,EAAE,CAAC;IAChF,CAAC;CACJ,CAAA;AArBY,sCAAsC;IADlD,sBAAU,EAAE;IAII,WAAA,kBAAM,CAAC,yBAAO,CAAC,YAAY,CAAC,CAAA;qCAAgC,2BAAY;GAH5E,sCAAsC,CAqBlD;AArBY,wFAAsC"}
@@ -0,0 +1,12 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ //# sourceMappingURL=IAuthorizationHeaderHandler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IAuthorizationHeaderHandler.js","sourceRoot":"","sources":["../../../../utils/requestHandlers/headers/IAuthorizationHeaderHandler.ts"],"names":[],"mappings":";AAAA;;;;;;;;wEAQwE"}
@@ -0,0 +1,50 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.CheMultiuserTokenHandler = void 0;
13
+ /*********************************************************************
14
+ * Copyright (c) 2019 Red Hat, Inc.
15
+ *
16
+ * This program and the accompanying materials are made
17
+ * available under the terms of the Eclipse Public License 2.0
18
+ * which is available at https://www.eclipse.org/legal/epl-2.0/
19
+ *
20
+ * SPDX-License-Identifier: EPL-2.0
21
+ **********************************************************************/
22
+ const axios_1 = __importDefault(require("axios"));
23
+ const querystring_1 = __importDefault(require("querystring"));
24
+ const inversify_1 = require("inversify");
25
+ const TestConstants_1 = require("../../../TestConstants");
26
+ let CheMultiuserTokenHandler = class CheMultiuserTokenHandler {
27
+ async get() {
28
+ // to-do: Login to the che-dashboard and fetch the authorization related info
29
+ const keycloakUrl = '';
30
+ const params = {
31
+ client_id: 'che-public',
32
+ username: TestConstants_1.TestConstants.TS_SELENIUM_USERNAME,
33
+ password: TestConstants_1.TestConstants.TS_SELENIUM_PASSWORD,
34
+ grant_type: 'password',
35
+ };
36
+ try {
37
+ const responseToObtainBearerToken = await axios_1.default.post(keycloakUrl, querystring_1.default.stringify(params));
38
+ return responseToObtainBearerToken.data.access_token;
39
+ }
40
+ catch (err) {
41
+ console.log(`Can not get bearer token. URL used: ${keycloakUrl}`);
42
+ throw err;
43
+ }
44
+ }
45
+ };
46
+ CheMultiuserTokenHandler = __decorate([
47
+ inversify_1.injectable()
48
+ ], CheMultiuserTokenHandler);
49
+ exports.CheMultiuserTokenHandler = CheMultiuserTokenHandler;
50
+ //# sourceMappingURL=CheMultiuserTokenHandler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CheMultiuserTokenHandler.js","sourceRoot":"","sources":["../../../../utils/requestHandlers/tokens/CheMultiuserTokenHandler.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA;;;;;;;;wEAQwE;AACxE,kDAA0B;AAC1B,8DAAsC;AACtC,yCAAuC;AACvC,0DAAuD;AAKvD,IAAa,wBAAwB,GAArC,MAAa,wBAAwB;IACnC,KAAK,CAAC,GAAG;QACP,+EAA+E;QAC/E,MAAM,WAAW,GAAG,EAAE,CAAC;QAEvB,MAAM,MAAM,GAAG;YACb,SAAS,EAAE,YAAY;YACvB,QAAQ,EAAE,6BAAa,CAAC,oBAAoB;YAC5C,QAAQ,EAAE,6BAAa,CAAC,oBAAoB;YAC5C,UAAU,EAAE,UAAU;SACvB,CAAC;QAEF,IAAI;YACF,MAAM,2BAA2B,GAAG,MAAM,eAAK,CAAC,IAAI,CAClD,WAAW,EACX,qBAAW,CAAC,SAAS,CAAC,MAAM,CAAC,CAC9B,CAAC;YACF,OAAO,2BAA2B,CAAC,IAAI,CAAC,YAAY,CAAC;SACtD;QAAC,OAAO,GAAG,EAAE;YACZ,OAAO,CAAC,GAAG,CAAC,uCAAuC,WAAW,EAAE,CAAC,CAAC;YAClE,MAAM,GAAG,CAAC;SACX;IACH,CAAC;CACF,CAAA;AAvBY,wBAAwB;IADpC,sBAAU,EAAE;GACA,wBAAwB,CAuBpC;AAvBY,4DAAwB"}
@@ -0,0 +1,12 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ //# sourceMappingURL=ITokenHandler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ITokenHandler.js","sourceRoot":"","sources":["../../../../utils/requestHandlers/tokens/ITokenHandler.ts"],"names":[],"mappings":";AAAA;;;;;;;;wEAQwE"}
@@ -0,0 +1,142 @@
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.PreferencesHandlerTheia = exports.AskForConfirmationTypeTheia = exports.TerminalRendererTypeTheia = void 0;
25
+ const inversify_1 = require("inversify");
26
+ const Logger_1 = require("../Logger");
27
+ const inversify_types_1 = require("../../inversify.types");
28
+ const CheApiRequestHandler_1 = require("../requestHandlers/CheApiRequestHandler");
29
+ const Editor_1 = require("../../pageobjects/ide/theia/Editor");
30
+ const QuickOpenContainer_1 = require("../../pageobjects/ide/theia/QuickOpenContainer");
31
+ const TopMenu_1 = require("../../pageobjects/ide/theia/TopMenu");
32
+ const selenium_webdriver_1 = require("selenium-webdriver");
33
+ var TerminalRendererTypeTheia;
34
+ (function (TerminalRendererTypeTheia) {
35
+ TerminalRendererTypeTheia["canvas"] = "canvas";
36
+ TerminalRendererTypeTheia["dom"] = "dom";
37
+ })(TerminalRendererTypeTheia = exports.TerminalRendererTypeTheia || (exports.TerminalRendererTypeTheia = {}));
38
+ var AskForConfirmationTypeTheia;
39
+ (function (AskForConfirmationTypeTheia) {
40
+ AskForConfirmationTypeTheia["never"] = "never";
41
+ AskForConfirmationTypeTheia["ifRquired"] = "ifRequired";
42
+ AskForConfirmationTypeTheia["always"] = "always";
43
+ })(AskForConfirmationTypeTheia = exports.AskForConfirmationTypeTheia || (exports.AskForConfirmationTypeTheia = {}));
44
+ let PreferencesHandlerTheia = class PreferencesHandlerTheia {
45
+ constructor(requestHandler, editor, quickOpenContainer, topMenu) {
46
+ this.requestHandler = requestHandler;
47
+ this.editor = editor;
48
+ this.quickOpenContainer = quickOpenContainer;
49
+ this.topMenu = topMenu;
50
+ }
51
+ /**
52
+ * Works properly only for the running workspace.
53
+ */
54
+ async setPreferenceUsingUI(property, value) {
55
+ const tabTitle = 'settings.json';
56
+ await this.topMenu.selectOption('View', 'Find Command...');
57
+ await this.quickOpenContainer.typeAndSelectSuggestion('Preferences:', 'Preferences: Open Preferences (JSON)');
58
+ let editorText = await this.editor.getEditorVisibleText(tabTitle);
59
+ if (!editorText) {
60
+ editorText = '{}';
61
+ }
62
+ let preferences = JSON.parse(editorText);
63
+ preferences[property] = value;
64
+ await this.editor.deleteAllText(tabTitle);
65
+ await this.editor.type(tabTitle, JSON.stringify(preferences), 1);
66
+ await this.editor.type(tabTitle, selenium_webdriver_1.Key.chord(selenium_webdriver_1.Key.CONTROL, selenium_webdriver_1.Key.SHIFT, 'i'), 1);
67
+ }
68
+ /**
69
+ * Works properly only if set before workspace startup.
70
+ */
71
+ async setTerminalType(type) {
72
+ Logger_1.Logger.debug('PreferencesHandler.setTerminalToDom');
73
+ await this.setPreference('terminal.integrated.rendererType', type);
74
+ }
75
+ /**
76
+ *
77
+ * @param askForConfirmation possible values are "never", "ifRequired" and "always"
78
+ */
79
+ async setConfirmExit(askForConfirmation) {
80
+ Logger_1.Logger.debug(`PreferencesHandler.setConfirmExit to ${askForConfirmation}`);
81
+ await this.setPreference(`application.confirmExit`, askForConfirmation);
82
+ }
83
+ /**
84
+ * Works properly only if set before workspace startup.
85
+ */
86
+ async setUseGoLanaguageServer() {
87
+ Logger_1.Logger.debug(`PreferencesHandler.setUseGoLanguageServer to true.`);
88
+ await this.setPreference('go.useLanguageServer', 'true');
89
+ }
90
+ /**
91
+ * Works properly only if set before workspace startup.
92
+ */
93
+ async setVscodeKubernetesPluginConfig(vsKubernetesConfig) {
94
+ Logger_1.Logger.debug(`PreferencesHandler.setVscodeKubernetesPluginConfig`);
95
+ await this.setPreference('vs-kubernetes', vsKubernetesConfig);
96
+ }
97
+ async setPreference(attribute, value) {
98
+ Logger_1.Logger.trace(`PreferencesHandler.setPreferences ${attribute} to ${value}`);
99
+ let response;
100
+ try {
101
+ response = await this.requestHandler.get('api/preferences');
102
+ }
103
+ catch (e) {
104
+ Logger_1.Logger.error(`PreferencesHandler.setPreferences failed to get user preferences: ${e}`);
105
+ return;
106
+ }
107
+ let userPref = response.data;
108
+ try {
109
+ let theiaPref = JSON.parse(userPref['theia-user-preferences']);
110
+ theiaPref[attribute] = value;
111
+ userPref['theia-user-preferences'] = JSON.stringify(theiaPref);
112
+ await this.requestHandler.post('api/preferences', userPref);
113
+ }
114
+ catch (e) {
115
+ // setting terminal before running a workspace, so no theia preferences are set
116
+ Logger_1.Logger.warn(`PreferencesHandler.setPreference could not set theia-user-preferences from api/preferences response, forcing manually.`);
117
+ let theiaPref = `{ "${attribute}":"${value}" }`;
118
+ userPref['theia-user-preferences'] = JSON.stringify(JSON.parse(theiaPref));
119
+ try {
120
+ await this.requestHandler.post('api/preferences', userPref);
121
+ }
122
+ catch (e) {
123
+ Logger_1.Logger.error(`PreferencesHandler.setPreference failed to manually set preferences value: ${e}`);
124
+ return;
125
+ }
126
+ }
127
+ Logger_1.Logger.trace(`PreferencesHandler.setPreferences ${attribute} to ${value} done.`);
128
+ }
129
+ };
130
+ PreferencesHandlerTheia = __decorate([
131
+ inversify_1.injectable(),
132
+ __param(0, inversify_1.inject(inversify_types_1.CLASSES.CheApiRequestHandler)),
133
+ __param(1, inversify_1.inject(inversify_types_1.CLASSES.Editor)),
134
+ __param(2, inversify_1.inject(inversify_types_1.CLASSES.QuickOpenContainer)),
135
+ __param(3, inversify_1.inject(inversify_types_1.CLASSES.TopMenu)),
136
+ __metadata("design:paramtypes", [CheApiRequestHandler_1.CheApiRequestHandler,
137
+ Editor_1.Editor,
138
+ QuickOpenContainer_1.QuickOpenContainer,
139
+ TopMenu_1.TopMenu])
140
+ ], PreferencesHandlerTheia);
141
+ exports.PreferencesHandlerTheia = PreferencesHandlerTheia;
142
+ //# sourceMappingURL=PreferencesHandlerTheia.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PreferencesHandlerTheia.js","sourceRoot":"","sources":["../../../utils/theia/PreferencesHandlerTheia.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,67 @@
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 ApiUrlResolver_1;
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.ApiUrlResolver = void 0;
17
+ /*********************************************************************
18
+ * Copyright (c) 2019 Red Hat, Inc.
19
+ *
20
+ * This program and the accompanying materials are made
21
+ * available under the terms of the Eclipse Public License 2.0
22
+ * which is available at https://www.eclipse.org/legal/epl-2.0/
23
+ *
24
+ * SPDX-License-Identifier: EPL-2.0
25
+ **********************************************************************/
26
+ const inversify_1 = require("inversify");
27
+ const inversify_types_1 = require("../../inversify.types");
28
+ const Logger_1 = require("../Logger");
29
+ const CheApiRequestHandler_1 = require("../requestHandlers/CheApiRequestHandler");
30
+ let ApiUrlResolver = ApiUrlResolver_1 = class ApiUrlResolver {
31
+ constructor(processRequestHandler) {
32
+ this.processRequestHandler = processRequestHandler;
33
+ this.userNamespace = '';
34
+ }
35
+ async getWorkspaceApiUrl(workspaceName) {
36
+ return `${await this.getWorkspacesApiUrl()}/${workspaceName}`;
37
+ }
38
+ async getWorkspacesApiUrl() {
39
+ const namespace = await this.obtainUserNamespace();
40
+ return `${ApiUrlResolver_1.DASHBOARD_API_URL}/${namespace}/devworkspaces`;
41
+ }
42
+ getKubernetesApiUrl() {
43
+ return ApiUrlResolver_1.KUBERNETES_API_URL;
44
+ }
45
+ async obtainUserNamespace() {
46
+ Logger_1.Logger.debug(`ApiUrlResolver.obtainUserNamespace ${this.userNamespace}`);
47
+ if (this.userNamespace.length === 0) {
48
+ Logger_1.Logger.trace(`ApiUrlResolver.obtainUserNamespace USER_NAMESPACE.length = 0, calling kubernetes API`);
49
+ const kubernetesResponse = await this.processRequestHandler.get(ApiUrlResolver_1.KUBERNETES_API_URL);
50
+ if (kubernetesResponse.status !== 200) {
51
+ throw new Error(`Cannot get user namespace from kubernetes API. Code: ${kubernetesResponse.status} Data: ${kubernetesResponse.data}`);
52
+ }
53
+ this.userNamespace = kubernetesResponse.data[0].name;
54
+ Logger_1.Logger.debug(`ApiUrlResolver.obtainUserNamespace kubeapi success: ${this.userNamespace}`);
55
+ }
56
+ return this.userNamespace;
57
+ }
58
+ };
59
+ ApiUrlResolver.DASHBOARD_API_URL = 'dashboard/api/namespace';
60
+ ApiUrlResolver.KUBERNETES_API_URL = 'api/kubernetes/namespace';
61
+ ApiUrlResolver = ApiUrlResolver_1 = __decorate([
62
+ inversify_1.injectable(),
63
+ __param(0, inversify_1.inject(inversify_types_1.CLASSES.CheApiRequestHandler)),
64
+ __metadata("design:paramtypes", [CheApiRequestHandler_1.CheApiRequestHandler])
65
+ ], ApiUrlResolver);
66
+ exports.ApiUrlResolver = ApiUrlResolver;
67
+ //# sourceMappingURL=ApiUrlResolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ApiUrlResolver.js","sourceRoot":"","sources":["../../../utils/workspace/ApiUrlResolver.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA;;;;;;;;wEAQwE;AACxE,yCAA+C;AAC/C,2DAAgD;AAChD,sCAAmC;AACnC,kFAA+E;AAG/E,IAAa,cAAc,sBAA3B,MAAa,cAAc;IAMvB,YAAmE,qBAA2C;QAA3C,0BAAqB,GAArB,qBAAqB,CAAsB;QAFtG,kBAAa,GAAW,EAAE,CAAC;IAE8E,CAAC;IAE3G,KAAK,CAAC,kBAAkB,CAAC,aAAqB;QACjD,OAAO,GAAG,MAAM,IAAI,CAAC,mBAAmB,EAAE,IAAI,aAAa,EAAE,CAAC;IAClE,CAAC;IAEM,KAAK,CAAC,mBAAmB;QAC5B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACnD,OAAO,GAAG,gBAAc,CAAC,iBAAiB,IAAI,SAAS,gBAAgB,CAAC;IAC5E,CAAC;IAEM,mBAAmB;QACtB,OAAO,gBAAc,CAAC,kBAAkB,CAAC;IAC7C,CAAC;IAEO,KAAK,CAAC,mBAAmB;QAC7B,eAAM,CAAC,KAAK,CAAC,sCAAsC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QACzE,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;YACjC,eAAM,CAAC,KAAK,CAAC,sFAAsF,CAAC,CAAC;YACrG,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,gBAAc,CAAC,kBAAkB,CAAC,CAAC;YACnG,IAAI,kBAAkB,CAAC,MAAM,KAAK,GAAG,EAAE;gBACnC,MAAM,IAAI,KAAK,CAAC,wDAAwD,kBAAkB,CAAC,MAAM,UAAU,kBAAkB,CAAC,IAAI,EAAE,CAAC,CAAC;aACzI;YACD,IAAI,CAAC,aAAa,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YACrD,eAAM,CAAC,KAAK,CAAC,uDAAuD,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;SAC7F;QACD,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;CACJ,CAAA;AAjC2B,gCAAiB,GAAW,yBAAyB,CAAC;AACtD,iCAAkB,GAAW,0BAA0B,CAAC;AAFvE,cAAc;IAD1B,sBAAU,EAAE;IAOI,WAAA,kBAAM,CAAC,yBAAO,CAAC,oBAAoB,CAAC,CAAA;qCAAyC,2CAAoB;GANrG,cAAc,CAkC1B;AAlCY,wCAAc"}
@@ -0,0 +1,12 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ //# sourceMappingURL=ITestWorkspaceUtil.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ITestWorkspaceUtil.js","sourceRoot":"","sources":["../../../utils/workspace/ITestWorkspaceUtil.ts"],"names":[],"mappings":";AAAA;;;;;;;;wEAQwE"}