@eclipse-che/che-e2e 7.123.0-next → 7.123.0-next-6b3e5e1

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 (260) hide show
  1. package/dist/configs/inversify.config.js +123 -0
  2. package/dist/configs/inversify.config.js.map +1 -0
  3. package/dist/configs/inversify.types.js +74 -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 +99 -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 +192 -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/RestartWorkspaceDialog.js +80 -0
  64. package/dist/pageobjects/ide/RestartWorkspaceDialog.js.map +1 -0
  65. package/dist/pageobjects/ide/RestrictedModeButton.js +57 -0
  66. package/dist/pageobjects/ide/RestrictedModeButton.js.map +1 -0
  67. package/dist/pageobjects/ide/SourceControlView.js +52 -0
  68. package/dist/pageobjects/ide/SourceControlView.js.map +1 -0
  69. package/dist/pageobjects/ide/ViewsMoreActionsButton.js +73 -0
  70. package/dist/pageobjects/ide/ViewsMoreActionsButton.js.map +1 -0
  71. package/dist/pageobjects/login/interfaces/ICheLoginPage.js +12 -0
  72. package/dist/pageobjects/login/interfaces/ICheLoginPage.js.map +1 -0
  73. package/dist/pageobjects/login/interfaces/IOcpLoginPage.js +12 -0
  74. package/dist/pageobjects/login/interfaces/IOcpLoginPage.js.map +1 -0
  75. package/dist/pageobjects/login/kubernetes/DexLoginPage.js +69 -0
  76. package/dist/pageobjects/login/kubernetes/DexLoginPage.js.map +1 -0
  77. package/dist/pageobjects/login/kubernetes/KubernetesLoginPage.js +50 -0
  78. package/dist/pageobjects/login/kubernetes/KubernetesLoginPage.js.map +1 -0
  79. package/dist/pageobjects/login/openshift/OcpLoginPage.js +88 -0
  80. package/dist/pageobjects/login/openshift/OcpLoginPage.js.map +1 -0
  81. package/dist/pageobjects/login/openshift/OcpRedHatLoginPage.js +73 -0
  82. package/dist/pageobjects/login/openshift/OcpRedHatLoginPage.js.map +1 -0
  83. package/dist/pageobjects/login/openshift/OcpUserLoginPage.js +53 -0
  84. package/dist/pageobjects/login/openshift/OcpUserLoginPage.js.map +1 -0
  85. package/dist/pageobjects/login/openshift/RedHatLoginPage.js +85 -0
  86. package/dist/pageobjects/login/openshift/RedHatLoginPage.js.map +1 -0
  87. package/dist/pageobjects/login/openshift/RegularUserOcpCheLoginPage.js +65 -0
  88. package/dist/pageobjects/login/openshift/RegularUserOcpCheLoginPage.js.map +1 -0
  89. package/dist/pageobjects/openshift/OcpApplicationPage.js +60 -0
  90. package/dist/pageobjects/openshift/OcpApplicationPage.js.map +1 -0
  91. package/dist/pageobjects/openshift/OcpImportFromGitPage.js +92 -0
  92. package/dist/pageobjects/openshift/OcpImportFromGitPage.js.map +1 -0
  93. package/dist/pageobjects/openshift/OcpMainPage.js +140 -0
  94. package/dist/pageobjects/openshift/OcpMainPage.js.map +1 -0
  95. package/dist/pageobjects/webterminal/WebTerminalPage.js +182 -0
  96. package/dist/pageobjects/webterminal/WebTerminalPage.js.map +1 -0
  97. package/dist/specs/MochaHooks.js +142 -0
  98. package/dist/specs/MochaHooks.js.map +1 -0
  99. package/dist/specs/SmokeTest.spec.js +58 -0
  100. package/dist/specs/SmokeTest.spec.js.map +1 -0
  101. package/dist/specs/api/AnsibleDevFileAPI.spec.js +263 -0
  102. package/dist/specs/api/AnsibleDevFileAPI.spec.js.map +1 -0
  103. package/dist/specs/api/BuildPushRunPodmanContainerAPI.spec.js +147 -0
  104. package/dist/specs/api/BuildPushRunPodmanContainerAPI.spec.js.map +1 -0
  105. package/dist/specs/api/ContainerOverridesAPI.spec.js +40 -0
  106. package/dist/specs/api/ContainerOverridesAPI.spec.js.map +1 -0
  107. package/dist/specs/api/CppDevFileAPI.spec.js +87 -0
  108. package/dist/specs/api/CppDevFileAPI.spec.js.map +1 -0
  109. package/dist/specs/api/DevfileAcceptanceTestAPI.spec.js +99 -0
  110. package/dist/specs/api/DevfileAcceptanceTestAPI.spec.js.map +1 -0
  111. package/dist/specs/api/DotnetDevFileAPI.spec.js +89 -0
  112. package/dist/specs/api/DotnetDevFileAPI.spec.js.map +1 -0
  113. package/dist/specs/api/EmptyWorkspaceAPI.spec.js +60 -0
  114. package/dist/specs/api/EmptyWorkspaceAPI.spec.js.map +1 -0
  115. package/dist/specs/api/GoDevFileAPI.spec.js +82 -0
  116. package/dist/specs/api/GoDevFileAPI.spec.js.map +1 -0
  117. package/dist/specs/api/InbuiltApplicationDevWorkspacesAPI.spec.js +97 -0
  118. package/dist/specs/api/InbuiltApplicationDevWorkspacesAPI.spec.js.map +1 -0
  119. package/dist/specs/api/JBossEapDevFileAPI.spec.js +127 -0
  120. package/dist/specs/api/JBossEapDevFileAPI.spec.js.map +1 -0
  121. package/dist/specs/api/LombokDevFileAPI.spec.js +81 -0
  122. package/dist/specs/api/LombokDevFileAPI.spec.js.map +1 -0
  123. package/dist/specs/api/NodeJSMongoDBDevFileAPI.spec.js +81 -0
  124. package/dist/specs/api/NodeJSMongoDBDevFileAPI.spec.js.map +1 -0
  125. package/dist/specs/api/NodeJsExpressDevFileAPI.spec.js +130 -0
  126. package/dist/specs/api/NodeJsExpressDevFileAPI.spec.js.map +1 -0
  127. package/dist/specs/api/PhpDevFileAPI.spec.js +71 -0
  128. package/dist/specs/api/PhpDevFileAPI.spec.js.map +1 -0
  129. package/dist/specs/api/PodOverridesAPI.spec.js +46 -0
  130. package/dist/specs/api/PodOverridesAPI.spec.js.map +1 -0
  131. package/dist/specs/api/PythonDevFileAPI.spec.js +71 -0
  132. package/dist/specs/api/PythonDevFileAPI.spec.js.map +1 -0
  133. package/dist/specs/api/QuarkusDevFileAPI.spec.js +97 -0
  134. package/dist/specs/api/QuarkusDevFileAPI.spec.js.map +1 -0
  135. package/dist/specs/dashboard-samples/Documentation.spec.js +118 -0
  136. package/dist/specs/dashboard-samples/Documentation.spec.js.map +1 -0
  137. package/dist/specs/dashboard-samples/EmptyWorkspace.spec.js +60 -0
  138. package/dist/specs/dashboard-samples/EmptyWorkspace.spec.js.map +1 -0
  139. package/dist/specs/dashboard-samples/Quarkus.spec.js +64 -0
  140. package/dist/specs/dashboard-samples/Quarkus.spec.js.map +1 -0
  141. package/dist/specs/dashboard-samples/RecommendedExtensions.spec.js +345 -0
  142. package/dist/specs/dashboard-samples/RecommendedExtensions.spec.js.map +1 -0
  143. package/dist/specs/dashboard-samples/StartWorkspaceUsingDesktopEditors.spec.js +171 -0
  144. package/dist/specs/dashboard-samples/StartWorkspaceUsingDesktopEditors.spec.js.map +1 -0
  145. package/dist/specs/devconsole-intergration/DevConsoleIntegration.spec.js +155 -0
  146. package/dist/specs/devconsole-intergration/DevConsoleIntegration.spec.js.map +1 -0
  147. package/dist/specs/factory/Factory.spec.js +183 -0
  148. package/dist/specs/factory/Factory.spec.js.map +1 -0
  149. package/dist/specs/factory/FactoryWithGitRepoOptions.spec.js +63 -0
  150. package/dist/specs/factory/FactoryWithGitRepoOptions.spec.js.map +1 -0
  151. package/dist/specs/factory/NoSetupRepoFactory.spec.js +212 -0
  152. package/dist/specs/factory/NoSetupRepoFactory.spec.js.map +1 -0
  153. package/dist/specs/factory/RefusedOAuthFactory.spec.js +239 -0
  154. package/dist/specs/factory/RefusedOAuthFactory.spec.js.map +1 -0
  155. package/dist/specs/factory/SshUrlNoOauthPatFactory.spec.js +202 -0
  156. package/dist/specs/factory/SshUrlNoOauthPatFactory.spec.js.map +1 -0
  157. package/dist/specs/miscellaneous/CreateWorkspaceWithExistedName.spec.js +77 -0
  158. package/dist/specs/miscellaneous/CreateWorkspaceWithExistedName.spec.js.map +1 -0
  159. package/dist/specs/miscellaneous/CreateWorkspaceWithExistingNameFromEmptyWorkspaceSample.spec.js +106 -0
  160. package/dist/specs/miscellaneous/CreateWorkspaceWithExistingNameFromEmptyWorkspaceSample.spec.js.map +1 -0
  161. package/dist/specs/miscellaneous/CreateWorkspaceWithExistingNameFromGitUrl.spec.js +113 -0
  162. package/dist/specs/miscellaneous/CreateWorkspaceWithExistingNameFromGitUrl.spec.js.map +1 -0
  163. package/dist/specs/miscellaneous/CreateWorkspaceWithExistingNameFromSample.spec.js +116 -0
  164. package/dist/specs/miscellaneous/CreateWorkspaceWithExistingNameFromSample.spec.js.map +1 -0
  165. package/dist/specs/miscellaneous/CustomOpenVSXRegistry.spec.js +205 -0
  166. package/dist/specs/miscellaneous/CustomOpenVSXRegistry.spec.js.map +1 -0
  167. package/dist/specs/miscellaneous/ExtensionActivationTest.spec.js +129 -0
  168. package/dist/specs/miscellaneous/ExtensionActivationTest.spec.js.map +1 -0
  169. package/dist/specs/miscellaneous/KubedockPodmanPersistUserHomeTest.spec.js +121 -0
  170. package/dist/specs/miscellaneous/KubedockPodmanPersistUserHomeTest.spec.js.map +1 -0
  171. package/dist/specs/miscellaneous/KubedockPodmanTest.spec.js +103 -0
  172. package/dist/specs/miscellaneous/KubedockPodmanTest.spec.js.map +1 -0
  173. package/dist/specs/miscellaneous/PredefinedNamespace.spec.js +111 -0
  174. package/dist/specs/miscellaneous/PredefinedNamespace.spec.js.map +1 -0
  175. package/dist/specs/miscellaneous/RenameWorkspace.spec.js +116 -0
  176. package/dist/specs/miscellaneous/RenameWorkspace.spec.js.map +1 -0
  177. package/dist/specs/miscellaneous/RevokeOauth.spec.js +29 -0
  178. package/dist/specs/miscellaneous/RevokeOauth.spec.js.map +1 -0
  179. package/dist/specs/miscellaneous/UserPreferencesTest.spec.js +26 -0
  180. package/dist/specs/miscellaneous/UserPreferencesTest.spec.js.map +1 -0
  181. package/dist/specs/miscellaneous/UserSecretsInWorkspace.spec.js +78 -0
  182. package/dist/specs/miscellaneous/UserSecretsInWorkspace.spec.js.map +1 -0
  183. package/dist/specs/miscellaneous/VsixInstallationDisableTest.spec.js +196 -0
  184. package/dist/specs/miscellaneous/VsixInstallationDisableTest.spec.js.map +1 -0
  185. package/dist/specs/miscellaneous/WorkspaceBackupRestore.spec.js +208 -0
  186. package/dist/specs/miscellaneous/WorkspaceBackupRestore.spec.js.map +1 -0
  187. package/dist/specs/miscellaneous/WorkspaceIdleTimeout.spec.js +84 -0
  188. package/dist/specs/miscellaneous/WorkspaceIdleTimeout.spec.js.map +1 -0
  189. package/dist/specs/miscellaneous/WorkspaceRunTimeout.spec.js +84 -0
  190. package/dist/specs/miscellaneous/WorkspaceRunTimeout.spec.js.map +1 -0
  191. package/dist/specs/miscellaneous/WorkspaceWithParent.spec.js +101 -0
  192. package/dist/specs/miscellaneous/WorkspaceWithParent.spec.js.map +1 -0
  193. package/dist/specs/restart-tests/RestartFromLocalDevfile.spec.js +266 -0
  194. package/dist/specs/restart-tests/RestartFromLocalDevfile.spec.js.map +1 -0
  195. package/dist/specs/web-terminal/WebTerminalTest.spec.js +47 -0
  196. package/dist/specs/web-terminal/WebTerminalTest.spec.js.map +1 -0
  197. package/dist/specs/web-terminal/WebTerminalUnderAdmin.spec.js +82 -0
  198. package/dist/specs/web-terminal/WebTerminalUnderAdmin.spec.js.map +1 -0
  199. package/dist/specs/web-terminal/WebTerminalUnderRegularUser.spec.js +78 -0
  200. package/dist/specs/web-terminal/WebTerminalUnderRegularUser.spec.js.map +1 -0
  201. package/dist/suites/devfile-acceptance-test-suite/DynamicallyGeneratingAPITest.suite.js +13 -0
  202. package/dist/suites/devfile-acceptance-test-suite/DynamicallyGeneratingAPITest.suite.js.map +1 -0
  203. package/dist/suites/disconnected-ocp/APITest.suite.js +14 -0
  204. package/dist/suites/disconnected-ocp/APITest.suite.js.map +1 -0
  205. package/dist/suites/disconnected-ocp/DynamicallyGeneratingAPITest.suite.js +13 -0
  206. package/dist/suites/disconnected-ocp/DynamicallyGeneratingAPITest.suite.js.map +1 -0
  207. package/dist/suites/disconnected-ocp/UITest.suite.js +19 -0
  208. package/dist/suites/disconnected-ocp/UITest.suite.js.map +1 -0
  209. package/dist/suites/online-ocp/APITest.suite.js +15 -0
  210. package/dist/suites/online-ocp/APITest.suite.js.map +1 -0
  211. package/dist/suites/online-ocp/DynamicallyGeneratingAPITest.suite.js +13 -0
  212. package/dist/suites/online-ocp/DynamicallyGeneratingAPITest.suite.js.map +1 -0
  213. package/dist/suites/online-ocp/UITest.suite.js +23 -0
  214. package/dist/suites/online-ocp/UITest.suite.js.map +1 -0
  215. package/dist/tests-library/LoginTests.js +76 -0
  216. package/dist/tests-library/LoginTests.js.map +1 -0
  217. package/dist/tests-library/ProjectAndFileTests.js +230 -0
  218. package/dist/tests-library/ProjectAndFileTests.js.map +1 -0
  219. package/dist/tests-library/WorkspaceHandlingTests.js +219 -0
  220. package/dist/tests-library/WorkspaceHandlingTests.js.map +1 -0
  221. package/dist/utils/BrowserTabsUtil.js +124 -0
  222. package/dist/utils/BrowserTabsUtil.js.map +1 -0
  223. package/dist/utils/CheReporter.js +238 -0
  224. package/dist/utils/CheReporter.js.map +1 -0
  225. package/dist/utils/DevWorkspaceConfigurationHelper.js +145 -0
  226. package/dist/utils/DevWorkspaceConfigurationHelper.js.map +1 -0
  227. package/dist/utils/DevfilesHelper.js +177 -0
  228. package/dist/utils/DevfilesHelper.js.map +1 -0
  229. package/dist/utils/DriverHelper.js +609 -0
  230. package/dist/utils/DriverHelper.js.map +1 -0
  231. package/dist/utils/IContextParams.js +12 -0
  232. package/dist/utils/IContextParams.js.map +1 -0
  233. package/dist/utils/IKubernetesCommandLineToolsExecutor.js +3 -0
  234. package/dist/utils/IKubernetesCommandLineToolsExecutor.js.map +1 -0
  235. package/dist/utils/KubernetesCommandLineToolsExecutor.js +338 -0
  236. package/dist/utils/KubernetesCommandLineToolsExecutor.js.map +1 -0
  237. package/dist/utils/Logger.js +146 -0
  238. package/dist/utils/Logger.js.map +1 -0
  239. package/dist/utils/ScreenCatcher.js +114 -0
  240. package/dist/utils/ScreenCatcher.js.map +1 -0
  241. package/dist/utils/ShellExecutor.js +47 -0
  242. package/dist/utils/ShellExecutor.js.map +1 -0
  243. package/dist/utils/StringUtil.js +107 -0
  244. package/dist/utils/StringUtil.js.map +1 -0
  245. package/dist/utils/request-handlers/CheApiRequestHandler.js +128 -0
  246. package/dist/utils/request-handlers/CheApiRequestHandler.js.map +1 -0
  247. package/dist/utils/request-handlers/headers/CheMultiuserAuthorizationHeaderHandler.js +55 -0
  248. package/dist/utils/request-handlers/headers/CheMultiuserAuthorizationHeaderHandler.js.map +1 -0
  249. package/dist/utils/request-handlers/headers/IAuthorizationHeaderHandler.js +12 -0
  250. package/dist/utils/request-handlers/headers/IAuthorizationHeaderHandler.js.map +1 -0
  251. package/dist/utils/workspace/ApiUrlResolver.js +117 -0
  252. package/dist/utils/workspace/ApiUrlResolver.js.map +1 -0
  253. package/dist/utils/workspace/ITestWorkspaceUtil.js +12 -0
  254. package/dist/utils/workspace/ITestWorkspaceUtil.js.map +1 -0
  255. package/dist/utils/workspace/TestWorkspaceUtil.js +202 -0
  256. package/dist/utils/workspace/TestWorkspaceUtil.js.map +1 -0
  257. package/dist/utils/workspace/WorkspaceStatus.js +19 -0
  258. package/dist/utils/workspace/WorkspaceStatus.js.map +1 -0
  259. package/index.ts +5 -5
  260. package/package.json +1 -1
@@ -0,0 +1,97 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ /** *******************************************************************
7
+ * copyright (c) 2024 Red Hat, Inc.
8
+ *
9
+ * This program and the accompanying materials are made
10
+ * available under the terms of the Eclipse Public License 2.0
11
+ * which is available at https://www.eclipse.org/legal/epl-2.0/
12
+ *
13
+ * SPDX-License-Identifier: EPL-2.0
14
+ **********************************************************************/
15
+ const BASE_TEST_CONSTANTS_1 = require("../../constants/BASE_TEST_CONSTANTS");
16
+ const inversify_config_1 = require("../../configs/inversify.config");
17
+ const inversify_types_1 = require("../../configs/inversify.types");
18
+ const DevWorkspaceConfigurationHelper_1 = require("../../utils/DevWorkspaceConfigurationHelper");
19
+ const chai_1 = require("chai");
20
+ const API_TEST_CONSTANTS_1 = require("../../constants/API_TEST_CONSTANTS");
21
+ const yaml_1 = __importDefault(require("yaml"));
22
+ const Logger_1 = require("../../utils/Logger");
23
+ const crypto_1 = __importDefault(require("crypto"));
24
+ suite('Quarkus devfile API test', function () {
25
+ const devfilesRegistryHelper = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.DevfilesRegistryHelper);
26
+ const kubernetesCommandLineToolsExecutor = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.KubernetesCommandLineToolsExecutor);
27
+ const devfileID = 'quarkus-rest-api';
28
+ const containerTerminal = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ContainerTerminal);
29
+ let devWorkspaceConfigurationHelper;
30
+ let devfileContext;
31
+ let devfileContent = '';
32
+ let devfileName = '';
33
+ suiteSetup(`Prepare login ${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, function () {
34
+ kubernetesCommandLineToolsExecutor.loginToOcp();
35
+ });
36
+ test(`Create ${devfileID} workspace`, async function () {
37
+ const randomPref = crypto_1.default.randomBytes(4).toString('hex');
38
+ kubernetesCommandLineToolsExecutor.namespace = API_TEST_CONSTANTS_1.API_TEST_CONSTANTS.TS_API_TEST_NAMESPACE;
39
+ devfileContent = devfilesRegistryHelper.getDevfileContent(devfileID);
40
+ const editorDevfileContent = devfilesRegistryHelper.obtainCheDevFileEditorFromCheConfigMap('editors-definitions');
41
+ devfileName = yaml_1.default.parse(devfileContent).metadata.name;
42
+ const uniqueName = yaml_1.default.parse(devfileContent).metadata.name + randomPref;
43
+ kubernetesCommandLineToolsExecutor.workspaceName = uniqueName;
44
+ devWorkspaceConfigurationHelper = new DevWorkspaceConfigurationHelper_1.DevWorkspaceConfigurationHelper({
45
+ editorContent: editorDevfileContent,
46
+ devfileContent: devfileContent
47
+ });
48
+ devfileContext = await devWorkspaceConfigurationHelper.generateDevfileContext();
49
+ if (devfileContext.devWorkspace.metadata) {
50
+ devfileContext.devWorkspace.metadata.name = uniqueName;
51
+ }
52
+ const devWorkspaceConfigurationYamlString = devWorkspaceConfigurationHelper.getDevWorkspaceConfigurationYamlAsString(devfileContext);
53
+ const output = kubernetesCommandLineToolsExecutor.applyAndWaitDevWorkspace(devWorkspaceConfigurationYamlString);
54
+ (0, chai_1.expect)(output.stdout).contains('condition met');
55
+ });
56
+ test('Check packaging application', function () {
57
+ const containerName = yaml_1.default.parse(devfileContent).commands[0].exec.component;
58
+ if (BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.IS_CLUSTER_DISCONNECTED()) {
59
+ Logger_1.Logger.info('Test cluster is disconnected. Init Java Truststore...');
60
+ const initJavaTruststoreCommand = 'cp /home/user/init-java-truststore.sh /tmp && chmod +x /tmp/init-java-truststore.sh && /tmp/init-java-truststore.sh';
61
+ const output = containerTerminal.execInContainerCommand(initJavaTruststoreCommand, containerName);
62
+ (0, chai_1.expect)(output.code).eqls(0);
63
+ }
64
+ const workdir = yaml_1.default.parse(devfileContent).commands[0].exec.workingDir;
65
+ const commandLine = yaml_1.default.parse(devfileContent).commands[0].exec.commandLine;
66
+ Logger_1.Logger.info(`workdir from exec section of DevWorkspace file: ${workdir}`);
67
+ Logger_1.Logger.info(`commandLine from exec section of DevWorkspace file: ${commandLine}`);
68
+ let runCommandInBash = commandLine.replaceAll('$', '\\$'); // don't wipe out env. vars like "${PROJECTS_ROOT}"
69
+ if (workdir !== undefined && workdir !== '') {
70
+ runCommandInBash = `cd ${workdir} && ` + runCommandInBash;
71
+ }
72
+ const output = containerTerminal.execInContainerCommand(runCommandInBash, containerName);
73
+ (0, chai_1.expect)(output.code).eqls(0);
74
+ const outputText = output.stdout.trim();
75
+ (0, chai_1.expect)(outputText).contains('BUILD SUCCESS');
76
+ });
77
+ test('Check running application', function () {
78
+ const workdir = yaml_1.default.parse(devfileContent).commands[1].exec.workingDir;
79
+ const commandLine = yaml_1.default.parse(devfileContent).commands[1].exec.commandLine;
80
+ const containerName = yaml_1.default.parse(devfileContent).commands[1].exec.component;
81
+ Logger_1.Logger.info(`workdir from exec section of DevWorkspace file: ${workdir}`);
82
+ Logger_1.Logger.info(`commandLine from exec section of DevWorkspace file: ${commandLine}`);
83
+ let runCommandInBash = commandLine.replaceAll('$', '\\$'); // don't wipe out env. vars like "${PROJECTS_ROOT}"
84
+ if (workdir !== undefined && workdir !== '') {
85
+ runCommandInBash = `cd ${workdir} && sh -c "(` + runCommandInBash + ' > command.log 2>&1 &) && sleep 15s && exit"';
86
+ }
87
+ let commandOutput = containerTerminal.execInContainerCommand(runCommandInBash, containerName);
88
+ (0, chai_1.expect)(commandOutput.code).eqls(0);
89
+ commandOutput = containerTerminal.execInContainerCommand(`cat ${workdir}/command.log`, containerName);
90
+ const commandLog = commandOutput.stdout.trim();
91
+ (0, chai_1.expect)(commandLog).contains('Listening for transport dt_socket at address: 5005');
92
+ });
93
+ suiteTeardown('Delete workspace', function () {
94
+ kubernetesCommandLineToolsExecutor.deleteDevWorkspace(devfileName);
95
+ });
96
+ });
97
+ //# sourceMappingURL=QuarkusDevFileAPI.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QuarkusDevFileAPI.spec.js","sourceRoot":"","sources":["../../../specs/api/QuarkusDevFileAPI.spec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,118 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const fs_1 = __importDefault(require("fs"));
7
+ const path_1 = __importDefault(require("path"));
8
+ const yaml_1 = __importDefault(require("yaml"));
9
+ const chai_1 = require("chai");
10
+ const inversify_config_1 = require("../../configs/inversify.config");
11
+ const inversify_types_1 = require("../../configs/inversify.types");
12
+ const axios_1 = __importDefault(require("axios"));
13
+ const BASE_TEST_CONSTANTS_1 = require("../../constants/BASE_TEST_CONSTANTS");
14
+ const OAUTH_CONSTANTS_1 = require("../../constants/OAUTH_CONSTANTS");
15
+ const Logger_1 = require("../../utils/Logger");
16
+ // suit works for DevSpaces
17
+ suite(`Check links to documentation page in Dashboard ${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, function () {
18
+ this.timeout(180000);
19
+ const pathToSampleFile = path_1.default.resolve('resources/default-devfile.yaml');
20
+ const workspaceName = yaml_1.default.parse(fs_1.default.readFileSync(pathToSampleFile, 'utf8')).metadata.name;
21
+ const kubernetesCommandLineToolsExecutor = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.KubernetesCommandLineToolsExecutor);
22
+ kubernetesCommandLineToolsExecutor.workspaceName = workspaceName;
23
+ const loginTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.LoginTests);
24
+ const dashboard = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.Dashboard);
25
+ const workspaces = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.Workspaces);
26
+ const workspaceDetails = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.WorkspaceDetails);
27
+ const shellExecutor = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ShellExecutor);
28
+ const browserTabsUtil = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.BrowserTabsUtil);
29
+ const majorMinorVersion = BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TESTING_APPLICATION_VERSION.split('.').slice(0, 2).join('.'); // extract major.minor version from full version
30
+ let parentGUID = '';
31
+ let docs, links, productVersion;
32
+ let webSocketTroubleshooting, workspace, devfile, general, storageTypes;
33
+ suiteSetup('Login into OC client and apply default DevFile', function () {
34
+ kubernetesCommandLineToolsExecutor.loginToOcp();
35
+ kubernetesCommandLineToolsExecutor.applyYamlConfigurationAsFile(pathToSampleFile);
36
+ shellExecutor.wait(5);
37
+ });
38
+ suiteSetup('Get links from product version github branch', function () {
39
+ try {
40
+ ({ docs, links, productVersion } = JSON.parse(shellExecutor.executeCommand('oc exec deploy/devspaces-dashboard -n openshift-devspaces -- cat /public/dashboard/assets/branding/product.json')));
41
+ }
42
+ catch (e) {
43
+ Logger_1.Logger.error('Cannot fetch documentation links');
44
+ throw e;
45
+ }
46
+ ({ webSocketTroubleshooting, workspace, devfile, general, storageTypes } = docs);
47
+ });
48
+ suiteSetup('Login', async function () {
49
+ await loginTests.loginIntoChe();
50
+ });
51
+ test('Check if product.json config contains correct application version', function () {
52
+ [productVersion, links[1].href, devfile, workspace, general, storageTypes, webSocketTroubleshooting].forEach((e) => {
53
+ (0, chai_1.expect)(e, 'Fetched links not matches with tested product version').contains(majorMinorVersion);
54
+ });
55
+ });
56
+ test('Check if documentation section "About" present on Dashboard', async function () {
57
+ await dashboard.openAboutMenu();
58
+ });
59
+ test('Check if documentation section "About" in top menu has required links', async function () {
60
+ parentGUID = await browserTabsUtil.getCurrentWindowHandle();
61
+ for (const link of links) {
62
+ await dashboard.selectAboutMenuItem(link.text);
63
+ await browserTabsUtil.waitAndSwitchToAnotherWindow(parentGUID);
64
+ const currentUrl = await browserTabsUtil.getCurrentUrl();
65
+ Logger_1.Logger.trace(`Current URL: ${currentUrl}`);
66
+ (0, chai_1.expect)(link.href, `${link.href} not includes ${currentUrl}`).oneOf([currentUrl, currentUrl + '/']);
67
+ await browserTabsUtil.switchToWindow(parentGUID);
68
+ await browserTabsUtil.closeAllTabsExceptCurrent();
69
+ await dashboard.openAboutMenu();
70
+ }
71
+ });
72
+ test('Check if "About" dialog menu contains correct application version and username', async function () {
73
+ await dashboard.selectAboutMenuItem('About');
74
+ await dashboard.waitAboutDialogWindowMenuElements();
75
+ (0, chai_1.expect)(await dashboard.getApplicationVersionFromAboutDialogWindow(), 'Wrong product version').eqls(productVersion);
76
+ (0, chai_1.expect)(await dashboard.getUsernameFromAboutDialogWindow(), 'Wrong username').eqls(OAUTH_CONSTANTS_1.OAUTH_CONSTANTS.TS_SELENIUM_OCP_USERNAME);
77
+ await dashboard.closeAboutDialogWindow();
78
+ });
79
+ test('Check if Workspaces page contains "Learn More" documentation link', async function () {
80
+ await dashboard.clickWorkspacesButton();
81
+ await workspaces.waitPage();
82
+ (0, chai_1.expect)(await workspaces.getLearnMoreDocumentationLink(), '"Learn More" doc link is broken').eqls(workspace);
83
+ });
84
+ test('Check if Workspace Details page contains "Storage types" documentation link', async function () {
85
+ await workspaces.clickWorkspaceListItemLink(workspaceName);
86
+ await workspaceDetails.waitWorkspaceTitle(workspaceName);
87
+ await workspaceDetails.clickStorageTypeInfo();
88
+ (0, chai_1.expect)(await workspaceDetails.getOpenStorageTypeDocumentationLink(), '"Storage types" doc link is broken').eqls(storageTypes);
89
+ });
90
+ if (BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.IS_PRODUCT_DOCUMENTATION_RELEASED) {
91
+ test('Check if product.json documentation links returns status code 200', async function () {
92
+ const documentationLinks = [devfile, workspace, general, storageTypes, webSocketTroubleshooting];
93
+ links.forEach((link) => {
94
+ documentationLinks.push(link.href);
95
+ });
96
+ for (const e of documentationLinks) {
97
+ let responseData;
98
+ try {
99
+ responseData = await axios_1.default.get(e);
100
+ }
101
+ catch (e) {
102
+ responseData = e;
103
+ }
104
+ finally {
105
+ (0, chai_1.expect)(responseData.status, `Wrong status code ${responseData.status}`).eqls(200);
106
+ }
107
+ }
108
+ });
109
+ }
110
+ suiteTeardown('Open dashboard and close all other tabs', async function () {
111
+ await dashboard.openDashboard();
112
+ await browserTabsUtil.closeAllTabsExceptCurrent();
113
+ });
114
+ suiteTeardown('Delete default DevWorkspace', function () {
115
+ kubernetesCommandLineToolsExecutor.deleteDevWorkspace();
116
+ });
117
+ });
118
+ //# sourceMappingURL=Documentation.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Documentation.spec.js","sourceRoot":"","sources":["../../../specs/dashboard-samples/Documentation.spec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ /** *******************************************************************
4
+ * copyright (c) 2020-2023 Red Hat, Inc.
5
+ *
6
+ * This program and the accompanying materials are made
7
+ * available under the terms of the Eclipse Public License 2.0
8
+ * which is available at https://www.eclipse.org/legal/epl-2.0/
9
+ *
10
+ * SPDX-License-Identifier: EPL-2.0
11
+ **********************************************************************/
12
+ const inversify_config_1 = require("../../configs/inversify.config");
13
+ const monaco_page_objects_1 = require("monaco-page-objects");
14
+ const inversify_types_1 = require("../../configs/inversify.types");
15
+ const WorkspaceHandlingTests_1 = require("../../tests-library/WorkspaceHandlingTests");
16
+ const Logger_1 = require("../../utils/Logger");
17
+ const MochaHooks_1 = require("../MochaHooks");
18
+ const BASE_TEST_CONSTANTS_1 = require("../../constants/BASE_TEST_CONSTANTS");
19
+ const stackName = 'Empty Workspace';
20
+ suite(`${stackName} test ${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, function () {
21
+ const workspaceHandlingTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.WorkspaceHandlingTests);
22
+ const projectAndFileTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ProjectAndFileTests);
23
+ const loginTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.LoginTests);
24
+ const browserTabsUtil = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.BrowserTabsUtil);
25
+ const testWorkspaceUtil = inversify_config_1.e2eContainer.get(inversify_types_1.TYPES.WorkspaceUtil);
26
+ const dashboard = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.Dashboard);
27
+ suiteSetup('Login', async function () {
28
+ await loginTests.loginIntoChe();
29
+ });
30
+ test(`Create and open new workspace, stack:${stackName}`, async function () {
31
+ await workspaceHandlingTests.createAndOpenWorkspace(stackName);
32
+ });
33
+ test('Obtain workspace name from workspace loader page', async function () {
34
+ await workspaceHandlingTests.obtainWorkspaceNameFromStartingPage();
35
+ });
36
+ test('Register running workspace', function () {
37
+ (0, MochaHooks_1.registerRunningWorkspace)(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
38
+ });
39
+ test('Wait workspace readiness', async function () {
40
+ await projectAndFileTests.waitWorkspaceReadinessForCheCodeEditor();
41
+ const workbench = new monaco_page_objects_1.Workbench();
42
+ const activityBar = workbench.getActivityBar();
43
+ const activityBarControls = await activityBar.getViewControls();
44
+ Logger_1.Logger.debug('Editor sections:');
45
+ for (const control of activityBarControls) {
46
+ Logger_1.Logger.debug(`${await control.getTitle()}`);
47
+ }
48
+ });
49
+ suiteTeardown('Open dashboard and close all other tabs', async function () {
50
+ await dashboard.openDashboard();
51
+ await browserTabsUtil.closeAllTabsExceptCurrent();
52
+ });
53
+ suiteTeardown('Stop and delete the workspace by API', async function () {
54
+ await testWorkspaceUtil.stopAndDeleteWorkspaceByName(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
55
+ });
56
+ suiteTeardown('Unregister running workspace', function () {
57
+ (0, MochaHooks_1.registerRunningWorkspace)('');
58
+ });
59
+ });
60
+ //# sourceMappingURL=EmptyWorkspace.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EmptyWorkspace.spec.js","sourceRoot":"","sources":["../../../specs/dashboard-samples/EmptyWorkspace.spec.ts"],"names":[],"mappings":";;AAAA;;;;;;;;wEAQwE;AACxE,qEAA8D;AAC9D,6DAA0E;AAC1E,mEAA+D;AAC/D,uFAAoF;AACpF,+CAA4C;AAG5C,8CAAyD;AAEzD,6EAA0E;AAI1E,MAAM,SAAS,GAAW,iBAAiB,CAAC;AAE5C,KAAK,CAAC,GAAG,SAAS,SAAS,yCAAmB,CAAC,gBAAgB,EAAE,EAAE;IAClE,MAAM,sBAAsB,GAA2B,+BAAY,CAAC,GAAG,CAAC,yBAAO,CAAC,sBAAsB,CAAC,CAAC;IACxG,MAAM,mBAAmB,GAAwB,+BAAY,CAAC,GAAG,CAAC,yBAAO,CAAC,mBAAmB,CAAC,CAAC;IAC/F,MAAM,UAAU,GAAe,+BAAY,CAAC,GAAG,CAAC,yBAAO,CAAC,UAAU,CAAC,CAAC;IACpE,MAAM,eAAe,GAAoB,+BAAY,CAAC,GAAG,CAAC,yBAAO,CAAC,eAAe,CAAC,CAAC;IACnF,MAAM,iBAAiB,GAAuB,+BAAY,CAAC,GAAG,CAAC,uBAAK,CAAC,aAAa,CAAC,CAAC;IACpF,MAAM,SAAS,GAAc,+BAAY,CAAC,GAAG,CAAC,yBAAO,CAAC,SAAS,CAAC,CAAC;IAEjE,UAAU,CAAC,OAAO,EAAE,KAAK;QACxB,MAAM,UAAU,CAAC,YAAY,EAAE,CAAC;IACjC,CAAC,CAAC,CAAC;IACH,IAAI,CAAC,wCAAwC,SAAS,EAAE,EAAE,KAAK;QAC9D,MAAM,sBAAsB,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,kDAAkD,EAAE,KAAK;QAC7D,MAAM,sBAAsB,CAAC,mCAAmC,EAAE,CAAC;IACpE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,4BAA4B,EAAE;QAClC,IAAA,qCAAwB,EAAC,+CAAsB,CAAC,gBAAgB,EAAE,CAAC,CAAC;IACrE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,0BAA0B,EAAE,KAAK;QACrC,MAAM,mBAAmB,CAAC,sCAAsC,EAAE,CAAC;QAEnE,MAAM,SAAS,GAAc,IAAI,+BAAS,EAAE,CAAC;QAC7C,MAAM,WAAW,GAAgB,SAAS,CAAC,cAAc,EAAE,CAAC;QAC5D,MAAM,mBAAmB,GAAkB,MAAM,WAAW,CAAC,eAAe,EAAE,CAAC;QAE/E,eAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACjC,KAAK,MAAM,OAAO,IAAI,mBAAmB,EAAE;YAC1C,eAAM,CAAC,KAAK,CAAC,GAAG,MAAM,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;SAC5C;IACF,CAAC,CAAC,CAAC;IAEH,aAAa,CAAC,yCAAyC,EAAE,KAAK;QAC7D,MAAM,SAAS,CAAC,aAAa,EAAE,CAAC;QAChC,MAAM,eAAe,CAAC,yBAAyB,EAAE,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,aAAa,CAAC,sCAAsC,EAAE,KAAK;QAC1D,MAAM,iBAAiB,CAAC,4BAA4B,CAAC,+CAAsB,CAAC,gBAAgB,EAAE,CAAC,CAAC;IACjG,CAAC,CAAC,CAAC;IAEH,aAAa,CAAC,8BAA8B,EAAE;QAC7C,IAAA,qCAAwB,EAAC,EAAE,CAAC,CAAC;IAC9B,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,64 @@
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
+ const MochaHooks_1 = require("../MochaHooks");
13
+ const inversify_config_1 = require("../../configs/inversify.config");
14
+ const inversify_types_1 = require("../../configs/inversify.types");
15
+ const WorkspaceHandlingTests_1 = require("../../tests-library/WorkspaceHandlingTests");
16
+ const BASE_TEST_CONSTANTS_1 = require("../../constants/BASE_TEST_CONSTANTS");
17
+ const chai_1 = require("chai");
18
+ const stackName = 'Quarkus REST API';
19
+ suite(`The ${stackName} userstory ${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, function () {
20
+ const projectAndFileTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ProjectAndFileTests);
21
+ const workspaceHandlingTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.WorkspaceHandlingTests);
22
+ const loginTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.LoginTests);
23
+ const browserTabsUtil = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.BrowserTabsUtil);
24
+ const testWorkspaceUtil = inversify_config_1.e2eContainer.get(inversify_types_1.TYPES.WorkspaceUtil);
25
+ const dashboard = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.Dashboard);
26
+ let projectSection;
27
+ const projectName = 'quarkus-quickstarts';
28
+ suiteSetup('Login', async function () {
29
+ await loginTests.loginIntoChe();
30
+ });
31
+ test(`Create and open new workspace, stack:${stackName}`, async function () {
32
+ await workspaceHandlingTests.createAndOpenWorkspace(stackName);
33
+ });
34
+ test('Obtain workspace name from workspace loader page', async function () {
35
+ await workspaceHandlingTests.obtainWorkspaceNameFromStartingPage();
36
+ });
37
+ test('Register running workspace', function () {
38
+ (0, MochaHooks_1.registerRunningWorkspace)(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
39
+ });
40
+ test('Wait workspace readiness', async function () {
41
+ await projectAndFileTests.waitWorkspaceReadinessForCheCodeEditor();
42
+ });
43
+ test('Check a project folder has been created', async function () {
44
+ projectSection = await projectAndFileTests.getProjectViewSession();
45
+ (0, chai_1.expect)(await projectAndFileTests.getProjectTreeItem(projectSection, projectName), 'Project folder was not imported').not.undefined;
46
+ });
47
+ test('Accept the project as a trusted one', async function () {
48
+ await projectAndFileTests.performTrustDialogs();
49
+ });
50
+ test('Check the project files was imported', async function () {
51
+ (0, chai_1.expect)(await projectAndFileTests.getProjectTreeItem(projectSection, BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TS_SELENIUM_PROJECT_ROOT_FILE_NAME, 2), 'Project files were not imported').not.undefined;
52
+ });
53
+ suiteTeardown('Open dashboard and close all other tabs', async function () {
54
+ await dashboard.openDashboard();
55
+ await browserTabsUtil.closeAllTabsExceptCurrent();
56
+ });
57
+ suiteTeardown('Stop and delete the workspace by API', async function () {
58
+ await testWorkspaceUtil.stopAndDeleteWorkspaceByName(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
59
+ });
60
+ suiteTeardown('Unregister running workspace', function () {
61
+ (0, MochaHooks_1.registerRunningWorkspace)('');
62
+ });
63
+ });
64
+ //# sourceMappingURL=Quarkus.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Quarkus.spec.js","sourceRoot":"","sources":["../../../specs/dashboard-samples/Quarkus.spec.ts"],"names":[],"mappings":"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"}