@eclipse-che/che-e2e 7.62.0-dev-4f7da12 → 7.62.0-dev-13e3caa

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 (380) hide show
  1. package/configs/inversify.config.ts +88 -0
  2. package/{inversify.types.ts → configs/inversify.types.ts} +6 -9
  3. package/configs/mocharc.ts +21 -0
  4. package/{generateIndex.sh → configs/sh-scripts/generateIndex.sh} +8 -10
  5. package/{initDevfileTests.sh → configs/sh-scripts/initDevfileTests.sh} +18 -26
  6. package/{TestConstants.ts → constants/TestConstants.ts} +1 -1
  7. package/{TimeoutConstants.ts → constants/TimeoutConstants.ts} +1 -1
  8. package/dist/configs/inversify.config.js +81 -0
  9. package/dist/configs/inversify.config.js.map +1 -0
  10. package/dist/{inversify.types.js → configs/inversify.types.js} +5 -8
  11. package/dist/configs/inversify.types.js.map +1 -0
  12. package/dist/configs/mocharc.js +20 -0
  13. package/dist/configs/mocharc.js.map +1 -0
  14. package/dist/{TestConstants.js → constants/TestConstants.js} +1 -1
  15. package/dist/constants/TestConstants.js.map +1 -0
  16. package/dist/{TimeoutConstants.js → constants/TimeoutConstants.js} +1 -1
  17. package/dist/constants/TimeoutConstants.js.map +1 -0
  18. package/dist/driver/ChromeDriver.js +2 -2
  19. package/dist/driver/ChromeDriver.js.map +1 -1
  20. package/dist/pageobjects/dashboard/CreateWorkspace.js +4 -4
  21. package/dist/pageobjects/dashboard/CreateWorkspace.js.map +1 -1
  22. package/dist/pageobjects/dashboard/Dashboard.js +4 -4
  23. package/dist/pageobjects/dashboard/Dashboard.js.map +1 -1
  24. package/dist/pageobjects/dashboard/Workspaces.js +3 -3
  25. package/dist/pageobjects/dashboard/Workspaces.js.map +1 -1
  26. package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetails.js +10 -8
  27. package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetails.js.map +1 -1
  28. package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetailsPlugins.js +3 -3
  29. package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetailsPlugins.js.map +1 -1
  30. package/dist/pageobjects/login/ICheLoginPage.js +1 -1
  31. package/dist/pageobjects/login/IOcpLoginPage.js +1 -1
  32. package/dist/pageobjects/login/MultiUserLoginPage.js +3 -3
  33. package/dist/pageobjects/login/MultiUserLoginPage.js.map +1 -1
  34. package/dist/pageobjects/login/OcpUserLoginPage.js +3 -3
  35. package/dist/pageobjects/login/OcpUserLoginPage.js.map +1 -1
  36. package/dist/pageobjects/login/RegularUserOcpCheLoginPage.js +4 -4
  37. package/dist/pageobjects/login/RegularUserOcpCheLoginPage.js.map +1 -1
  38. package/dist/pageobjects/login/UpdateAccountInformationPage.js +2 -2
  39. package/dist/pageobjects/login/UpdateAccountInformationPage.js.map +1 -1
  40. package/dist/pageobjects/openshift/CheLoginPage.js +3 -3
  41. package/dist/pageobjects/openshift/CheLoginPage.js.map +1 -1
  42. package/dist/pageobjects/openshift/OcpLoginPage.js +4 -4
  43. package/dist/pageobjects/openshift/OcpLoginPage.js.map +1 -1
  44. package/dist/pageobjects/third-parties/GitLoginPage.js +4 -4
  45. package/dist/pageobjects/third-parties/GitLoginPage.js.map +1 -1
  46. package/dist/pageobjects/third-parties/GitOauthAppsSettings.js +3 -3
  47. package/dist/pageobjects/third-parties/GitOauthAppsSettings.js.map +1 -1
  48. package/dist/{tests → specs}/MochaHooks.js +32 -18
  49. package/dist/specs/MochaHooks.js.map +1 -0
  50. package/dist/{tests/devfiles/che-code → specs/devfiles}/EmptyWorkspace.spec.js +10 -11
  51. package/dist/specs/devfiles/EmptyWorkspace.spec.js.map +1 -0
  52. package/dist/{tests → specs}/login/LinkCheAndOcpUsers.spec.js +13 -12
  53. package/dist/specs/login/LinkCheAndOcpUsers.spec.js.map +1 -0
  54. package/dist/{utils/AnimationChecker.js → tests-library/LoginTests.js} +26 -18
  55. package/dist/tests-library/LoginTests.js.map +1 -0
  56. package/dist/{testsLibrary/che-code/ProjectAndFileTestsCheCode.js → tests-library/ProjectAndFileTests.js} +11 -11
  57. package/dist/tests-library/ProjectAndFileTests.js.map +1 -0
  58. package/dist/{testsLibrary → tests-library}/WorkspaceHandlingTests.js +4 -4
  59. package/dist/tests-library/WorkspaceHandlingTests.js.map +1 -0
  60. package/dist/utils/BrowserTabsUtil.js +3 -3
  61. package/dist/utils/BrowserTabsUtil.js.map +1 -1
  62. package/dist/{driver → utils}/CheReporter.js +6 -10
  63. package/dist/utils/CheReporter.js.map +1 -0
  64. package/dist/utils/DriverHelper.js +3 -3
  65. package/dist/utils/DriverHelper.js.map +1 -1
  66. package/dist/utils/Logger.js +2 -2
  67. package/dist/utils/Logger.js.map +1 -1
  68. package/dist/utils/Sanitizer.js +1 -1
  69. package/dist/utils/ScreenCatcher.js +7 -7
  70. package/dist/utils/ScreenCatcher.js.map +1 -1
  71. package/dist/utils/WorkspaceNameHandler.js +2 -2
  72. package/dist/utils/WorkspaceNameHandler.js.map +1 -1
  73. package/dist/utils/{requestHandlers → request-handlers}/CheApiRequestHandler.js +3 -3
  74. package/dist/utils/request-handlers/CheApiRequestHandler.js.map +1 -0
  75. package/dist/utils/{requestHandlers → request-handlers}/headers/CheMultiuserAuthorizationHeaderHandler.js +1 -1
  76. package/dist/utils/request-handlers/headers/CheMultiuserAuthorizationHeaderHandler.js.map +1 -0
  77. package/dist/utils/{requestHandlers → request-handlers}/headers/IAuthorizationHeaderHandler.js +1 -1
  78. package/dist/utils/request-handlers/headers/IAuthorizationHeaderHandler.js.map +1 -0
  79. package/dist/utils/{requestHandlers → request-handlers}/tokens/CheMultiuserTokenHandler.js +2 -2
  80. package/dist/utils/request-handlers/tokens/CheMultiuserTokenHandler.js.map +1 -0
  81. package/dist/utils/{requestHandlers → request-handlers}/tokens/ITokenHandler.js +1 -1
  82. package/dist/utils/request-handlers/tokens/ITokenHandler.js.map +1 -0
  83. package/dist/utils/{VCS → vsc}/CheGitApi.js +2 -2
  84. package/dist/utils/vsc/CheGitApi.js.map +1 -0
  85. package/dist/utils/{VCS → vsc}/github/GitHubUtil.js.map +1 -1
  86. package/dist/utils/workspace/ApiUrlResolver.js +3 -3
  87. package/dist/utils/workspace/ApiUrlResolver.js.map +1 -1
  88. package/dist/utils/workspace/ITestWorkspaceUtil.js +1 -1
  89. package/dist/utils/workspace/TestWorkspaceUtil.js +4 -4
  90. package/dist/utils/workspace/TestWorkspaceUtil.js.map +1 -1
  91. package/dist/utils/workspace/WorkspaceStatus.js +1 -1
  92. package/driver/ChromeDriver.ts +2 -2
  93. package/driver/IDriver.ts +1 -1
  94. package/package.json +6 -37
  95. package/pageobjects/dashboard/CreateWorkspace.ts +4 -4
  96. package/pageobjects/dashboard/Dashboard.ts +4 -4
  97. package/pageobjects/dashboard/Workspaces.ts +3 -3
  98. package/pageobjects/dashboard/workspace-details/WorkspaceDetails.ts +8 -8
  99. package/pageobjects/dashboard/workspace-details/WorkspaceDetailsPlugins.ts +3 -4
  100. package/pageobjects/login/ICheLoginPage.ts +1 -1
  101. package/pageobjects/login/IOcpLoginPage.ts +1 -1
  102. package/pageobjects/login/MultiUserLoginPage.ts +3 -3
  103. package/pageobjects/login/OcpUserLoginPage.ts +3 -3
  104. package/pageobjects/login/RegularUserOcpCheLoginPage.ts +4 -4
  105. package/pageobjects/login/UpdateAccountInformationPage.ts +2 -2
  106. package/pageobjects/openshift/CheLoginPage.ts +3 -3
  107. package/pageobjects/openshift/OcpLoginPage.ts +4 -4
  108. package/pageobjects/third-parties/GitLoginPage.ts +4 -4
  109. package/pageobjects/third-parties/GitOauthAppsSettings.ts +3 -3
  110. package/specs/MochaHooks.ts +72 -0
  111. package/{tests/devfiles/che-code → specs/devfiles}/EmptyWorkspace.spec.ts +12 -9
  112. package/{tests → specs}/login/LinkCheAndOcpUsers.spec.ts +5 -4
  113. package/tests-library/LoginTests.ts +35 -0
  114. package/{testsLibrary/che-code/ProjectAndFileTestsCheCode.ts → tests-library/ProjectAndFileTests.ts} +6 -6
  115. package/{testsLibrary → tests-library}/WorkspaceHandlingTests.ts +4 -4
  116. package/utils/BrowserTabsUtil.ts +3 -3
  117. package/{driver → utils}/CheReporter.ts +10 -15
  118. package/utils/DriverHelper.ts +4 -4
  119. package/utils/Logger.ts +2 -2
  120. package/utils/Sanitizer.ts +1 -1
  121. package/utils/ScreenCatcher.ts +3 -3
  122. package/utils/WorkspaceNameHandler.ts +2 -2
  123. package/utils/{requestHandlers → request-handlers}/CheApiRequestHandler.ts +3 -3
  124. package/utils/{requestHandlers → request-handlers}/headers/CheMultiuserAuthorizationHeaderHandler.ts +2 -2
  125. package/utils/{requestHandlers → request-handlers}/headers/IAuthorizationHeaderHandler.ts +1 -1
  126. package/utils/{requestHandlers → request-handlers}/tokens/CheMultiuserTokenHandler.ts +2 -2
  127. package/utils/{requestHandlers → request-handlers}/tokens/ITokenHandler.ts +1 -1
  128. package/utils/{VCS → vsc}/CheGitApi.ts +2 -6
  129. package/utils/workspace/ApiUrlResolver.ts +3 -3
  130. package/utils/workspace/ITestWorkspaceUtil.ts +1 -1
  131. package/utils/workspace/TestWorkspaceUtil.ts +4 -4
  132. package/utils/workspace/WorkspaceStatus.ts +1 -1
  133. package/dist/TestConstants.js.map +0 -1
  134. package/dist/TimeoutConstants.js.map +0 -1
  135. package/dist/driver/CheReporter.js.map +0 -1
  136. package/dist/index.js +0 -94
  137. package/dist/index.js.map +0 -1
  138. package/dist/inversify.config.js +0 -133
  139. package/dist/inversify.config.js.map +0 -1
  140. package/dist/inversify.types.js.map +0 -1
  141. package/dist/pageobjects/ide/theia/ContextMenu.js +0 -66
  142. package/dist/pageobjects/ide/theia/ContextMenu.js.map +0 -1
  143. package/dist/pageobjects/ide/theia/DebugView.js +0 -98
  144. package/dist/pageobjects/ide/theia/DebugView.js.map +0 -1
  145. package/dist/pageobjects/ide/theia/DialogWindow.js +0 -102
  146. package/dist/pageobjects/ide/theia/DialogWindow.js.map +0 -1
  147. package/dist/pageobjects/ide/theia/Editor.js +0 -463
  148. package/dist/pageobjects/ide/theia/Editor.js.map +0 -1
  149. package/dist/pageobjects/ide/theia/Ide.js +0 -336
  150. package/dist/pageobjects/ide/theia/Ide.js.map +0 -1
  151. package/dist/pageobjects/ide/theia/LeftToolBar.js +0 -81
  152. package/dist/pageobjects/ide/theia/LeftToolBar.js.map +0 -1
  153. package/dist/pageobjects/ide/theia/NavigationBar.js +0 -57
  154. package/dist/pageobjects/ide/theia/NavigationBar.js.map +0 -1
  155. package/dist/pageobjects/ide/theia/NotificationCenter.js +0 -76
  156. package/dist/pageobjects/ide/theia/NotificationCenter.js.map +0 -1
  157. package/dist/pageobjects/ide/theia/OpenDialogWidget.js +0 -100
  158. package/dist/pageobjects/ide/theia/OpenDialogWidget.js.map +0 -1
  159. package/dist/pageobjects/ide/theia/OpenEditors.js +0 -73
  160. package/dist/pageobjects/ide/theia/OpenEditors.js.map +0 -1
  161. package/dist/pageobjects/ide/theia/OpenWorkspaceWidget.js +0 -62
  162. package/dist/pageobjects/ide/theia/OpenWorkspaceWidget.js.map +0 -1
  163. package/dist/pageobjects/ide/theia/PreviewWidget.js +0 -134
  164. package/dist/pageobjects/ide/theia/PreviewWidget.js.map +0 -1
  165. package/dist/pageobjects/ide/theia/ProjectTree.js +0 -282
  166. package/dist/pageobjects/ide/theia/ProjectTree.js.map +0 -1
  167. package/dist/pageobjects/ide/theia/QuickOpenContainer.js +0 -70
  168. package/dist/pageobjects/ide/theia/QuickOpenContainer.js.map +0 -1
  169. package/dist/pageobjects/ide/theia/RightToolBar.js +0 -51
  170. package/dist/pageobjects/ide/theia/RightToolBar.js.map +0 -1
  171. package/dist/pageobjects/ide/theia/Terminal.js +0 -184
  172. package/dist/pageobjects/ide/theia/Terminal.js.map +0 -1
  173. package/dist/pageobjects/ide/theia/TopMenu.js +0 -109
  174. package/dist/pageobjects/ide/theia/TopMenu.js.map +0 -1
  175. package/dist/pageobjects/ide/theia/plugins/GitHubPullRequestPlugin.js +0 -128
  176. package/dist/pageobjects/ide/theia/plugins/GitHubPullRequestPlugin.js.map +0 -1
  177. package/dist/pageobjects/ide/theia/plugins/GitPlugin.js +0 -120
  178. package/dist/pageobjects/ide/theia/plugins/GitPlugin.js.map +0 -1
  179. package/dist/pageobjects/ide/theia/plugins/KubernetesPlugin.js +0 -107
  180. package/dist/pageobjects/ide/theia/plugins/KubernetesPlugin.js.map +0 -1
  181. package/dist/pageobjects/ide/theia/plugins/OpenshiftPlugin.js +0 -99
  182. package/dist/pageobjects/ide/theia/plugins/OpenshiftPlugin.js.map +0 -1
  183. package/dist/pageobjects/ide/theia/plugins/PluginsView.js +0 -166
  184. package/dist/pageobjects/ide/theia/plugins/PluginsView.js.map +0 -1
  185. package/dist/tests/MochaHooks.js.map +0 -1
  186. package/dist/tests/devfiles/che-code/EmptyWorkspace.spec.js.map +0 -1
  187. package/dist/tests/devfiles/theia/CSlashCPlusPlus.spec.js +0 -73
  188. package/dist/tests/devfiles/theia/CSlashCPlusPlus.spec.js.map +0 -1
  189. package/dist/tests/devfiles/theia/DevfileSmoke.spec.js +0 -47
  190. package/dist/tests/devfiles/theia/DevfileSmoke.spec.js.map +0 -1
  191. package/dist/tests/devfiles/theia/DotNetCore.spec.js +0 -81
  192. package/dist/tests/devfiles/theia/DotNetCore.spec.js.map +0 -1
  193. package/dist/tests/devfiles/theia/Go.spec.js +0 -72
  194. package/dist/tests/devfiles/theia/Go.spec.js.map +0 -1
  195. package/dist/tests/devfiles/theia/JavaMaven.spec.js +0 -60
  196. package/dist/tests/devfiles/theia/JavaMaven.spec.js.map +0 -1
  197. package/dist/tests/devfiles/theia/JavaSpringBoot.spec.js +0 -66
  198. package/dist/tests/devfiles/theia/JavaSpringBoot.spec.js.map +0 -1
  199. package/dist/tests/devfiles/theia/JavaVertx.spec.js +0 -60
  200. package/dist/tests/devfiles/theia/JavaVertx.spec.js.map +0 -1
  201. package/dist/tests/devfiles/theia/NodeJS.spec.js +0 -64
  202. package/dist/tests/devfiles/theia/NodeJS.spec.js.map +0 -1
  203. package/dist/tests/devfiles/theia/PHPSimple.spec.js +0 -74
  204. package/dist/tests/devfiles/theia/PHPSimple.spec.js.map +0 -1
  205. package/dist/tests/devfiles/theia/Python.spec.js +0 -58
  206. package/dist/tests/devfiles/theia/Python.spec.js.map +0 -1
  207. package/dist/tests/devfiles/theia/PythonDjango.spec.js +0 -61
  208. package/dist/tests/devfiles/theia/PythonDjango.spec.js.map +0 -1
  209. package/dist/tests/devfiles/theia/Quarkus.spec.js +0 -69
  210. package/dist/tests/devfiles/theia/Quarkus.spec.js.map +0 -1
  211. package/dist/tests/devfiles/theia/Scala.spec.js +0 -66
  212. package/dist/tests/devfiles/theia/Scala.spec.js.map +0 -1
  213. package/dist/tests/e2e/theia/FactoryUrl.spec.js +0 -40
  214. package/dist/tests/e2e/theia/FactoryUrl.spec.js.map +0 -1
  215. package/dist/tests/e2e/theia/GitPublishBranch.spec.js +0 -90
  216. package/dist/tests/e2e/theia/GitPublishBranch.spec.js.map +0 -1
  217. package/dist/tests/e2e/theia/GitSelfSignCert.spec.js +0 -90
  218. package/dist/tests/e2e/theia/GitSelfSignCert.spec.js.map +0 -1
  219. package/dist/tests/e2e/theia/GitSsh.spec.js +0 -120
  220. package/dist/tests/e2e/theia/GitSsh.spec.js.map +0 -1
  221. package/dist/tests/e2e/theia/OpenshiftConnector.spec.js +0 -124
  222. package/dist/tests/e2e/theia/OpenshiftConnector.spec.js.map +0 -1
  223. package/dist/tests/e2e/theia/factories/DirectUrlFactoryWithKeepDirectoryTest.spec.js +0 -50
  224. package/dist/tests/e2e/theia/factories/DirectUrlFactoryWithKeepDirectoryTest.spec.js.map +0 -1
  225. package/dist/tests/e2e/theia/factories/DirectUrlFactoryWithRootFolderTest.spec.js +0 -48
  226. package/dist/tests/e2e/theia/factories/DirectUrlFactoryWithRootFolderTest.spec.js.map +0 -1
  227. package/dist/tests/e2e/theia/factories/DirectUrlFactoryWithSpecificBranchTest.spec.js +0 -48
  228. package/dist/tests/e2e/theia/factories/DirectUrlFactoryWithSpecificBranchTest.spec.js.map +0 -1
  229. package/dist/tests/e2e_happy_path/theia/DevWorkspaceHappyPath.spec.js +0 -277
  230. package/dist/tests/e2e_happy_path/theia/DevWorkspaceHappyPath.spec.js.map +0 -1
  231. package/dist/tests/e2e_happy_path/theia/HappyPath.spec.js +0 -314
  232. package/dist/tests/e2e_happy_path/theia/HappyPath.spec.js.map +0 -1
  233. package/dist/tests/intelij/IntelijOpenWorkspace.spec.js +0 -39
  234. package/dist/tests/intelij/IntelijOpenWorkspace.spec.js.map +0 -1
  235. package/dist/tests/load_test/theia/LoadTest.spec.js +0 -41
  236. package/dist/tests/load_test/theia/LoadTest.spec.js.map +0 -1
  237. package/dist/tests/login/LinkCheAndOcpUsers.spec.js.map +0 -1
  238. package/dist/tests/login/Login.spec.js +0 -28
  239. package/dist/tests/login/Login.spec.js.map +0 -1
  240. package/dist/tests/plugins/theia/GitHubPullRequestPlugin.spec.js +0 -117
  241. package/dist/tests/plugins/theia/GitHubPullRequestPlugin.spec.js.map +0 -1
  242. package/dist/tests/plugins/theia/InstallPluginUsingUI.spec.js +0 -62
  243. package/dist/tests/plugins/theia/InstallPluginUsingUI.spec.js.map +0 -1
  244. package/dist/tests/plugins/theia/JavaPlugin.spec.js +0 -82
  245. package/dist/tests/plugins/theia/JavaPlugin.spec.js.map +0 -1
  246. package/dist/tests/plugins/theia/PhpPlugin.spec.js +0 -96
  247. package/dist/tests/plugins/theia/PhpPlugin.spec.js.map +0 -1
  248. package/dist/tests/plugins/theia/PythonPlugin.spec.js +0 -72
  249. package/dist/tests/plugins/theia/PythonPlugin.spec.js.map +0 -1
  250. package/dist/tests/plugins/theia/TypescriptPlugin.spec.js +0 -135
  251. package/dist/tests/plugins/theia/TypescriptPlugin.spec.js.map +0 -1
  252. package/dist/tests/plugins/theia/VscodeKubernetesPlugin.spec.js +0 -69
  253. package/dist/tests/plugins/theia/VscodeKubernetesPlugin.spec.js.map +0 -1
  254. package/dist/tests/plugins/theia/VscodeShellcheckPlugin.spec.js +0 -82
  255. package/dist/tests/plugins/theia/VscodeShellcheckPlugin.spec.js.map +0 -1
  256. package/dist/tests/plugins/theia/VscodeValePlugin.spec.js +0 -70
  257. package/dist/tests/plugins/theia/VscodeValePlugin.spec.js.map +0 -1
  258. package/dist/tests/plugins/theia/VscodeXmlPlugin.spec.js +0 -81
  259. package/dist/tests/plugins/theia/VscodeXmlPlugin.spec.js.map +0 -1
  260. package/dist/tests/plugins/theia/VscodeYamlPlugin.spec.js +0 -78
  261. package/dist/tests/plugins/theia/VscodeYamlPlugin.spec.js.map +0 -1
  262. package/dist/testsLibrary/WorkspaceHandlingTests.js.map +0 -1
  263. package/dist/testsLibrary/che-code/ProjectAndFileTestsCheCode.js.map +0 -1
  264. package/dist/testsLibrary/theia/CodeExecutionTestsTheia.js +0 -248
  265. package/dist/testsLibrary/theia/CodeExecutionTestsTheia.js.map +0 -1
  266. package/dist/testsLibrary/theia/LanguageServerTestsTheia.js +0 -230
  267. package/dist/testsLibrary/theia/LanguageServerTestsTheia.js.map +0 -1
  268. package/dist/testsLibrary/theia/ProjectAndFileTestsTheia.js +0 -133
  269. package/dist/testsLibrary/theia/ProjectAndFileTestsTheia.js.map +0 -1
  270. package/dist/utils/AnimationChecker.js.map +0 -1
  271. package/dist/utils/VCS/CheGitApi.js.map +0 -1
  272. package/dist/utils/requestHandlers/CheApiRequestHandler.js.map +0 -1
  273. package/dist/utils/requestHandlers/headers/CheMultiuserAuthorizationHeaderHandler.js.map +0 -1
  274. package/dist/utils/requestHandlers/headers/IAuthorizationHeaderHandler.js.map +0 -1
  275. package/dist/utils/requestHandlers/tokens/CheMultiuserTokenHandler.js.map +0 -1
  276. package/dist/utils/requestHandlers/tokens/ITokenHandler.js.map +0 -1
  277. package/dist/utils/theia/PreferencesHandlerTheia.js +0 -142
  278. package/dist/utils/theia/PreferencesHandlerTheia.js.map +0 -1
  279. package/index.ts +0 -69
  280. package/initPluginTest.sh +0 -9
  281. package/inversify.config.ts +0 -141
  282. package/mocha-all-devfiles-che-code.json +0 -12
  283. package/mocha-all-devfiles-theia.json +0 -15
  284. package/mocha-all-factories-che-code.json +0 -14
  285. package/mocha-all-factories-theia.json +0 -16
  286. package/mocha-all-plugins-che-code.json +0 -13
  287. package/mocha-all-plugins-theia.json +0 -15
  288. package/mocha-che-code.json +0 -12
  289. package/mocha-connector-theia.json +0 -12
  290. package/mocha-devworkspace-happy-path-che-code.json +0 -13
  291. package/mocha-devworkspace-happy-path-theia.json +0 -14
  292. package/mocha-empty-workspace-devworkspace-happy-path-che-code.json +0 -14
  293. package/mocha-factory-che-code.json +0 -13
  294. package/mocha-factory-theia.json +0 -14
  295. package/mocha-git-publish-branch-theia.json +0 -14
  296. package/mocha-git-self-sign-cert-theia.json +0 -14
  297. package/mocha-git-ssh-theia.json +0 -14
  298. package/mocha-happy-path-che-code.json +0 -14
  299. package/mocha-happy-path-theia.json +0 -15
  300. package/mocha-java-maven.json +0 -13
  301. package/mocha-java-springboot-che-code.json +0 -12
  302. package/mocha-java-springboot-theia.json +0 -13
  303. package/mocha-java-vertx-che-code.json +0 -12
  304. package/mocha-java-vertx-theia.json +0 -13
  305. package/mocha-load-theia.json +0 -12
  306. package/mocha-scala.json +0 -13
  307. package/mocha-single-devfile.json +0 -11
  308. package/mocha-theia.json +0 -12
  309. package/mocha-ws-creation-and-ls-theia.json +0 -12
  310. package/mocha.intelij.json +0 -13
  311. package/mocha.ocp.link.json +0 -11
  312. package/mocha.single.plugin.json +0 -8
  313. package/pageobjects/ide/theia/ContextMenu.ts +0 -55
  314. package/pageobjects/ide/theia/DebugView.ts +0 -88
  315. package/pageobjects/ide/theia/DialogWindow.ts +0 -101
  316. package/pageobjects/ide/theia/Editor.ts +0 -601
  317. package/pageobjects/ide/theia/Ide.ts +0 -393
  318. package/pageobjects/ide/theia/LeftToolBar.ts +0 -81
  319. package/pageobjects/ide/theia/NavigationBar.ts +0 -41
  320. package/pageobjects/ide/theia/NotificationCenter.ts +0 -75
  321. package/pageobjects/ide/theia/OpenDialogWidget.ts +0 -92
  322. package/pageobjects/ide/theia/OpenEditors.ts +0 -63
  323. package/pageobjects/ide/theia/OpenWorkspaceWidget.ts +0 -48
  324. package/pageobjects/ide/theia/PreviewWidget.ts +0 -142
  325. package/pageobjects/ide/theia/ProjectTree.ts +0 -338
  326. package/pageobjects/ide/theia/QuickOpenContainer.ts +0 -59
  327. package/pageobjects/ide/theia/RightToolBar.ts +0 -34
  328. package/pageobjects/ide/theia/Terminal.ts +0 -219
  329. package/pageobjects/ide/theia/TopMenu.ts +0 -103
  330. package/pageobjects/ide/theia/plugins/GitHubPullRequestPlugin.ts +0 -130
  331. package/pageobjects/ide/theia/plugins/GitPlugin.ts +0 -118
  332. package/pageobjects/ide/theia/plugins/KubernetesPlugin.ts +0 -113
  333. package/pageobjects/ide/theia/plugins/OpenshiftPlugin.ts +0 -87
  334. package/pageobjects/ide/theia/plugins/PluginsView.ts +0 -191
  335. package/tests/MochaHooks.ts +0 -57
  336. package/tests/devfiles/theia/CSlashCPlusPlus.spec.ts +0 -78
  337. package/tests/devfiles/theia/DevfileSmoke.spec.ts +0 -50
  338. package/tests/devfiles/theia/DotNetCore.spec.ts +0 -87
  339. package/tests/devfiles/theia/Go.spec.ts +0 -81
  340. package/tests/devfiles/theia/JavaMaven.spec.ts +0 -64
  341. package/tests/devfiles/theia/JavaSpringBoot.spec.ts +0 -71
  342. package/tests/devfiles/theia/JavaVertx.spec.ts +0 -65
  343. package/tests/devfiles/theia/NodeJS.spec.ts +0 -71
  344. package/tests/devfiles/theia/PHPSimple.spec.ts +0 -80
  345. package/tests/devfiles/theia/Python.spec.ts +0 -64
  346. package/tests/devfiles/theia/PythonDjango.spec.ts +0 -67
  347. package/tests/devfiles/theia/Quarkus.spec.ts +0 -76
  348. package/tests/devfiles/theia/Scala.spec.ts +0 -70
  349. package/tests/e2e/theia/FactoryUrl.spec.ts +0 -47
  350. package/tests/e2e/theia/GitPublishBranch.spec.ts +0 -109
  351. package/tests/e2e/theia/GitSelfSignCert.spec.ts +0 -110
  352. package/tests/e2e/theia/GitSsh.spec.ts +0 -144
  353. package/tests/e2e/theia/OpenshiftConnector.spec.ts +0 -144
  354. package/tests/e2e/theia/factories/DirectUrlFactoryWithKeepDirectoryTest.spec.ts +0 -60
  355. package/tests/e2e/theia/factories/DirectUrlFactoryWithRootFolderTest.spec.ts +0 -57
  356. package/tests/e2e/theia/factories/DirectUrlFactoryWithSpecificBranchTest.spec.ts +0 -57
  357. package/tests/e2e_happy_path/theia/DevWorkspaceHappyPath.spec.ts +0 -294
  358. package/tests/e2e_happy_path/theia/HappyPath.spec.ts +0 -348
  359. package/tests/intelij/IntelijOpenWorkspace.spec.ts +0 -47
  360. package/tests/load_test/theia/LoadTest.spec.ts +0 -55
  361. package/tests/login/Login.spec.ts +0 -31
  362. package/tests/plugins/theia/GitHubPullRequestPlugin.spec.ts +0 -147
  363. package/tests/plugins/theia/InstallPluginUsingUI.spec.ts +0 -77
  364. package/tests/plugins/theia/JavaPlugin.spec.ts +0 -100
  365. package/tests/plugins/theia/PhpPlugin.spec.ts +0 -115
  366. package/tests/plugins/theia/PythonPlugin.spec.ts +0 -86
  367. package/tests/plugins/theia/TypescriptPlugin.spec.ts +0 -168
  368. package/tests/plugins/theia/VscodeKubernetesPlugin.spec.ts +0 -83
  369. package/tests/plugins/theia/VscodeShellcheckPlugin.spec.ts +0 -100
  370. package/tests/plugins/theia/VscodeValePlugin.spec.ts +0 -85
  371. package/tests/plugins/theia/VscodeXmlPlugin.spec.ts +0 -104
  372. package/tests/plugins/theia/VscodeYamlPlugin.spec.ts +0 -99
  373. package/testsLibrary/theia/CodeExecutionTestsTheia.ts +0 -220
  374. package/testsLibrary/theia/LanguageServerTestsTheia.ts +0 -205
  375. package/testsLibrary/theia/ProjectAndFileTestsTheia.ts +0 -113
  376. package/utils/AnimationChecker.ts +0 -27
  377. package/utils/theia/PreferencesHandlerTheia.ts +0 -123
  378. /package/{initDefaultValues.sh → configs/sh-scripts/initDefaultValues.sh} +0 -0
  379. /package/dist/utils/{VCS → vsc}/github/GitHubUtil.js +0 -0
  380. /package/utils/{VCS → vsc}/github/GitHubUtil.ts +0 -0
@@ -1,348 +0,0 @@
1
- /*********************************************************************
2
- * Copyright (c) 2019 Red Hat, Inc.
3
- *
4
- * This program and the accompanying materials are made
5
- * available under the terms of the Eclipse Public License 2.0
6
- * which is available at https://www.eclipse.org/legal/epl-2.0/
7
- *
8
- * SPDX-License-Identifier: EPL-2.0
9
- **********************************************************************/
10
-
11
- import { e2eContainer } from '../../../inversify.config';
12
- import { DriverHelper } from '../../../utils/DriverHelper';
13
- import { CLASSES } from '../../../inversify.types';
14
- import { Ide, LeftToolbarButton } from '../../../pageobjects/ide/theia/Ide';
15
- import { ProjectTree } from '../../../pageobjects/ide/theia/ProjectTree';
16
- import { TopMenu } from '../../../pageobjects/ide/theia/TopMenu';
17
- import { Editor } from '../../../pageobjects/ide/theia/Editor';
18
- import { PreviewWidget } from '../../../pageobjects/ide/theia/PreviewWidget';
19
- import { TestConstants } from '../../../TestConstants';
20
- import { By, Key, error } from 'selenium-webdriver';
21
- import { DebugView } from '../../../pageobjects/ide/theia/DebugView';
22
- import { DialogWindow } from '../../../pageobjects/ide/theia/DialogWindow';
23
- import { Terminal } from '../../../pageobjects/ide/theia/Terminal';
24
- import * as fs from 'fs';
25
- import { Workspaces } from '../../../pageobjects/dashboard/Workspaces';
26
- import { Dashboard } from '../../../pageobjects/dashboard/Dashboard';
27
- import { TimeoutConstants } from '../../../TimeoutConstants';
28
- import { Logger } from '../../../utils/Logger';
29
- import { RightToolBar } from '../../../pageobjects/ide/theia/RightToolBar';
30
- import { BrowserTabsUtil } from '../../../utils/BrowserTabsUtil';
31
- import { WorkspaceHandlingTests } from '../../../testsLibrary/WorkspaceHandlingTests';
32
- import CheReporter from '../../../driver/CheReporter';
33
-
34
- const driverHelper: DriverHelper = e2eContainer.get(CLASSES.DriverHelper);
35
- const ide: Ide = e2eContainer.get(CLASSES.Ide);
36
- const projectTree: ProjectTree = e2eContainer.get(CLASSES.ProjectTree);
37
- const topMenu: TopMenu = e2eContainer.get(CLASSES.TopMenu);
38
- const editor: Editor = e2eContainer.get(CLASSES.Editor);
39
- const previewWidget: PreviewWidget = e2eContainer.get(CLASSES.PreviewWidget);
40
- const workspaces: Workspaces = e2eContainer.get(CLASSES.Workspaces);
41
- const rightToolBar: RightToolBar = e2eContainer.get(CLASSES.RightToolBar);
42
- const dashboard: Dashboard = e2eContainer.get(CLASSES.Dashboard);
43
- const terminal: Terminal = e2eContainer.get(CLASSES.Terminal);
44
- const debugView: DebugView = e2eContainer.get(CLASSES.DebugView);
45
- const warningDialog: DialogWindow = e2eContainer.get(CLASSES.DialogWindow);
46
- const projectName: string = 'petclinic';
47
- const workspaceRootFolderName: string = 'src';
48
- const workspaceName: string = TestConstants.TS_SELENIUM_HAPPY_PATH_WORKSPACE_NAME;
49
-
50
- const pathToJavaFolder: string = `${projectName}/${workspaceRootFolderName}/main/java/org/springframework/samples/petclinic`;
51
- const pathToChangedJavaFileFolder: string = `${projectName}/${workspaceRootFolderName}/main/java/org/springframework/samples/petclinic/system`;
52
- const classPathFilename: string = '.classpath';
53
- const javaFileName: string = 'PetClinicApplication.java';
54
- const weclomeControllerJavaFileName: string = 'WelcomeController.java';
55
- const changedJavaFileName: string = 'CrashController.java';
56
- const textForErrorMessageChange: string = 'HHHHHHHHHHHHH';
57
- const codeNavigationClassName: string = 'SpringApplication.class';
58
- const pathToYamlFolder: string = projectName;
59
- const yamlFileName: string = 'devfile.yaml';
60
- const browserTabsUtil: BrowserTabsUtil = e2eContainer.get(CLASSES.BrowserTabsUtil);
61
- const globalTaskScope = 'Global';
62
-
63
- const SpringAppLocators = {
64
- springTitleLocator: By.xpath('//div[@class=\'container-fluid\']//h2[text()=\'Welcome\']'),
65
- springMenuButtonLocator: By.css('button[data-target=\'#main-navbar\']'),
66
- springErrorButtonLocator: By.xpath('//div[@id=\'main-navbar\']//span[text()=\'Error\']'),
67
- springHomeButtonLocator: By.className('navbar-brand'),
68
- springErrorMessageLocator: By.xpath(`//h2[text()='Something happened...']`)
69
- };
70
-
71
- suite('Validation of workspace start', async () => {
72
- test('Start workspace', async () => {
73
- await dashboard.waitPage();
74
- await dashboard.clickWorkspacesButton();
75
- await workspaces.waitPage();
76
- await workspaces.clickOpenButton(workspaceName);
77
- });
78
-
79
- test('Register running workspace', async () => {
80
- WorkspaceHandlingTests.setWorkspaceName(workspaceName);
81
- CheReporter.registerRunningWorkspace(workspaceName);
82
- });
83
-
84
- test('Wait for workspace readiness', async () => {
85
- // await ide.waitAndSwitchToIdeFrame(); test is outdated, should be deprecated.
86
- await ide.waitIde(TimeoutConstants.TS_SELENIUM_START_WORKSPACE_TIMEOUT);
87
- await projectTree.openProjectTreeContainer();
88
- await ide.waitNotificationAndClickOnButton('Do you trust the authors of', 'Yes, I trust', 60_000);
89
- await projectTree.waitProjectImported(projectName, workspaceRootFolderName);
90
- });
91
- });
92
-
93
- suite('Language server validation', async () => {
94
- test('Java LS initialization', async () => {
95
- await projectTree.expandPathAndOpenFile(pathToJavaFolder, javaFileName);
96
- await editor.selectTab(javaFileName);
97
-
98
- try {
99
- await ide.checkLsInitializationStart('Activating Language Support for Java');
100
- await ide.waitStatusBarTextAbsence('Activating Language Support for Java', 900_000);
101
- } catch (err) {
102
- if (!(err instanceof error.TimeoutError)) {
103
- throw err;
104
- }
105
-
106
- console.log('Known flakiness has occurred https://github.com/eclipse/che/issues/17864');
107
- await ide.waitStatusBarContains('Activating Java Test Runner');
108
- await ide.waitStatusBarTextAbsence('Activating Java Test Runner', 900_000);
109
- }
110
-
111
- await checkJavaPathCompletion();
112
- });
113
-
114
- test('Autocomplete', async () => {
115
- await editor.moveCursorToLineAndChar(javaFileName, 32, 17);
116
- await editor.pressControlSpaceCombination(javaFileName);
117
- await editor.waitSuggestionContainer();
118
- await editor.waitSuggestion(javaFileName, 'SpringApplication - org.springframework.boot');
119
- });
120
-
121
- test('Error highlighting', async () => {
122
- await driverHelper.wait(TimeoutConstants.TS_SUGGESTION_TIMEOUT); // workaround https://github.com/eclipse/che/issues/19004
123
-
124
- const textForErrorDisplaying: string = '$';
125
- await editor.type(javaFileName, textForErrorDisplaying, 30);
126
-
127
- try {
128
- await editor.waitErrorInLine(30, javaFileName, TimeoutConstants.TS_ERROR_HIGHLIGHTING_TIMEOUT);
129
- } catch (err) {
130
- Logger.debug('Workaround for the https://github.com/eclipse/che/issues/18974.');
131
- await browserTabsUtil.refreshPage();
132
- // await ide.waitAndSwitchToIdeFrame(); test is outdated, should be deprecated.
133
- await ide.waitIde();
134
- await editor.waitErrorInLine(30, javaFileName, TimeoutConstants.TS_ERROR_HIGHLIGHTING_TIMEOUT * 2);
135
- }
136
-
137
- await editor.performKeyCombination(javaFileName, Key.chord(Key.BACK_SPACE));
138
- await editor.waitErrorInLineDisappearance(30, javaFileName);
139
- });
140
-
141
- test('Suggestion', async () => {
142
- await editor.moveCursorToLineAndChar(javaFileName, 32, 21);
143
- await editor.pressControlSpaceCombination(javaFileName);
144
- await editor.waitSuggestionWithScrolling(javaFileName, 'run(Class<?> primarySource, String... args) : ConfigurableApplicationContext', 120_000);
145
- });
146
-
147
- test('Codenavigation', async () => {
148
- await editor.moveCursorToLineAndChar(javaFileName, 32, 17);
149
- await editor.performKeyCombination(javaFileName, Key.chord(Key.CONTROL, Key.F12));
150
- await editor.waitEditorAvailable(codeNavigationClassName, TimeoutConstants.TS_EDITOR_TAB_INTERACTION_TIMEOUT * 4);
151
- });
152
-
153
- test.skip('Yaml LS initialization', async () => {
154
- await projectTree.expandPathAndOpenFile(pathToYamlFolder, yamlFileName);
155
- await editor.waitEditorAvailable(yamlFileName);
156
- await editor.clickOnTab(yamlFileName);
157
- await editor.waitTabFocused(yamlFileName);
158
- await ide.waitStatusBarContains('Starting Yaml Language Server');
159
- await ide.waitStatusBarContains('100% Starting Yaml Language Server');
160
- await ide.waitStatusBarTextAbsence('Starting Yaml Language Server');
161
- });
162
- });
163
-
164
- suite('Validation of workspace build and run', async () => {
165
- test('Build application', async () => {
166
- const taskName: string = 'build-file-output';
167
- await topMenu.runTask(`${taskName}, ${globalTaskScope}`);
168
- await terminal.waitIconSuccess(taskName, 500_000);
169
- });
170
-
171
- test('Run application', async () => {
172
- const taskName: string = 'run';
173
- await topMenu.runTask(`${taskName}, ${globalTaskScope}`);
174
- await ide.waitNotification('Process 8080-tcp is now listening on port 8080. Open it ?', 120_000);
175
- await ide.clickOnNotificationButton('Process 8080-tcp is now listening on port 8080. Open it ?', 'Open In Preview');
176
- });
177
-
178
- test('Check the running application', async () => {
179
- await previewWidget.waitContentAvailable(SpringAppLocators.springTitleLocator, 60_000, 10_000);
180
- });
181
-
182
- test('Close preview widget', async () => {
183
- await rightToolBar.clickOnToolIcon('Preview');
184
- await previewWidget.waitPreviewWidgetAbsence();
185
- });
186
-
187
- test('Close the terminal running tasks', async () => {
188
- await terminal.closeTerminalTab('build-file-output');
189
- await terminal.rejectTerminalProcess('run');
190
- await terminal.closeTerminalTab('run');
191
- await warningDialog.waitAndCloseIfAppear();
192
- });
193
- });
194
-
195
- suite('Display source code changes in the running application', async () => {
196
- test('Change source code', async () => {
197
- await projectTree.expandPathAndOpenFile(pathToChangedJavaFileFolder, changedJavaFileName);
198
- await editor.waitEditorAvailable(changedJavaFileName);
199
- await editor.clickOnTab(changedJavaFileName);
200
- await editor.waitTabFocused(changedJavaFileName);
201
-
202
- await editor.moveCursorToLineAndChar(changedJavaFileName, 34, 89);
203
- await editor.performKeyCombination(changedJavaFileName, textForErrorMessageChange);
204
- await editor.performKeyCombination(changedJavaFileName, Key.chord(Key.CONTROL, 's'));
205
- });
206
-
207
- test('Build application with changes', async () => {
208
- const taskName: string = 'build';
209
- await topMenu.runTask(`${taskName}, ${globalTaskScope}`);
210
- await terminal.waitIconSuccess(taskName, 250_000);
211
- });
212
-
213
- test('Run application with changes', async () => {
214
- const taskName: string = 'run-with-changes';
215
- await topMenu.runTask(`${taskName}, ${globalTaskScope}`);
216
- await ide.waitNotification('Process 8080-tcp is now listening on port 8080. Open it ?', 120_000);
217
- await ide.clickOnNotificationButton('Process 8080-tcp is now listening on port 8080. Open it ?', 'Open In Preview');
218
- });
219
-
220
- test('Check changes are displayed', async () => {
221
- await previewWidget.waitContentAvailable(SpringAppLocators.springTitleLocator, 60_000, 10_000);
222
- await checkErrorMessageInApplicationController();
223
- });
224
-
225
- test('Close preview widget', async () => {
226
- await rightToolBar.clickOnToolIcon('Preview');
227
- await previewWidget.waitPreviewWidgetAbsence();
228
- });
229
-
230
- test('Close running terminal processes and tabs', async () => {
231
- await terminal.rejectTerminalProcess('run-with-changes');
232
- await terminal.closeTerminalTab('run-with-changes');
233
- await warningDialog.waitAndCloseIfAppear();
234
- });
235
- });
236
-
237
- suite('Validation of debug functionality', async () => {
238
- test('Launch debug', async () => {
239
- const taskName: string = 'run-debug';
240
- await topMenu.runTask(`${taskName}, ${globalTaskScope}`);
241
- await ide.waitNotification('Process 8080-tcp is now listening on port 8080. Open it ?', 180_000);
242
- await ide.clickOnNotificationButton('Process 8080-tcp is now listening on port 8080. Open it ?', 'Open In Preview');
243
- });
244
-
245
- test('Check content of the launched application', async () => {
246
- await previewWidget.waitAndSwitchToWidgetFrame(); // test is outdated, should be deprecated.
247
- await previewWidget.waitAndClick(SpringAppLocators.springHomeButtonLocator);
248
- await driverHelper.getDriver().switchTo().defaultContent();
249
- // await ide.waitAndSwitchToIdeFrame(); test is outdated, should be deprecated.
250
- await ide.waitIde();
251
- });
252
-
253
- test('Open debug view', async () => {
254
- await projectTree.expandPathAndOpenFile(pathToJavaFolder + '/system', weclomeControllerJavaFileName);
255
- await editor.selectTab(weclomeControllerJavaFileName);
256
- await topMenu.selectOption('View', 'Debug');
257
- await ide.waitLeftToolbarButton(LeftToolbarButton.Debug);
258
- });
259
-
260
- test('Choose debug configuration', async () => {
261
- // workaround to the https://github.com/eclipse/che/issues/19887
262
- await debugView.clickOnDebugConfigurationDropDown();
263
- await debugView.clickOnDebugConfigurationItem('Add Configuration...');
264
-
265
- await debugView.clickOnDebugConfigurationDropDown();
266
- await debugView.clickOnDebugConfigurationItem('Debug (Attach) - Remote (petclinic)');
267
- });
268
-
269
- test('Run debug', async () => {
270
- await debugView.clickOnRunDebugButton();
271
- await waitDebugToConnect();
272
- });
273
-
274
- test('Activate breakpoint', async () => {
275
- await editor.selectTab(weclomeControllerJavaFileName);
276
- await editor.activateBreakpoint(weclomeControllerJavaFileName, 27);
277
- });
278
-
279
- test('Check debugger stop at the breakpoint', async () => {
280
- await previewWidget.refreshPage();
281
- await waitStoppedBreakpoint(27);
282
- });
283
-
284
- });
285
-
286
- async function checkErrorMessageInApplicationController() {
287
- await previewWidget.waitAndSwitchToWidgetFrame(); // test is outdated, should be deprecated.
288
- await previewWidget.waitAndClick(SpringAppLocators.springMenuButtonLocator);
289
- await previewWidget.waitAndClick(SpringAppLocators.springErrorButtonLocator);
290
-
291
- try {
292
- await previewWidget.waitVisibility(SpringAppLocators.springErrorMessageLocator, 15_000);
293
- } catch (err) {
294
-
295
- await driverHelper.getDriver().switchTo().defaultContent();
296
- // await ide.waitAndSwitchToIdeFrame(); test is outdated, should be deprecated.
297
- await ide.waitIde();
298
-
299
- await previewWidget.waitAndSwitchToWidgetFrame(); // test is outdated, should be deprecated.
300
- await previewWidget.waitVisibility(SpringAppLocators.springErrorMessageLocator, 15_000);
301
- }
302
-
303
-
304
- await driverHelper.getDriver().switchTo().defaultContent();
305
- // await ide.waitAndSwitchToIdeFrame(); test is outdated, should be deprecated.
306
- await ide.waitIde();
307
- }
308
-
309
- async function checkJavaPathCompletion() {
310
- if (await ide.isNotificationPresent('Classpath is incomplete. Only syntax errors will be reported')) {
311
- const classpathText: string = fs.readFileSync('./files/happy-path/petclinic-classpath.txt', 'utf8');
312
- const workaroundReportText: string = '\n############################## \n\n' +
313
- 'Known issue: https://github.com/eclipse/che/issues/13427 \n' +
314
- '\"Java LS \"Classpath is incomplete\" warning when loading petclinic\" \n' +
315
- '\".classpath\" will be configured with next settings: \n\n' +
316
- classpathText + '\n' +
317
- '############################## \n';
318
-
319
- console.log(workaroundReportText);
320
-
321
- await projectTree.expandPathAndOpenFile(projectName, classPathFilename);
322
- await editor.waitEditorAvailable(classPathFilename);
323
- await editor.type(classPathFilename, Key.chord(Key.CONTROL, 'a'), 1);
324
- await editor.performKeyCombination(classPathFilename, Key.DELETE);
325
- await editor.type(classPathFilename, classpathText, 1);
326
- await editor.waitTabWithSavedStatus(classPathFilename);
327
- }
328
- }
329
-
330
- async function waitDebugToConnect() {
331
- try {
332
- await debugView.waitForDebuggerToConnect();
333
- } catch (err) {
334
- Logger.debug('Workaround for the https://github.com/eclipse/che/issues/18034 issue.');
335
- await debugView.clickOnThreadsViewTitle();
336
-
337
- await debugView.waitForDebuggerToConnect();
338
- }
339
- }
340
-
341
- async function waitStoppedBreakpoint(lineNumber: number) {
342
- try {
343
- await editor.waitStoppedDebugBreakpoint(weclomeControllerJavaFileName, lineNumber);
344
- } catch (err) {
345
- await previewWidget.refreshPage();
346
- await editor.waitStoppedDebugBreakpoint(weclomeControllerJavaFileName, lineNumber);
347
- }
348
- }
@@ -1,47 +0,0 @@
1
- /*********************************************************************
2
- * Copyright (c) 2019 Red Hat, Inc.
3
- *
4
- * This program and the accompanying materials are made
5
- * available under the terms of the Eclipse Public License 2.0
6
- * which is available at https://www.eclipse.org/legal/epl-2.0/
7
- *
8
- * SPDX-License-Identifier: EPL-2.0
9
- **********************************************************************/
10
-
11
- import { By } from 'selenium-webdriver';
12
- import { e2eContainer } from '../../inversify.config';
13
- import { CLASSES } from '../../inversify.types';
14
- import { Ide } from '../../pageobjects/ide/theia/Ide';
15
- import { DriverHelper } from '../../utils/DriverHelper';
16
- import { TestConstants } from '../../TestConstants';
17
- import { Dashboard } from '../../pageobjects/dashboard/Dashboard';
18
- import { BrowserTabsUtil } from '../../utils/BrowserTabsUtil';
19
-
20
- const ide: Ide = e2eContainer.get(CLASSES.Ide);
21
- const driverHelper: DriverHelper = e2eContainer.get(CLASSES.DriverHelper);
22
- const browserTabsUtil: BrowserTabsUtil = e2eContainer.get(CLASSES.BrowserTabsUtil);
23
- const dashboard: Dashboard = e2eContainer.get(CLASSES.Dashboard);
24
-
25
- const dashboardUrl: string = `${TestConstants.TS_SELENIUM_BASE_URL}`;
26
-
27
- suite('The "IntelijOpenWorkspace" userstory', async () => {
28
- suite('Open workspace', async () => {
29
- test('Open workspace', async () => {
30
- await browserTabsUtil.navigateTo(`${dashboardUrl}/dashboard/#/ide/admin/java-11-intellij`);
31
- });
32
-
33
- test('Wait workspace', async () => {
34
- await dashboard.waitWorkspaceStartingPage();
35
- // todo: Fix workspace register in IntelliJ devfile - https://issues.redhat.com/browse/CRW-2954
36
- /* CheReporter.registerRunningWorkspace(await workspaceNameHandler.getNameFromUrl()); */
37
- await ide.waitAndSwitchToIdeFrame();
38
- await waitIntelijWorkspace();
39
- });
40
- });
41
-
42
- });
43
-
44
- async function waitIntelijWorkspace() {
45
- await driverHelper.waitVisibility(By.css('div#noVNC_container canvas'), 300000);
46
- await driverHelper.wait(10000);
47
- }
@@ -1,55 +0,0 @@
1
- /*********************************************************************
2
- * Copyright (c) 2019 Red Hat, Inc.
3
- *
4
- * This program and the accompanying materials are made
5
- * available under the terms of the Eclipse Public License 2.0
6
- * which is available at https://www.eclipse.org/legal/epl-2.0/
7
- *
8
- * SPDX-License-Identifier: EPL-2.0
9
- **********************************************************************/
10
-
11
- import { e2eContainer } from '../../../inversify.config';
12
- import { CLASSES, TYPES } from '../../../inversify.types';
13
- import { Ide } from '../../../pageobjects/ide/theia/Ide';
14
- import { ProjectTree } from '../../../pageobjects/ide/theia/ProjectTree';
15
- import { ICheLoginPage } from '../../../pageobjects/login/ICheLoginPage';
16
- import { TestConstants } from '../../../TestConstants';
17
- import { WorkspaceNameHandler } from '../../../utils/WorkspaceNameHandler';
18
- import { BrowserTabsUtil } from '../../../utils/BrowserTabsUtil';
19
- import { ITestWorkspaceUtil } from '../../../utils/workspace/ITestWorkspaceUtil';
20
- import { WorkspaceHandlingTests } from '../../../testsLibrary/WorkspaceHandlingTests';
21
-
22
- const browserTabsUtil: BrowserTabsUtil = e2eContainer.get(CLASSES.BrowserTabsUtil);
23
- const ide: Ide = e2eContainer.get(CLASSES.Ide);
24
- const projectTree: ProjectTree = e2eContainer.get(CLASSES.ProjectTree);
25
- const cheLoginPage: ICheLoginPage = e2eContainer.get<ICheLoginPage>(TYPES.CheLogin);
26
- const testWorkspaceUtils: ITestWorkspaceUtil = e2eContainer.get<ITestWorkspaceUtil>(TYPES.WorkspaceUtil);
27
- const workspaceNameHandler: WorkspaceNameHandler = e2eContainer.get(CLASSES.WorkspaceNameHandler);
28
-
29
- const workspaceName: string = workspaceNameHandler.generateWorkspaceName('wksp-test-', 5);
30
- const workspacePrefixUrl: string = `${TestConstants.TS_SELENIUM_BASE_URL}/dashboard/#/ide/${TestConstants.TS_SELENIUM_USERNAME}/`;
31
-
32
- suite('Load test suite', async () => {
33
-
34
- suiteTeardown (async function () { await testWorkspaceUtils.cleanUpAllWorkspaces(); });
35
-
36
- suiteSetup(async function () {
37
- const wsConfig = await testWorkspaceUtils.getBaseDevfile();
38
- wsConfig.metadata!.name = workspaceName;
39
- await testWorkspaceUtils.createWsFromDevFile(wsConfig);
40
- });
41
-
42
- test('Login into workspace and open tree container', async () => {
43
- await browserTabsUtil.navigateTo(workspacePrefixUrl + workspaceName);
44
- await cheLoginPage.login();
45
- });
46
-
47
- test('Wait loading workspace and get time', async () => {
48
- WorkspaceHandlingTests.setWorkspaceName(workspaceName);
49
- await ide.waitWorkspaceAndIde();
50
- await projectTree.openProjectTreeContainer();
51
- });
52
-
53
- });
54
-
55
-
@@ -1,31 +0,0 @@
1
- /*********************************************************************
2
- * Copyright (c) 2019 Red Hat, Inc.
3
- *
4
- * This program and the accompanying materials are made
5
- * available under the terms of the Eclipse Public License 2.0
6
- * which is available at https://www.eclipse.org/legal/epl-2.0/
7
- *
8
- * SPDX-License-Identifier: EPL-2.0
9
- **********************************************************************/
10
-
11
- import { e2eContainer } from '../../inversify.config';
12
- import { CLASSES, TYPES } from '../../inversify.types';
13
- import { ICheLoginPage } from '../../pageobjects/login/ICheLoginPage';
14
- import { TestConstants } from '../../TestConstants';
15
- import { BrowserTabsUtil } from '../../utils/BrowserTabsUtil';
16
- import { Logger } from '../../utils/Logger';
17
-
18
- const browserTabsUtil: BrowserTabsUtil = e2eContainer.get(CLASSES.BrowserTabsUtil);
19
- const loginPage: ICheLoginPage = e2eContainer.get<ICheLoginPage>(TYPES.CheLogin);
20
-
21
- suite('Login test', async () => {
22
- test('Login', async () => {
23
- await browserTabsUtil.navigateTo(TestConstants.TS_SELENIUM_BASE_URL);
24
-
25
- await loginPage.login();
26
- if (TestConstants.TS_SELENIUM_LAUNCH_FULLSCREEN) {
27
- Logger.debug(`TS_SELENIUM_LAUNCH_FULLSCREEN is set to true, maximizing window.`);
28
- await browserTabsUtil.maximize();
29
- }
30
- });
31
- });
@@ -1,147 +0,0 @@
1
- /*********************************************************************
2
- * Copyright (c) 2021 Red Hat, Inc.
3
- *
4
- * This program and the accompanying materials are made
5
- * available under the terms of the Eclipse Public License 2.0
6
- * which is available at https://www.eclipse.org/legal/epl-2.0/
7
- *
8
- * SPDX-License-Identifier: EPL-2.0
9
- **********************************************************************/
10
- import 'reflect-metadata';
11
- import { e2eContainer } from '../../../inversify.config';
12
- import { CLASSES } from '../../../inversify.types';
13
- import { Ide } from '../../../pageobjects/ide/theia/Ide';
14
- import { TimeoutConstants } from '../../../TimeoutConstants';
15
- import { TestConstants } from '../../../TestConstants';
16
- import { ProjectTree } from '../../../pageobjects/ide/theia/ProjectTree';
17
- import { WorkspaceHandlingTests } from '../../../testsLibrary/WorkspaceHandlingTests';
18
- import { Logger } from '../../../utils/Logger';
19
- import { GitHubPullRequestPlugin } from '../../../pageobjects/ide/theia/plugins/GitHubPullRequestPlugin';
20
- import { GitLoginPage } from '../../../pageobjects/third-parties/GitLoginPage';
21
- import { GitOauthAppsSettings } from '../../../pageobjects/third-parties/GitOauthAppsSettings';
22
- import { WorkspaceNameHandler } from '../../../utils/WorkspaceNameHandler';
23
- import { GitPlugin } from '../../../pageobjects/ide/theia/plugins/GitPlugin';
24
- import { TopMenu } from '../../../pageobjects/ide/theia/TopMenu';
25
- import { QuickOpenContainer } from '../../../pageobjects/ide/theia/QuickOpenContainer';
26
- import { Editor } from '../../../pageobjects/ide/theia/Editor';
27
- import { BrowserTabsUtil } from '../../../utils/BrowserTabsUtil';
28
- import { Key } from 'selenium-webdriver';
29
-
30
- const ide: Ide = e2eContainer.get(CLASSES.Ide);
31
- const projectTree: ProjectTree = e2eContainer.get(CLASSES.ProjectTree);
32
- const workspaceHandlingTests: WorkspaceHandlingTests = e2eContainer.get(CLASSES.WorkspaceHandlingTests);
33
- const browserTabsUtil: BrowserTabsUtil = e2eContainer.get(CLASSES.BrowserTabsUtil);
34
- const gitHubPullRequestPlugin: GitHubPullRequestPlugin = e2eContainer.get(CLASSES.GitHubPullRequestPlugin);
35
- const githubLoginPage: GitLoginPage = e2eContainer.get(CLASSES.GitLoginPage);
36
- const gitOauthAppsSettings: GitOauthAppsSettings = e2eContainer.get(CLASSES.GitOauthAppsSettings);
37
- const gitPlugin: GitPlugin = e2eContainer.get(CLASSES.GitPlugin);
38
- const topMenu: TopMenu = e2eContainer.get(CLASSES.TopMenu);
39
- const quickOpenContainer: QuickOpenContainer = e2eContainer.get(CLASSES.QuickOpenContainer);
40
- const editor: Editor = e2eContainer.get(CLASSES.Editor);
41
- const workspaceNameHandler: WorkspaceNameHandler = e2eContainer.get(CLASSES.WorkspaceNameHandler);
42
-
43
- const devfileUrl: string = `https://raw.githubusercontent.com/eclipse/che/main/tests/e2e/files/devfiles/plugins/GitHubPullRequestPlugin.yaml`;
44
- const factoryUrl: string = `${TestConstants.TS_SELENIUM_BASE_URL}/f?url=${devfileUrl}`;
45
- const branchName: string = workspaceNameHandler.generateWorkspaceName('ghPrPlugin-', 10);
46
- const projectName: string = 'Spoon-Knife';
47
- const oAuthAppName: string = 'eclipse-che';
48
- const changedFile: string = 'README.md';
49
- // added call back url, but needs to be re-verified
50
- const identityCallbackUrl: string = `${TestConstants.TS_SELENIUM_BASE_URL}/api/oauth/callback`;
51
- const currentDate: string = Date.now().toString();
52
-
53
- suite(`The 'GitHubPullRequestPlugin' test`, async () => {
54
- suite('Setup github', async () => {
55
- test('Login to github', async () => {
56
- await gitOauthAppsSettings.openPage();
57
- await githubLoginPage.login();
58
- });
59
-
60
- test('Open application settings', async () => {
61
- await gitOauthAppsSettings.openOauthApp(oAuthAppName);
62
- });
63
-
64
- test('Configure oauth application', async () => {
65
- await gitOauthAppsSettings.scrollToUpdateApplicationButton();
66
-
67
- await gitOauthAppsSettings.typeHomePageUrl(TestConstants.TS_SELENIUM_BASE_URL);
68
- await gitOauthAppsSettings.typeCallbackUrl(identityCallbackUrl);
69
- await gitOauthAppsSettings.clickUpdateApplicationButton();
70
- });
71
- });
72
-
73
- suite('Check the GH PR plugin', async () => {
74
- test('Create workspace using factory', async () => {
75
- await browserTabsUtil.navigateTo(factoryUrl);
76
- });
77
-
78
- workspaceHandlingTests.obtainWorkspaceNameFromStartingPage();
79
-
80
- test('Wait until created workspace is started', async () => {
81
- await ide.waitIde(TimeoutConstants.TS_SELENIUM_START_WORKSPACE_TIMEOUT);
82
- await ide.waitNotificationAndClickOnButton('Do you trust the authors of', 'Yes, I trust', 60_000);
83
-
84
- await gitHubPullRequestPlugin.waitViewIcon();
85
- await projectTree.openProjectTreeContainer();
86
- await projectTree.waitProjectImported(projectName, 'README.md');
87
- });
88
-
89
- test('Create new branch', async () => {
90
- await topMenu.selectOption('View', 'Find Command...');
91
- await quickOpenContainer.typeAndSelectSuggestion('branch', 'Git: Create Branch...');
92
- await quickOpenContainer.type(`${branchName}${Key.ENTER}`);
93
-
94
- await projectTree.expandPathAndOpenFile('Spoon-Knife', changedFile);
95
- await editor.type(changedFile, currentDate + '\n', 1);
96
- await gitPlugin.openGitPluginContainer();
97
- await gitPlugin.waitChangedFileInChagesList(changedFile);
98
- await gitPlugin.stageAllChanges(changedFile);
99
- await gitPlugin.waitChangedFileInChagesList(changedFile);
100
- await gitPlugin.typeCommitMessage(`ghPrPlugin-${currentDate}`);
101
- await gitPlugin.commitFromCommandMenu();
102
- });
103
-
104
- test('Open GH PR plugin', async () => {
105
- await gitHubPullRequestPlugin.openView();
106
- });
107
-
108
- test('Authorize workspace to use GitHub', async () => {
109
- const loginNotificationText: string = `wants to sign in using GitHub.`;
110
- const buttonText: string = 'Allow';
111
-
112
- await gitHubPullRequestPlugin.clickSignInButton();
113
- await ide.waitNotificationAndClickOnButton(loginNotificationText, buttonText);
114
- });
115
-
116
- test('Check PR plugin connected to PR', async () => {
117
- await gitHubPullRequestPlugin.expandTreeItem('Created By Me');
118
- await gitHubPullRequestPlugin.waitTreeItem('[DO NOT MERGE] gh-pr-plugin-test (#3) by @chepullreq4');
119
- });
120
-
121
- test('Create PR', async () => {
122
- const permissionsNotificationText: string = `wants to sign in using GitHub.`;
123
- const buttonText: string = 'Allow';
124
-
125
- await gitHubPullRequestPlugin.createPrFromCommandMenu();
126
- await quickOpenContainer.clickOnContainerItem('chepullreq4:Spoon-Knife');
127
- await quickOpenContainer.clickOnContainerItem(`Choose target branch for chepullreq4/Spoon-Knife (Press 'Enter' to confirm your input or 'Escape' to cancel)`);
128
- await quickOpenContainer.clickOnContainerItem(`The branch '${branchName}' is not published yet, pick a name for the upstream branch (Press 'Enter' to confirm your input or 'Escape' to cancel)`);
129
-
130
- await ide.waitNotificationAndClickOnButton(permissionsNotificationText, buttonText);
131
- await quickOpenContainer.clickOnContainerItem('commit');
132
- await gitHubPullRequestPlugin.waitTreeItem(`ghPrPlugin-${currentDate}`);
133
- });
134
- });
135
-
136
- suite('Stopping and deleting the workspace', async () => {
137
- test(`Stop and remove workspace`, async () => {
138
- if (TestConstants.TS_DELETE_PLUGINS_TEST_WORKSPACE === 'true') {
139
- await workspaceHandlingTests.stopAndRemoveWorkspace(WorkspaceHandlingTests.getWorkspaceName());
140
- return;
141
- }
142
-
143
- Logger.info(`As far as the "TS_DELETE_PLUGINS_TEST_WORKSPACE" value is "false the workspace deletion is skipped"`);
144
- });
145
- });
146
-
147
- });