@eclipse-che/che-e2e 7.121.0-next → 7.121.0-next-afa8d43

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 (256) hide show
  1. package/dist/configs/inversify.config.js +121 -0
  2. package/dist/configs/inversify.config.js.map +1 -0
  3. package/dist/configs/inversify.types.js +73 -0
  4. package/dist/configs/inversify.types.js.map +1 -0
  5. package/dist/configs/mocharc.js +42 -0
  6. package/dist/configs/mocharc.js.map +1 -0
  7. package/dist/constants/API_TEST_CONSTANTS.js +60 -0
  8. package/dist/constants/API_TEST_CONSTANTS.js.map +1 -0
  9. package/dist/constants/BASE_TEST_CONSTANTS.js +109 -0
  10. package/dist/constants/BASE_TEST_CONSTANTS.js.map +1 -0
  11. package/dist/constants/CHROME_DRIVER_CONSTANTS.js +40 -0
  12. package/dist/constants/CHROME_DRIVER_CONSTANTS.js.map +1 -0
  13. package/dist/constants/EDITOR_CONSTANTS.js +114 -0
  14. package/dist/constants/EDITOR_CONSTANTS.js.map +1 -0
  15. package/dist/constants/FACTORY_TEST_CONSTANTS.js +87 -0
  16. package/dist/constants/FACTORY_TEST_CONSTANTS.js.map +1 -0
  17. package/dist/constants/MOCHA_CONSTANTS.js +24 -0
  18. package/dist/constants/MOCHA_CONSTANTS.js.map +1 -0
  19. package/dist/constants/MONACO_CONSTANTS.js +25 -0
  20. package/dist/constants/MONACO_CONSTANTS.js.map +1 -0
  21. package/dist/constants/OAUTH_CONSTANTS.js +53 -0
  22. package/dist/constants/OAUTH_CONSTANTS.js.map +1 -0
  23. package/dist/constants/PLUGIN_TEST_CONSTANTS.js +19 -0
  24. package/dist/constants/PLUGIN_TEST_CONSTANTS.js.map +1 -0
  25. package/dist/constants/REPORTER_CONSTANTS.js +123 -0
  26. package/dist/constants/REPORTER_CONSTANTS.js.map +1 -0
  27. package/dist/constants/TIMEOUT_CONSTANTS.js +101 -0
  28. package/dist/constants/TIMEOUT_CONSTANTS.js.map +1 -0
  29. package/dist/driver/ChromeDriver.js +77 -0
  30. package/dist/driver/ChromeDriver.js.map +1 -0
  31. package/dist/driver/IDriver.js +3 -0
  32. package/dist/driver/IDriver.js.map +1 -0
  33. package/dist/index.js +98 -0
  34. package/dist/index.js.map +1 -0
  35. package/dist/pageobjects/dashboard/CreateWorkspace.js +181 -0
  36. package/dist/pageobjects/dashboard/CreateWorkspace.js.map +1 -0
  37. package/dist/pageobjects/dashboard/Dashboard.js +208 -0
  38. package/dist/pageobjects/dashboard/Dashboard.js.map +1 -0
  39. package/dist/pageobjects/dashboard/TrustAuthorPopup.js +61 -0
  40. package/dist/pageobjects/dashboard/TrustAuthorPopup.js.map +1 -0
  41. package/dist/pageobjects/dashboard/UserPreferences.js +268 -0
  42. package/dist/pageobjects/dashboard/UserPreferences.js.map +1 -0
  43. package/dist/pageobjects/dashboard/Workspaces.js +242 -0
  44. package/dist/pageobjects/dashboard/Workspaces.js.map +1 -0
  45. package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetails.js +186 -0
  46. package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetails.js.map +1 -0
  47. package/dist/pageobjects/git-providers/OauthPage.js +218 -0
  48. package/dist/pageobjects/git-providers/OauthPage.js.map +1 -0
  49. package/dist/pageobjects/ide/AiCodeSignInDialog.js +55 -0
  50. package/dist/pageobjects/ide/AiCodeSignInDialog.js.map +1 -0
  51. package/dist/pageobjects/ide/CheCodeLocatorLoader.js +108 -0
  52. package/dist/pageobjects/ide/CheCodeLocatorLoader.js.map +1 -0
  53. package/dist/pageobjects/ide/CommandPalette.js +117 -0
  54. package/dist/pageobjects/ide/CommandPalette.js.map +1 -0
  55. package/dist/pageobjects/ide/ExplorerView.js +108 -0
  56. package/dist/pageobjects/ide/ExplorerView.js.map +1 -0
  57. package/dist/pageobjects/ide/ExtensionsView.js +162 -0
  58. package/dist/pageobjects/ide/ExtensionsView.js.map +1 -0
  59. package/dist/pageobjects/ide/GitHubExtensionDialog.js +66 -0
  60. package/dist/pageobjects/ide/GitHubExtensionDialog.js.map +1 -0
  61. package/dist/pageobjects/ide/NotificationHandler.js +83 -0
  62. package/dist/pageobjects/ide/NotificationHandler.js.map +1 -0
  63. package/dist/pageobjects/ide/RestrictedModeButton.js +57 -0
  64. package/dist/pageobjects/ide/RestrictedModeButton.js.map +1 -0
  65. package/dist/pageobjects/ide/SourceControlView.js +52 -0
  66. package/dist/pageobjects/ide/SourceControlView.js.map +1 -0
  67. package/dist/pageobjects/ide/ViewsMoreActionsButton.js +73 -0
  68. package/dist/pageobjects/ide/ViewsMoreActionsButton.js.map +1 -0
  69. package/dist/pageobjects/login/interfaces/ICheLoginPage.js +12 -0
  70. package/dist/pageobjects/login/interfaces/ICheLoginPage.js.map +1 -0
  71. package/dist/pageobjects/login/interfaces/IOcpLoginPage.js +12 -0
  72. package/dist/pageobjects/login/interfaces/IOcpLoginPage.js.map +1 -0
  73. package/dist/pageobjects/login/kubernetes/DexLoginPage.js +69 -0
  74. package/dist/pageobjects/login/kubernetes/DexLoginPage.js.map +1 -0
  75. package/dist/pageobjects/login/kubernetes/KubernetesLoginPage.js +50 -0
  76. package/dist/pageobjects/login/kubernetes/KubernetesLoginPage.js.map +1 -0
  77. package/dist/pageobjects/login/openshift/OcpLoginPage.js +88 -0
  78. package/dist/pageobjects/login/openshift/OcpLoginPage.js.map +1 -0
  79. package/dist/pageobjects/login/openshift/OcpRedHatLoginPage.js +73 -0
  80. package/dist/pageobjects/login/openshift/OcpRedHatLoginPage.js.map +1 -0
  81. package/dist/pageobjects/login/openshift/OcpUserLoginPage.js +53 -0
  82. package/dist/pageobjects/login/openshift/OcpUserLoginPage.js.map +1 -0
  83. package/dist/pageobjects/login/openshift/RedHatLoginPage.js +85 -0
  84. package/dist/pageobjects/login/openshift/RedHatLoginPage.js.map +1 -0
  85. package/dist/pageobjects/login/openshift/RegularUserOcpCheLoginPage.js +65 -0
  86. package/dist/pageobjects/login/openshift/RegularUserOcpCheLoginPage.js.map +1 -0
  87. package/dist/pageobjects/openshift/OcpApplicationPage.js +60 -0
  88. package/dist/pageobjects/openshift/OcpApplicationPage.js.map +1 -0
  89. package/dist/pageobjects/openshift/OcpImportFromGitPage.js +92 -0
  90. package/dist/pageobjects/openshift/OcpImportFromGitPage.js.map +1 -0
  91. package/dist/pageobjects/openshift/OcpMainPage.js +140 -0
  92. package/dist/pageobjects/openshift/OcpMainPage.js.map +1 -0
  93. package/dist/pageobjects/webterminal/WebTerminalPage.js +182 -0
  94. package/dist/pageobjects/webterminal/WebTerminalPage.js.map +1 -0
  95. package/dist/specs/MochaHooks.js +142 -0
  96. package/dist/specs/MochaHooks.js.map +1 -0
  97. package/dist/specs/SmokeTest.spec.js +58 -0
  98. package/dist/specs/SmokeTest.spec.js.map +1 -0
  99. package/dist/specs/api/AnsibleDevFileAPI.spec.js +256 -0
  100. package/dist/specs/api/AnsibleDevFileAPI.spec.js.map +1 -0
  101. package/dist/specs/api/BuildPushRunPodmanContainerAPI.spec.js +147 -0
  102. package/dist/specs/api/BuildPushRunPodmanContainerAPI.spec.js.map +1 -0
  103. package/dist/specs/api/ContainerOverridesAPI.spec.js +40 -0
  104. package/dist/specs/api/ContainerOverridesAPI.spec.js.map +1 -0
  105. package/dist/specs/api/CppDevFileAPI.spec.js +87 -0
  106. package/dist/specs/api/CppDevFileAPI.spec.js.map +1 -0
  107. package/dist/specs/api/DevfileAcceptanceTestAPI.spec.js +99 -0
  108. package/dist/specs/api/DevfileAcceptanceTestAPI.spec.js.map +1 -0
  109. package/dist/specs/api/DotnetDevFileAPI.spec.js +89 -0
  110. package/dist/specs/api/DotnetDevFileAPI.spec.js.map +1 -0
  111. package/dist/specs/api/EmptyWorkspaceAPI.spec.js +60 -0
  112. package/dist/specs/api/EmptyWorkspaceAPI.spec.js.map +1 -0
  113. package/dist/specs/api/GoDevFileAPI.spec.js +82 -0
  114. package/dist/specs/api/GoDevFileAPI.spec.js.map +1 -0
  115. package/dist/specs/api/InbuiltApplicationDevWorkspacesAPI.spec.js +97 -0
  116. package/dist/specs/api/InbuiltApplicationDevWorkspacesAPI.spec.js.map +1 -0
  117. package/dist/specs/api/JBossEapDevFileAPI.spec.js +127 -0
  118. package/dist/specs/api/JBossEapDevFileAPI.spec.js.map +1 -0
  119. package/dist/specs/api/LombokDevFileAPI.spec.js +81 -0
  120. package/dist/specs/api/LombokDevFileAPI.spec.js.map +1 -0
  121. package/dist/specs/api/NodeJSMongoDBDevFileAPI.spec.js +81 -0
  122. package/dist/specs/api/NodeJSMongoDBDevFileAPI.spec.js.map +1 -0
  123. package/dist/specs/api/NodeJsExpressDevFileAPI.spec.js +130 -0
  124. package/dist/specs/api/NodeJsExpressDevFileAPI.spec.js.map +1 -0
  125. package/dist/specs/api/PhpDevFileAPI.spec.js +71 -0
  126. package/dist/specs/api/PhpDevFileAPI.spec.js.map +1 -0
  127. package/dist/specs/api/PodOverridesAPI.spec.js +46 -0
  128. package/dist/specs/api/PodOverridesAPI.spec.js.map +1 -0
  129. package/dist/specs/api/PythonDevFileAPI.spec.js +71 -0
  130. package/dist/specs/api/PythonDevFileAPI.spec.js.map +1 -0
  131. package/dist/specs/api/QuarkusDevFileAPI.spec.js +97 -0
  132. package/dist/specs/api/QuarkusDevFileAPI.spec.js.map +1 -0
  133. package/dist/specs/dashboard-samples/Documentation.spec.js +118 -0
  134. package/dist/specs/dashboard-samples/Documentation.spec.js.map +1 -0
  135. package/dist/specs/dashboard-samples/EmptyWorkspace.spec.js +60 -0
  136. package/dist/specs/dashboard-samples/EmptyWorkspace.spec.js.map +1 -0
  137. package/dist/specs/dashboard-samples/Quarkus.spec.js +64 -0
  138. package/dist/specs/dashboard-samples/Quarkus.spec.js.map +1 -0
  139. package/dist/specs/dashboard-samples/RecommendedExtensions.spec.js +345 -0
  140. package/dist/specs/dashboard-samples/RecommendedExtensions.spec.js.map +1 -0
  141. package/dist/specs/dashboard-samples/StartWorkspaceUsingDesktopEditors.spec.js +171 -0
  142. package/dist/specs/dashboard-samples/StartWorkspaceUsingDesktopEditors.spec.js.map +1 -0
  143. package/dist/specs/devconsole-intergration/DevConsoleIntegration.spec.js +155 -0
  144. package/dist/specs/devconsole-intergration/DevConsoleIntegration.spec.js.map +1 -0
  145. package/dist/specs/factory/Factory.spec.js +183 -0
  146. package/dist/specs/factory/Factory.spec.js.map +1 -0
  147. package/dist/specs/factory/FactoryWithGitRepoOptions.spec.js +63 -0
  148. package/dist/specs/factory/FactoryWithGitRepoOptions.spec.js.map +1 -0
  149. package/dist/specs/factory/NoSetupRepoFactory.spec.js +212 -0
  150. package/dist/specs/factory/NoSetupRepoFactory.spec.js.map +1 -0
  151. package/dist/specs/factory/RefusedOAuthFactory.spec.js +239 -0
  152. package/dist/specs/factory/RefusedOAuthFactory.spec.js.map +1 -0
  153. package/dist/specs/factory/SshUrlNoOauthPatFactory.spec.js +202 -0
  154. package/dist/specs/factory/SshUrlNoOauthPatFactory.spec.js.map +1 -0
  155. package/dist/specs/miscellaneous/CreateWorkspaceWithExistedName.spec.js +77 -0
  156. package/dist/specs/miscellaneous/CreateWorkspaceWithExistedName.spec.js.map +1 -0
  157. package/dist/specs/miscellaneous/CreateWorkspaceWithExistingNameFromEmptyWorkspaceSample.spec.js +106 -0
  158. package/dist/specs/miscellaneous/CreateWorkspaceWithExistingNameFromEmptyWorkspaceSample.spec.js.map +1 -0
  159. package/dist/specs/miscellaneous/CreateWorkspaceWithExistingNameFromGitUrl.spec.js +113 -0
  160. package/dist/specs/miscellaneous/CreateWorkspaceWithExistingNameFromGitUrl.spec.js.map +1 -0
  161. package/dist/specs/miscellaneous/CreateWorkspaceWithExistingNameFromSample.spec.js +116 -0
  162. package/dist/specs/miscellaneous/CreateWorkspaceWithExistingNameFromSample.spec.js.map +1 -0
  163. package/dist/specs/miscellaneous/CustomOpenVSXRegistry.spec.js +205 -0
  164. package/dist/specs/miscellaneous/CustomOpenVSXRegistry.spec.js.map +1 -0
  165. package/dist/specs/miscellaneous/ExtensionActivationTest.spec.js +129 -0
  166. package/dist/specs/miscellaneous/ExtensionActivationTest.spec.js.map +1 -0
  167. package/dist/specs/miscellaneous/KubedockPodmanPersistUserHomeTest.spec.js +121 -0
  168. package/dist/specs/miscellaneous/KubedockPodmanPersistUserHomeTest.spec.js.map +1 -0
  169. package/dist/specs/miscellaneous/KubedockPodmanTest.spec.js +103 -0
  170. package/dist/specs/miscellaneous/KubedockPodmanTest.spec.js.map +1 -0
  171. package/dist/specs/miscellaneous/PredefinedNamespace.spec.js +111 -0
  172. package/dist/specs/miscellaneous/PredefinedNamespace.spec.js.map +1 -0
  173. package/dist/specs/miscellaneous/RenameWorkspace.spec.js +116 -0
  174. package/dist/specs/miscellaneous/RenameWorkspace.spec.js.map +1 -0
  175. package/dist/specs/miscellaneous/RevokeOauth.spec.js +29 -0
  176. package/dist/specs/miscellaneous/RevokeOauth.spec.js.map +1 -0
  177. package/dist/specs/miscellaneous/UserPreferencesTest.spec.js +26 -0
  178. package/dist/specs/miscellaneous/UserPreferencesTest.spec.js.map +1 -0
  179. package/dist/specs/miscellaneous/UserSecretsInWorkspace.spec.js +78 -0
  180. package/dist/specs/miscellaneous/UserSecretsInWorkspace.spec.js.map +1 -0
  181. package/dist/specs/miscellaneous/VsixInstallationDisableTest.spec.js +196 -0
  182. package/dist/specs/miscellaneous/VsixInstallationDisableTest.spec.js.map +1 -0
  183. package/dist/specs/miscellaneous/WorkspaceBackupRestore.spec.js +208 -0
  184. package/dist/specs/miscellaneous/WorkspaceBackupRestore.spec.js.map +1 -0
  185. package/dist/specs/miscellaneous/WorkspaceIdleTimeout.spec.js +84 -0
  186. package/dist/specs/miscellaneous/WorkspaceIdleTimeout.spec.js.map +1 -0
  187. package/dist/specs/miscellaneous/WorkspaceRunTimeout.spec.js +84 -0
  188. package/dist/specs/miscellaneous/WorkspaceRunTimeout.spec.js.map +1 -0
  189. package/dist/specs/miscellaneous/WorkspaceWithParent.spec.js +101 -0
  190. package/dist/specs/miscellaneous/WorkspaceWithParent.spec.js.map +1 -0
  191. package/dist/specs/web-terminal/WebTerminalTest.spec.js +47 -0
  192. package/dist/specs/web-terminal/WebTerminalTest.spec.js.map +1 -0
  193. package/dist/specs/web-terminal/WebTerminalUnderAdmin.spec.js +82 -0
  194. package/dist/specs/web-terminal/WebTerminalUnderAdmin.spec.js.map +1 -0
  195. package/dist/specs/web-terminal/WebTerminalUnderRegularUser.spec.js +78 -0
  196. package/dist/specs/web-terminal/WebTerminalUnderRegularUser.spec.js.map +1 -0
  197. package/dist/suites/devfile-acceptance-test-suite/DynamicallyGeneratingAPITest.suite.js +13 -0
  198. package/dist/suites/devfile-acceptance-test-suite/DynamicallyGeneratingAPITest.suite.js.map +1 -0
  199. package/dist/suites/disconnected-ocp/APITest.suite.js +14 -0
  200. package/dist/suites/disconnected-ocp/APITest.suite.js.map +1 -0
  201. package/dist/suites/disconnected-ocp/DynamicallyGeneratingAPITest.suite.js +13 -0
  202. package/dist/suites/disconnected-ocp/DynamicallyGeneratingAPITest.suite.js.map +1 -0
  203. package/dist/suites/disconnected-ocp/UITest.suite.js +19 -0
  204. package/dist/suites/disconnected-ocp/UITest.suite.js.map +1 -0
  205. package/dist/suites/online-ocp/APITest.suite.js +15 -0
  206. package/dist/suites/online-ocp/APITest.suite.js.map +1 -0
  207. package/dist/suites/online-ocp/DynamicallyGeneratingAPITest.suite.js +13 -0
  208. package/dist/suites/online-ocp/DynamicallyGeneratingAPITest.suite.js.map +1 -0
  209. package/dist/suites/online-ocp/UITest.suite.js +23 -0
  210. package/dist/suites/online-ocp/UITest.suite.js.map +1 -0
  211. package/dist/tests-library/LoginTests.js +76 -0
  212. package/dist/tests-library/LoginTests.js.map +1 -0
  213. package/dist/tests-library/ProjectAndFileTests.js +230 -0
  214. package/dist/tests-library/ProjectAndFileTests.js.map +1 -0
  215. package/dist/tests-library/WorkspaceHandlingTests.js +219 -0
  216. package/dist/tests-library/WorkspaceHandlingTests.js.map +1 -0
  217. package/dist/utils/BrowserTabsUtil.js +124 -0
  218. package/dist/utils/BrowserTabsUtil.js.map +1 -0
  219. package/dist/utils/CheReporter.js +238 -0
  220. package/dist/utils/CheReporter.js.map +1 -0
  221. package/dist/utils/DevWorkspaceConfigurationHelper.js +145 -0
  222. package/dist/utils/DevWorkspaceConfigurationHelper.js.map +1 -0
  223. package/dist/utils/DevfilesHelper.js +177 -0
  224. package/dist/utils/DevfilesHelper.js.map +1 -0
  225. package/dist/utils/DriverHelper.js +609 -0
  226. package/dist/utils/DriverHelper.js.map +1 -0
  227. package/dist/utils/IContextParams.js +12 -0
  228. package/dist/utils/IContextParams.js.map +1 -0
  229. package/dist/utils/IKubernetesCommandLineToolsExecutor.js +3 -0
  230. package/dist/utils/IKubernetesCommandLineToolsExecutor.js.map +1 -0
  231. package/dist/utils/KubernetesCommandLineToolsExecutor.js +338 -0
  232. package/dist/utils/KubernetesCommandLineToolsExecutor.js.map +1 -0
  233. package/dist/utils/Logger.js +146 -0
  234. package/dist/utils/Logger.js.map +1 -0
  235. package/dist/utils/ScreenCatcher.js +114 -0
  236. package/dist/utils/ScreenCatcher.js.map +1 -0
  237. package/dist/utils/ShellExecutor.js +47 -0
  238. package/dist/utils/ShellExecutor.js.map +1 -0
  239. package/dist/utils/StringUtil.js +107 -0
  240. package/dist/utils/StringUtil.js.map +1 -0
  241. package/dist/utils/request-handlers/CheApiRequestHandler.js +128 -0
  242. package/dist/utils/request-handlers/CheApiRequestHandler.js.map +1 -0
  243. package/dist/utils/request-handlers/headers/CheMultiuserAuthorizationHeaderHandler.js +55 -0
  244. package/dist/utils/request-handlers/headers/CheMultiuserAuthorizationHeaderHandler.js.map +1 -0
  245. package/dist/utils/request-handlers/headers/IAuthorizationHeaderHandler.js +12 -0
  246. package/dist/utils/request-handlers/headers/IAuthorizationHeaderHandler.js.map +1 -0
  247. package/dist/utils/workspace/ApiUrlResolver.js +117 -0
  248. package/dist/utils/workspace/ApiUrlResolver.js.map +1 -0
  249. package/dist/utils/workspace/ITestWorkspaceUtil.js +12 -0
  250. package/dist/utils/workspace/ITestWorkspaceUtil.js.map +1 -0
  251. package/dist/utils/workspace/TestWorkspaceUtil.js +202 -0
  252. package/dist/utils/workspace/TestWorkspaceUtil.js.map +1 -0
  253. package/dist/utils/workspace/WorkspaceStatus.js +19 -0
  254. package/dist/utils/workspace/WorkspaceStatus.js.map +1 -0
  255. package/index.ts +5 -5
  256. package/package.json +1 -1
@@ -0,0 +1,268 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
19
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
20
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21
+ 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;
22
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
23
+ };
24
+ var __importStar = (this && this.__importStar) || function (mod) {
25
+ if (mod && mod.__esModule) return mod;
26
+ var result = {};
27
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
28
+ __setModuleDefault(result, mod);
29
+ return result;
30
+ };
31
+ var __metadata = (this && this.__metadata) || function (k, v) {
32
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
33
+ };
34
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
35
+ return function (target, key) { decorator(target, key, paramIndex); }
36
+ };
37
+ var UserPreferences_1;
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.UserPreferences = void 0;
40
+ /** *******************************************************************
41
+ * copyright (c) 2019-2026 Red Hat, Inc.
42
+ *
43
+ * This program and the accompanying materials are made
44
+ * available under the terms of the Eclipse Public License 2.0
45
+ * which is available at https://www.eclipse.org/legal/epl-2.0/
46
+ *
47
+ * SPDX-License-Identifier: EPL-2.0
48
+ **********************************************************************/
49
+ const inversify_1 = require("inversify");
50
+ require("reflect-metadata");
51
+ const fs = __importStar(require("fs"));
52
+ const path = __importStar(require("path"));
53
+ const inversify_types_1 = require("../../configs/inversify.types");
54
+ const selenium_webdriver_1 = require("selenium-webdriver");
55
+ const DriverHelper_1 = require("../../utils/DriverHelper");
56
+ const Logger_1 = require("../../utils/Logger");
57
+ const FACTORY_TEST_CONSTANTS_1 = require("../../constants/FACTORY_TEST_CONSTANTS");
58
+ const TIMEOUT_CONSTANTS_1 = require("../../constants/TIMEOUT_CONSTANTS");
59
+ let UserPreferences = UserPreferences_1 = class UserPreferences {
60
+ constructor(driverHelper) {
61
+ this.driverHelper = driverHelper;
62
+ }
63
+ async openUserPreferencesPage() {
64
+ Logger_1.Logger.debug();
65
+ await this.driverHelper.waitAndClick(UserPreferences_1.USER_SETTINGS_DROPDOWN);
66
+ await this.driverHelper.waitAndClick(UserPreferences_1.USER_PREFERENCES_BUTTON);
67
+ await this.driverHelper.waitVisibility(UserPreferences_1.USER_PREFERENCES_PAGE);
68
+ }
69
+ async checkTabsAvailability() {
70
+ Logger_1.Logger.debug();
71
+ await this.openContainerRegistriesTab();
72
+ await this.openGitServicesTab();
73
+ await this.openPatTab();
74
+ await this.openGitConfigPage();
75
+ await this.checkAddSshKeyButtonAvailability();
76
+ }
77
+ async openContainerRegistriesTab() {
78
+ Logger_1.Logger.debug();
79
+ await this.driverHelper.waitAndClick(UserPreferences_1.CONTAINER_REGISTRIES_TAB);
80
+ }
81
+ async openGitServicesTab() {
82
+ Logger_1.Logger.debug();
83
+ await this.driverHelper.waitAndClick(UserPreferences_1.GIT_SERVICES_TAB);
84
+ }
85
+ async revokeGitService(servicesName) {
86
+ Logger_1.Logger.debug();
87
+ await this.selectListItem(servicesName);
88
+ await this.driverHelper.waitAndClick(UserPreferences_1.GIT_SERVICES_REVOKE_BUTTON);
89
+ await this.driverHelper.waitVisibility(UserPreferences_1.CONFIRMATION_WINDOW);
90
+ await this.driverHelper.waitAndClick(UserPreferences_1.DELETE_CONFIRMATION_CHECKBOX);
91
+ await this.driverHelper.waitAndClick(UserPreferences_1.DELETE_ITEM_BUTTON_ENABLED);
92
+ await this.driverHelper.waitAttributeValue(this.getServicesListItemLocator(servicesName), 'disabled', 'true', TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_COMMON_DASHBOARD_WAIT_TIMEOUT);
93
+ }
94
+ async selectListItem(servicesName) {
95
+ Logger_1.Logger.debug(`of the '${servicesName}' list item`);
96
+ await this.driverHelper.waitAndClick(this.getServicesListItemLocator(servicesName));
97
+ }
98
+ async openPatTab() {
99
+ Logger_1.Logger.debug();
100
+ await this.driverHelper.waitAndClick(UserPreferences_1.PAT_TAB);
101
+ await this.driverHelper.waitVisibility(UserPreferences_1.ADD_NEW_PAT_BUTTON);
102
+ }
103
+ async openGitConfigPage() {
104
+ Logger_1.Logger.debug();
105
+ await this.driverHelper.waitAndClick(UserPreferences_1.GIT_CONFIG_PAGE);
106
+ }
107
+ async enterGitConfigUsernameAndEmail(userName, userEmail) {
108
+ Logger_1.Logger.debug(`"${userName}"`);
109
+ Logger_1.Logger.debug(`"${userEmail}"`);
110
+ await this.driverHelper.enterValue(UserPreferences_1.GIT_CONFIG_USER_NAME, userName);
111
+ await this.driverHelper.enterValue(UserPreferences_1.GIT_CONFIG_USER_EMAIL, userEmail);
112
+ }
113
+ async clickOnGitConfigSaveButton() {
114
+ Logger_1.Logger.debug();
115
+ await this.driverHelper.waitAndClick(UserPreferences_1.GIT_CONFIG_SAVE_BUTTON);
116
+ }
117
+ async waitGitConfigSaveButtonIsDisabled() {
118
+ Logger_1.Logger.debug();
119
+ await this.driverHelper.waitAttributeValue(UserPreferences_1.GIT_CONFIG_SAVE_BUTTON, 'disabled', 'true', TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_COMMON_DASHBOARD_WAIT_TIMEOUT);
120
+ }
121
+ async ensureGitConfig(userName, userEmail) {
122
+ await this.openUserPreferencesPage();
123
+ await this.openGitConfigPage();
124
+ // check if the values are already set correctly
125
+ const currentUserName = await this.driverHelper.waitAndGetElementAttribute(UserPreferences_1.GIT_CONFIG_USER_NAME, 'value');
126
+ const currentEmail = await this.driverHelper.waitAndGetElementAttribute(UserPreferences_1.GIT_CONFIG_USER_EMAIL, 'value');
127
+ if (currentUserName === userName && currentEmail === userEmail) {
128
+ Logger_1.Logger.info(`Git config already set correctly: name="${userName}", email="${userEmail}"`);
129
+ return;
130
+ }
131
+ Logger_1.Logger.info(`Setting git config: name="${userName}", email="${userEmail}"`);
132
+ await this.enterGitConfigUsernameAndEmail(userName, userEmail);
133
+ await this.clickOnGitConfigSaveButton();
134
+ await this.waitGitConfigSaveButtonIsDisabled();
135
+ }
136
+ async openSshKeyTab() {
137
+ Logger_1.Logger.debug();
138
+ await this.driverHelper.waitAndClick(UserPreferences_1.SSH_KEY_TAB);
139
+ }
140
+ async checkAddSshKeyButtonAvailability() {
141
+ Logger_1.Logger.debug();
142
+ await this.openSshKeyTab();
143
+ await this.driverHelper.waitVisibility(UserPreferences_1.ADD_NEW_SSH_KEY_BUTTON);
144
+ }
145
+ async addSshKeysFromFiles(privateSshKeyPath, publicSshKeyPath) {
146
+ Logger_1.Logger.debug();
147
+ Logger_1.Logger.info('Adding new SSH keys from files');
148
+ await this.driverHelper.waitAndClick(UserPreferences_1.ADD_NEW_SSH_KEY_BUTTON);
149
+ await this.driverHelper.waitVisibility(UserPreferences_1.ADD_SSH_KEYS_POPUP);
150
+ await this.uploadSshKeys(privateSshKeyPath, publicSshKeyPath);
151
+ await this.driverHelper.waitAndClick(UserPreferences_1.ADD_SSH_KEYS_BUTTON);
152
+ await this.driverHelper.waitVisibility(UserPreferences_1.GIT_SSH_KEY_NAME);
153
+ Logger_1.Logger.info('SSH keys have been added');
154
+ }
155
+ async addSshKeysFromStrings(privateSshKey, publicSshKey, passphrase) {
156
+ Logger_1.Logger.debug();
157
+ if (!privateSshKey || privateSshKey === '') {
158
+ throw new Error('Private SSH key is empty or not provided');
159
+ }
160
+ if (!publicSshKey || publicSshKey === '') {
161
+ throw new Error('Public SSH key is empty or not provided');
162
+ }
163
+ Logger_1.Logger.info('Adding new SSH keys from strings');
164
+ await this.driverHelper.waitAndClick(UserPreferences_1.ADD_NEW_SSH_KEY_BUTTON);
165
+ await this.driverHelper.waitVisibility(UserPreferences_1.ADD_SSH_KEYS_POPUP);
166
+ Logger_1.Logger.info('Pasting private SSH key');
167
+ await this.driverHelper.waitAndClick(UserPreferences_1.PASTE_PRIVATE_SSH_KEY_FIELD);
168
+ await this.driverHelper.type(UserPreferences_1.PASTE_PRIVATE_SSH_KEY_FIELD, privateSshKey);
169
+ // verify private SSH key was correctly set
170
+ const enteredPrivateKey = await this.driverHelper.waitAndGetValue(UserPreferences_1.PASTE_PRIVATE_SSH_KEY_FIELD, TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_COMMON_DASHBOARD_WAIT_TIMEOUT);
171
+ if (enteredPrivateKey !== privateSshKey) {
172
+ throw new Error('Private SSH key was not correctly set in the field');
173
+ }
174
+ Logger_1.Logger.info('Private SSH key verified successfully');
175
+ Logger_1.Logger.info('Pasting public SSH key');
176
+ await this.driverHelper.waitAndClick(UserPreferences_1.PASTE_PUBLIC_SSH_KEY_FIELD);
177
+ await this.driverHelper.type(UserPreferences_1.PASTE_PUBLIC_SSH_KEY_FIELD, publicSshKey);
178
+ // verify public SSH key was correctly set
179
+ const enteredPublicKey = await this.driverHelper.waitAndGetValue(UserPreferences_1.PASTE_PUBLIC_SSH_KEY_FIELD, TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_COMMON_DASHBOARD_WAIT_TIMEOUT);
180
+ if (enteredPublicKey !== publicSshKey) {
181
+ throw new Error('Public SSH key was not correctly set in the field');
182
+ }
183
+ Logger_1.Logger.info('Public SSH key verified successfully');
184
+ if (passphrase) {
185
+ Logger_1.Logger.info('Pasting SSH key passphrase');
186
+ await this.driverHelper.waitAndClick(UserPreferences_1.PASTE_SSH_KEY_PASSPHRASE_FIELD);
187
+ await this.driverHelper.getAction().sendKeys(passphrase).perform();
188
+ }
189
+ await this.driverHelper.waitAndClick(UserPreferences_1.ADD_SSH_KEYS_BUTTON);
190
+ await this.driverHelper.waitVisibility(UserPreferences_1.GIT_SSH_KEY_NAME);
191
+ Logger_1.Logger.info('SSH keys have been added');
192
+ }
193
+ async uploadSshKeys(privateSshKeyPath, publicSshKeyPath) {
194
+ Logger_1.Logger.debug();
195
+ const privateSshKey = Buffer.from(fs.readFileSync(path.resolve(privateSshKeyPath), 'utf-8'), 'base64').toString('utf-8');
196
+ const publicSshKey = Buffer.from(fs.readFileSync(path.resolve(publicSshKeyPath), 'utf-8'), 'base64').toString('utf-8');
197
+ Logger_1.Logger.info('Pasting private SSH key');
198
+ await this.driverHelper.waitAndClick(UserPreferences_1.PASTE_PRIVATE_SSH_KEY_FIELD);
199
+ await this.driverHelper.getAction().sendKeys(privateSshKey).perform();
200
+ Logger_1.Logger.info('Pasting public SSH key');
201
+ await this.driverHelper.waitAndClick(UserPreferences_1.PASTE_PUBLIC_SSH_KEY_FIELD);
202
+ await this.driverHelper.getAction().sendKeys(publicSshKey).perform();
203
+ }
204
+ async isSshKeyPresent() {
205
+ Logger_1.Logger.debug();
206
+ return this.driverHelper.isVisible(UserPreferences_1.GIT_SSH_KEY_NAME);
207
+ }
208
+ async deleteSshKeys() {
209
+ Logger_1.Logger.debug();
210
+ Logger_1.Logger.info('Deleting SSH keys');
211
+ await this.openSshKeyTab();
212
+ await this.driverHelper.waitAndClick(UserPreferences_1.GIT_SSH_KEY_ACTIONS_BUTTON, TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_COMMON_DASHBOARD_WAIT_TIMEOUT);
213
+ await this.driverHelper.waitAndClick(UserPreferences_1.DELETE_BUTTON);
214
+ await this.driverHelper.waitVisibility(UserPreferences_1.CONFIRM_DELETE_SSH_KEYS_POPUP);
215
+ await this.driverHelper.waitAndClick(UserPreferences_1.CONFIRM_DELETE_SSH_KEYS_CHECKBOX);
216
+ await this.driverHelper.waitAndClick(UserPreferences_1.DELETE_BUTTON);
217
+ await this.driverHelper.waitDisappearance(UserPreferences_1.GIT_SSH_KEY_NAME);
218
+ Logger_1.Logger.info('SSH keys have been deleted');
219
+ }
220
+ getServiceConfig(service) {
221
+ const gitService = {
222
+ [FACTORY_TEST_CONSTANTS_1.GitProviderType.GITHUB]: 'GitHub',
223
+ [FACTORY_TEST_CONSTANTS_1.GitProviderType.GITLAB]: 'GitLab',
224
+ [FACTORY_TEST_CONSTANTS_1.GitProviderType.AZURE_DEVOPS]: 'Microsoft Azure DevOps',
225
+ [FACTORY_TEST_CONSTANTS_1.GitProviderType.BITBUCKET_CLOUD_OAUTH2]: 'Bitbucket Cloud',
226
+ [FACTORY_TEST_CONSTANTS_1.GitProviderType.BITBUCKET_SERVER_OAUTH1]: 'Bitbucket Server',
227
+ [FACTORY_TEST_CONSTANTS_1.GitProviderType.BITBUCKET_SERVER_OAUTH2]: 'Bitbucket Server'
228
+ };
229
+ return gitService[service];
230
+ }
231
+ getServicesListItemLocator(servicesName) {
232
+ return selenium_webdriver_1.By.xpath(`//tr[td[text()='${servicesName}']]//input`);
233
+ }
234
+ };
235
+ UserPreferences.USER_SETTINGS_DROPDOWN = selenium_webdriver_1.By.xpath('//header//button/span[text()!=""]//parent::button');
236
+ UserPreferences.USER_PREFERENCES_BUTTON = selenium_webdriver_1.By.xpath('//span[text()="User Preferences"]');
237
+ UserPreferences.USER_PREFERENCES_PAGE = selenium_webdriver_1.By.xpath('//h1[text()="User Preferences"]');
238
+ UserPreferences.CONTAINER_REGISTRIES_TAB = selenium_webdriver_1.By.xpath('//button[text()="Container Registries"]');
239
+ UserPreferences.GIT_SERVICES_TAB = selenium_webdriver_1.By.id('pf-tab-GitServices-user-preferences-tabs');
240
+ UserPreferences.GIT_SERVICES_REVOKE_BUTTON = selenium_webdriver_1.By.css('button[data-testid="bulk-revoke-button"]');
241
+ UserPreferences.PAT_TAB = selenium_webdriver_1.By.xpath('//button[text()="Personal Access Tokens"]');
242
+ UserPreferences.ADD_NEW_PAT_BUTTON = selenium_webdriver_1.By.xpath('//button[text()="Add Personal Access Token"]');
243
+ UserPreferences.GIT_CONFIG_PAGE = selenium_webdriver_1.By.xpath('//button[text()="Gitconfig"]');
244
+ UserPreferences.GIT_CONFIG_USER_NAME = selenium_webdriver_1.By.id('gitconfig-user-name');
245
+ UserPreferences.GIT_CONFIG_USER_EMAIL = selenium_webdriver_1.By.id('gitconfig-user-email');
246
+ UserPreferences.GIT_CONFIG_SAVE_BUTTON = selenium_webdriver_1.By.css('[data-testid="button-save"]');
247
+ UserPreferences.SSH_KEY_TAB = selenium_webdriver_1.By.xpath('//button[text()="SSH Keys"]');
248
+ UserPreferences.ADD_NEW_SSH_KEY_BUTTON = selenium_webdriver_1.By.css('button[aria-label="Add SSH Key"]');
249
+ UserPreferences.ADD_SSH_KEYS_POPUP = selenium_webdriver_1.By.xpath('//span[text()="Add SSH Keys"]');
250
+ UserPreferences.PASTE_PRIVATE_SSH_KEY_FIELD = selenium_webdriver_1.By.id('ssh-private-key');
251
+ UserPreferences.PASTE_PUBLIC_SSH_KEY_FIELD = selenium_webdriver_1.By.id('ssh-public-key');
252
+ UserPreferences.PASTE_SSH_KEY_PASSPHRASE_FIELD = selenium_webdriver_1.By.css('input[placeholder="Enter passphrase (optional)"]');
253
+ UserPreferences.ADD_SSH_KEYS_BUTTON = selenium_webdriver_1.By.xpath('//span[text()="Add"]');
254
+ UserPreferences.GIT_SSH_KEY_NAME = selenium_webdriver_1.By.css('[data-testid="title"]');
255
+ UserPreferences.GIT_SSH_KEY_ACTIONS_BUTTON = selenium_webdriver_1.By.css('section[id*="SshKeys-user-preferences"] button[aria-label="Actions"]');
256
+ UserPreferences.DELETE_BUTTON = selenium_webdriver_1.By.xpath('//span[text()="Delete"]');
257
+ UserPreferences.CONFIRM_DELETE_SSH_KEYS_POPUP = selenium_webdriver_1.By.css('div[id^="pf-modal-part"][role="dialog"]');
258
+ UserPreferences.CONFIRM_DELETE_SSH_KEYS_CHECKBOX = selenium_webdriver_1.By.id('delete-ssh-keys-warning-checkbox');
259
+ UserPreferences.CONFIRMATION_WINDOW = selenium_webdriver_1.By.xpath('//span[text()="Revoke Git Service"]');
260
+ UserPreferences.DELETE_CONFIRMATION_CHECKBOX = selenium_webdriver_1.By.id('revoke-warning-info-check');
261
+ UserPreferences.DELETE_ITEM_BUTTON_ENABLED = selenium_webdriver_1.By.css('button[data-testid="revoke-button"]:not([disabled])');
262
+ UserPreferences = UserPreferences_1 = __decorate([
263
+ (0, inversify_1.injectable)(),
264
+ __param(0, (0, inversify_1.inject)(inversify_types_1.CLASSES.DriverHelper)),
265
+ __metadata("design:paramtypes", [DriverHelper_1.DriverHelper])
266
+ ], UserPreferences);
267
+ exports.UserPreferences = UserPreferences;
268
+ //# sourceMappingURL=UserPreferences.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserPreferences.js","sourceRoot":"","sources":["../../../pageobjects/dashboard/UserPreferences.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,242 @@
1
+ "use strict";
2
+ /** *******************************************************************
3
+ * copyright (c) 2019-2026 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 Workspaces_1;
24
+ Object.defineProperty(exports, "__esModule", { value: true });
25
+ exports.Workspaces = exports.WorkspaceStatusUI = void 0;
26
+ const inversify_1 = require("inversify");
27
+ const DriverHelper_1 = require("../../utils/DriverHelper");
28
+ const inversify_types_1 = require("../../configs/inversify.types");
29
+ const selenium_webdriver_1 = require("selenium-webdriver");
30
+ const Logger_1 = require("../../utils/Logger");
31
+ const TIMEOUT_CONSTANTS_1 = require("../../constants/TIMEOUT_CONSTANTS");
32
+ var WorkspaceStatusUI;
33
+ (function (WorkspaceStatusUI) {
34
+ WorkspaceStatusUI["Running"] = "Workspace status is Running";
35
+ WorkspaceStatusUI["Stopped"] = "Workspace status is Stopped";
36
+ })(WorkspaceStatusUI = exports.WorkspaceStatusUI || (exports.WorkspaceStatusUI = {}));
37
+ let Workspaces = Workspaces_1 = class Workspaces {
38
+ constructor(driverHelper) {
39
+ this.driverHelper = driverHelper;
40
+ }
41
+ async waitPage(timeout = TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_SELENIUM_LOAD_PAGE_TIMEOUT) {
42
+ Logger_1.Logger.debug();
43
+ await this.driverHelper.waitVisibility(Workspaces_1.ADD_WORKSPACE_BUTTON, timeout);
44
+ }
45
+ async clickAddWorkspaceButton(timeout = TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_CLICK_DASHBOARD_ITEM_TIMEOUT) {
46
+ Logger_1.Logger.debug();
47
+ await this.driverHelper.waitAndClick(Workspaces_1.ADD_WORKSPACE_BUTTON, timeout);
48
+ }
49
+ async clickOpenButton(workspaceName, timeout = TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_SELENIUM_LOAD_PAGE_TIMEOUT) {
50
+ Logger_1.Logger.debug();
51
+ await this.driverHelper.waitAndClick(this.getOpenButtonLocator(workspaceName), timeout);
52
+ }
53
+ async waitWorkspaceListItem(workspaceName, timeout = TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_COMMON_DASHBOARD_WAIT_TIMEOUT) {
54
+ Logger_1.Logger.debug(`"${workspaceName}"`);
55
+ await this.driverHelper.waitVisibility(this.getWorkspaceListItemLocator(workspaceName), timeout);
56
+ }
57
+ async waitWorkspaceWithRunningStatus(workspaceName, timeout = TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_COMMON_DASHBOARD_WAIT_TIMEOUT) {
58
+ Logger_1.Logger.debug(`"${workspaceName}"`);
59
+ await this.driverHelper.waitVisibility(this.getWorkspaceStatusLocator(workspaceName, WorkspaceStatusUI.Running), timeout);
60
+ }
61
+ async waitWorkspaceWithStoppedStatus(workspaceName, timeout = TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_DASHBOARD_WORKSPACE_STOP_TIMEOUT) {
62
+ Logger_1.Logger.debug(`"${workspaceName}"`);
63
+ await this.driverHelper.waitVisibility(this.getWorkspaceStatusLocator(workspaceName, WorkspaceStatusUI.Stopped), timeout);
64
+ }
65
+ async clickWorkspaceListItemLink(workspaceName, timeout = TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_CLICK_DASHBOARD_ITEM_TIMEOUT) {
66
+ Logger_1.Logger.debug(`"${workspaceName}"`);
67
+ await this.driverHelper.waitAndClick(this.getOpenWorkspaceDetailsLinkLocator(workspaceName), timeout);
68
+ }
69
+ async clickActionsButton(workspaceName) {
70
+ Logger_1.Logger.debug(`of the '${workspaceName}' list item`);
71
+ await this.driverHelper.waitAndClick(this.getActionsLocator(workspaceName));
72
+ }
73
+ async waitActionsPopup(workspaceName, timeout = TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_COMMON_DASHBOARD_WAIT_TIMEOUT) {
74
+ Logger_1.Logger.debug(`of the '${workspaceName}' list item`);
75
+ await this.driverHelper.waitVisibility(Workspaces_1.WORKSPACE_ACTION_POPUP, timeout);
76
+ }
77
+ async openActionsPopup(workspaceName, timeout = TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_COMMON_DASHBOARD_WAIT_TIMEOUT) {
78
+ Logger_1.Logger.debug(`for the '${workspaceName}' list item`);
79
+ await this.clickActionsButton(workspaceName);
80
+ await this.waitActionsPopup(workspaceName, timeout);
81
+ }
82
+ async clickActionsDeleteButton(workspaceName) {
83
+ Logger_1.Logger.debug(`for the '${workspaceName}' list item`);
84
+ await this.driverHelper.waitAndClick(this.getActionsPopupButtonLocator('Delete Workspace'));
85
+ }
86
+ async clickActionsStopWorkspaceButton(workspaceName) {
87
+ Logger_1.Logger.debug(`for the '${workspaceName}' list item`);
88
+ // todo: workaround because of issue CRW-3649
89
+ try {
90
+ await this.driverHelper.waitAndClick(this.getActionsPopupButtonLocator('Stop Workspace'));
91
+ }
92
+ catch (e) {
93
+ Logger_1.Logger.warn(`for the '${workspaceName}' list item - popup was missed, try to click one more time (issue CRW-3649).`);
94
+ await this.driverHelper.waitAndClick(this.getActionsLocator(workspaceName));
95
+ await this.driverHelper.waitAndClick(this.getActionsPopupButtonLocator('Stop Workspace'));
96
+ }
97
+ }
98
+ async waitDeleteWorkspaceConfirmationWindow(timeout = TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_DASHBOARD_WORKSPACE_STOP_TIMEOUT) {
99
+ Logger_1.Logger.debug();
100
+ await this.driverHelper.waitVisibility(Workspaces_1.CONFIRMATION_WINDOW, timeout);
101
+ }
102
+ async clickToDeleteConfirmationCheckbox(timeout = TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_DASHBOARD_WORKSPACE_STOP_TIMEOUT) {
103
+ Logger_1.Logger.debug();
104
+ await this.driverHelper.waitAndClick(Workspaces_1.DELETE_CONFIRMATION_CHECKBOX, timeout);
105
+ }
106
+ async waitAndClickEnabledConfirmationWindowDeleteButton(timeout = TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_DASHBOARD_WORKSPACE_STOP_TIMEOUT) {
107
+ Logger_1.Logger.debug();
108
+ await this.driverHelper.waitAndClick(Workspaces_1.DELETE_WORKSPACE_BUTTON_ENABLED, timeout);
109
+ }
110
+ async deleteWorkspaceByActionsButton(workspaceName, timeout = TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_DASHBOARD_WORKSPACE_STOP_TIMEOUT) {
111
+ Logger_1.Logger.debug();
112
+ await this.waitWorkspaceListItem(workspaceName, timeout);
113
+ await this.openActionsPopup(workspaceName, timeout);
114
+ await this.clickActionsDeleteButton(workspaceName);
115
+ await this.waitDeleteWorkspaceConfirmationWindow(timeout);
116
+ await this.clickToDeleteConfirmationCheckbox(timeout);
117
+ await this.waitAndClickEnabledConfirmationWindowDeleteButton(timeout);
118
+ }
119
+ async stopWorkspaceByActionsButton(workspaceName, timeout = TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_DASHBOARD_WORKSPACE_STOP_TIMEOUT) {
120
+ Logger_1.Logger.debug();
121
+ await this.waitWorkspaceListItem(workspaceName, timeout);
122
+ await this.openActionsPopup(workspaceName, timeout);
123
+ await this.clickActionsStopWorkspaceButton(workspaceName);
124
+ }
125
+ async waitWorkspaceListItemAbsence(workspaceName, timeout = TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_DASHBOARD_WORKSPACE_STOP_TIMEOUT) {
126
+ Logger_1.Logger.debug(`"${workspaceName}"`);
127
+ const polling = TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_SELENIUM_DEFAULT_POLLING;
128
+ const attempts = Math.ceil(timeout / polling);
129
+ await this.driverHelper.waitDisappearance(this.getWorkspaceListItemLocator(workspaceName), attempts, polling);
130
+ }
131
+ async getAllCreatedWorkspacesNames(timeout = TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_COMMON_DASHBOARD_WAIT_TIMEOUT) {
132
+ Logger_1.Logger.debug();
133
+ const workspaceNames = [];
134
+ try {
135
+ const workspaceItems = await this.driverHelper.waitAllPresence(Workspaces_1.WORKSPACE_ITEM_TABLE_NAME_SECTION, timeout);
136
+ for (const item of workspaceItems) {
137
+ Logger_1.Logger.debug(`try to get ${workspaceItems.indexOf(item)} items name`);
138
+ workspaceNames.push(await item.getText());
139
+ Logger_1.Logger.debug(`workspace name is "${workspaceNames[workspaceNames.length - 1]}"`);
140
+ }
141
+ }
142
+ catch (e) {
143
+ Logger_1.Logger.debug(`${e}`);
144
+ }
145
+ Logger_1.Logger.debug(`${workspaceNames.length} workspaces have been created in DevSpaces`);
146
+ return workspaceNames;
147
+ }
148
+ async getLearnMoreDocumentationLink() {
149
+ Logger_1.Logger.debug();
150
+ return await this.driverHelper.waitAndGetElementAttribute(Workspaces_1.LEARN_MORE_DOC_LINK, 'href');
151
+ }
152
+ async waitBackupStatus(workspaceName, status, timeout = TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_WAIT_BACKUP_STATUS_TIMEOUT) {
153
+ Logger_1.Logger.debug(`Backup status for the "${workspaceName}" list item`);
154
+ await this.driverHelper.waitVisibility(this.getBackupStatusLocator(workspaceName, status), timeout);
155
+ }
156
+ async openBackupsPage(timeout = TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_CLICK_DASHBOARD_ITEM_TIMEOUT) {
157
+ Logger_1.Logger.debug();
158
+ await this.driverHelper.waitAndClick(Workspaces_1.BACKUPS_BUTTON, timeout);
159
+ }
160
+ async clickCreateFromBackupButton(workspaceName, timeout = TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_COMMON_DASHBOARD_WAIT_TIMEOUT) {
161
+ Logger_1.Logger.debug(`"${workspaceName}"`);
162
+ await this.driverHelper.waitAndClick(this.getActionsRestoreWorkspaceButtonLocator(workspaceName), timeout);
163
+ await this.driverHelper.waitAndClick(Workspaces_1.CREATE_FROM_BACKUP_BUTTON, timeout);
164
+ }
165
+ async restoreWorkspaceFromDefaultRegistry() {
166
+ Logger_1.Logger.debug();
167
+ await this.driverHelper.waitAndClick(Workspaces_1.RESTORE_WORKSPACE_BUTTON);
168
+ await this.driverHelper.waitAndClick(Workspaces_1.RESTORE_CONFIRM_BUTTON);
169
+ }
170
+ async restoreWorkspaceFromExternalRegistry(backupImageUrl, workspaceName) {
171
+ Logger_1.Logger.debug();
172
+ await this.driverHelper.waitAndClick(Workspaces_1.EXTERNAL_REGISTRY_MODE_BUTTON);
173
+ await this.setBackupImageUrlValue(backupImageUrl);
174
+ await this.setWorkspaceNameValue(workspaceName);
175
+ await this.driverHelper.waitAndClick(Workspaces_1.RESTORE_WORKSPACE_BUTTON);
176
+ }
177
+ async getBackupImageUrlValue() {
178
+ Logger_1.Logger.debug();
179
+ return await this.driverHelper.waitAndGetValue(Workspaces_1.BACKUP_IMAGE, TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_COMMON_DASHBOARD_WAIT_TIMEOUT);
180
+ }
181
+ async setBackupImageUrlValue(backupImageUrl) {
182
+ Logger_1.Logger.debug();
183
+ await this.driverHelper.clear(Workspaces_1.BACKUP_IMAGE_URL_INPUT);
184
+ await this.driverHelper.type(Workspaces_1.BACKUP_IMAGE_URL_INPUT, backupImageUrl);
185
+ }
186
+ async setWorkspaceNameValue(workspaceName) {
187
+ Logger_1.Logger.debug();
188
+ await this.driverHelper.clear(Workspaces_1.WORKSPACE_NAME_INPUT);
189
+ await this.driverHelper.type(Workspaces_1.WORKSPACE_NAME_INPUT, workspaceName);
190
+ }
191
+ getWorkspaceListItemLocator(workspaceName) {
192
+ return selenium_webdriver_1.By.xpath(`//tr[td//span[text()='${workspaceName}']]`);
193
+ }
194
+ getWorkspaceStatusLocator(workspaceName, workspaceStatus) {
195
+ return selenium_webdriver_1.By.xpath(`${this.getWorkspaceListItemLocator(workspaceName).value}//span[@data-testid='workspace-status-indicator' and @aria-label='${workspaceStatus}']`);
196
+ }
197
+ getActionsLocator(workspaceName) {
198
+ return selenium_webdriver_1.By.xpath(`${this.getWorkspaceListItemLocator(workspaceName).value}/td/button[@aria-label='Actions for ${workspaceName}']`);
199
+ }
200
+ /* private getExpandedActionsLocator(workspaceName: string): By {
201
+ return By.xpath(
202
+ `${this.getWorkspaceListItemLocator(workspaceName).value}//button[@aria-label='Actions for ${workspaceName}' and @aria-expanded='true']`
203
+ );
204
+ }*/
205
+ getActionsPopupButtonLocator(buttonText) {
206
+ return selenium_webdriver_1.By.css(`button[aria-label="Action: ${buttonText}"]`);
207
+ }
208
+ getOpenButtonLocator(workspaceName) {
209
+ return selenium_webdriver_1.By.xpath(`${this.getWorkspaceListItemLocator(workspaceName).value}//button/span[text()='Open']`);
210
+ }
211
+ getOpenWorkspaceDetailsLinkLocator(workspaceName) {
212
+ return selenium_webdriver_1.By.xpath(`${this.getWorkspaceListItemLocator(workspaceName).value}//span[text()='${workspaceName}']`);
213
+ }
214
+ getActionsRestoreWorkspaceButtonLocator(workspaceName) {
215
+ return selenium_webdriver_1.By.xpath(`//tr[td//span[text()='${workspaceName}']]//button[@aria-label='Actions for ${workspaceName}']`);
216
+ }
217
+ getBackupStatusLocator(workspaceName, status) {
218
+ return selenium_webdriver_1.By.xpath(`//tr[td//span[text()='${workspaceName}']]//span[@aria-label="Backup status: ${status}"]`);
219
+ }
220
+ };
221
+ Workspaces.ADD_WORKSPACE_BUTTON = selenium_webdriver_1.By.css('button[aria-label="Add Workspace"]');
222
+ Workspaces.WORKSPACE_ITEM_TABLE_NAME_SECTION = selenium_webdriver_1.By.xpath('//td[@data-label="Name"]/span/a');
223
+ Workspaces.DELETE_WORKSPACE_BUTTON_ENABLED = selenium_webdriver_1.By.xpath('//button[@data-testid="delete-workspace-button" and not(@disabled)]');
224
+ Workspaces.WORKSPACE_ACTION_POPUP = selenium_webdriver_1.By.css('div[class*="workspaceActionSelector"]');
225
+ Workspaces.DELETE_CONFIRMATION_CHECKBOX = selenium_webdriver_1.By.xpath('//input[@data-testid="confirmation-checkbox"]');
226
+ Workspaces.CONFIRMATION_WINDOW = selenium_webdriver_1.By.xpath('//div[@aria-label="Delete workspaces confirmation window"]');
227
+ Workspaces.LEARN_MORE_DOC_LINK = selenium_webdriver_1.By.xpath('//div/p/a');
228
+ Workspaces.BACKUPS_BUTTON = selenium_webdriver_1.By.id('view-backups');
229
+ Workspaces.BACKUP_IMAGE = selenium_webdriver_1.By.css('input[aria-label="Copyable input"]');
230
+ Workspaces.CREATE_FROM_BACKUP_BUTTON = selenium_webdriver_1.By.xpath('//span[text()="Create from Backup"]');
231
+ Workspaces.RESTORE_WORKSPACE_BUTTON = selenium_webdriver_1.By.xpath('//span[text()="Restore Workspace"]');
232
+ Workspaces.RESTORE_CONFIRM_BUTTON = selenium_webdriver_1.By.xpath('//span[text()="Restore"]');
233
+ Workspaces.EXTERNAL_REGISTRY_MODE_BUTTON = selenium_webdriver_1.By.xpath('//span[text()="External registry"]');
234
+ Workspaces.BACKUP_IMAGE_URL_INPUT = selenium_webdriver_1.By.css('input[aria-label="Backup image URL"]');
235
+ Workspaces.WORKSPACE_NAME_INPUT = selenium_webdriver_1.By.css('input[aria-label="Workspace name"]');
236
+ Workspaces = Workspaces_1 = __decorate([
237
+ (0, inversify_1.injectable)(),
238
+ __param(0, (0, inversify_1.inject)(inversify_types_1.CLASSES.DriverHelper)),
239
+ __metadata("design:paramtypes", [DriverHelper_1.DriverHelper])
240
+ ], Workspaces);
241
+ exports.Workspaces = Workspaces;
242
+ //# sourceMappingURL=Workspaces.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Workspaces.js","sourceRoot":"","sources":["../../../pageobjects/dashboard/Workspaces.ts"],"names":[],"mappings":"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"}