@eclipse-che/che-e2e 7.50.1-dev-f7a50d3 → 7.50.1-dev-df0db72

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 (214) hide show
  1. package/package.json +1 -1
  2. package/testsLibrary/WorkspaceHandlingTests.ts +22 -7
  3. package/dist/TestConstants.js +0 -220
  4. package/dist/TestConstants.js.map +0 -1
  5. package/dist/TimeoutConstants.js +0 -184
  6. package/dist/TimeoutConstants.js.map +0 -1
  7. package/dist/driver/CheReporter.js +0 -181
  8. package/dist/driver/CheReporter.js.map +0 -1
  9. package/dist/driver/ChromeDriver.js +0 -75
  10. package/dist/driver/ChromeDriver.js.map +0 -1
  11. package/dist/driver/IDriver.js +0 -3
  12. package/dist/driver/IDriver.js.map +0 -1
  13. package/dist/index.js +0 -93
  14. package/dist/index.js.map +0 -1
  15. package/dist/inversify.config.js +0 -130
  16. package/dist/inversify.config.js.map +0 -1
  17. package/dist/inversify.types.js +0 -74
  18. package/dist/inversify.types.js.map +0 -1
  19. package/dist/pageobjects/dashboard/CreateWorkspace.js +0 -65
  20. package/dist/pageobjects/dashboard/CreateWorkspace.js.map +0 -1
  21. package/dist/pageobjects/dashboard/Dashboard.js +0 -115
  22. package/dist/pageobjects/dashboard/Dashboard.js.map +0 -1
  23. package/dist/pageobjects/dashboard/Workspaces.js +0 -157
  24. package/dist/pageobjects/dashboard/Workspaces.js.map +0 -1
  25. package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetails.js +0 -138
  26. package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetails.js.map +0 -1
  27. package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetailsPlugins.js +0 -97
  28. package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetailsPlugins.js.map +0 -1
  29. package/dist/pageobjects/ide/ContextMenu.js +0 -66
  30. package/dist/pageobjects/ide/ContextMenu.js.map +0 -1
  31. package/dist/pageobjects/ide/DebugView.js +0 -98
  32. package/dist/pageobjects/ide/DebugView.js.map +0 -1
  33. package/dist/pageobjects/ide/DialogWindow.js +0 -102
  34. package/dist/pageobjects/ide/DialogWindow.js.map +0 -1
  35. package/dist/pageobjects/ide/Editor.js +0 -464
  36. package/dist/pageobjects/ide/Editor.js.map +0 -1
  37. package/dist/pageobjects/ide/Ide.js +0 -336
  38. package/dist/pageobjects/ide/Ide.js.map +0 -1
  39. package/dist/pageobjects/ide/LeftToolBar.js +0 -81
  40. package/dist/pageobjects/ide/LeftToolBar.js.map +0 -1
  41. package/dist/pageobjects/ide/NavigationBar.js +0 -57
  42. package/dist/pageobjects/ide/NavigationBar.js.map +0 -1
  43. package/dist/pageobjects/ide/NotificationCenter.js +0 -76
  44. package/dist/pageobjects/ide/NotificationCenter.js.map +0 -1
  45. package/dist/pageobjects/ide/OpenDialogWidget.js +0 -100
  46. package/dist/pageobjects/ide/OpenDialogWidget.js.map +0 -1
  47. package/dist/pageobjects/ide/OpenEditors.js +0 -73
  48. package/dist/pageobjects/ide/OpenEditors.js.map +0 -1
  49. package/dist/pageobjects/ide/OpenWorkspaceWidget.js +0 -62
  50. package/dist/pageobjects/ide/OpenWorkspaceWidget.js.map +0 -1
  51. package/dist/pageobjects/ide/PreviewWidget.js +0 -134
  52. package/dist/pageobjects/ide/PreviewWidget.js.map +0 -1
  53. package/dist/pageobjects/ide/ProjectTree.js +0 -282
  54. package/dist/pageobjects/ide/ProjectTree.js.map +0 -1
  55. package/dist/pageobjects/ide/QuickOpenContainer.js +0 -70
  56. package/dist/pageobjects/ide/QuickOpenContainer.js.map +0 -1
  57. package/dist/pageobjects/ide/RightToolBar.js +0 -51
  58. package/dist/pageobjects/ide/RightToolBar.js.map +0 -1
  59. package/dist/pageobjects/ide/Terminal.js +0 -184
  60. package/dist/pageobjects/ide/Terminal.js.map +0 -1
  61. package/dist/pageobjects/ide/TopMenu.js +0 -109
  62. package/dist/pageobjects/ide/TopMenu.js.map +0 -1
  63. package/dist/pageobjects/ide/plugins/GitHubPullRequestPlugin.js +0 -128
  64. package/dist/pageobjects/ide/plugins/GitHubPullRequestPlugin.js.map +0 -1
  65. package/dist/pageobjects/ide/plugins/GitPlugin.js +0 -120
  66. package/dist/pageobjects/ide/plugins/GitPlugin.js.map +0 -1
  67. package/dist/pageobjects/ide/plugins/KubernetesPlugin.js +0 -107
  68. package/dist/pageobjects/ide/plugins/KubernetesPlugin.js.map +0 -1
  69. package/dist/pageobjects/ide/plugins/OpenshiftPlugin.js +0 -99
  70. package/dist/pageobjects/ide/plugins/OpenshiftPlugin.js.map +0 -1
  71. package/dist/pageobjects/ide/plugins/PluginsView.js +0 -166
  72. package/dist/pageobjects/ide/plugins/PluginsView.js.map +0 -1
  73. package/dist/pageobjects/login/ICheLoginPage.js +0 -12
  74. package/dist/pageobjects/login/ICheLoginPage.js.map +0 -1
  75. package/dist/pageobjects/login/IOcpLoginPage.js +0 -12
  76. package/dist/pageobjects/login/IOcpLoginPage.js.map +0 -1
  77. package/dist/pageobjects/login/MultiUserLoginPage.js +0 -49
  78. package/dist/pageobjects/login/MultiUserLoginPage.js.map +0 -1
  79. package/dist/pageobjects/login/OcpUserLoginPage.js +0 -53
  80. package/dist/pageobjects/login/OcpUserLoginPage.js.map +0 -1
  81. package/dist/pageobjects/login/RegularUserOcpCheLoginPage.js +0 -86
  82. package/dist/pageobjects/login/RegularUserOcpCheLoginPage.js.map +0 -1
  83. package/dist/pageobjects/login/UpdateAccountInformationPage.js +0 -74
  84. package/dist/pageobjects/login/UpdateAccountInformationPage.js.map +0 -1
  85. package/dist/pageobjects/openshift/CheLoginPage.js +0 -88
  86. package/dist/pageobjects/openshift/CheLoginPage.js.map +0 -1
  87. package/dist/pageobjects/openshift/OcpLoginPage.js +0 -106
  88. package/dist/pageobjects/openshift/OcpLoginPage.js.map +0 -1
  89. package/dist/pageobjects/third-parties/GitLoginPage.js +0 -85
  90. package/dist/pageobjects/third-parties/GitLoginPage.js.map +0 -1
  91. package/dist/pageobjects/third-parties/GitOauthAppsSettings.js +0 -110
  92. package/dist/pageobjects/third-parties/GitOauthAppsSettings.js.map +0 -1
  93. package/dist/tests/devfiles/CSlashCPlusPlus.spec.js +0 -73
  94. package/dist/tests/devfiles/CSlashCPlusPlus.spec.js.map +0 -1
  95. package/dist/tests/devfiles/DevfileSmoke.spec.js +0 -47
  96. package/dist/tests/devfiles/DevfileSmoke.spec.js.map +0 -1
  97. package/dist/tests/devfiles/DotNetCore.spec.js +0 -81
  98. package/dist/tests/devfiles/DotNetCore.spec.js.map +0 -1
  99. package/dist/tests/devfiles/Go.spec.js +0 -72
  100. package/dist/tests/devfiles/Go.spec.js.map +0 -1
  101. package/dist/tests/devfiles/JavaMaven.spec.js +0 -60
  102. package/dist/tests/devfiles/JavaMaven.spec.js.map +0 -1
  103. package/dist/tests/devfiles/JavaSpringBoot.spec.js +0 -66
  104. package/dist/tests/devfiles/JavaSpringBoot.spec.js.map +0 -1
  105. package/dist/tests/devfiles/JavaVertx.spec.js +0 -60
  106. package/dist/tests/devfiles/JavaVertx.spec.js.map +0 -1
  107. package/dist/tests/devfiles/NodeJS.spec.js +0 -64
  108. package/dist/tests/devfiles/NodeJS.spec.js.map +0 -1
  109. package/dist/tests/devfiles/PHPSimple.spec.js +0 -74
  110. package/dist/tests/devfiles/PHPSimple.spec.js.map +0 -1
  111. package/dist/tests/devfiles/Python.spec.js +0 -58
  112. package/dist/tests/devfiles/Python.spec.js.map +0 -1
  113. package/dist/tests/devfiles/PythonDjango.spec.js +0 -61
  114. package/dist/tests/devfiles/PythonDjango.spec.js.map +0 -1
  115. package/dist/tests/devfiles/Quarkus.spec.js +0 -69
  116. package/dist/tests/devfiles/Quarkus.spec.js.map +0 -1
  117. package/dist/tests/devfiles/Scala.spec.js +0 -66
  118. package/dist/tests/devfiles/Scala.spec.js.map +0 -1
  119. package/dist/tests/e2e/FactoryUrl.spec.js +0 -40
  120. package/dist/tests/e2e/FactoryUrl.spec.js.map +0 -1
  121. package/dist/tests/e2e/GitPublishBranch.spec.js +0 -90
  122. package/dist/tests/e2e/GitPublishBranch.spec.js.map +0 -1
  123. package/dist/tests/e2e/GitSelfSignCert.spec.js +0 -90
  124. package/dist/tests/e2e/GitSelfSignCert.spec.js.map +0 -1
  125. package/dist/tests/e2e/GitSsh.spec.js +0 -120
  126. package/dist/tests/e2e/GitSsh.spec.js.map +0 -1
  127. package/dist/tests/e2e/OpenshiftConnector.spec.js +0 -124
  128. package/dist/tests/e2e/OpenshiftConnector.spec.js.map +0 -1
  129. package/dist/tests/e2e/factories/DirectUrlFactoryWithKeepDirectoryTest.spec.js +0 -50
  130. package/dist/tests/e2e/factories/DirectUrlFactoryWithKeepDirectoryTest.spec.js.map +0 -1
  131. package/dist/tests/e2e/factories/DirectUrlFactoryWithRootFolderTest.spec.js +0 -48
  132. package/dist/tests/e2e/factories/DirectUrlFactoryWithRootFolderTest.spec.js.map +0 -1
  133. package/dist/tests/e2e/factories/DirectUrlFactoryWithSpecificBranchTest.spec.js +0 -48
  134. package/dist/tests/e2e/factories/DirectUrlFactoryWithSpecificBranchTest.spec.js.map +0 -1
  135. package/dist/tests/e2e_happy_path/DevWorkspaceHappyPath.spec.js +0 -278
  136. package/dist/tests/e2e_happy_path/DevWorkspaceHappyPath.spec.js.map +0 -1
  137. package/dist/tests/e2e_happy_path/HappyPath.spec.js +0 -314
  138. package/dist/tests/e2e_happy_path/HappyPath.spec.js.map +0 -1
  139. package/dist/tests/intelij/IntelijOpenWorkspace.spec.js +0 -39
  140. package/dist/tests/intelij/IntelijOpenWorkspace.spec.js.map +0 -1
  141. package/dist/tests/load_test/LoadTest.spec.js +0 -40
  142. package/dist/tests/load_test/LoadTest.spec.js.map +0 -1
  143. package/dist/tests/login/LinkCheAndOcpUsers.spec.js +0 -39
  144. package/dist/tests/login/LinkCheAndOcpUsers.spec.js.map +0 -1
  145. package/dist/tests/login/Login.spec.js +0 -28
  146. package/dist/tests/login/Login.spec.js.map +0 -1
  147. package/dist/tests/plugins/GitHubPullRequestPlugin.spec.js +0 -118
  148. package/dist/tests/plugins/GitHubPullRequestPlugin.spec.js.map +0 -1
  149. package/dist/tests/plugins/InstallPluginUsingUI.spec.js +0 -63
  150. package/dist/tests/plugins/InstallPluginUsingUI.spec.js.map +0 -1
  151. package/dist/tests/plugins/JavaPlugin.spec.js +0 -82
  152. package/dist/tests/plugins/JavaPlugin.spec.js.map +0 -1
  153. package/dist/tests/plugins/PhpPlugin.spec.js +0 -96
  154. package/dist/tests/plugins/PhpPlugin.spec.js.map +0 -1
  155. package/dist/tests/plugins/PythonPlugin.spec.js +0 -72
  156. package/dist/tests/plugins/PythonPlugin.spec.js.map +0 -1
  157. package/dist/tests/plugins/TypescriptPlugin.spec.js +0 -135
  158. package/dist/tests/plugins/TypescriptPlugin.spec.js.map +0 -1
  159. package/dist/tests/plugins/VscodeKubernetesPlugin.spec.js +0 -69
  160. package/dist/tests/plugins/VscodeKubernetesPlugin.spec.js.map +0 -1
  161. package/dist/tests/plugins/VscodeShellcheckPlugin.spec.js +0 -82
  162. package/dist/tests/plugins/VscodeShellcheckPlugin.spec.js.map +0 -1
  163. package/dist/tests/plugins/VscodeValePlugin.spec.js +0 -70
  164. package/dist/tests/plugins/VscodeValePlugin.spec.js.map +0 -1
  165. package/dist/tests/plugins/VscodeXmlPlugin.spec.js +0 -81
  166. package/dist/tests/plugins/VscodeXmlPlugin.spec.js.map +0 -1
  167. package/dist/tests/plugins/VscodeYamlPlugin.spec.js +0 -78
  168. package/dist/tests/plugins/VscodeYamlPlugin.spec.js.map +0 -1
  169. package/dist/testsLibrary/CodeExecutionTests.js +0 -248
  170. package/dist/testsLibrary/CodeExecutionTests.js.map +0 -1
  171. package/dist/testsLibrary/LanguageServerTests.js +0 -230
  172. package/dist/testsLibrary/LanguageServerTests.js.map +0 -1
  173. package/dist/testsLibrary/ProjectAndFileTests.js +0 -105
  174. package/dist/testsLibrary/ProjectAndFileTests.js.map +0 -1
  175. package/dist/testsLibrary/WorkspaceHandlingTests.js +0 -156
  176. package/dist/testsLibrary/WorkspaceHandlingTests.js.map +0 -1
  177. package/dist/utils/AnimationChecker.js +0 -45
  178. package/dist/utils/AnimationChecker.js.map +0 -1
  179. package/dist/utils/BrowserTabsUtil.js +0 -115
  180. package/dist/utils/BrowserTabsUtil.js.map +0 -1
  181. package/dist/utils/DriverHelper.js +0 -616
  182. package/dist/utils/DriverHelper.js.map +0 -1
  183. package/dist/utils/Logger.js +0 -84
  184. package/dist/utils/Logger.js.map +0 -1
  185. package/dist/utils/PreferencesHandler.js +0 -142
  186. package/dist/utils/PreferencesHandler.js.map +0 -1
  187. package/dist/utils/Sanitizer.js +0 -29
  188. package/dist/utils/Sanitizer.js.map +0 -1
  189. package/dist/utils/ScreenCatcher.js +0 -107
  190. package/dist/utils/ScreenCatcher.js.map +0 -1
  191. package/dist/utils/VCS/CheGitApi.js +0 -42
  192. package/dist/utils/VCS/CheGitApi.js.map +0 -1
  193. package/dist/utils/VCS/github/GitHubUtil.js +0 -126
  194. package/dist/utils/VCS/github/GitHubUtil.js.map +0 -1
  195. package/dist/utils/WorkspaceNameHandler.js +0 -60
  196. package/dist/utils/WorkspaceNameHandler.js.map +0 -1
  197. package/dist/utils/requestHandlers/CheApiRequestHandler.js +0 -126
  198. package/dist/utils/requestHandlers/CheApiRequestHandler.js.map +0 -1
  199. package/dist/utils/requestHandlers/headers/CheMultiuserAuthorizationHeaderHandler.js +0 -49
  200. package/dist/utils/requestHandlers/headers/CheMultiuserAuthorizationHeaderHandler.js.map +0 -1
  201. package/dist/utils/requestHandlers/headers/IAuthorizationHeaderHandler.js +0 -12
  202. package/dist/utils/requestHandlers/headers/IAuthorizationHeaderHandler.js.map +0 -1
  203. package/dist/utils/requestHandlers/tokens/CheMultiuserTokenHandler.js +0 -50
  204. package/dist/utils/requestHandlers/tokens/CheMultiuserTokenHandler.js.map +0 -1
  205. package/dist/utils/requestHandlers/tokens/ITokenHandler.js +0 -12
  206. package/dist/utils/requestHandlers/tokens/ITokenHandler.js.map +0 -1
  207. package/dist/utils/workspace/ApiUrlResolver.js +0 -67
  208. package/dist/utils/workspace/ApiUrlResolver.js.map +0 -1
  209. package/dist/utils/workspace/ITestWorkspaceUtil.js +0 -12
  210. package/dist/utils/workspace/ITestWorkspaceUtil.js.map +0 -1
  211. package/dist/utils/workspace/TestWorkspaceUtil.js +0 -357
  212. package/dist/utils/workspace/TestWorkspaceUtil.js.map +0 -1
  213. package/dist/utils/workspace/WorkspaceStatus.js +0 -19
  214. package/dist/utils/workspace/WorkspaceStatus.js.map +0 -1
@@ -1,50 +0,0 @@
1
- "use strict";
2
- // /*********************************************************************
3
- // * Copyright (c) 2022 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 inversify_config_1 = require("../../../inversify.config");
13
- const inversify_types_1 = require("../../../inversify.types");
14
- const TestConstants_1 = require("../../../TestConstants");
15
- const WorkspaceHandlingTests_1 = require("../../../testsLibrary/WorkspaceHandlingTests");
16
- const preferencesHandler = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.PreferencesHandler);
17
- const workspaceHandlingTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.WorkspaceHandlingTests);
18
- const projectAndFileTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ProjectAndFileTests);
19
- const browserTabsUtil = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.BrowserTabsUtil);
20
- const factoryUrl = `${TestConstants_1.TestConstants.TS_SELENIUM_BASE_URL}/f?url=https://github.com/che-samples/console-java-simple/tree/master/src`;
21
- const workspaceSampleName = 'console-java-simple';
22
- const workspaceRootFolderName = 'src';
23
- const fileName = 'pom.xml';
24
- const fileFolderPath = `${workspaceSampleName}/${workspaceRootFolderName}/main/java/org/eclipse/che/examples`;
25
- const tabTitle = 'HelloWorld.java';
26
- suite('Workspace creation via factory url', async () => {
27
- suite('Open factory URL', async () => {
28
- test(`Navigating to factory URL`, async () => {
29
- await browserTabsUtil.navigateTo(factoryUrl);
30
- });
31
- });
32
- suite('Wait workspace readyness', async () => {
33
- workspaceHandlingTests.obtainWorkspaceNameFromStartingPage();
34
- projectAndFileTests.waitWorkspaceReadiness(workspaceSampleName, workspaceRootFolderName);
35
- test('Set confirmExit preference to never', async () => {
36
- await preferencesHandler.setPreferenceUsingUI('application.confirmExit', 'never');
37
- });
38
- });
39
- suite('Check imported project', async () => {
40
- projectAndFileTests.openFile(fileFolderPath, tabTitle);
41
- projectAndFileTests.checkFileNotExists(`${workspaceSampleName}/${fileName}`);
42
- projectAndFileTests.checkProjectBranchName('master');
43
- });
44
- suite('Stopping and deleting the workspace', async () => {
45
- test('Stop and remove workspace', async () => {
46
- await workspaceHandlingTests.stopAndRemoveWorkspace(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
47
- });
48
- });
49
- });
50
- //# sourceMappingURL=DirectUrlFactoryWithKeepDirectoryTest.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DirectUrlFactoryWithKeepDirectoryTest.spec.js","sourceRoot":"","sources":["../../../../tests/e2e/factories/DirectUrlFactoryWithKeepDirectoryTest.spec.ts"],"names":[],"mappings":";AAAA,yEAAyE;AACzE,sCAAsC;AACtC,KAAK;AACL,0DAA0D;AAC1D,iEAAiE;AACjE,kEAAkE;AAClE,KAAK;AACL,sCAAsC;AACtC,2EAA2E;;AAE3E,gEAAyD;AACzD,8DAAmD;AACnD,0DAAuD;AAGvD,yFAAsF;AAGtF,MAAM,kBAAkB,GAAuB,+BAAY,CAAC,GAAG,CAAC,yBAAO,CAAC,kBAAkB,CAAC,CAAC;AAC5F,MAAM,sBAAsB,GAA2B,+BAAY,CAAC,GAAG,CAAC,yBAAO,CAAC,sBAAsB,CAAC,CAAC;AACxG,MAAM,mBAAmB,GAAwB,+BAAY,CAAC,GAAG,CAAC,yBAAO,CAAC,mBAAmB,CAAC,CAAC;AAC/F,MAAM,eAAe,GAAoB,+BAAY,CAAC,GAAG,CAAC,yBAAO,CAAC,eAAe,CAAC,CAAC;AAEnF,MAAM,UAAU,GAAY,GAAG,6BAAa,CAAC,oBAAoB,2EAA2E,CAAC;AAC7I,MAAM,mBAAmB,GAAW,qBAAqB,CAAC;AAC1D,MAAM,uBAAuB,GAAW,KAAK,CAAC;AAC9C,MAAM,QAAQ,GAAW,SAAS,CAAC;AACnC,MAAM,cAAc,GAAW,GAAG,mBAAmB,IAAI,uBAAuB,qCAAqC,CAAC;AACtH,MAAM,QAAQ,GAAW,iBAAiB,CAAC;AAE3C,KAAK,CAAC,oCAAoC,EAAE,KAAK,IAAI,EAAE;IACnD,KAAK,CAAC,kBAAkB,EAAE,KAAK,IAAI,EAAE;QACjC,IAAI,CAAC,2BAA2B,EAAE,KAAK,IAAI,EAAE;YACzC,MAAM,eAAe,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;QACzC,sBAAsB,CAAC,mCAAmC,EAAE,CAAC;QAC7D,mBAAmB,CAAC,sBAAsB,CAAC,mBAAmB,EAAE,uBAAuB,CAAC,CAAC;QAEzF,IAAI,CAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;YACnD,MAAM,kBAAkB,CAAC,oBAAoB,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;QACtF,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE;QACvC,mBAAmB,CAAC,QAAQ,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;QACvD,mBAAmB,CAAC,kBAAkB,CAAC,GAAG,mBAAmB,IAAI,QAAQ,EAAE,CAAC,CAAC;QAE7E,mBAAmB,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,KAAK,CAAE,qCAAqC,EAAE,KAAK,IAAI,EAAE;QACrD,IAAI,CAAC,2BAA2B,EAAE,KAAK,IAAI,EAAE;YACzC,MAAM,sBAAsB,CAAC,sBAAsB,CAAC,+CAAsB,CAAC,gBAAgB,EAAE,CAAC,CAAC;QACnG,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AAEP,CAAC,CAAC,CAAC"}
@@ -1,48 +0,0 @@
1
- "use strict";
2
- // /*********************************************************************
3
- // * Copyright (c) 2022 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 inversify_config_1 = require("../../../inversify.config");
13
- const inversify_types_1 = require("../../../inversify.types");
14
- const TestConstants_1 = require("../../../TestConstants");
15
- const WorkspaceHandlingTests_1 = require("../../../testsLibrary/WorkspaceHandlingTests");
16
- const preferencesHandler = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.PreferencesHandler);
17
- const workspaceHandlingTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.WorkspaceHandlingTests);
18
- const projectAndFileTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ProjectAndFileTests);
19
- const browserTabsUtil = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.BrowserTabsUtil);
20
- const factoryUrl = `${TestConstants_1.TestConstants.TS_SELENIUM_BASE_URL}/f?url=https://github.com/che-samples/console-java-simple`;
21
- const workspaceSampleName = 'console-java-simple';
22
- const workspaceRootFolderName = 'src';
23
- const fileFolderPath = `${workspaceSampleName}/${workspaceRootFolderName}/main/java/org/eclipse/che/examples`;
24
- const tabTitle = 'HelloWorld.java';
25
- suite('Workspace creation via factory url', async () => {
26
- suite('Open factory URL', async () => {
27
- test(`Navigating to factory URL`, async () => {
28
- await browserTabsUtil.navigateTo(factoryUrl);
29
- });
30
- });
31
- suite('Wait workspace readyness', async () => {
32
- workspaceHandlingTests.obtainWorkspaceNameFromStartingPage();
33
- projectAndFileTests.waitWorkspaceReadiness(workspaceSampleName, workspaceRootFolderName);
34
- test('Set confirmExit preference to never', async () => {
35
- await preferencesHandler.setPreferenceUsingUI('application.confirmExit', 'never');
36
- });
37
- });
38
- suite('Check imported project', async () => {
39
- projectAndFileTests.openFile(fileFolderPath, tabTitle);
40
- projectAndFileTests.checkProjectBranchName('master');
41
- });
42
- suite('Stopping and deleting the workspace', async () => {
43
- test('Stop and remove workspace', async () => {
44
- await workspaceHandlingTests.stopAndRemoveWorkspace(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
45
- });
46
- });
47
- });
48
- //# sourceMappingURL=DirectUrlFactoryWithRootFolderTest.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DirectUrlFactoryWithRootFolderTest.spec.js","sourceRoot":"","sources":["../../../../tests/e2e/factories/DirectUrlFactoryWithRootFolderTest.spec.ts"],"names":[],"mappings":";AAAA,yEAAyE;AACzE,sCAAsC;AACtC,KAAK;AACL,0DAA0D;AAC1D,iEAAiE;AACjE,kEAAkE;AAClE,KAAK;AACL,sCAAsC;AACtC,2EAA2E;;AAE3E,gEAAyD;AACzD,8DAAmD;AACnD,0DAAuD;AAGvD,yFAAsF;AAGtF,MAAM,kBAAkB,GAAuB,+BAAY,CAAC,GAAG,CAAC,yBAAO,CAAC,kBAAkB,CAAC,CAAC;AAC5F,MAAM,sBAAsB,GAA2B,+BAAY,CAAC,GAAG,CAAC,yBAAO,CAAC,sBAAsB,CAAC,CAAC;AACxG,MAAM,mBAAmB,GAAwB,+BAAY,CAAC,GAAG,CAAC,yBAAO,CAAC,mBAAmB,CAAC,CAAC;AAC/F,MAAM,eAAe,GAAoB,+BAAY,CAAC,GAAG,CAAC,yBAAO,CAAC,eAAe,CAAC,CAAC;AAEnF,MAAM,UAAU,GAAY,GAAG,6BAAa,CAAC,oBAAoB,2DAA2D,CAAC;AAC7H,MAAM,mBAAmB,GAAW,qBAAqB,CAAC;AAC1D,MAAM,uBAAuB,GAAW,KAAK,CAAC;AAC9C,MAAM,cAAc,GAAW,GAAG,mBAAmB,IAAI,uBAAuB,qCAAqC,CAAC;AACtH,MAAM,QAAQ,GAAW,iBAAiB,CAAC;AAE3C,KAAK,CAAC,oCAAoC,EAAE,KAAK,IAAI,EAAE;IACnD,KAAK,CAAC,kBAAkB,EAAE,KAAK,IAAI,EAAE;QACjC,IAAI,CAAC,2BAA2B,EAAE,KAAK,IAAI,EAAE;YACzC,MAAM,eAAe,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;QACzC,sBAAsB,CAAC,mCAAmC,EAAE,CAAC;QAC7D,mBAAmB,CAAC,sBAAsB,CAAC,mBAAmB,EAAE,uBAAuB,CAAC,CAAC;QAEzF,IAAI,CAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;YACnD,MAAM,kBAAkB,CAAC,oBAAoB,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;QACtF,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE;QACvC,mBAAmB,CAAC,QAAQ,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;QACvD,mBAAmB,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,KAAK,CAAE,qCAAqC,EAAE,KAAK,IAAI,EAAE;QACrD,IAAI,CAAC,2BAA2B,EAAE,KAAK,IAAI,EAAE;YACzC,MAAM,sBAAsB,CAAC,sBAAsB,CAAC,+CAAsB,CAAC,gBAAgB,EAAE,CAAC,CAAC;QACnG,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AAEP,CAAC,CAAC,CAAC"}
@@ -1,48 +0,0 @@
1
- "use strict";
2
- // /*********************************************************************
3
- // * Copyright (c) 2022 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 inversify_config_1 = require("../../../inversify.config");
13
- const inversify_types_1 = require("../../../inversify.types");
14
- const TestConstants_1 = require("../../../TestConstants");
15
- const WorkspaceHandlingTests_1 = require("../../../testsLibrary/WorkspaceHandlingTests");
16
- const preferencesHandler = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.PreferencesHandler);
17
- const workspaceHandlingTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.WorkspaceHandlingTests);
18
- const projectAndFileTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ProjectAndFileTests);
19
- const browserTabsUtil = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.BrowserTabsUtil);
20
- let factoryUrl = `${TestConstants_1.TestConstants.TS_SELENIUM_BASE_URL}/f?url=https://github.com/che-samples/console-java-simple/tree/java1.11`;
21
- const workspaceSampleName = 'console-java-simple';
22
- const workspaceRootFolderName = 'src';
23
- const fileFolderPath = `${workspaceSampleName}/${workspaceRootFolderName}/main/java/org/eclipse/che/examples`;
24
- const tabTitle = 'HelloWorld.java';
25
- suite('Workspace creation via factory url', async () => {
26
- suite('Open factory URL', async () => {
27
- test(`Navigating to factory URL`, async () => {
28
- await browserTabsUtil.navigateTo(factoryUrl);
29
- });
30
- });
31
- suite('Wait workspace readyness', async () => {
32
- workspaceHandlingTests.obtainWorkspaceNameFromStartingPage();
33
- projectAndFileTests.waitWorkspaceReadiness(workspaceSampleName, workspaceRootFolderName);
34
- test('Set confirmExit preference to never', async () => {
35
- await preferencesHandler.setPreferenceUsingUI('application.confirmExit', 'never');
36
- });
37
- });
38
- suite('Check imported project', async () => {
39
- projectAndFileTests.openFile(fileFolderPath, tabTitle);
40
- projectAndFileTests.checkProjectBranchName('java1.11');
41
- });
42
- suite('Stopping and deleting the workspace', async () => {
43
- test('Stop and remove workspace', async () => {
44
- await workspaceHandlingTests.stopAndRemoveWorkspace(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
45
- });
46
- });
47
- });
48
- //# sourceMappingURL=DirectUrlFactoryWithSpecificBranchTest.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DirectUrlFactoryWithSpecificBranchTest.spec.js","sourceRoot":"","sources":["../../../../tests/e2e/factories/DirectUrlFactoryWithSpecificBranchTest.spec.ts"],"names":[],"mappings":";AAAA,yEAAyE;AACzE,sCAAsC;AACtC,KAAK;AACL,0DAA0D;AAC1D,iEAAiE;AACjE,kEAAkE;AAClE,KAAK;AACL,sCAAsC;AACtC,2EAA2E;;AAE3E,gEAAyD;AACzD,8DAAmD;AACnD,0DAAuD;AAGvD,yFAAsF;AAGtF,MAAM,kBAAkB,GAAuB,+BAAY,CAAC,GAAG,CAAC,yBAAO,CAAC,kBAAkB,CAAC,CAAC;AAC5F,MAAM,sBAAsB,GAA2B,+BAAY,CAAC,GAAG,CAAC,yBAAO,CAAC,sBAAsB,CAAC,CAAC;AACxG,MAAM,mBAAmB,GAAwB,+BAAY,CAAC,GAAG,CAAC,yBAAO,CAAC,mBAAmB,CAAC,CAAC;AAC/F,MAAM,eAAe,GAAoB,+BAAY,CAAC,GAAG,CAAC,yBAAO,CAAC,eAAe,CAAC,CAAC;AAEnF,IAAI,UAAU,GAAY,GAAG,6BAAa,CAAC,oBAAoB,yEAAyE,CAAC;AACzI,MAAM,mBAAmB,GAAW,qBAAqB,CAAC;AAC1D,MAAM,uBAAuB,GAAW,KAAK,CAAC;AAC9C,MAAM,cAAc,GAAW,GAAG,mBAAmB,IAAI,uBAAuB,qCAAqC,CAAC;AACtH,MAAM,QAAQ,GAAW,iBAAiB,CAAC;AAE3C,KAAK,CAAC,oCAAoC,EAAE,KAAK,IAAI,EAAE;IACnD,KAAK,CAAC,kBAAkB,EAAE,KAAK,IAAI,EAAE;QACjC,IAAI,CAAC,2BAA2B,EAAE,KAAK,IAAI,EAAE;YACzC,MAAM,eAAe,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;QACzC,sBAAsB,CAAC,mCAAmC,EAAE,CAAC;QAC7D,mBAAmB,CAAC,sBAAsB,CAAC,mBAAmB,EAAE,uBAAuB,CAAC,CAAC;QAEzF,IAAI,CAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;YACnD,MAAM,kBAAkB,CAAC,oBAAoB,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;QACtF,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE;QACvC,mBAAmB,CAAC,QAAQ,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;QACvD,mBAAmB,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;IAEH,KAAK,CAAE,qCAAqC,EAAE,KAAK,IAAI,EAAE;QACrD,IAAI,CAAC,2BAA2B,EAAE,KAAK,IAAI,EAAE;YACzC,MAAM,sBAAsB,CAAC,sBAAsB,CAAC,+CAAsB,CAAC,gBAAgB,EAAE,CAAC,CAAC;QACnG,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AAEP,CAAC,CAAC,CAAC"}
@@ -1,278 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
- }) : (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- o[k2] = m[k];
8
- }));
9
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
- Object.defineProperty(o, "default", { enumerable: true, value: v });
11
- }) : function(o, v) {
12
- o["default"] = v;
13
- });
14
- var __importStar = (this && this.__importStar) || function (mod) {
15
- if (mod && mod.__esModule) return mod;
16
- var result = {};
17
- if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
- __setModuleDefault(result, mod);
19
- return result;
20
- };
21
- var __importDefault = (this && this.__importDefault) || function (mod) {
22
- return (mod && mod.__esModule) ? mod : { "default": mod };
23
- };
24
- Object.defineProperty(exports, "__esModule", { value: true });
25
- const inversify_types_1 = require("../../inversify.types");
26
- const inversify_config_1 = require("../../inversify.config");
27
- const Ide_1 = require("../../pageobjects/ide/Ide");
28
- const selenium_webdriver_1 = require("selenium-webdriver");
29
- const Logger_1 = require("../../utils/Logger");
30
- const TestConstants_1 = require("../../TestConstants");
31
- const TimeoutConstants_1 = require("../../TimeoutConstants");
32
- const fs = __importStar(require("fs"));
33
- const axios_1 = __importDefault(require("axios"));
34
- const WorkspaceHandlingTests_1 = require("../../testsLibrary/WorkspaceHandlingTests");
35
- const CheReporter_1 = __importDefault(require("../../driver/CheReporter"));
36
- const ide = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.Ide);
37
- const projectTree = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ProjectTree);
38
- const browserTabsUtil = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.BrowserTabsUtil);
39
- const projectName = 'java-spring-petclinic';
40
- const workspaceRootFolderName = 'src';
41
- const pathToJavaFolder = `${projectName}/${workspaceRootFolderName}/main/java/org/springframework/samples/petclinic`;
42
- const javaFileName = 'PetClinicApplication.java';
43
- const editor = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.Editor);
44
- const classPathFilename = '.classpath';
45
- const driverHelper = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.DriverHelper);
46
- const codeNavigationClassName = 'SpringApplication.class';
47
- const topMenu = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.TopMenu);
48
- const globalTaskScope = 'Global';
49
- const terminal = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.Terminal);
50
- const warningDialog = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.DialogWindow);
51
- const debugView = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.DebugView);
52
- const welcomeControllerJavaFileName = 'WelcomeController.java';
53
- const SpringAppLocators = {
54
- springTitleLocator: selenium_webdriver_1.By.xpath('//div[@class=\'container-fluid\']//h2[text()=\'Welcome\']'),
55
- springMenuButtonLocator: selenium_webdriver_1.By.css('button[data-target=\'#main-navbar\']'),
56
- springErrorButtonLocator: selenium_webdriver_1.By.xpath('//div[@id=\'main-navbar\']//span[text()=\'Error\']'),
57
- springHomeButtonLocator: selenium_webdriver_1.By.className('navbar-brand'),
58
- springErrorMessageLocator: selenium_webdriver_1.By.xpath(`//h2[text()='Something happened...']`)
59
- };
60
- // this test checks only workspace created from "web-nodejs-sample" https://github.com/devfile/devworkspace-operator/blob/main/samples/flattened_theia-next.yaml.
61
- suite('Workspace creation via factory url', async () => {
62
- let factoryUrl = `${TestConstants_1.TestConstants.TS_SELENIUM_DEVWORKSPACE_URL}`;
63
- const workspaceRootFolderName = 'src';
64
- suite('Open factory URL', async () => {
65
- // this is DevWorkspace test specific - we create the test ws. using factory instead of chectl
66
- test(`Navigating to factory URL`, async () => {
67
- await browserTabsUtil.navigateTo(factoryUrl);
68
- });
69
- test('Register running workspace', async () => {
70
- WorkspaceHandlingTests_1.WorkspaceHandlingTests.setWorkspaceName(projectName);
71
- CheReporter_1.default.registerRunningWorkspace(projectName);
72
- });
73
- test('Register running workspace', async () => {
74
- await ide.waitIde(TimeoutConstants_1.TimeoutConstants.TS_SELENIUM_START_WORKSPACE_TIMEOUT);
75
- // in this place we do not check 'Do you trust the authors of', 'Yes, I trust' message
76
- // it is DevWorkspace test specific. After consuming the factory the notification does not appear
77
- await projectTree.openProjectTreeContainer();
78
- await projectTree.waitProjectImported(projectName, workspaceRootFolderName);
79
- });
80
- });
81
- });
82
- suite('Language server validation', async () => {
83
- test('Java LS initialization', async () => {
84
- await projectTree.expandPathAndOpenFile(pathToJavaFolder, javaFileName);
85
- await editor.selectTab(javaFileName);
86
- try {
87
- await ide.checkLsInitializationStart('Activating Language Support for Java');
88
- await ide.waitStatusBarTextAbsence('Activating Language Support for Java', 900000);
89
- }
90
- catch (err) {
91
- if (!(err instanceof selenium_webdriver_1.error.TimeoutError)) {
92
- throw err;
93
- }
94
- console.log('Known flakiness has occurred https://github.com/eclipse/che/issues/17864');
95
- await ide.waitStatusBarContains('Activating Java Test Runner');
96
- await ide.waitStatusBarTextAbsence('Activating Java Test Runner', 900000);
97
- }
98
- await checkJavaPathCompletion();
99
- });
100
- test('Autocomplete', async () => {
101
- await editor.moveCursorToLineAndChar(javaFileName, 32, 17);
102
- await editor.pressControlSpaceCombination(javaFileName);
103
- await editor.waitSuggestionContainer();
104
- await editor.waitSuggestion(javaFileName, 'SpringApplication - org.springframework.boot');
105
- });
106
- test('Error highlighting', async () => {
107
- await driverHelper.getDriver().sleep(TimeoutConstants_1.TimeoutConstants.TS_SUGGESTION_TIMEOUT); // workaround https://github.com/eclipse/che/issues/19004
108
- const textForErrorDisplaying = '$';
109
- await editor.type(javaFileName, textForErrorDisplaying, 30);
110
- try {
111
- await editor.waitErrorInLine(30, javaFileName, TimeoutConstants_1.TimeoutConstants.TS_ERROR_HIGHLIGHTING_TIMEOUT);
112
- }
113
- catch (err) {
114
- Logger_1.Logger.debug('Workaround for the https://github.com/eclipse/che/issues/18974.');
115
- await browserTabsUtil.refreshPage();
116
- await ide.waitIde();
117
- await editor.waitErrorInLine(30, javaFileName, TimeoutConstants_1.TimeoutConstants.TS_ERROR_HIGHLIGHTING_TIMEOUT * 2);
118
- }
119
- await editor.performKeyCombination(javaFileName, selenium_webdriver_1.Key.chord(selenium_webdriver_1.Key.BACK_SPACE));
120
- await editor.waitErrorInLineDisappearance(30, javaFileName);
121
- });
122
- test('Suggestion', async () => {
123
- await editor.moveCursorToLineAndChar(javaFileName, 32, 21);
124
- await editor.pressControlSpaceCombination(javaFileName);
125
- await editor.waitSuggestionWithScrolling(javaFileName, 'run(Class<?> primarySource, String... args) : ConfigurableApplicationContext', 120000);
126
- });
127
- test('CodeNavigation', async () => {
128
- await editor.moveCursorToLineAndChar(javaFileName, 32, 17);
129
- await editor.performKeyCombination(javaFileName, selenium_webdriver_1.Key.chord(selenium_webdriver_1.Key.CONTROL, selenium_webdriver_1.Key.F12));
130
- await editor.waitEditorAvailable(codeNavigationClassName, TimeoutConstants_1.TimeoutConstants.TS_EDITOR_TAB_INTERACTION_TIMEOUT * 4);
131
- });
132
- });
133
- suite('Validation of workspace build and run', async () => {
134
- const mavenBuildTaskName = 'maven-build';
135
- const runAppTaskName = 'run-with-hsqldb';
136
- test('Build application', async () => {
137
- await topMenu.runTask(`${mavenBuildTaskName}, ${globalTaskScope}`);
138
- await terminal.waitIconSuccess(mavenBuildTaskName, 500000);
139
- });
140
- test('Run application', async () => {
141
- await topMenu.runTask(`${runAppTaskName}, ${globalTaskScope}`);
142
- await ide.waitNotification('Process 8080-tcp is now listening on port 8080. Open it ?', 120000);
143
- // devWs specific. After running test application we can open it just in the new window.
144
- // the preview widget is not available yet.
145
- await ide.clickOnNotificationButton('Process 8080-tcp is now listening on port 8080. Open it ?', 'Open In New Tab');
146
- });
147
- // this is DevWorkspace test specific since Theia does not provide yet preview as a widget
148
- test('Check the running application', async () => {
149
- await switchAppWindowAndCheck(SpringAppLocators.springTitleLocator);
150
- });
151
- test('Close the terminal running tasks', async () => {
152
- await terminal.rejectTerminalProcess(runAppTaskName);
153
- await terminal.closeTerminalTab(runAppTaskName);
154
- await warningDialog.waitAndCloseIfAppear();
155
- await terminal.closeTerminalTab(mavenBuildTaskName);
156
- });
157
- });
158
- suite('Validation of debug functionality', async () => {
159
- let urlToPetClinicApp = '';
160
- test('Launch debug', async () => {
161
- const taskName = 'run-debug';
162
- await topMenu.runTask(`${taskName}, ${globalTaskScope}`);
163
- await ide.waitNotification('Process 8080-tcp is now listening on port 8080. Open it ?', 180000);
164
- await ide.clickOnNotificationButton('Process 8080-tcp is now listening on port 8080. Open it ?', 'Open In New Tab');
165
- });
166
- test('Check content of the launched application', async () => {
167
- const mainWindowHandle = await browserTabsUtil.getCurrentWindowHandle();
168
- await browserTabsUtil.waitAndSwitchToAnotherWindow(mainWindowHandle, TimeoutConstants_1.TimeoutConstants.TS_EDITOR_TAB_INTERACTION_TIMEOUT);
169
- urlToPetClinicApp = await browserTabsUtil.getCurrentUrl();
170
- await browserTabsUtil.switchToWindow(mainWindowHandle);
171
- });
172
- test('Open debug view', async () => {
173
- await projectTree.expandPathAndOpenFile(pathToJavaFolder + '/system', welcomeControllerJavaFileName);
174
- await editor.selectTab(welcomeControllerJavaFileName);
175
- await topMenu.selectOption('View', 'Debug');
176
- await ide.waitLeftToolbarButton(Ide_1.LeftToolbarButton.Debug);
177
- });
178
- test('Choose debug configuration', async () => {
179
- await debugView.clickOnDebugConfigurationDropDown();
180
- await debugView.clickOnDebugConfigurationItem('Debug (Attach) - Remote (java-spring-petclinic)');
181
- });
182
- test('Run debug', async () => {
183
- await debugView.clickOnRunDebugButton();
184
- await waitDebugToConnect();
185
- });
186
- test('Activate breakpoint', async () => {
187
- await editor.selectTab(welcomeControllerJavaFileName);
188
- await editor.activateBreakpoint(welcomeControllerJavaFileName, 27);
189
- });
190
- test('Check debugger stop at the breakpoint', async () => {
191
- await sendRequestToDebugApp(urlToPetClinicApp);
192
- await waitStoppedBreakpoint(27);
193
- });
194
- });
195
- async function checkJavaPathCompletion() {
196
- if (await ide.isNotificationPresent('Classpath is incomplete. Only syntax errors will be reported')) {
197
- const classpathText = fs.readFileSync('./files/happy-path/petclinic-classpath.txt', 'utf8');
198
- const workaroundReportText = '\n############################## \n\n' +
199
- 'Known issue: https://github.com/eclipse/che/issues/13427 \n' +
200
- '\"Java LS \"Classpath is incomplete\" warning when loading petclinic\" \n' +
201
- '\".classpath\" will be configured with next settings: \n\n' +
202
- classpathText + '\n' +
203
- '############################## \n';
204
- console.log(workaroundReportText);
205
- await projectTree.expandPathAndOpenFile(projectName, classPathFilename);
206
- await editor.waitEditorAvailable(classPathFilename);
207
- await editor.type(classPathFilename, selenium_webdriver_1.Key.chord(selenium_webdriver_1.Key.CONTROL, 'a'), 1);
208
- await editor.performKeyCombination(classPathFilename, selenium_webdriver_1.Key.DELETE);
209
- await editor.type(classPathFilename, classpathText, 1);
210
- await editor.waitTabWithSavedStatus(classPathFilename);
211
- }
212
- }
213
- // this is DevWorkspace test specific since Theia does not provide yet preview as a widget
214
- async function switchAppWindowAndCheck(contentLocator) {
215
- const mainWindowHandle = await browserTabsUtil.getCurrentWindowHandle();
216
- await browserTabsUtil.waitAndSwitchToAnotherWindow(mainWindowHandle, TimeoutConstants_1.TimeoutConstants.TS_EDITOR_TAB_INTERACTION_TIMEOUT);
217
- // make 3 attempts for waiting application availability with the configured period
218
- for (let index = 0; index < 3; index++) {
219
- let isApplicationTitleVisible = await driverHelper.isVisible(contentLocator);
220
- if (isApplicationTitleVisible) {
221
- console.log('----------- The Spring app is available.');
222
- break;
223
- }
224
- else {
225
- console.log(`----------- The Spring app is not available. Attempt # ${index}. Waiting ${TimeoutConstants_1.TimeoutConstants.TS_SELENIUM_DIALOG_WIDGET_TIMEOUT}s`);
226
- await driverHelper.getDriver().sleep(TimeoutConstants_1.TimeoutConstants.TS_SELENIUM_DIALOG_WIDGET_TIMEOUT);
227
- await driverHelper.getDriver().navigate().refresh();
228
- }
229
- }
230
- await driverHelper.waitVisibility(contentLocator);
231
- await driverHelper.getDriver().close();
232
- await browserTabsUtil.switchToWindow(mainWindowHandle);
233
- }
234
- async function waitStoppedBreakpoint(lineNumber) {
235
- try {
236
- await editor.waitStoppedDebugBreakpoint(welcomeControllerJavaFileName, lineNumber);
237
- }
238
- catch (err) {
239
- const mainWindowHandle = await browserTabsUtil.getCurrentWindowHandle();
240
- await browserTabsUtil.waitAndSwitchToAnotherWindow(mainWindowHandle, TimeoutConstants_1.TimeoutConstants.TS_EDITOR_TAB_INTERACTION_TIMEOUT);
241
- await driverHelper.getDriver().navigate().refresh();
242
- await browserTabsUtil.switchToWindow(mainWindowHandle);
243
- await editor.waitStoppedDebugBreakpoint(welcomeControllerJavaFileName, lineNumber);
244
- }
245
- }
246
- // we need to send a request to test app. under debugging because when we try to make it with WebDriver
247
- // the WebDriver will hang. Because the test application does not respond under debugging,
248
- // for avoiding this problem we send http request with axios and set the request timeout. We expect that request will fail with
249
- // timeout error, we check it in the catch block and wait breakpoint activating in the WebDriver after this.
250
- async function sendRequestToDebugApp(urlToApp) {
251
- const httpClient = axios_1.default.create();
252
- httpClient.defaults.timeout = 1000;
253
- try {
254
- await httpClient.get(urlToApp);
255
- }
256
- catch (error) {
257
- if (error instanceof Error) {
258
- if (error.message === 'timeout of 1000ms exceeded') {
259
- console.log('>>>>The debugger is set >>>>>>>>>>>>>>>>>>> ' + error.message);
260
- }
261
- else {
262
- const { data } = await httpClient.get(urlToApp);
263
- console.log('>>>>>>>seems the app. is not set under debug properly: >>>>>>>>>>>>>>' + data);
264
- }
265
- }
266
- }
267
- }
268
- async function waitDebugToConnect() {
269
- try {
270
- await debugView.waitForDebuggerToConnect();
271
- }
272
- catch (err) {
273
- Logger_1.Logger.debug('Workaround for the https://github.com/eclipse/che/issues/18034 issue.');
274
- await debugView.clickOnThreadsViewTitle();
275
- await debugView.waitForDebuggerToConnect();
276
- }
277
- }
278
- //# sourceMappingURL=DevWorkspaceHappyPath.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DevWorkspaceHappyPath.spec.js","sourceRoot":"","sources":["../../../tests/e2e_happy_path/DevWorkspaceHappyPath.spec.ts"],"names":[],"mappings":"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"}