@eclipse-che/che-e2e 7.39.0
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.
- package/README.md +86 -0
- package/TestConstants.ts +263 -0
- package/TimeoutConstants.ts +220 -0
- package/dist/TestConstants.d.ts +206 -0
- package/dist/TestConstants.d.ts.map +1 -0
- package/dist/TestConstants.js +216 -0
- package/dist/TestConstants.js.map +1 -0
- package/dist/TimeoutConstants.d.ts +164 -0
- package/dist/TimeoutConstants.d.ts.map +1 -0
- package/dist/TimeoutConstants.js +175 -0
- package/dist/TimeoutConstants.js.map +1 -0
- package/dist/driver/CheReporter.d.ts +18 -0
- package/dist/driver/CheReporter.d.ts.map +1 -0
- package/dist/driver/CheReporter.js +180 -0
- package/dist/driver/CheReporter.js.map +1 -0
- package/dist/driver/ChromeDriver.d.ts +21 -0
- package/dist/driver/ChromeDriver.d.ts.map +1 -0
- package/dist/driver/ChromeDriver.js +75 -0
- package/dist/driver/ChromeDriver.js.map +1 -0
- package/dist/driver/IDriver.d.ts +14 -0
- package/dist/driver/IDriver.d.ts.map +1 -0
- package/dist/driver/IDriver.js +3 -0
- package/dist/driver/IDriver.js.map +1 -0
- package/dist/index.d.ts +67 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +92 -0
- package/dist/index.js.map +1 -0
- package/dist/inversify.config.d.ts +13 -0
- package/dist/inversify.config.d.ts.map +1 -0
- package/dist/inversify.config.js +126 -0
- package/dist/inversify.config.js.map +1 -0
- package/dist/inversify.types.d.ts +68 -0
- package/dist/inversify.types.d.ts.map +1 -0
- package/dist/inversify.types.js +72 -0
- package/dist/inversify.types.js.map +1 -0
- package/dist/pageobjects/dashboard/CreateWorkspace.d.ts +20 -0
- package/dist/pageobjects/dashboard/CreateWorkspace.d.ts.map +1 -0
- package/dist/pageobjects/dashboard/CreateWorkspace.js +65 -0
- package/dist/pageobjects/dashboard/CreateWorkspace.js.map +1 -0
- package/dist/pageobjects/dashboard/Dashboard.d.ts +24 -0
- package/dist/pageobjects/dashboard/Dashboard.d.ts.map +1 -0
- package/dist/pageobjects/dashboard/Dashboard.js +111 -0
- package/dist/pageobjects/dashboard/Dashboard.js.map +1 -0
- package/dist/pageobjects/dashboard/Workspaces.d.ts +44 -0
- package/dist/pageobjects/dashboard/Workspaces.d.ts.map +1 -0
- package/dist/pageobjects/dashboard/Workspaces.js +157 -0
- package/dist/pageobjects/dashboard/Workspaces.js.map +1 -0
- package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetails.d.ts +42 -0
- package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetails.d.ts.map +1 -0
- package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetails.js +138 -0
- package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetails.js.map +1 -0
- package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetailsPlugins.d.ts +29 -0
- package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetailsPlugins.d.ts.map +1 -0
- package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetailsPlugins.js +97 -0
- package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetailsPlugins.js.map +1 -0
- package/dist/pageobjects/ide/ContextMenu.d.ts +22 -0
- package/dist/pageobjects/ide/ContextMenu.d.ts.map +1 -0
- package/dist/pageobjects/ide/ContextMenu.js +66 -0
- package/dist/pageobjects/ide/ContextMenu.js.map +1 -0
- package/dist/pageobjects/ide/DebugView.d.ts +32 -0
- package/dist/pageobjects/ide/DebugView.d.ts.map +1 -0
- package/dist/pageobjects/ide/DebugView.js +98 -0
- package/dist/pageobjects/ide/DebugView.js.map +1 -0
- package/dist/pageobjects/ide/DialogWindow.d.ts +28 -0
- package/dist/pageobjects/ide/DialogWindow.d.ts.map +1 -0
- package/dist/pageobjects/ide/DialogWindow.js +102 -0
- package/dist/pageobjects/ide/DialogWindow.js.map +1 -0
- package/dist/pageobjects/ide/Editor.d.ts +78 -0
- package/dist/pageobjects/ide/Editor.d.ts.map +1 -0
- package/dist/pageobjects/ide/Editor.js +463 -0
- package/dist/pageobjects/ide/Editor.js.map +1 -0
- package/dist/pageobjects/ide/Ide.d.ts +61 -0
- package/dist/pageobjects/ide/Ide.d.ts.map +1 -0
- package/dist/pageobjects/ide/Ide.js +312 -0
- package/dist/pageobjects/ide/Ide.js.map +1 -0
- package/dist/pageobjects/ide/LeftToolBar.d.ts +23 -0
- package/dist/pageobjects/ide/LeftToolBar.d.ts.map +1 -0
- package/dist/pageobjects/ide/LeftToolBar.js +81 -0
- package/dist/pageobjects/ide/LeftToolBar.js.map +1 -0
- package/dist/pageobjects/ide/NavigationBar.d.ts +9 -0
- package/dist/pageobjects/ide/NavigationBar.d.ts.map +1 -0
- package/dist/pageobjects/ide/NavigationBar.js +57 -0
- package/dist/pageobjects/ide/NavigationBar.js.map +1 -0
- package/dist/pageobjects/ide/NotificationCenter.d.ts +22 -0
- package/dist/pageobjects/ide/NotificationCenter.d.ts.map +1 -0
- package/dist/pageobjects/ide/NotificationCenter.js +76 -0
- package/dist/pageobjects/ide/NotificationCenter.js.map +1 -0
- package/dist/pageobjects/ide/OpenDialogWidget.d.ts +36 -0
- package/dist/pageobjects/ide/OpenDialogWidget.d.ts.map +1 -0
- package/dist/pageobjects/ide/OpenDialogWidget.js +100 -0
- package/dist/pageobjects/ide/OpenDialogWidget.js.map +1 -0
- package/dist/pageobjects/ide/OpenWorkspaceWidget.d.ts +17 -0
- package/dist/pageobjects/ide/OpenWorkspaceWidget.d.ts.map +1 -0
- package/dist/pageobjects/ide/OpenWorkspaceWidget.js +62 -0
- package/dist/pageobjects/ide/OpenWorkspaceWidget.js.map +1 -0
- package/dist/pageobjects/ide/PreviewWidget.d.ts +35 -0
- package/dist/pageobjects/ide/PreviewWidget.d.ts.map +1 -0
- package/dist/pageobjects/ide/PreviewWidget.js +127 -0
- package/dist/pageobjects/ide/PreviewWidget.js.map +1 -0
- package/dist/pageobjects/ide/ProjectTree.d.ts +53 -0
- package/dist/pageobjects/ide/ProjectTree.d.ts.map +1 -0
- package/dist/pageobjects/ide/ProjectTree.js +275 -0
- package/dist/pageobjects/ide/ProjectTree.js.map +1 -0
- package/dist/pageobjects/ide/QuickOpenContainer.d.ts +20 -0
- package/dist/pageobjects/ide/QuickOpenContainer.d.ts.map +1 -0
- package/dist/pageobjects/ide/QuickOpenContainer.js +70 -0
- package/dist/pageobjects/ide/QuickOpenContainer.js.map +1 -0
- package/dist/pageobjects/ide/RightToolBar.d.ts +8 -0
- package/dist/pageobjects/ide/RightToolBar.d.ts.map +1 -0
- package/dist/pageobjects/ide/RightToolBar.js +51 -0
- package/dist/pageobjects/ide/RightToolBar.js.map +1 -0
- package/dist/pageobjects/ide/Terminal.d.ts +36 -0
- package/dist/pageobjects/ide/Terminal.d.ts.map +1 -0
- package/dist/pageobjects/ide/Terminal.js +204 -0
- package/dist/pageobjects/ide/Terminal.js.map +1 -0
- package/dist/pageobjects/ide/TopMenu.d.ts +28 -0
- package/dist/pageobjects/ide/TopMenu.d.ts.map +1 -0
- package/dist/pageobjects/ide/TopMenu.js +109 -0
- package/dist/pageobjects/ide/TopMenu.js.map +1 -0
- package/dist/pageobjects/ide/plugins/GitHubPullRequestPlugin.d.ts +36 -0
- package/dist/pageobjects/ide/plugins/GitHubPullRequestPlugin.d.ts.map +1 -0
- package/dist/pageobjects/ide/plugins/GitHubPullRequestPlugin.js +128 -0
- package/dist/pageobjects/ide/plugins/GitHubPullRequestPlugin.js.map +1 -0
- package/dist/pageobjects/ide/plugins/GitPlugin.d.ts +35 -0
- package/dist/pageobjects/ide/plugins/GitPlugin.d.ts.map +1 -0
- package/dist/pageobjects/ide/plugins/GitPlugin.js +120 -0
- package/dist/pageobjects/ide/plugins/GitPlugin.js.map +1 -0
- package/dist/pageobjects/ide/plugins/KubernetesPlugin.d.ts +32 -0
- package/dist/pageobjects/ide/plugins/KubernetesPlugin.d.ts.map +1 -0
- package/dist/pageobjects/ide/plugins/KubernetesPlugin.js +107 -0
- package/dist/pageobjects/ide/plugins/KubernetesPlugin.js.map +1 -0
- package/dist/pageobjects/ide/plugins/OpenshiftPlugin.d.ts +38 -0
- package/dist/pageobjects/ide/plugins/OpenshiftPlugin.d.ts.map +1 -0
- package/dist/pageobjects/ide/plugins/OpenshiftPlugin.js +99 -0
- package/dist/pageobjects/ide/plugins/OpenshiftPlugin.js.map +1 -0
- package/dist/pageobjects/ide/plugins/PluginsView.d.ts +43 -0
- package/dist/pageobjects/ide/plugins/PluginsView.d.ts.map +1 -0
- package/dist/pageobjects/ide/plugins/PluginsView.js +166 -0
- package/dist/pageobjects/ide/plugins/PluginsView.js.map +1 -0
- package/dist/pageobjects/login/ICheLoginPage.d.ts +13 -0
- package/dist/pageobjects/login/ICheLoginPage.d.ts.map +1 -0
- package/dist/pageobjects/login/ICheLoginPage.js +12 -0
- package/dist/pageobjects/login/ICheLoginPage.js.map +1 -0
- package/dist/pageobjects/login/IOcpLoginPage.d.ts +13 -0
- package/dist/pageobjects/login/IOcpLoginPage.d.ts.map +1 -0
- package/dist/pageobjects/login/IOcpLoginPage.js +12 -0
- package/dist/pageobjects/login/IOcpLoginPage.js.map +1 -0
- package/dist/pageobjects/login/MultiUserLoginPage.d.ts +18 -0
- package/dist/pageobjects/login/MultiUserLoginPage.d.ts.map +1 -0
- package/dist/pageobjects/login/MultiUserLoginPage.js +49 -0
- package/dist/pageobjects/login/MultiUserLoginPage.js.map +1 -0
- package/dist/pageobjects/login/OcpUserLoginPage.d.ts +18 -0
- package/dist/pageobjects/login/OcpUserLoginPage.d.ts.map +1 -0
- package/dist/pageobjects/login/OcpUserLoginPage.js +53 -0
- package/dist/pageobjects/login/OcpUserLoginPage.js.map +1 -0
- package/dist/pageobjects/login/RegularUserOcpCheLoginPage.d.ts +20 -0
- package/dist/pageobjects/login/RegularUserOcpCheLoginPage.d.ts.map +1 -0
- package/dist/pageobjects/login/RegularUserOcpCheLoginPage.js +75 -0
- package/dist/pageobjects/login/RegularUserOcpCheLoginPage.js.map +1 -0
- package/dist/pageobjects/login/UpdateAccountInformationPage.d.ts +24 -0
- package/dist/pageobjects/login/UpdateAccountInformationPage.d.ts.map +1 -0
- package/dist/pageobjects/login/UpdateAccountInformationPage.js +74 -0
- package/dist/pageobjects/login/UpdateAccountInformationPage.js.map +1 -0
- package/dist/pageobjects/openshift/CheLoginPage.d.ts +27 -0
- package/dist/pageobjects/openshift/CheLoginPage.d.ts.map +1 -0
- package/dist/pageobjects/openshift/CheLoginPage.js +88 -0
- package/dist/pageobjects/openshift/CheLoginPage.js.map +1 -0
- package/dist/pageobjects/openshift/OcpLoginPage.d.ts +30 -0
- package/dist/pageobjects/openshift/OcpLoginPage.d.ts.map +1 -0
- package/dist/pageobjects/openshift/OcpLoginPage.js +106 -0
- package/dist/pageobjects/openshift/OcpLoginPage.js.map +1 -0
- package/dist/pageobjects/third-parties/GitLoginPage.d.ts +27 -0
- package/dist/pageobjects/third-parties/GitLoginPage.d.ts.map +1 -0
- package/dist/pageobjects/third-parties/GitLoginPage.js +85 -0
- package/dist/pageobjects/third-parties/GitLoginPage.js.map +1 -0
- package/dist/pageobjects/third-parties/GitOauthAppsSettings.d.ts +33 -0
- package/dist/pageobjects/third-parties/GitOauthAppsSettings.d.ts.map +1 -0
- package/dist/pageobjects/third-parties/GitOauthAppsSettings.js +110 -0
- package/dist/pageobjects/third-parties/GitOauthAppsSettings.js.map +1 -0
- package/dist/tests/devfiles/CSlashCPlusPlus.spec.d.ts +12 -0
- package/dist/tests/devfiles/CSlashCPlusPlus.spec.d.ts.map +1 -0
- package/dist/tests/devfiles/CSlashCPlusPlus.spec.js +74 -0
- package/dist/tests/devfiles/CSlashCPlusPlus.spec.js.map +1 -0
- package/dist/tests/devfiles/DevfileSmoke.spec.d.ts +11 -0
- package/dist/tests/devfiles/DevfileSmoke.spec.d.ts.map +1 -0
- package/dist/tests/devfiles/DevfileSmoke.spec.js +48 -0
- package/dist/tests/devfiles/DevfileSmoke.spec.js.map +1 -0
- package/dist/tests/devfiles/DotNetCore.spec.d.ts +12 -0
- package/dist/tests/devfiles/DotNetCore.spec.d.ts.map +1 -0
- package/dist/tests/devfiles/DotNetCore.spec.js +82 -0
- package/dist/tests/devfiles/DotNetCore.spec.js.map +1 -0
- package/dist/tests/devfiles/Go.spec.d.ts +2 -0
- package/dist/tests/devfiles/Go.spec.d.ts.map +1 -0
- package/dist/tests/devfiles/Go.spec.js +73 -0
- package/dist/tests/devfiles/Go.spec.js.map +1 -0
- package/dist/tests/devfiles/JavaMaven.spec.d.ts +11 -0
- package/dist/tests/devfiles/JavaMaven.spec.d.ts.map +1 -0
- package/dist/tests/devfiles/JavaMaven.spec.js +61 -0
- package/dist/tests/devfiles/JavaMaven.spec.js.map +1 -0
- package/dist/tests/devfiles/JavaSpringBoot.spec.d.ts +11 -0
- package/dist/tests/devfiles/JavaSpringBoot.spec.d.ts.map +1 -0
- package/dist/tests/devfiles/JavaSpringBoot.spec.js +67 -0
- package/dist/tests/devfiles/JavaSpringBoot.spec.js.map +1 -0
- package/dist/tests/devfiles/JavaVertx.spec.d.ts +11 -0
- package/dist/tests/devfiles/JavaVertx.spec.d.ts.map +1 -0
- package/dist/tests/devfiles/JavaVertx.spec.js +61 -0
- package/dist/tests/devfiles/JavaVertx.spec.js.map +1 -0
- package/dist/tests/devfiles/NodeJS.spec.d.ts +2 -0
- package/dist/tests/devfiles/NodeJS.spec.d.ts.map +1 -0
- package/dist/tests/devfiles/NodeJS.spec.js +65 -0
- package/dist/tests/devfiles/NodeJS.spec.js.map +1 -0
- package/dist/tests/devfiles/PHPSimple.spec.d.ts +12 -0
- package/dist/tests/devfiles/PHPSimple.spec.d.ts.map +1 -0
- package/dist/tests/devfiles/PHPSimple.spec.js +75 -0
- package/dist/tests/devfiles/PHPSimple.spec.js.map +1 -0
- package/dist/tests/devfiles/Python.spec.d.ts +2 -0
- package/dist/tests/devfiles/Python.spec.d.ts.map +1 -0
- package/dist/tests/devfiles/Python.spec.js +59 -0
- package/dist/tests/devfiles/Python.spec.js.map +1 -0
- package/dist/tests/devfiles/PythonDjango.spec.d.ts +2 -0
- package/dist/tests/devfiles/PythonDjango.spec.d.ts.map +1 -0
- package/dist/tests/devfiles/PythonDjango.spec.js +62 -0
- package/dist/tests/devfiles/PythonDjango.spec.js.map +1 -0
- package/dist/tests/devfiles/Quarkus.spec.d.ts +2 -0
- package/dist/tests/devfiles/Quarkus.spec.d.ts.map +1 -0
- package/dist/tests/devfiles/Quarkus.spec.js +70 -0
- package/dist/tests/devfiles/Quarkus.spec.js.map +1 -0
- package/dist/tests/devfiles/Scala.spec.d.ts +11 -0
- package/dist/tests/devfiles/Scala.spec.d.ts.map +1 -0
- package/dist/tests/devfiles/Scala.spec.js +67 -0
- package/dist/tests/devfiles/Scala.spec.js.map +1 -0
- package/dist/tests/e2e/FactoryUrl.spec.d.ts +2 -0
- package/dist/tests/e2e/FactoryUrl.spec.d.ts.map +1 -0
- package/dist/tests/e2e/FactoryUrl.spec.js +45 -0
- package/dist/tests/e2e/FactoryUrl.spec.js.map +1 -0
- package/dist/tests/e2e/GitPublishBranch.spec.d.ts +11 -0
- package/dist/tests/e2e/GitPublishBranch.spec.d.ts.map +1 -0
- package/dist/tests/e2e/GitPublishBranch.spec.js +88 -0
- package/dist/tests/e2e/GitPublishBranch.spec.js.map +1 -0
- package/dist/tests/e2e/GitSelfSignCert.spec.d.ts +11 -0
- package/dist/tests/e2e/GitSelfSignCert.spec.d.ts.map +1 -0
- package/dist/tests/e2e/GitSelfSignCert.spec.js +83 -0
- package/dist/tests/e2e/GitSelfSignCert.spec.js.map +1 -0
- package/dist/tests/e2e/GitSsh.spec.d.ts +11 -0
- package/dist/tests/e2e/GitSsh.spec.d.ts.map +1 -0
- package/dist/tests/e2e/GitSsh.spec.js +118 -0
- package/dist/tests/e2e/GitSsh.spec.js.map +1 -0
- package/dist/tests/e2e/OpenshiftConnector.spec.d.ts +11 -0
- package/dist/tests/e2e/OpenshiftConnector.spec.d.ts.map +1 -0
- package/dist/tests/e2e/OpenshiftConnector.spec.js +122 -0
- package/dist/tests/e2e/OpenshiftConnector.spec.js.map +1 -0
- package/dist/tests/e2e/factories/DirectUrlFactoryWithKeepDirectoryTest.spec.d.ts +2 -0
- package/dist/tests/e2e/factories/DirectUrlFactoryWithKeepDirectoryTest.spec.d.ts.map +1 -0
- package/dist/tests/e2e/factories/DirectUrlFactoryWithKeepDirectoryTest.spec.js +53 -0
- package/dist/tests/e2e/factories/DirectUrlFactoryWithKeepDirectoryTest.spec.js.map +1 -0
- package/dist/tests/e2e/factories/DirectUrlFactoryWithRootFolderTest.spec.d.ts +2 -0
- package/dist/tests/e2e/factories/DirectUrlFactoryWithRootFolderTest.spec.d.ts.map +1 -0
- package/dist/tests/e2e/factories/DirectUrlFactoryWithRootFolderTest.spec.js +51 -0
- package/dist/tests/e2e/factories/DirectUrlFactoryWithRootFolderTest.spec.js.map +1 -0
- package/dist/tests/e2e/factories/DirectUrlFactoryWithSpecificBranchTest.spec.d.ts +2 -0
- package/dist/tests/e2e/factories/DirectUrlFactoryWithSpecificBranchTest.spec.d.ts.map +1 -0
- package/dist/tests/e2e/factories/DirectUrlFactoryWithSpecificBranchTest.spec.js +51 -0
- package/dist/tests/e2e/factories/DirectUrlFactoryWithSpecificBranchTest.spec.js.map +1 -0
- package/dist/tests/e2e_happy_path/DevWorkspaceHappyPath.spec.d.ts +2 -0
- package/dist/tests/e2e_happy_path/DevWorkspaceHappyPath.spec.d.ts.map +1 -0
- package/dist/tests/e2e_happy_path/DevWorkspaceHappyPath.spec.js +200 -0
- package/dist/tests/e2e_happy_path/DevWorkspaceHappyPath.spec.js.map +1 -0
- package/dist/tests/e2e_happy_path/HappyPath.spec.d.ts +11 -0
- package/dist/tests/e2e_happy_path/HappyPath.spec.d.ts.map +1 -0
- package/dist/tests/e2e_happy_path/HappyPath.spec.js +309 -0
- package/dist/tests/e2e_happy_path/HappyPath.spec.js.map +1 -0
- package/dist/tests/intelij/IntelijOpenWorkspace.spec.d.ts +11 -0
- package/dist/tests/intelij/IntelijOpenWorkspace.spec.d.ts.map +1 -0
- package/dist/tests/intelij/IntelijOpenWorkspace.spec.js +43 -0
- package/dist/tests/intelij/IntelijOpenWorkspace.spec.js.map +1 -0
- package/dist/tests/load_test/LoadTest.spec.d.ts +11 -0
- package/dist/tests/load_test/LoadTest.spec.d.ts.map +1 -0
- package/dist/tests/load_test/LoadTest.spec.js +44 -0
- package/dist/tests/load_test/LoadTest.spec.js.map +1 -0
- package/dist/tests/login/LinkCheAndOcpUsers.spec.d.ts +11 -0
- package/dist/tests/login/LinkCheAndOcpUsers.spec.d.ts.map +1 -0
- package/dist/tests/login/LinkCheAndOcpUsers.spec.js +39 -0
- package/dist/tests/login/LinkCheAndOcpUsers.spec.js.map +1 -0
- package/dist/tests/login/Login.spec.d.ts +11 -0
- package/dist/tests/login/Login.spec.d.ts.map +1 -0
- package/dist/tests/login/Login.spec.js +26 -0
- package/dist/tests/login/Login.spec.js.map +1 -0
- package/dist/tests/plugins/GitHubPullRequestPlugin.spec.d.ts +11 -0
- package/dist/tests/plugins/GitHubPullRequestPlugin.spec.d.ts.map +1 -0
- package/dist/tests/plugins/GitHubPullRequestPlugin.spec.js +122 -0
- package/dist/tests/plugins/GitHubPullRequestPlugin.spec.js.map +1 -0
- package/dist/tests/plugins/InstallPluginUsingUI.spec.d.ts +11 -0
- package/dist/tests/plugins/InstallPluginUsingUI.spec.d.ts.map +1 -0
- package/dist/tests/plugins/InstallPluginUsingUI.spec.js +69 -0
- package/dist/tests/plugins/InstallPluginUsingUI.spec.js.map +1 -0
- package/dist/tests/plugins/JavaPlugin.spec.d.ts +2 -0
- package/dist/tests/plugins/JavaPlugin.spec.d.ts.map +1 -0
- package/dist/tests/plugins/JavaPlugin.spec.js +82 -0
- package/dist/tests/plugins/JavaPlugin.spec.js.map +1 -0
- package/dist/tests/plugins/PhpPlugin.spec.d.ts +2 -0
- package/dist/tests/plugins/PhpPlugin.spec.d.ts.map +1 -0
- package/dist/tests/plugins/PhpPlugin.spec.js +94 -0
- package/dist/tests/plugins/PhpPlugin.spec.js.map +1 -0
- package/dist/tests/plugins/PythonPlugin.spec.d.ts +11 -0
- package/dist/tests/plugins/PythonPlugin.spec.d.ts.map +1 -0
- package/dist/tests/plugins/PythonPlugin.spec.js +80 -0
- package/dist/tests/plugins/PythonPlugin.spec.js.map +1 -0
- package/dist/tests/plugins/TypescriptPlugin.spec.d.ts +11 -0
- package/dist/tests/plugins/TypescriptPlugin.spec.d.ts.map +1 -0
- package/dist/tests/plugins/TypescriptPlugin.spec.js +147 -0
- package/dist/tests/plugins/TypescriptPlugin.spec.js.map +1 -0
- package/dist/tests/plugins/VscodeKubernetesPlugin.spec.d.ts +11 -0
- package/dist/tests/plugins/VscodeKubernetesPlugin.spec.d.ts.map +1 -0
- package/dist/tests/plugins/VscodeKubernetesPlugin.spec.js +76 -0
- package/dist/tests/plugins/VscodeKubernetesPlugin.spec.js.map +1 -0
- package/dist/tests/plugins/VscodeShellcheckPlugin.spec.d.ts +11 -0
- package/dist/tests/plugins/VscodeShellcheckPlugin.spec.d.ts.map +1 -0
- package/dist/tests/plugins/VscodeShellcheckPlugin.spec.js +89 -0
- package/dist/tests/plugins/VscodeShellcheckPlugin.spec.js.map +1 -0
- package/dist/tests/plugins/VscodeValePlugin.spec.d.ts +11 -0
- package/dist/tests/plugins/VscodeValePlugin.spec.d.ts.map +1 -0
- package/dist/tests/plugins/VscodeValePlugin.spec.js +77 -0
- package/dist/tests/plugins/VscodeValePlugin.spec.js.map +1 -0
- package/dist/tests/plugins/VscodeXmlPlugin.spec.d.ts +11 -0
- package/dist/tests/plugins/VscodeXmlPlugin.spec.d.ts.map +1 -0
- package/dist/tests/plugins/VscodeXmlPlugin.spec.js +98 -0
- package/dist/tests/plugins/VscodeXmlPlugin.spec.js.map +1 -0
- package/dist/tests/plugins/VscodeYamlPlugin.spec.d.ts +11 -0
- package/dist/tests/plugins/VscodeYamlPlugin.spec.d.ts.map +1 -0
- package/dist/tests/plugins/VscodeYamlPlugin.spec.js +96 -0
- package/dist/tests/plugins/VscodeYamlPlugin.spec.js.map +1 -0
- package/dist/testsLibrary/CodeExecutionTests.d.ts +49 -0
- package/dist/testsLibrary/CodeExecutionTests.d.ts.map +1 -0
- package/dist/testsLibrary/CodeExecutionTests.js +222 -0
- package/dist/testsLibrary/CodeExecutionTests.js.map +1 -0
- package/dist/testsLibrary/LanguageServerTests.d.ts +36 -0
- package/dist/testsLibrary/LanguageServerTests.d.ts.map +1 -0
- package/dist/testsLibrary/LanguageServerTests.js +237 -0
- package/dist/testsLibrary/LanguageServerTests.js.map +1 -0
- package/dist/testsLibrary/ProjectAndFileTests.d.ts +28 -0
- package/dist/testsLibrary/ProjectAndFileTests.d.ts.map +1 -0
- package/dist/testsLibrary/ProjectAndFileTests.js +100 -0
- package/dist/testsLibrary/ProjectAndFileTests.js.map +1 -0
- package/dist/testsLibrary/WorkspaceHandlingTests.d.ts +29 -0
- package/dist/testsLibrary/WorkspaceHandlingTests.d.ts.map +1 -0
- package/dist/testsLibrary/WorkspaceHandlingTests.js +87 -0
- package/dist/testsLibrary/WorkspaceHandlingTests.js.map +1 -0
- package/dist/utils/AnimationChecker.d.ts +16 -0
- package/dist/utils/AnimationChecker.d.ts.map +1 -0
- package/dist/utils/AnimationChecker.js +45 -0
- package/dist/utils/AnimationChecker.js.map +1 -0
- package/dist/utils/BrowserTabsUtil.d.ts +28 -0
- package/dist/utils/BrowserTabsUtil.d.ts.map +1 -0
- package/dist/utils/BrowserTabsUtil.js +115 -0
- package/dist/utils/BrowserTabsUtil.js.map +1 -0
- package/dist/utils/DriverHelper.d.ts +76 -0
- package/dist/utils/DriverHelper.d.ts.map +1 -0
- package/dist/utils/DriverHelper.js +616 -0
- package/dist/utils/DriverHelper.js.map +1 -0
- package/dist/utils/KeycloackUrlHandler.d.ts +15 -0
- package/dist/utils/KeycloackUrlHandler.d.ts.map +1 -0
- package/dist/utils/KeycloackUrlHandler.js +30 -0
- package/dist/utils/KeycloackUrlHandler.js.map +1 -0
- package/dist/utils/Logger.d.ts +39 -0
- package/dist/utils/Logger.d.ts.map +1 -0
- package/dist/utils/Logger.js +84 -0
- package/dist/utils/Logger.js.map +1 -0
- package/dist/utils/PreferencesHandler.d.ts +52 -0
- package/dist/utils/PreferencesHandler.d.ts.map +1 -0
- package/dist/utils/PreferencesHandler.js +139 -0
- package/dist/utils/PreferencesHandler.js.map +1 -0
- package/dist/utils/Sanitizer.d.ts +13 -0
- package/dist/utils/Sanitizer.d.ts.map +1 -0
- package/dist/utils/Sanitizer.js +29 -0
- package/dist/utils/Sanitizer.js.map +1 -0
- package/dist/utils/ScreenCatcher.d.ts +12 -0
- package/dist/utils/ScreenCatcher.d.ts.map +1 -0
- package/dist/utils/ScreenCatcher.js +107 -0
- package/dist/utils/ScreenCatcher.js.map +1 -0
- package/dist/utils/VCS/CheGitApi.d.ts +8 -0
- package/dist/utils/VCS/CheGitApi.d.ts.map +1 -0
- package/dist/utils/VCS/CheGitApi.js +42 -0
- package/dist/utils/VCS/CheGitApi.js.map +1 -0
- package/dist/utils/VCS/github/GitHubUtil.d.ts +15 -0
- package/dist/utils/VCS/github/GitHubUtil.d.ts.map +1 -0
- package/dist/utils/VCS/github/GitHubUtil.js +106 -0
- package/dist/utils/VCS/github/GitHubUtil.js.map +1 -0
- package/dist/utils/WorkspaceNameHandler.d.ts +17 -0
- package/dist/utils/WorkspaceNameHandler.d.ts.map +1 -0
- package/dist/utils/WorkspaceNameHandler.js +60 -0
- package/dist/utils/WorkspaceNameHandler.js.map +1 -0
- package/dist/utils/requestHandlers/CheApiRequestHandler.d.ts +28 -0
- package/dist/utils/requestHandlers/CheApiRequestHandler.d.ts.map +1 -0
- package/dist/utils/requestHandlers/CheApiRequestHandler.js +100 -0
- package/dist/utils/requestHandlers/CheApiRequestHandler.js.map +1 -0
- package/dist/utils/requestHandlers/headers/CheMultiuserAuthorizationHeaderHandler.d.ts +18 -0
- package/dist/utils/requestHandlers/headers/CheMultiuserAuthorizationHeaderHandler.d.ts.map +1 -0
- package/dist/utils/requestHandlers/headers/CheMultiuserAuthorizationHeaderHandler.js +33 -0
- package/dist/utils/requestHandlers/headers/CheMultiuserAuthorizationHeaderHandler.js.map +1 -0
- package/dist/utils/requestHandlers/headers/IAuthorizationHeaderHandler.d.ts +14 -0
- package/dist/utils/requestHandlers/headers/IAuthorizationHeaderHandler.d.ts.map +1 -0
- package/dist/utils/requestHandlers/headers/IAuthorizationHeaderHandler.js +12 -0
- package/dist/utils/requestHandlers/headers/IAuthorizationHeaderHandler.js.map +1 -0
- package/dist/utils/requestHandlers/tokens/CheMultiuserTokenHandler.d.ts +5 -0
- package/dist/utils/requestHandlers/tokens/CheMultiuserTokenHandler.d.ts.map +1 -0
- package/dist/utils/requestHandlers/tokens/CheMultiuserTokenHandler.js +50 -0
- package/dist/utils/requestHandlers/tokens/CheMultiuserTokenHandler.js.map +1 -0
- package/dist/utils/requestHandlers/tokens/ITokenHandler.d.ts +13 -0
- package/dist/utils/requestHandlers/tokens/ITokenHandler.d.ts.map +1 -0
- package/dist/utils/requestHandlers/tokens/ITokenHandler.js +12 -0
- package/dist/utils/requestHandlers/tokens/ITokenHandler.js.map +1 -0
- package/dist/utils/workspace/ITestWorkspaceUtil.d.ts +25 -0
- package/dist/utils/workspace/ITestWorkspaceUtil.d.ts.map +1 -0
- package/dist/utils/workspace/ITestWorkspaceUtil.js +12 -0
- package/dist/utils/workspace/ITestWorkspaceUtil.js.map +1 -0
- package/dist/utils/workspace/TestWorkspaceUtil.d.ts +34 -0
- package/dist/utils/workspace/TestWorkspaceUtil.d.ts.map +1 -0
- package/dist/utils/workspace/TestWorkspaceUtil.js +233 -0
- package/dist/utils/workspace/TestWorkspaceUtil.js.map +1 -0
- package/dist/utils/workspace/WorkspaceStatus.d.ts +15 -0
- package/dist/utils/workspace/WorkspaceStatus.d.ts.map +1 -0
- package/dist/utils/workspace/WorkspaceStatus.js +19 -0
- package/dist/utils/workspace/WorkspaceStatus.js.map +1 -0
- package/driver/CheReporter.ts +202 -0
- package/driver/ChromeDriver.ts +71 -0
- package/driver/IDriver.ts +14 -0
- package/files/devfiles/plugins/GitHubPullRequestPlugin.yaml +11 -0
- package/files/devfiles/plugins/InstallPluginUsingUI.yaml +3 -0
- package/files/devfiles/plugins/Java11PluginTest.yaml +17 -0
- package/files/devfiles/plugins/PhpPluginTest.yaml +47 -0
- package/files/devfiles/plugins/PythonPluginTest.yaml +14 -0
- package/files/devfiles/plugins/TypescriptNodeDebug2PluginTest.yaml +49 -0
- package/files/devfiles/plugins/VscodeKubernetesPlugin.yaml +12 -0
- package/files/devfiles/plugins/VscodeShellcheckPlugin.yaml +12 -0
- package/files/devfiles/plugins/VscodeValePlugin.yaml +42 -0
- package/files/devfiles/plugins/VscodeXmlPlugin.yaml +12 -0
- package/files/devfiles/plugins/VscodeYamlPlugin.yaml +12 -0
- package/files/happy-path/containers-happy-path.yaml +127 -0
- package/files/happy-path/happy-path-workspace.yaml +95 -0
- package/files/happy-path/petclinic-classpath.txt +49 -0
- package/generateIndex.sh +35 -0
- package/index.ts +67 -0
- package/initDefaultValues.sh +27 -0
- package/initDevfileTests.sh +48 -0
- package/initPluginTest.sh +9 -0
- package/inversify.config.ts +134 -0
- package/inversify.types.ts +71 -0
- package/mocha-all-devfiles.opts +8 -0
- package/mocha-all-factories.opts +8 -0
- package/mocha-all-plugins.opts +7 -0
- package/mocha-connector.opts +7 -0
- package/mocha-devworkspace-happy-path.opts +7 -0
- package/mocha-factory.opts +7 -0
- package/mocha-git-publish-branch.opts +7 -0
- package/mocha-git-self-sign-cert.opts +7 -0
- package/mocha-git-ssh.opts +7 -0
- package/mocha-happy-path.opts +8 -0
- package/mocha-java-vertx.opts +7 -0
- package/mocha-load.opts +7 -0
- package/mocha-single-devfile.opts +6 -0
- package/mocha-wkspc-creation-and-ls.opts +7 -0
- package/mocha.intelij.opts +7 -0
- package/mocha.ocp.link.opts +6 -0
- package/mocha.opts +7 -0
- package/mocha.single.plugin.opts +5 -0
- package/package.json +59 -0
- package/pageobjects/dashboard/CreateWorkspace.ts +58 -0
- package/pageobjects/dashboard/Dashboard.ts +112 -0
- package/pageobjects/dashboard/Workspaces.ts +189 -0
- package/pageobjects/dashboard/workspace-details/WorkspaceDetails.ts +153 -0
- package/pageobjects/dashboard/workspace-details/WorkspaceDetailsPlugins.ts +96 -0
- package/pageobjects/ide/ContextMenu.ts +55 -0
- package/pageobjects/ide/DebugView.ts +88 -0
- package/pageobjects/ide/DialogWindow.ts +101 -0
- package/pageobjects/ide/Editor.ts +601 -0
- package/pageobjects/ide/Ide.ts +370 -0
- package/pageobjects/ide/LeftToolBar.ts +81 -0
- package/pageobjects/ide/NavigationBar.ts +41 -0
- package/pageobjects/ide/NotificationCenter.ts +75 -0
- package/pageobjects/ide/OpenDialogWidget.ts +92 -0
- package/pageobjects/ide/OpenWorkspaceWidget.ts +48 -0
- package/pageobjects/ide/PreviewWidget.ts +135 -0
- package/pageobjects/ide/ProjectTree.ts +335 -0
- package/pageobjects/ide/QuickOpenContainer.ts +59 -0
- package/pageobjects/ide/RightToolBar.ts +34 -0
- package/pageobjects/ide/Terminal.ts +245 -0
- package/pageobjects/ide/TopMenu.ts +103 -0
- package/pageobjects/ide/plugins/GitHubPullRequestPlugin.ts +130 -0
- package/pageobjects/ide/plugins/GitPlugin.ts +118 -0
- package/pageobjects/ide/plugins/KubernetesPlugin.ts +113 -0
- package/pageobjects/ide/plugins/OpenshiftPlugin.ts +87 -0
- package/pageobjects/ide/plugins/PluginsView.ts +191 -0
- package/pageobjects/login/ICheLoginPage.ts +13 -0
- package/pageobjects/login/IOcpLoginPage.ts +13 -0
- package/pageobjects/login/MultiUserLoginPage.ts +33 -0
- package/pageobjects/login/OcpUserLoginPage.ts +38 -0
- package/pageobjects/login/RegularUserOcpCheLoginPage.ts +61 -0
- package/pageobjects/login/UpdateAccountInformationPage.ts +70 -0
- package/pageobjects/openshift/CheLoginPage.ts +91 -0
- package/pageobjects/openshift/OcpLoginPage.ts +113 -0
- package/pageobjects/third-parties/GitLoginPage.ts +81 -0
- package/pageobjects/third-parties/GitOauthAppsSettings.ts +110 -0
- package/tests/devfiles/CSlashCPlusPlus.spec.ts +81 -0
- package/tests/devfiles/DevfileSmoke.spec.ts +53 -0
- package/tests/devfiles/DotNetCore.spec.ts +90 -0
- package/tests/devfiles/Go.spec.ts +84 -0
- package/tests/devfiles/JavaMaven.spec.ts +67 -0
- package/tests/devfiles/JavaSpringBoot.spec.ts +74 -0
- package/tests/devfiles/JavaVertx.spec.ts +68 -0
- package/tests/devfiles/NodeJS.spec.ts +74 -0
- package/tests/devfiles/PHPSimple.spec.ts +83 -0
- package/tests/devfiles/Python.spec.ts +67 -0
- package/tests/devfiles/PythonDjango.spec.ts +70 -0
- package/tests/devfiles/Quarkus.spec.ts +79 -0
- package/tests/devfiles/Scala.spec.ts +74 -0
- package/tests/e2e/FactoryUrl.spec.ts +51 -0
- package/tests/e2e/GitPublishBranch.spec.ts +107 -0
- package/tests/e2e/GitSelfSignCert.spec.ts +107 -0
- package/tests/e2e/GitSsh.spec.ts +143 -0
- package/tests/e2e/OpenshiftConnector.spec.ts +142 -0
- package/tests/e2e/factories/DirectUrlFactoryWithKeepDirectoryTest.spec.ts +61 -0
- package/tests/e2e/factories/DirectUrlFactoryWithRootFolderTest.spec.ts +59 -0
- package/tests/e2e/factories/DirectUrlFactoryWithSpecificBranchTest.spec.ts +61 -0
- package/tests/e2e_happy_path/DevWorkspaceHappyPath.spec.ts +204 -0
- package/tests/e2e_happy_path/HappyPath.spec.ts +342 -0
- package/tests/intelij/IntelijOpenWorkspace.spec.ts +49 -0
- package/tests/load_test/LoadTest.spec.ts +54 -0
- package/tests/login/LinkCheAndOcpUsers.spec.ts +47 -0
- package/tests/login/Login.spec.ts +27 -0
- package/tests/plugins/GitHubPullRequestPlugin.spec.ts +150 -0
- package/tests/plugins/InstallPluginUsingUI.spec.ts +83 -0
- package/tests/plugins/JavaPlugin.spec.ts +108 -0
- package/tests/plugins/PhpPlugin.spec.ts +121 -0
- package/tests/plugins/PythonPlugin.spec.ts +92 -0
- package/tests/plugins/TypescriptPlugin.spec.ts +179 -0
- package/tests/plugins/VscodeKubernetesPlugin.spec.ts +89 -0
- package/tests/plugins/VscodeShellcheckPlugin.spec.ts +106 -0
- package/tests/plugins/VscodeValePlugin.spec.ts +91 -0
- package/tests/plugins/VscodeXmlPlugin.spec.ts +120 -0
- package/tests/plugins/VscodeYamlPlugin.spec.ts +117 -0
- package/testsLibrary/CodeExecutionTests.ts +196 -0
- package/testsLibrary/LanguageServerTests.ts +210 -0
- package/testsLibrary/ProjectAndFileTests.ts +82 -0
- package/testsLibrary/WorkspaceHandlingTests.ts +68 -0
- package/tsconfig.json +16 -0
- package/tslint.json +123 -0
- package/utils/AnimationChecker.ts +27 -0
- package/utils/BrowserTabsUtil.ts +120 -0
- package/utils/DriverHelper.ts +753 -0
- package/utils/KeycloackUrlHandler.ts +32 -0
- package/utils/Logger.ts +87 -0
- package/utils/PreferencesHandler.ts +120 -0
- package/utils/Sanitizer.ts +20 -0
- package/utils/ScreenCatcher.ts +74 -0
- package/utils/VCS/CheGitApi.ts +26 -0
- package/utils/VCS/github/GitHubUtil.ts +91 -0
- package/utils/WorkspaceNameHandler.ts +48 -0
- package/utils/requestHandlers/CheApiRequestHandler.ts +83 -0
- package/utils/requestHandlers/headers/CheMultiuserAuthorizationHeaderHandler.ts +27 -0
- package/utils/requestHandlers/headers/IAuthorizationHeaderHandler.ts +15 -0
- package/utils/requestHandlers/tokens/CheMultiuserTokenHandler.ts +39 -0
- package/utils/requestHandlers/tokens/ITokenHandler.ts +14 -0
- package/utils/workspace/ITestWorkspaceUtil.ts +26 -0
- package/utils/workspace/TestWorkspaceUtil.ts +275 -0
- package/utils/workspace/WorkspaceStatus.ts +15 -0
|
@@ -0,0 +1,83 @@
|
|
|
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/Ide';
|
|
14
|
+
import { TimeoutConstants } from '../../TimeoutConstants';
|
|
15
|
+
import { TestConstants } from '../../TestConstants';
|
|
16
|
+
import { ProjectTree } from '../../pageobjects/ide/ProjectTree';
|
|
17
|
+
import { BrowserTabsUtil } from '../../utils/BrowserTabsUtil';
|
|
18
|
+
import { PluginsView } from '../../pageobjects/ide/plugins/PluginsView';
|
|
19
|
+
import { WorkspaceHandlingTests } from '../../testsLibrary/WorkspaceHandlingTests';
|
|
20
|
+
import { Logger } from '../../utils/Logger';
|
|
21
|
+
import { WorkspaceNameHandler } from '../../utils/WorkspaceNameHandler';
|
|
22
|
+
import CheReporter from '../../driver/CheReporter';
|
|
23
|
+
|
|
24
|
+
const ide: Ide = e2eContainer.get(CLASSES.Ide);
|
|
25
|
+
const projectTree: ProjectTree = e2eContainer.get(CLASSES.ProjectTree);
|
|
26
|
+
const pluginsView: PluginsView = e2eContainer.get(CLASSES.PluginsView);
|
|
27
|
+
|
|
28
|
+
const browserTabsUtil: BrowserTabsUtil = e2eContainer.get(CLASSES.BrowserTabsUtil);
|
|
29
|
+
const workspaceHandling: WorkspaceHandlingTests = e2eContainer.get(CLASSES.WorkspaceHandlingTests);
|
|
30
|
+
const workspaceNameHandler: WorkspaceNameHandler = e2eContainer.get(CLASSES.WorkspaceNameHandler);
|
|
31
|
+
|
|
32
|
+
const devfileUrl: string = 'https://raw.githubusercontent.com/eclipse/che/main/tests/e2e/files/devfiles/plugins/InstallPluginUsingUI.yaml';
|
|
33
|
+
const factoryUrl: string = `${TestConstants.TS_SELENIUM_BASE_URL}/f?url=${devfileUrl}`;
|
|
34
|
+
|
|
35
|
+
const pluginTitle: string = 'java11';
|
|
36
|
+
let workspaceName: string;
|
|
37
|
+
|
|
38
|
+
suite(`The 'InstallPluginUsingUI' test`, async () => {
|
|
39
|
+
suite('Create workspace', async () => {
|
|
40
|
+
test('Create workspace using factory', async () => {
|
|
41
|
+
await browserTabsUtil.navigateTo(factoryUrl);
|
|
42
|
+
});
|
|
43
|
+
|
|
44
|
+
test('Wait until created workspace is started', async () => {
|
|
45
|
+
await ide.waitAndSwitchToIdeFrame();
|
|
46
|
+
workspaceName = await workspaceNameHandler.getNameFromUrl();
|
|
47
|
+
CheReporter.registerRunningWorkspace(workspaceName);
|
|
48
|
+
|
|
49
|
+
await ide.waitIde(TimeoutConstants.TS_SELENIUM_START_WORKSPACE_TIMEOUT);
|
|
50
|
+
|
|
51
|
+
await projectTree.openProjectTreeContainer();
|
|
52
|
+
});
|
|
53
|
+
});
|
|
54
|
+
|
|
55
|
+
suite('Install plugin test', async () => {
|
|
56
|
+
test('Open plugins view', async () => {
|
|
57
|
+
await pluginsView.openView();
|
|
58
|
+
});
|
|
59
|
+
|
|
60
|
+
test('Search plugin', async () => {
|
|
61
|
+
await pluginsView.typeTextToSearchField(pluginTitle);
|
|
62
|
+
await pluginsView.waitPlugin(pluginTitle);
|
|
63
|
+
});
|
|
64
|
+
|
|
65
|
+
test('Install plugin', async () => {
|
|
66
|
+
await pluginsView.clickInstallButton(pluginTitle);
|
|
67
|
+
await pluginsView.waitInstalledButton(pluginTitle);
|
|
68
|
+
await pluginsView.waitPluginNotification('Click here to apply changes and restart your workspace');
|
|
69
|
+
});
|
|
70
|
+
});
|
|
71
|
+
|
|
72
|
+
suite('Stopping and deleting the workspace', async () => {
|
|
73
|
+
test(`Stop and remove workspace`, async () => {
|
|
74
|
+
if (TestConstants.TS_DELETE_PLUGINS_TEST_WORKSPACE === 'true') {
|
|
75
|
+
await workspaceHandling.stopAndRemoveWorkspace(workspaceName);
|
|
76
|
+
return;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
Logger.info(`As far as the "TS_DELETE_PLUGINS_TEST_WORKSPACE" value is "false the workspace deletion is skipped"`);
|
|
80
|
+
});
|
|
81
|
+
});
|
|
82
|
+
|
|
83
|
+
});
|
|
@@ -0,0 +1,108 @@
|
|
|
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 { WorkspaceNameHandler } from '../..';
|
|
11
|
+
import 'reflect-metadata';
|
|
12
|
+
import { e2eContainer } from '../../inversify.config';
|
|
13
|
+
import { CLASSES } from '../../inversify.types';
|
|
14
|
+
import { Ide } from '../../pageobjects/ide/Ide';
|
|
15
|
+
import { TimeoutConstants } from '../../TimeoutConstants';
|
|
16
|
+
import { TestConstants } from '../../TestConstants';
|
|
17
|
+
import { ProjectTree } from '../../pageobjects/ide/ProjectTree';
|
|
18
|
+
import { Key } from 'selenium-webdriver';
|
|
19
|
+
import { Editor } from '../../pageobjects/ide/Editor';
|
|
20
|
+
import { ProjectAndFileTests } from '../../testsLibrary/ProjectAndFileTests';
|
|
21
|
+
import { WorkspaceHandlingTests } from '../../testsLibrary/WorkspaceHandlingTests';
|
|
22
|
+
import { Logger } from '../../utils/Logger';
|
|
23
|
+
import CheReporter from '../../driver/CheReporter';
|
|
24
|
+
import { BrowserTabsUtil } from '../../utils/BrowserTabsUtil';
|
|
25
|
+
|
|
26
|
+
const workspaceHandlingTests: WorkspaceHandlingTests = e2eContainer.get(CLASSES.WorkspaceHandlingTests);
|
|
27
|
+
const projectAndFileTests: ProjectAndFileTests = e2eContainer.get(CLASSES.ProjectAndFileTests);
|
|
28
|
+
const browserTabsUtil: BrowserTabsUtil = e2eContainer.get(CLASSES.BrowserTabsUtil);
|
|
29
|
+
const ide: Ide = e2eContainer.get(CLASSES.Ide);
|
|
30
|
+
const projectTree: ProjectTree = e2eContainer.get(CLASSES.ProjectTree);
|
|
31
|
+
const editor: Editor = e2eContainer.get(CLASSES.Editor);
|
|
32
|
+
const workspaceNameHandler: WorkspaceNameHandler = e2eContainer.get(CLASSES.WorkspaceNameHandler);
|
|
33
|
+
|
|
34
|
+
const devfileUrl: string = 'https://raw.githubusercontent.com/eclipse/che/main/tests/e2e/files/devfiles/plugins/Java11PluginTest.yaml';
|
|
35
|
+
const factoryUrl: string = `${TestConstants.TS_SELENIUM_BASE_URL}/f?url=${devfileUrl}`;
|
|
36
|
+
const codeNavigationClassName: string = 'String.class';
|
|
37
|
+
const sampleName: string = 'console-java-simple';
|
|
38
|
+
const subRootFolder: string = 'src';
|
|
39
|
+
|
|
40
|
+
const fileFolderPath: string = `${sampleName}/src/main/java/org/eclipse/che/examples`;
|
|
41
|
+
const tabTitle: string = 'HelloWorld.java';
|
|
42
|
+
let workspaceName: string;
|
|
43
|
+
|
|
44
|
+
suite(`The 'JavaPlugin' test`, async () => {
|
|
45
|
+
suite('Create workspace', async () => {
|
|
46
|
+
test('Create workspace using factory', async () => {
|
|
47
|
+
await browserTabsUtil.navigateTo(factoryUrl);
|
|
48
|
+
});
|
|
49
|
+
|
|
50
|
+
test('Wait until created workspace is started', async () => {
|
|
51
|
+
await ide.waitAndSwitchToIdeFrame();
|
|
52
|
+
workspaceName = await workspaceNameHandler.getNameFromUrl();
|
|
53
|
+
CheReporter.registerRunningWorkspace(workspaceName);
|
|
54
|
+
|
|
55
|
+
await ide.waitIde(TimeoutConstants.TS_SELENIUM_START_WORKSPACE_TIMEOUT);
|
|
56
|
+
await ide.waitNotificationAndClickOnButton('Do you trust the authors of', 'Yes, I trust', 60_000);
|
|
57
|
+
|
|
58
|
+
await projectTree.openProjectTreeContainer();
|
|
59
|
+
await projectTree.waitProjectImported(sampleName, subRootFolder);
|
|
60
|
+
});
|
|
61
|
+
});
|
|
62
|
+
|
|
63
|
+
suite('Test opening file', async () => {
|
|
64
|
+
// opening file that soon should give time for LS to initialize
|
|
65
|
+
projectAndFileTests.openFile(fileFolderPath, tabTitle);
|
|
66
|
+
});
|
|
67
|
+
|
|
68
|
+
suite('Language server validation', async () => {
|
|
69
|
+
test('Wait until Java LS is initialised', async () => {
|
|
70
|
+
await ide.checkLsInitializationStart('Activating');
|
|
71
|
+
await ide.waitStatusBarTextAbsence('Activating', 900_000);
|
|
72
|
+
});
|
|
73
|
+
|
|
74
|
+
test('Autocomplete', async () => {
|
|
75
|
+
await editor.moveCursorToLineAndChar(tabTitle, 10, 20);
|
|
76
|
+
await editor.pressControlSpaceCombination(tabTitle);
|
|
77
|
+
await editor.waitSuggestionContainer();
|
|
78
|
+
await editor.waitSuggestion(tabTitle, 'close() : void');
|
|
79
|
+
});
|
|
80
|
+
|
|
81
|
+
test('Error highlighting', async () => {
|
|
82
|
+
const textForErrorDisplaying: string = '$';
|
|
83
|
+
await editor.type(tabTitle, textForErrorDisplaying, 10);
|
|
84
|
+
await editor.waitErrorInLine(10, TimeoutConstants.TS_ERROR_HIGHLIGHTING_TIMEOUT);
|
|
85
|
+
await editor.performKeyCombination(tabTitle, Key.chord(Key.BACK_SPACE));
|
|
86
|
+
await editor.waitErrorInLineDisappearance(10);
|
|
87
|
+
});
|
|
88
|
+
|
|
89
|
+
test('Codenavigation', async () => {
|
|
90
|
+
await editor.moveCursorToLineAndChar(tabTitle, 9, 12);
|
|
91
|
+
await editor.performKeyCombination(tabTitle, Key.chord(Key.CONTROL, Key.F12));
|
|
92
|
+
await editor.waitEditorAvailable(codeNavigationClassName, 60_000);
|
|
93
|
+
});
|
|
94
|
+
|
|
95
|
+
});
|
|
96
|
+
|
|
97
|
+
suite('Stopping and deleting the workspace', async () => {
|
|
98
|
+
test('Stop and remove workspace', async () => {
|
|
99
|
+
if (TestConstants.TS_DELETE_PLUGINS_TEST_WORKSPACE === 'true') {
|
|
100
|
+
await workspaceHandlingTests.stopAndRemoveWorkspace(workspaceName);
|
|
101
|
+
return;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
Logger.info(`As far as the "TS_DELETE_PLUGINS_TEST_WORKSPACE" value is "false the workspace deletion is skipped"`);
|
|
105
|
+
});
|
|
106
|
+
|
|
107
|
+
});
|
|
108
|
+
});
|
|
@@ -0,0 +1,121 @@
|
|
|
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 { WorkspaceNameHandler } from '../..';
|
|
11
|
+
import 'reflect-metadata';
|
|
12
|
+
import { e2eContainer } from '../../inversify.config';
|
|
13
|
+
import { CLASSES } from '../../inversify.types';
|
|
14
|
+
import { Ide, LeftToolbarButton } from '../../pageobjects/ide/Ide';
|
|
15
|
+
import { TimeoutConstants } from '../../TimeoutConstants';
|
|
16
|
+
import { TestConstants } from '../../TestConstants';
|
|
17
|
+
import { ProjectTree } from '../../pageobjects/ide/ProjectTree';
|
|
18
|
+
import { Key } from 'selenium-webdriver';
|
|
19
|
+
import { Editor } from '../../pageobjects/ide/Editor';
|
|
20
|
+
import { TopMenu } from '../../pageobjects/ide/TopMenu';
|
|
21
|
+
import { DebugView } from '../../pageobjects/ide/DebugView';
|
|
22
|
+
import { BrowserTabsUtil } from '../../utils/BrowserTabsUtil';
|
|
23
|
+
import { WorkspaceHandlingTests } from '../../testsLibrary/WorkspaceHandlingTests';
|
|
24
|
+
import { Logger } from '../../utils/Logger';
|
|
25
|
+
import CheReporter from '../../driver/CheReporter';
|
|
26
|
+
|
|
27
|
+
const workspaceHandlingTests: WorkspaceHandlingTests = e2eContainer.get(CLASSES.WorkspaceHandlingTests);
|
|
28
|
+
const ide: Ide = e2eContainer.get(CLASSES.Ide);
|
|
29
|
+
const projectTree: ProjectTree = e2eContainer.get(CLASSES.ProjectTree);
|
|
30
|
+
const editor: Editor = e2eContainer.get(CLASSES.Editor);
|
|
31
|
+
const topMenu: TopMenu = e2eContainer.get(CLASSES.TopMenu);
|
|
32
|
+
const debugView: DebugView = e2eContainer.get(CLASSES.DebugView);
|
|
33
|
+
const browserTabsUtil: BrowserTabsUtil = e2eContainer.get(CLASSES.BrowserTabsUtil);
|
|
34
|
+
const workspaceNameHandler: WorkspaceNameHandler = e2eContainer.get(CLASSES.WorkspaceNameHandler);
|
|
35
|
+
|
|
36
|
+
const devfileUrl: string = 'https://raw.githubusercontent.com/eclipse/che/main/tests/e2e/files/devfiles/plugins/PhpPluginTest.yaml';
|
|
37
|
+
const factoryUrl: string = `${TestConstants.TS_SELENIUM_BASE_URL}/f?url=${devfileUrl}`;
|
|
38
|
+
const projectName: string = 'php-web-simple';
|
|
39
|
+
const subRootFolder: string = 'README.md';
|
|
40
|
+
|
|
41
|
+
const fileFolderPath: string = `${projectName}`;
|
|
42
|
+
const tabTitle: string = 'index.php';
|
|
43
|
+
let workspaceName: string;
|
|
44
|
+
|
|
45
|
+
suite(`The 'PhpPlugin' tests`, async () => {
|
|
46
|
+
suite('Create workspace', async () => {
|
|
47
|
+
test('Create workspace using factory', async () => {
|
|
48
|
+
await browserTabsUtil.navigateTo(factoryUrl);
|
|
49
|
+
});
|
|
50
|
+
|
|
51
|
+
test('Wait until created workspace is started', async () => {
|
|
52
|
+
await ide.waitAndSwitchToIdeFrame();
|
|
53
|
+
workspaceName = await workspaceNameHandler.getNameFromUrl();
|
|
54
|
+
CheReporter.registerRunningWorkspace(workspaceName);
|
|
55
|
+
|
|
56
|
+
await ide.waitIde(TimeoutConstants.TS_SELENIUM_START_WORKSPACE_TIMEOUT);
|
|
57
|
+
await ide.waitNotificationAndClickOnButton('Do you trust the authors of', 'Yes, I trust', 60_000);
|
|
58
|
+
|
|
59
|
+
await projectTree.openProjectTreeContainer();
|
|
60
|
+
await projectTree.waitProjectImported(projectName, subRootFolder);
|
|
61
|
+
});
|
|
62
|
+
});
|
|
63
|
+
|
|
64
|
+
suite('The php plugin test', async () => {
|
|
65
|
+
test('Open file', async () => {
|
|
66
|
+
await projectTree.expandPathAndOpenFile(fileFolderPath, tabTitle);
|
|
67
|
+
await editor.selectTab(tabTitle);
|
|
68
|
+
});
|
|
69
|
+
|
|
70
|
+
test('Autocomplete', async () => {
|
|
71
|
+
await editor.moveCursorToLineAndChar(tabTitle, 13, 2);
|
|
72
|
+
await editor.pressControlSpaceCombination(tabTitle);
|
|
73
|
+
await editor.waitSuggestionContainer();
|
|
74
|
+
await editor.waitSuggestion(tabTitle, 'error_log');
|
|
75
|
+
});
|
|
76
|
+
|
|
77
|
+
test('Error highlighting', async () => {
|
|
78
|
+
const textForErrorDisplaying: string = '*';
|
|
79
|
+
await editor.type(tabTitle, textForErrorDisplaying, 13);
|
|
80
|
+
await editor.waitErrorInLine(13, TimeoutConstants.TS_ERROR_HIGHLIGHTING_TIMEOUT);
|
|
81
|
+
await editor.type(tabTitle, Key.chord(Key.DELETE), 13);
|
|
82
|
+
await editor.waitErrorInLineDisappearance(13);
|
|
83
|
+
});
|
|
84
|
+
});
|
|
85
|
+
|
|
86
|
+
suite(`The 'Php-debug' plugin test`, async () => {
|
|
87
|
+
test('Activate breakpoint', async () => {
|
|
88
|
+
await projectTree.expandPathAndOpenFile(fileFolderPath, tabTitle);
|
|
89
|
+
await editor.activateBreakpoint(tabTitle, 13);
|
|
90
|
+
});
|
|
91
|
+
|
|
92
|
+
test('Run debug', async () => {
|
|
93
|
+
await topMenu.selectOption('View', 'Debug');
|
|
94
|
+
await ide.waitLeftToolbarButton(LeftToolbarButton.Debug);
|
|
95
|
+
|
|
96
|
+
// workaround for the issue: https://github.com/eclipse/che/issues/20046
|
|
97
|
+
await debugView.clickOnDebugConfigurationDropDown();
|
|
98
|
+
await debugView.clickOnDebugConfigurationItem('Add Configuration...');
|
|
99
|
+
await editor.selectTab(tabTitle);
|
|
100
|
+
|
|
101
|
+
await debugView.clickOnDebugConfigurationDropDown();
|
|
102
|
+
await debugView.clickOnDebugConfigurationItem('Launch currently open script (php-web-simple)');
|
|
103
|
+
await debugView.clickOnRunDebugButton();
|
|
104
|
+
});
|
|
105
|
+
|
|
106
|
+
test('Check breakpoint stopped', async () => {
|
|
107
|
+
await editor.waitStoppedDebugBreakpoint(tabTitle, 13, 60_000);
|
|
108
|
+
});
|
|
109
|
+
});
|
|
110
|
+
|
|
111
|
+
suite('Stopping and deleting the workspace', async () => {
|
|
112
|
+
test('Stop and remove workspace', async () => {
|
|
113
|
+
if (TestConstants.TS_DELETE_PLUGINS_TEST_WORKSPACE === 'true') {
|
|
114
|
+
await workspaceHandlingTests.stopAndRemoveWorkspace(workspaceName);
|
|
115
|
+
return;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
Logger.info(`As far as the "TS_DELETE_PLUGINS_TEST_WORKSPACE" value is "false the workspace deletion is skipped"`);
|
|
119
|
+
});
|
|
120
|
+
});
|
|
121
|
+
});
|
|
@@ -0,0 +1,92 @@
|
|
|
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/Ide';
|
|
14
|
+
import { TimeoutConstants } from '../../TimeoutConstants';
|
|
15
|
+
import { TestConstants } from '../../TestConstants';
|
|
16
|
+
import { ProjectTree } from '../../pageobjects/ide/ProjectTree';
|
|
17
|
+
import { Key } from 'selenium-webdriver';
|
|
18
|
+
import { Editor } from '../../pageobjects/ide/Editor';
|
|
19
|
+
import { WorkspaceHandlingTests } from '../../testsLibrary/WorkspaceHandlingTests';
|
|
20
|
+
import { Logger } from '../../utils/Logger';
|
|
21
|
+
import CheReporter from '../../driver/CheReporter';
|
|
22
|
+
import { BrowserTabsUtil } from '../../utils/BrowserTabsUtil';
|
|
23
|
+
import { WorkspaceNameHandler } from '../../utils/WorkspaceNameHandler';
|
|
24
|
+
|
|
25
|
+
const workspaceHandlingTests: WorkspaceHandlingTests = e2eContainer.get(CLASSES.WorkspaceHandlingTests);
|
|
26
|
+
const browserTabsUtil: BrowserTabsUtil = e2eContainer.get(CLASSES.BrowserTabsUtil);
|
|
27
|
+
const ide: Ide = e2eContainer.get(CLASSES.Ide);
|
|
28
|
+
const projectTree: ProjectTree = e2eContainer.get(CLASSES.ProjectTree);
|
|
29
|
+
const editor: Editor = e2eContainer.get(CLASSES.Editor);
|
|
30
|
+
const workspaceNameHandler: WorkspaceNameHandler = e2eContainer.get(CLASSES.WorkspaceNameHandler);
|
|
31
|
+
|
|
32
|
+
const devfileUrl: string = 'https://raw.githubusercontent.com/eclipse/che/main/tests/e2e/files/devfiles/plugins/PythonPluginTest.yaml';
|
|
33
|
+
const factoryUrl: string = `${TestConstants.TS_SELENIUM_BASE_URL}/f?url=${devfileUrl}`;
|
|
34
|
+
const sampleName: string = 'python-hello-world';
|
|
35
|
+
const subRootFile: string = 'README.md';
|
|
36
|
+
|
|
37
|
+
const fileFolderPath: string = `${sampleName}`;
|
|
38
|
+
const tabTitle: string = 'hello-world.py';
|
|
39
|
+
let workspaceName: string;
|
|
40
|
+
|
|
41
|
+
suite(`The 'PythonPlugin' test`, async () => {
|
|
42
|
+
suite('Create workspace', async () => {
|
|
43
|
+
test('Create workspace using factory', async () => {
|
|
44
|
+
await browserTabsUtil.navigateTo(factoryUrl);
|
|
45
|
+
});
|
|
46
|
+
|
|
47
|
+
test('Wait until created workspace is started', async () => {
|
|
48
|
+
await ide.waitAndSwitchToIdeFrame();
|
|
49
|
+
workspaceName = await workspaceNameHandler.getNameFromUrl();
|
|
50
|
+
CheReporter.registerRunningWorkspace(workspaceName);
|
|
51
|
+
|
|
52
|
+
await ide.waitIde(TimeoutConstants.TS_SELENIUM_START_WORKSPACE_TIMEOUT);
|
|
53
|
+
await ide.waitNotificationAndClickOnButton('Do you trust the authors of', 'Yes, I trust', 60_000);
|
|
54
|
+
|
|
55
|
+
await projectTree.openProjectTreeContainer();
|
|
56
|
+
await projectTree.waitProjectImported(sampleName, subRootFile);
|
|
57
|
+
});
|
|
58
|
+
});
|
|
59
|
+
|
|
60
|
+
suite('Language server validation', async () => {
|
|
61
|
+
test('Expand project and open file in editor', async () => {
|
|
62
|
+
await projectTree.expandPathAndOpenFile(fileFolderPath, tabTitle);
|
|
63
|
+
await editor.selectTab(tabTitle);
|
|
64
|
+
});
|
|
65
|
+
|
|
66
|
+
test('Autocomplete', async () => {
|
|
67
|
+
await editor.moveCursorToLineAndChar(tabTitle, 8, 2);
|
|
68
|
+
await editor.pressControlSpaceCombination(tabTitle);
|
|
69
|
+
await editor.waitSuggestionContainer();
|
|
70
|
+
await editor.waitSuggestion(tabTitle, 'sum');
|
|
71
|
+
});
|
|
72
|
+
|
|
73
|
+
test('Error highlighting', async () => {
|
|
74
|
+
const textForErrorDisplaying: string = 'err';
|
|
75
|
+
await editor.type(tabTitle, textForErrorDisplaying, 7);
|
|
76
|
+
await editor.waitErrorInLine(7, TimeoutConstants.TS_ERROR_HIGHLIGHTING_TIMEOUT);
|
|
77
|
+
await editor.performKeyCombination(tabTitle, Key.chord(Key.BACK_SPACE, Key.BACK_SPACE, Key.BACK_SPACE));
|
|
78
|
+
await editor.waitErrorInLineDisappearance(7);
|
|
79
|
+
});
|
|
80
|
+
});
|
|
81
|
+
|
|
82
|
+
suite('Stopping and deleting the workspace', async () => {
|
|
83
|
+
test('Stop and remove workspace', async () => {
|
|
84
|
+
if (TestConstants.TS_DELETE_PLUGINS_TEST_WORKSPACE === 'true') {
|
|
85
|
+
await workspaceHandlingTests.stopAndRemoveWorkspace(workspaceName);
|
|
86
|
+
return;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
Logger.info(`As far as the "TS_DELETE_PLUGINS_TEST_WORKSPACE" value is "false the workspace deletion is skipped"`);
|
|
90
|
+
});
|
|
91
|
+
});
|
|
92
|
+
});
|
|
@@ -0,0 +1,179 @@
|
|
|
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 { DriverHelper } from '../../utils/DriverHelper';
|
|
12
|
+
import { e2eContainer } from '../../inversify.config';
|
|
13
|
+
import { CLASSES } from '../../inversify.types';
|
|
14
|
+
import { Ide, LeftToolbarButton } from '../../pageobjects/ide/Ide';
|
|
15
|
+
import { TimeoutConstants } from '../../TimeoutConstants';
|
|
16
|
+
import { TestConstants } from '../../TestConstants';
|
|
17
|
+
import { ProjectTree } from '../../pageobjects/ide/ProjectTree';
|
|
18
|
+
import { Key, By } from 'selenium-webdriver';
|
|
19
|
+
import { Editor } from '../../pageobjects/ide/Editor';
|
|
20
|
+
import { TopMenu } from '../../pageobjects/ide/TopMenu';
|
|
21
|
+
import { DebugView } from '../../pageobjects/ide/DebugView';
|
|
22
|
+
import { Terminal } from '../../pageobjects/ide/Terminal';
|
|
23
|
+
import { BrowserTabsUtil } from '../../utils/BrowserTabsUtil';
|
|
24
|
+
import { WorkspaceHandlingTests } from '../../testsLibrary/WorkspaceHandlingTests';
|
|
25
|
+
import { Logger } from '../../utils/Logger';
|
|
26
|
+
import CheReporter from '../../driver/CheReporter';
|
|
27
|
+
import { WorkspaceNameHandler } from '../../utils/WorkspaceNameHandler';
|
|
28
|
+
|
|
29
|
+
const workspaceHandlingTests: WorkspaceHandlingTests = e2eContainer.get(CLASSES.WorkspaceHandlingTests);
|
|
30
|
+
const driverHelper: DriverHelper = e2eContainer.get(CLASSES.DriverHelper);
|
|
31
|
+
const ide: Ide = e2eContainer.get(CLASSES.Ide);
|
|
32
|
+
const projectTree: ProjectTree = e2eContainer.get(CLASSES.ProjectTree);
|
|
33
|
+
const editor: Editor = e2eContainer.get(CLASSES.Editor);
|
|
34
|
+
const topMenu: TopMenu = e2eContainer.get(CLASSES.TopMenu);
|
|
35
|
+
const debugView: DebugView = e2eContainer.get(CLASSES.DebugView);
|
|
36
|
+
const terminal: Terminal = e2eContainer.get(CLASSES.Terminal);
|
|
37
|
+
const browserTabsUtil: BrowserTabsUtil = e2eContainer.get(CLASSES.BrowserTabsUtil);
|
|
38
|
+
const workspaceNameHandler: WorkspaceNameHandler = e2eContainer.get(CLASSES.WorkspaceNameHandler);
|
|
39
|
+
|
|
40
|
+
const devfileUrl: string = 'https://raw.githubusercontent.com/eclipse/che/main/tests/e2e/files/devfiles/plugins/TypescriptNodeDebug2PluginTest.yaml';
|
|
41
|
+
const factoryUrl: string = `${TestConstants.TS_SELENIUM_BASE_URL}/f?url=${devfileUrl}`;
|
|
42
|
+
const codeNavigationClassName: string = 'OpenDefinition.ts';
|
|
43
|
+
const projectName: string = 'nodejs-web-app';
|
|
44
|
+
const subRootFolder: string = 'app';
|
|
45
|
+
const sampleBodyLocator: By = By.xpath(`//body[text()='Hello World!']`);
|
|
46
|
+
|
|
47
|
+
const fileFolderPath: string = `${projectName}`;
|
|
48
|
+
const debugFileFolderPath: string = `${projectName}/app`;
|
|
49
|
+
const debugFile: string = 'app.js';
|
|
50
|
+
const tabTitle: string = 'typescript-node-debug.ts';
|
|
51
|
+
let workspaceName: string;
|
|
52
|
+
|
|
53
|
+
suite(`The 'TypescriptPlugin and Node-debug' tests`, async () => {
|
|
54
|
+
suite('Create workspace', async () => {
|
|
55
|
+
test('Create workspace using factory', async () => {
|
|
56
|
+
await browserTabsUtil.navigateTo(factoryUrl);
|
|
57
|
+
});
|
|
58
|
+
|
|
59
|
+
test('Wait until created workspace is started', async () => {
|
|
60
|
+
await ide.waitAndSwitchToIdeFrame();
|
|
61
|
+
workspaceName = await workspaceNameHandler.getNameFromUrl();
|
|
62
|
+
CheReporter.registerRunningWorkspace(workspaceName);
|
|
63
|
+
|
|
64
|
+
await ide.waitIde(TimeoutConstants.TS_SELENIUM_START_WORKSPACE_TIMEOUT);
|
|
65
|
+
await ide.waitNotificationAndClickOnButton('Do you trust the authors of', 'Yes, I trust', 60_000);
|
|
66
|
+
|
|
67
|
+
await projectTree.openProjectTreeContainer();
|
|
68
|
+
await projectTree.waitProjectImported(projectName, subRootFolder);
|
|
69
|
+
});
|
|
70
|
+
});
|
|
71
|
+
|
|
72
|
+
suite('The Typescript plugin test', async () => {
|
|
73
|
+
test('Open file', async () => {
|
|
74
|
+
await projectTree.expandPathAndOpenFile(fileFolderPath, tabTitle);
|
|
75
|
+
await editor.selectTab(tabTitle);
|
|
76
|
+
});
|
|
77
|
+
|
|
78
|
+
test('Wait until JS/Typescript LS is initialised', async () => {
|
|
79
|
+
await ide.checkLsInitializationStart('Initializing');
|
|
80
|
+
await ide.waitStatusBarTextAbsence('Initializing', 900_000);
|
|
81
|
+
});
|
|
82
|
+
|
|
83
|
+
test('Autocomplete', async () => {
|
|
84
|
+
await editor.moveCursorToLineAndChar(tabTitle, 8, 22);
|
|
85
|
+
await editor.pressControlSpaceCombination(tabTitle);
|
|
86
|
+
await editor.waitSuggestionContainer();
|
|
87
|
+
await editor.waitSuggestion(tabTitle, 'OpenDefinition');
|
|
88
|
+
});
|
|
89
|
+
|
|
90
|
+
test('Error highlighting', async () => {
|
|
91
|
+
const textForErrorDisplaying: string = '//';
|
|
92
|
+
await editor.type(tabTitle, textForErrorDisplaying, 5);
|
|
93
|
+
await editor.waitErrorInLine(4, TimeoutConstants.TS_ERROR_HIGHLIGHTING_TIMEOUT);
|
|
94
|
+
await editor.type(tabTitle, Key.chord(Key.DELETE, Key.DELETE), 5);
|
|
95
|
+
await editor.waitErrorInLineDisappearance(4);
|
|
96
|
+
});
|
|
97
|
+
|
|
98
|
+
test('Codenavigation', async () => {
|
|
99
|
+
await editor.moveCursorToLineAndChar(tabTitle, 8, 22);
|
|
100
|
+
await editor.performKeyCombination(tabTitle, Key.chord(Key.CONTROL, Key.F12));
|
|
101
|
+
await editor.waitEditorAvailable(codeNavigationClassName, 60_000);
|
|
102
|
+
});
|
|
103
|
+
});
|
|
104
|
+
|
|
105
|
+
suite(`The 'Node-debug' plugin test`, async () => {
|
|
106
|
+
let currentWindow: string = '';
|
|
107
|
+
let applicationPreviewWindow: string = '';
|
|
108
|
+
|
|
109
|
+
test('Run application in debug mode', async () => {
|
|
110
|
+
await topMenu.runTask('run the web app (debugging enabled), Global');
|
|
111
|
+
await ide.waitNotification('Process nodejs is now listening on port 3000.');
|
|
112
|
+
|
|
113
|
+
currentWindow = await browserTabsUtil.getCurrentWindowHandle();
|
|
114
|
+
});
|
|
115
|
+
|
|
116
|
+
test('Open application in the new editor window', async () => {
|
|
117
|
+
await ide.clickOnNotificationButton('Process nodejs is now listening on port 3000.', 'Open In New Tab');
|
|
118
|
+
await browserTabsUtil.waitAndSwitchToAnotherWindow(currentWindow, 60_000);
|
|
119
|
+
await browserTabsUtil.waitContentAvailableInTheNewTab(sampleBodyLocator, 60_000);
|
|
120
|
+
|
|
121
|
+
applicationPreviewWindow = await browserTabsUtil.getCurrentWindowHandle();
|
|
122
|
+
});
|
|
123
|
+
|
|
124
|
+
test('Switch back to the IDE window', async () => {
|
|
125
|
+
await browserTabsUtil.switchToWindow(currentWindow);
|
|
126
|
+
await ide.waitAndSwitchToIdeFrame(60_000);
|
|
127
|
+
});
|
|
128
|
+
|
|
129
|
+
test('Activate breakpoint', async () => {
|
|
130
|
+
await projectTree.expandPathAndOpenFile(debugFileFolderPath, debugFile);
|
|
131
|
+
await editor.activateBreakpoint(debugFile, 19);
|
|
132
|
+
});
|
|
133
|
+
|
|
134
|
+
test('Run debug', async () => {
|
|
135
|
+
await topMenu.selectOption('View', 'Debug');
|
|
136
|
+
await ide.waitLeftToolbarButton(LeftToolbarButton.Debug);
|
|
137
|
+
|
|
138
|
+
// workaround for the issue: https://github.com/eclipse/che/issues/20067
|
|
139
|
+
await debugView.clickOnDebugConfigurationDropDown();
|
|
140
|
+
await debugView.clickOnDebugConfigurationItem('Add Configuration...');
|
|
141
|
+
|
|
142
|
+
await debugView.clickOnDebugConfigurationDropDown();
|
|
143
|
+
await debugView.clickOnDebugConfigurationItem('Attach to Remote (nodejs-web-app)');
|
|
144
|
+
await debugView.clickOnRunDebugButton();
|
|
145
|
+
});
|
|
146
|
+
|
|
147
|
+
test('Wait debug connected', async () => {
|
|
148
|
+
await terminal.waitTab('Debug Console', 60_000);
|
|
149
|
+
|
|
150
|
+
// for make sure that debug really start
|
|
151
|
+
// (inner processes may not be displayed)
|
|
152
|
+
await driverHelper.wait(10_000);
|
|
153
|
+
});
|
|
154
|
+
|
|
155
|
+
test('Refresh application sample window', async () => {
|
|
156
|
+
await browserTabsUtil.switchToWindow(applicationPreviewWindow);
|
|
157
|
+
await browserTabsUtil.waitContentAvailableInTheNewTab(sampleBodyLocator, 60_000);
|
|
158
|
+
await browserTabsUtil.refreshForDebug();
|
|
159
|
+
});
|
|
160
|
+
|
|
161
|
+
test('Check breakpoint stopped', async () => {
|
|
162
|
+
await browserTabsUtil.switchToWindow(currentWindow);
|
|
163
|
+
await ide.waitAndSwitchToIdeFrame(60000);
|
|
164
|
+
|
|
165
|
+
await editor.waitStoppedDebugBreakpoint(debugFile, 19, 60_000);
|
|
166
|
+
});
|
|
167
|
+
});
|
|
168
|
+
|
|
169
|
+
suite('Stopping and deleting the workspace', async () => {
|
|
170
|
+
test('Stop and remove workspace', async () => {
|
|
171
|
+
if (TestConstants.TS_DELETE_PLUGINS_TEST_WORKSPACE === 'true') {
|
|
172
|
+
await workspaceHandlingTests.stopAndRemoveWorkspace(workspaceName);
|
|
173
|
+
return;
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
Logger.info(`As far as the "TS_DELETE_PLUGINS_TEST_WORKSPACE" value is "false the workspace deletion is skipped"`);
|
|
177
|
+
});
|
|
178
|
+
});
|
|
179
|
+
});
|