@eclipse-che/che-e2e 7.74.0-dev-1d09cb7 → 7.74.0-dev-aace77a
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/.eslintignore +10 -0
- package/.eslintrc.js +197 -0
- package/.prettierignore +10 -0
- package/.prettierrc.json +10 -0
- package/CODE_STYLE.md +144 -0
- package/README.md +47 -47
- package/configs/inversify.config.ts +39 -14
- package/configs/inversify.types.ts +44 -30
- package/configs/mocharc.ts +21 -24
- package/constants/API_TEST_CONSTANTS.ts +67 -0
- package/constants/BASE_TEST_CONSTANTS.ts +80 -0
- package/constants/CHROME_DRIVER_CONSTANTS.ts +42 -0
- package/constants/FACTORY_TEST_CONSTANTS.ts +61 -0
- package/constants/MONACO_CONSTANTS.ts +25 -0
- package/constants/OAUTH_CONSTANTS.ts +67 -0
- package/constants/PLUGIN_TEST_CONSTANTS.ts +15 -0
- package/constants/REPORTER_CONSTANTS.ts +53 -0
- package/constants/TIMEOUT_CONSTANTS.ts +131 -0
- package/dist/configs/inversify.config.js +36 -9
- package/dist/configs/inversify.config.js.map +1 -1
- package/dist/configs/inversify.types.js +19 -5
- package/dist/configs/inversify.types.js.map +1 -1
- package/dist/configs/mocharc.js +13 -16
- package/dist/configs/mocharc.js.map +1 -1
- package/dist/constants/{APITestConstants.js → API_TEST_CONSTANTS.js} +12 -12
- package/dist/constants/API_TEST_CONSTANTS.js.map +1 -0
- package/dist/constants/{BaseTestConstants.js → BASE_TEST_CONSTANTS.js} +16 -16
- package/dist/constants/BASE_TEST_CONSTANTS.js.map +1 -0
- package/dist/constants/CHROME_DRIVER_CONSTANTS.js +36 -0
- package/dist/constants/CHROME_DRIVER_CONSTANTS.js.map +1 -0
- package/dist/constants/{FactoryTestConstants.js → FACTORY_TEST_CONSTANTS.js} +14 -13
- package/dist/constants/FACTORY_TEST_CONSTANTS.js.map +1 -0
- package/dist/constants/{MonacoConstants.js → MONACO_CONSTANTS.js} +7 -7
- package/dist/constants/MONACO_CONSTANTS.js.map +1 -0
- package/dist/constants/{OAuthConstants.js → OAUTH_CONSTANTS.js} +14 -14
- package/dist/constants/OAUTH_CONSTANTS.js.map +1 -0
- package/dist/constants/{PluginsTestConstants.js → PLUGIN_TEST_CONSTANTS.js} +7 -7
- package/dist/constants/PLUGIN_TEST_CONSTANTS.js.map +1 -0
- package/dist/constants/{ReporterConstants.js → REPORTER_CONSTANTS.js} +12 -12
- package/dist/constants/REPORTER_CONSTANTS.js.map +1 -0
- package/dist/constants/{TimeoutConstants.js → TIMEOUT_CONSTANTS.js} +24 -24
- package/dist/constants/TIMEOUT_CONSTANTS.js.map +1 -0
- package/dist/driver/ChromeDriver.js +12 -22
- package/dist/driver/ChromeDriver.js.map +1 -1
- package/dist/index.js +18 -12
- package/dist/index.js.map +1 -1
- package/dist/pageobjects/dashboard/CreateWorkspace.js +15 -15
- package/dist/pageobjects/dashboard/CreateWorkspace.js.map +1 -1
- package/dist/pageobjects/dashboard/Dashboard.js +20 -21
- package/dist/pageobjects/dashboard/Dashboard.js.map +1 -1
- package/dist/pageobjects/dashboard/Workspaces.js +55 -60
- package/dist/pageobjects/dashboard/Workspaces.js.map +1 -1
- package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetails.js +58 -48
- package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetails.js.map +1 -1
- package/dist/pageobjects/git-providers/OauthPage.js +22 -20
- package/dist/pageobjects/git-providers/OauthPage.js.map +1 -1
- package/dist/pageobjects/ide/CheCodeLocatorLoader.js +26 -12
- package/dist/pageobjects/ide/CheCodeLocatorLoader.js.map +1 -1
- package/dist/pageobjects/login/interfaces/ICheLoginPage.js +2 -2
- package/dist/pageobjects/login/interfaces/IOcpLoginPage.js +2 -2
- package/dist/pageobjects/login/kubernetes/DexLoginPage.js +14 -14
- package/dist/pageobjects/login/kubernetes/DexLoginPage.js.map +1 -1
- package/dist/pageobjects/login/kubernetes/KubernetesLoginPage.js +7 -7
- package/dist/pageobjects/login/kubernetes/KubernetesLoginPage.js.map +1 -1
- package/dist/pageobjects/login/openshift/OcpLoginPage.js +24 -28
- package/dist/pageobjects/login/openshift/OcpLoginPage.js.map +1 -1
- package/dist/pageobjects/login/openshift/OcpRedHatLoginPage.js +13 -16
- package/dist/pageobjects/login/openshift/OcpRedHatLoginPage.js.map +1 -1
- package/dist/pageobjects/login/openshift/OcpUserLoginPage.js +9 -9
- package/dist/pageobjects/login/openshift/OcpUserLoginPage.js.map +1 -1
- package/dist/pageobjects/login/openshift/RedHatLoginPage.js +19 -23
- package/dist/pageobjects/login/openshift/RedHatLoginPage.js.map +1 -1
- package/dist/pageobjects/login/openshift/RegularUserOcpCheLoginPage.js +20 -19
- package/dist/pageobjects/login/openshift/RegularUserOcpCheLoginPage.js.map +1 -1
- package/dist/pageobjects/openshift/OcpApplicationPage.js +11 -11
- package/dist/pageobjects/openshift/OcpApplicationPage.js.map +1 -1
- package/dist/pageobjects/openshift/OcpImportFromGitPage.js +24 -24
- package/dist/pageobjects/openshift/OcpImportFromGitPage.js.map +1 -1
- package/dist/pageobjects/openshift/OcpMainPage.js +30 -30
- package/dist/pageobjects/openshift/OcpMainPage.js.map +1 -1
- package/dist/specs/MochaHooks.js +33 -27
- package/dist/specs/MochaHooks.js.map +1 -1
- package/dist/specs/SmokeTest.spec.js +17 -17
- package/dist/specs/SmokeTest.spec.js.map +1 -1
- package/dist/specs/api/ContainerOverridesAPI.spec.js +8 -6
- package/dist/specs/api/ContainerOverridesAPI.spec.js.map +1 -1
- package/dist/specs/api/DevfileAcceptanceTestAPI.spec.js +27 -24
- package/dist/specs/api/DevfileAcceptanceTestAPI.spec.js.map +1 -1
- package/dist/specs/api/EmptyWorkspaceAPI.spec.js +17 -17
- package/dist/specs/api/EmptyWorkspaceAPI.spec.js.map +1 -1
- package/dist/specs/api/PodOverridesAPI.spec.js +10 -8
- package/dist/specs/api/PodOverridesAPI.spec.js.map +1 -1
- package/dist/specs/dashboard-samples/EmptyWorkspace.spec.js +10 -10
- package/dist/specs/dashboard-samples/EmptyWorkspace.spec.js.map +1 -1
- package/dist/specs/dashboard-samples/Quarkus.spec.js +13 -13
- package/dist/specs/dashboard-samples/Quarkus.spec.js.map +1 -1
- package/dist/specs/dashboard-samples/RecommendedExtensions.spec.js +52 -52
- package/dist/specs/dashboard-samples/RecommendedExtensions.spec.js.map +1 -1
- package/dist/specs/devconsole-intergration/DevConsoleIntegration.spec.js +23 -19
- package/dist/specs/devconsole-intergration/DevConsoleIntegration.spec.js.map +1 -1
- package/dist/specs/factory/Factory.spec.js +38 -41
- package/dist/specs/factory/Factory.spec.js.map +1 -1
- package/dist/specs/factory/NoSetupRepoFactory.spec.js +52 -50
- package/dist/specs/factory/NoSetupRepoFactory.spec.js.map +1 -1
- package/dist/specs/factory/RefusedOAuthFactory.spec.js +49 -51
- package/dist/specs/factory/RefusedOAuthFactory.spec.js.map +1 -1
- package/dist/specs/miscellaneous/PredefinedNamespace.spec.js +45 -42
- package/dist/specs/miscellaneous/PredefinedNamespace.spec.js.map +1 -1
- package/dist/tests-library/LoginTests.js +13 -13
- package/dist/tests-library/LoginTests.js.map +1 -1
- package/dist/tests-library/ProjectAndFileTests.js +9 -7
- package/dist/tests-library/ProjectAndFileTests.js.map +1 -1
- package/dist/tests-library/WorkspaceHandlingTests.js +22 -19
- package/dist/tests-library/WorkspaceHandlingTests.js.map +1 -1
- package/dist/utils/BrowserTabsUtil.js +21 -21
- package/dist/utils/BrowserTabsUtil.js.map +1 -1
- package/dist/utils/CheReporter.js +91 -65
- package/dist/utils/CheReporter.js.map +1 -1
- package/dist/utils/DevWorkspaceConfigurationHelper.js +34 -15
- package/dist/utils/DevWorkspaceConfigurationHelper.js.map +1 -1
- package/dist/utils/DevfilesRegistryHelper.js +34 -18
- package/dist/utils/DevfilesRegistryHelper.js.map +1 -1
- package/dist/utils/DriverHelper.js +73 -68
- package/dist/utils/DriverHelper.js.map +1 -1
- package/dist/utils/IContextParams.js +12 -0
- package/dist/utils/IContextParams.js.map +1 -0
- package/dist/utils/IKubernetesCommandLineToolsExecutor.js +3 -0
- package/dist/utils/IKubernetesCommandLineToolsExecutor.js.map +1 -0
- package/dist/utils/KubernetesCommandLineToolsExecutor.js +146 -107
- package/dist/utils/KubernetesCommandLineToolsExecutor.js.map +1 -1
- package/dist/utils/Logger.js +18 -19
- package/dist/utils/Logger.js.map +1 -1
- package/dist/utils/ScreenCatcher.js +26 -16
- package/dist/utils/ScreenCatcher.js.map +1 -1
- package/dist/utils/ShellExecutor.js +29 -9
- package/dist/utils/ShellExecutor.js.map +1 -1
- package/dist/utils/StringUtil.js +19 -9
- package/dist/utils/StringUtil.js.map +1 -1
- package/dist/utils/request-handlers/CheApiRequestHandler.js +29 -29
- package/dist/utils/request-handlers/CheApiRequestHandler.js.map +1 -1
- package/dist/utils/request-handlers/headers/CheMultiuserAuthorizationHeaderHandler.js +12 -8
- package/dist/utils/request-handlers/headers/CheMultiuserAuthorizationHeaderHandler.js.map +1 -1
- package/dist/utils/request-handlers/headers/IAuthorizationHeaderHandler.js +2 -2
- package/dist/utils/workspace/ApiUrlResolver.js +5 -5
- package/dist/utils/workspace/ApiUrlResolver.js.map +1 -1
- package/dist/utils/workspace/ITestWorkspaceUtil.js +2 -2
- package/dist/utils/workspace/TestWorkspaceUtil.js +25 -23
- package/dist/utils/workspace/TestWorkspaceUtil.js.map +1 -1
- package/dist/utils/workspace/WorkspaceStatus.js +2 -2
- package/dist/utils/workspace/WorkspaceStatus.js.map +1 -1
- package/driver/ChromeDriver.ts +45 -58
- package/driver/IDriver.ts +3 -3
- package/index.ts +11 -9
- package/package.json +59 -49
- package/pageobjects/dashboard/CreateWorkspace.ts +65 -55
- package/pageobjects/dashboard/Dashboard.ts +100 -100
- package/pageobjects/dashboard/Workspaces.ts +210 -186
- package/pageobjects/dashboard/workspace-details/WorkspaceDetails.ts +153 -131
- package/pageobjects/git-providers/OauthPage.ts +177 -166
- package/pageobjects/ide/CheCodeLocatorLoader.ts +51 -46
- package/pageobjects/login/interfaces/ICheLoginPage.ts +3 -3
- package/pageobjects/login/interfaces/IOcpLoginPage.ts +3 -3
- package/pageobjects/login/kubernetes/DexLoginPage.ts +31 -30
- package/pageobjects/login/kubernetes/KubernetesLoginPage.ts +15 -14
- package/pageobjects/login/openshift/OcpLoginPage.ts +51 -56
- package/pageobjects/login/openshift/OcpRedHatLoginPage.ts +27 -27
- package/pageobjects/login/openshift/OcpUserLoginPage.ts +15 -18
- package/pageobjects/login/openshift/RedHatLoginPage.ts +49 -46
- package/pageobjects/login/openshift/RegularUserOcpCheLoginPage.ts +43 -34
- package/pageobjects/openshift/OcpApplicationPage.ts +21 -19
- package/pageobjects/openshift/OcpImportFromGitPage.ts +68 -68
- package/pageobjects/openshift/OcpMainPage.ts +69 -69
- package/specs/MochaHooks.ts +59 -52
- package/specs/SmokeTest.spec.ts +47 -45
- package/specs/api/ContainerOverridesAPI.spec.ts +39 -26
- package/specs/api/DevfileAcceptanceTestAPI.spec.ts +110 -97
- package/specs/api/EmptyWorkspaceAPI.spec.ts +67 -58
- package/specs/api/PodOverridesAPI.spec.ts +48 -34
- package/specs/dashboard-samples/EmptyWorkspace.spec.ts +36 -36
- package/specs/dashboard-samples/Quarkus.spec.ts +41 -40
- package/specs/dashboard-samples/RecommendedExtensions.spec.ts +202 -183
- package/specs/devconsole-intergration/DevConsoleIntegration.spec.ts +85 -75
- package/specs/factory/Factory.spec.ts +184 -178
- package/specs/factory/NoSetupRepoFactory.spec.ts +233 -219
- package/specs/factory/RefusedOAuthFactory.spec.ts +223 -211
- package/specs/miscellaneous/PredefinedNamespace.spec.ts +70 -64
- package/tests-library/LoginTests.ts +34 -32
- package/tests-library/ProjectAndFileTests.ts +21 -18
- package/tests-library/WorkspaceHandlingTests.ts +98 -89
- package/tsconfig.json +15 -15
- package/utils/BrowserTabsUtil.ts +78 -74
- package/utils/CheReporter.ts +159 -157
- package/utils/DevWorkspaceConfigurationHelper.ts +63 -69
- package/utils/DevfilesRegistryHelper.ts +71 -57
- package/utils/DriverHelper.ts +728 -700
- package/utils/IContextParams.ts +26 -0
- package/utils/IKubernetesCommandLineToolsExecutor.ts +42 -0
- package/utils/KubernetesCommandLineToolsExecutor.ts +231 -183
- package/utils/Logger.ts +102 -125
- package/utils/ScreenCatcher.ts +57 -46
- package/utils/ShellExecutor.ts +23 -12
- package/utils/StringUtil.ts +49 -36
- package/utils/request-handlers/CheApiRequestHandler.ts +91 -88
- package/utils/request-handlers/headers/CheMultiuserAuthorizationHeaderHandler.ts +32 -21
- package/utils/request-handlers/headers/IAuthorizationHeaderHandler.ts +3 -3
- package/utils/workspace/ApiUrlResolver.ts +31 -26
- package/utils/workspace/ITestWorkspaceUtil.ts +31 -31
- package/utils/workspace/TestWorkspaceUtil.ts +152 -145
- package/utils/workspace/WorkspaceStatus.ts +5 -5
- package/constants/APITestConstants.ts +0 -57
- package/constants/BaseTestConstants.ts +0 -68
- package/constants/ChromeDriverConstants.ts +0 -46
- package/constants/FactoryTestConstants.ts +0 -51
- package/constants/MonacoConstants.ts +0 -22
- package/constants/OAuthConstants.ts +0 -57
- package/constants/PluginsTestConstants.ts +0 -15
- package/constants/ReporterConstants.ts +0 -45
- package/constants/TimeoutConstants.ts +0 -113
- package/dist/constants/APITestConstants.js.map +0 -1
- package/dist/constants/BaseTestConstants.js.map +0 -1
- package/dist/constants/ChromeDriverConstants.js +0 -44
- package/dist/constants/ChromeDriverConstants.js.map +0 -1
- package/dist/constants/FactoryTestConstants.js.map +0 -1
- package/dist/constants/MonacoConstants.js.map +0 -1
- package/dist/constants/OAuthConstants.js.map +0 -1
- package/dist/constants/PluginsTestConstants.js.map +0 -1
- package/dist/constants/ReporterConstants.js.map +0 -1
- package/dist/constants/TimeoutConstants.js.map +0 -1
- package/tslint.json +0 -126
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
*
|
|
2
|
+
/** *******************************************************************
|
|
3
|
+
* copyright (c) 2019 Red Hat, Inc.
|
|
4
4
|
*
|
|
5
5
|
* This program and the accompanying materials are made
|
|
6
6
|
* available under the terms of the Eclipse Public License 2.0
|
|
@@ -15,15 +15,15 @@ const inversify_config_1 = require("../../configs/inversify.config");
|
|
|
15
15
|
const inversify_types_1 = require("../../configs/inversify.types");
|
|
16
16
|
const WorkspaceHandlingTests_1 = require("../../tests-library/WorkspaceHandlingTests");
|
|
17
17
|
const Logger_1 = require("../../utils/Logger");
|
|
18
|
-
const
|
|
19
|
-
const projectAndFileTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ProjectAndFileTests);
|
|
20
|
-
const workspaceHandlingTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.WorkspaceHandlingTests);
|
|
21
|
-
const loginTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.LoginTests);
|
|
22
|
-
const browserTabsUtil = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.BrowserTabsUtil);
|
|
18
|
+
const BASE_TEST_CONSTANTS_1 = require("../../constants/BASE_TEST_CONSTANTS");
|
|
23
19
|
const stackName = 'Java 11 with Quarkus';
|
|
24
|
-
|
|
25
|
-
|
|
20
|
+
suite(`The ${stackName} userstory`, function () {
|
|
21
|
+
const projectAndFileTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ProjectAndFileTests);
|
|
22
|
+
const workspaceHandlingTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.WorkspaceHandlingTests);
|
|
23
|
+
const loginTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.LoginTests);
|
|
24
|
+
const browserTabsUtil = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.BrowserTabsUtil);
|
|
26
25
|
let projectSection;
|
|
26
|
+
const projectName = 'quarkus-quickstarts';
|
|
27
27
|
loginTests.loginIntoChe();
|
|
28
28
|
test(`Create and open new workspace, stack:${stackName}`, async function () {
|
|
29
29
|
await workspaceHandlingTests.createAndOpenWorkspace(stackName);
|
|
@@ -31,8 +31,8 @@ suite(`The ${stackName} userstory`, async function () {
|
|
|
31
31
|
test('Obtain workspace name from workspace loader page', async function () {
|
|
32
32
|
await workspaceHandlingTests.obtainWorkspaceNameFromStartingPage();
|
|
33
33
|
});
|
|
34
|
-
test('Register running workspace',
|
|
35
|
-
MochaHooks_1.registerRunningWorkspace(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
|
|
34
|
+
test('Register running workspace', function () {
|
|
35
|
+
(0, MochaHooks_1.registerRunningWorkspace)(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
|
|
36
36
|
});
|
|
37
37
|
test('Wait workspace readiness', async function () {
|
|
38
38
|
await projectAndFileTests.waitWorkspaceReadinessForCheCodeEditor();
|
|
@@ -42,8 +42,8 @@ suite(`The ${stackName} userstory`, async function () {
|
|
|
42
42
|
Logger_1.Logger.debug(`new SideBarView().getContent().getSection: get ${projectName}`);
|
|
43
43
|
});
|
|
44
44
|
test('Check the project files was imported', async function () {
|
|
45
|
-
await projectSection.findItem(
|
|
46
|
-
Logger_1.Logger.debug(`projectSection.findItem: find ${
|
|
45
|
+
await projectSection.findItem(BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TS_SELENIUM_PROJECT_ROOT_FILE_NAME);
|
|
46
|
+
Logger_1.Logger.debug(`projectSection.findItem: find ${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TS_SELENIUM_PROJECT_ROOT_FILE_NAME}`);
|
|
47
47
|
});
|
|
48
48
|
test('Stop the workspace', async function () {
|
|
49
49
|
await workspaceHandlingTests.stopWorkspace(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Quarkus.spec.js","sourceRoot":"","sources":["../../../specs/dashboard-samples/Quarkus.spec.ts"],"names":[],"mappings":";AAAA;;;;;;;;wEAQwE;;AAExE,6DAA+D;AAC/D,8CAAyD;AAEzD,qEAA8D;AAC9D,mEAAwD;AACxD,uFAAoF;AAEpF,+CAA4C;AAC5C,
|
|
1
|
+
{"version":3,"file":"Quarkus.spec.js","sourceRoot":"","sources":["../../../specs/dashboard-samples/Quarkus.spec.ts"],"names":[],"mappings":";AAAA;;;;;;;;wEAQwE;;AAExE,6DAA+D;AAC/D,8CAAyD;AAEzD,qEAA8D;AAC9D,mEAAwD;AACxD,uFAAoF;AAEpF,+CAA4C;AAC5C,6EAA0E;AAG1E,MAAM,SAAS,GAAW,sBAAsB,CAAC;AAEjD,KAAK,CAAC,OAAO,SAAS,YAAY,EAAE;IACnC,MAAM,mBAAmB,GAAwB,+BAAY,CAAC,GAAG,CAAC,yBAAO,CAAC,mBAAmB,CAAC,CAAC;IAC/F,MAAM,sBAAsB,GAA2B,+BAAY,CAAC,GAAG,CAAC,yBAAO,CAAC,sBAAsB,CAAC,CAAC;IACxG,MAAM,UAAU,GAAe,+BAAY,CAAC,GAAG,CAAC,yBAAO,CAAC,UAAU,CAAC,CAAC;IACpE,MAAM,eAAe,GAAoB,+BAAY,CAAC,GAAG,CAAC,yBAAO,CAAC,eAAe,CAAC,CAAC;IAEnF,IAAI,cAA2B,CAAC;IAEhC,MAAM,WAAW,GAAW,qBAAqB,CAAC;IAElD,UAAU,CAAC,YAAY,EAAE,CAAC;IAE1B,IAAI,CAAC,wCAAwC,SAAS,EAAE,EAAE,KAAK;QAC9D,MAAM,sBAAsB,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,kDAAkD,EAAE,KAAK;QAC7D,MAAM,sBAAsB,CAAC,mCAAmC,EAAE,CAAC;IACpE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,4BAA4B,EAAE;QAClC,IAAA,qCAAwB,EAAC,+CAAsB,CAAC,gBAAgB,EAAE,CAAC,CAAC;IACrE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,0BAA0B,EAAE,KAAK;QACrC,MAAM,mBAAmB,CAAC,sCAAsC,EAAE,CAAC;IACpE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,yCAAyC,EAAE,KAAK;QACpD,cAAc,GAAG,MAAM,IAAI,iCAAW,EAAE,CAAC,UAAU,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAC9E,eAAM,CAAC,KAAK,CAAC,kDAAkD,WAAW,EAAE,CAAC,CAAC;IAC/E,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,sCAAsC,EAAE,KAAK;QACjD,MAAM,cAAc,CAAC,QAAQ,CAAC,yCAAmB,CAAC,kCAAkC,CAAC,CAAC;QACtF,eAAM,CAAC,KAAK,CAAC,iCAAiC,yCAAmB,CAAC,kCAAkC,EAAE,CAAC,CAAC;IACzG,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,oBAAoB,EAAE,KAAK;QAC/B,MAAM,sBAAsB,CAAC,aAAa,CAAC,+CAAsB,CAAC,gBAAgB,EAAE,CAAC,CAAC;QACtF,MAAM,eAAe,CAAC,yBAAyB,EAAE,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,sBAAsB,EAAE,KAAK;QACjC,MAAM,sBAAsB,CAAC,eAAe,CAAC,+CAAsB,CAAC,gBAAgB,EAAE,CAAC,CAAC;IACzF,CAAC,CAAC,CAAC;IACH,UAAU,CAAC,aAAa,EAAE,CAAC;AAC5B,CAAC,CAAC,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
*
|
|
2
|
+
/** *******************************************************************
|
|
3
|
+
* copyright (c) 2019-2023 Red Hat, Inc.
|
|
4
4
|
*
|
|
5
5
|
* This program and the accompanying materials are made
|
|
6
6
|
* available under the terms of the Eclipse Public License 2.0
|
|
@@ -15,19 +15,19 @@ const inversify_config_1 = require("../../configs/inversify.config");
|
|
|
15
15
|
const inversify_types_1 = require("../../configs/inversify.types");
|
|
16
16
|
const WorkspaceHandlingTests_1 = require("../../tests-library/WorkspaceHandlingTests");
|
|
17
17
|
const Logger_1 = require("../../utils/Logger");
|
|
18
|
-
const CheCodeLocatorLoader_1 = require("../../pageobjects/ide/CheCodeLocatorLoader");
|
|
19
18
|
const chai_1 = require("chai");
|
|
20
|
-
const
|
|
21
|
-
const
|
|
22
|
-
const
|
|
23
|
-
const
|
|
24
|
-
|
|
25
|
-
const
|
|
26
|
-
const
|
|
27
|
-
const
|
|
28
|
-
const
|
|
29
|
-
const browserTabsUtil = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.BrowserTabsUtil);
|
|
30
|
-
|
|
19
|
+
const TIMEOUT_CONSTANTS_1 = require("../../constants/TIMEOUT_CONSTANTS");
|
|
20
|
+
const PLUGIN_TEST_CONSTANTS_1 = require("../../constants/PLUGIN_TEST_CONSTANTS");
|
|
21
|
+
const BASE_TEST_CONSTANTS_1 = require("../../constants/BASE_TEST_CONSTANTS");
|
|
22
|
+
const samples = PLUGIN_TEST_CONSTANTS_1.PLUGIN_TEST_CONSTANTS.TS_SAMPLE_LIST.split(',');
|
|
23
|
+
suite(`Check if recommended extensions installed for ${samples}`, function () {
|
|
24
|
+
const projectAndFileTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ProjectAndFileTests);
|
|
25
|
+
const workspaceHandlingTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.WorkspaceHandlingTests);
|
|
26
|
+
const loginTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.LoginTests);
|
|
27
|
+
const driverHelper = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.DriverHelper);
|
|
28
|
+
const browserTabsUtil = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.BrowserTabsUtil);
|
|
29
|
+
const cheCodeLocatorLoader = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.CheCodeLocatorLoader);
|
|
30
|
+
const webCheCodeLocators = cheCodeLocatorLoader.webCheCodeLocators;
|
|
31
31
|
let projectSection;
|
|
32
32
|
let extensionsView;
|
|
33
33
|
let extensionSection;
|
|
@@ -43,21 +43,21 @@ suite(`Check if recommended extensions installed for ${samples}`, async function
|
|
|
43
43
|
test('Obtain workspace name from workspace loader page', async function () {
|
|
44
44
|
await workspaceHandlingTests.obtainWorkspaceNameFromStartingPage();
|
|
45
45
|
});
|
|
46
|
-
test('Registering the running workspace',
|
|
47
|
-
MochaHooks_1.registerRunningWorkspace(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
|
|
46
|
+
test('Registering the running workspace', function () {
|
|
47
|
+
(0, MochaHooks_1.registerRunningWorkspace)(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
|
|
48
48
|
});
|
|
49
49
|
test('Wait workspace readiness', async function () {
|
|
50
50
|
await projectAndFileTests.waitWorkspaceReadinessForCheCodeEditor();
|
|
51
51
|
});
|
|
52
52
|
test('Wait until the project will be imported and accept it as trusted one', async function () {
|
|
53
53
|
[projectSection] = await new monaco_page_objects_1.SideBarView().getContent().getSections();
|
|
54
|
-
const label =
|
|
54
|
+
const label = BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TS_SELENIUM_PROJECT_ROOT_FILE_NAME;
|
|
55
55
|
Logger_1.Logger.debug(`projectSection.findItem: find ${label}`);
|
|
56
56
|
const isFileImported = await projectSection.findItem(label);
|
|
57
|
-
chai_1.expect(isFileImported).not.eqls(undefined);
|
|
57
|
+
(0, chai_1.expect)(isFileImported).not.eqls(undefined);
|
|
58
58
|
try {
|
|
59
|
-
const buttonYesITrustTheAuthors =
|
|
60
|
-
await driverHelper.waitVisibility(webCheCodeLocators.WelcomeContent.button,
|
|
59
|
+
const buttonYesITrustTheAuthors = 'Yes, I trust the authors';
|
|
60
|
+
await driverHelper.waitVisibility(webCheCodeLocators.WelcomeContent.button, TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_DIALOG_WINDOW_DEFAULT_TIMEOUT);
|
|
61
61
|
const trustedProjectDialog = new monaco_page_objects_1.ModalDialog();
|
|
62
62
|
Logger_1.Logger.debug(`trustedProjectDialog.pushButton: "${buttonYesITrustTheAuthors}"`);
|
|
63
63
|
await trustedProjectDialog.pushButton(buttonYesITrustTheAuthors);
|
|
@@ -68,66 +68,66 @@ suite(`Check if recommended extensions installed for ${samples}`, async function
|
|
|
68
68
|
});
|
|
69
69
|
test(`Get recommended extensions list from ${extensionsListFileName}`, async function () {
|
|
70
70
|
var _a, _b;
|
|
71
|
-
Logger_1.Logger.debug(
|
|
71
|
+
Logger_1.Logger.debug('projectSection.findItem(item))?.select(): expand .vscode folder and open extensions.json.');
|
|
72
72
|
await ((_a = (await projectSection.findItem('.vscode'))) === null || _a === void 0 ? void 0 : _a.select());
|
|
73
73
|
// time to expand project tree
|
|
74
|
-
await driverHelper.wait(
|
|
74
|
+
await driverHelper.wait(TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_EXPAND_PROJECT_TREE_ITEM_TIMEOUT);
|
|
75
75
|
await ((_b = (await projectSection.findItem(extensionsListFileName))) === null || _b === void 0 ? void 0 : _b.select());
|
|
76
76
|
Logger_1.Logger.debug(`EditorView().openEditor(${extensionsListFileName})`);
|
|
77
|
-
const editor = await new monaco_page_objects_1.EditorView().openEditor(extensionsListFileName);
|
|
77
|
+
const editor = (await new monaco_page_objects_1.EditorView().openEditor(extensionsListFileName));
|
|
78
78
|
await driverHelper.waitVisibility(webCheCodeLocators.Editor.inputArea);
|
|
79
|
-
Logger_1.Logger.debug(
|
|
79
|
+
Logger_1.Logger.debug('editor.getText(): get recommended extensions as text from editor, delete comments and parse to object.');
|
|
80
80
|
recommendedExtensions = JSON.parse((await editor.getText()).replace(/\/\*[\s\S]*?\*\/|(?<=[^:])\/\/.*|^\/\/.*/g, '').trim());
|
|
81
|
-
Logger_1.Logger.debug(
|
|
81
|
+
Logger_1.Logger.debug('recommendedExtensions.recommendations: Get recommendations clear names using map().');
|
|
82
82
|
recommendedExtensions.recommendations = recommendedExtensions.recommendations.map((r) => {
|
|
83
83
|
const [publisher, name] = r.split('.');
|
|
84
84
|
return { publisher, name };
|
|
85
85
|
});
|
|
86
86
|
Logger_1.Logger.info(`Recommended extension for this workspace:\n${JSON.stringify(recommendedExtensions.recommendations)}.`);
|
|
87
87
|
});
|
|
88
|
-
test(
|
|
88
|
+
test('Open "Extensions" view section', async function () {
|
|
89
89
|
var _a;
|
|
90
|
-
Logger_1.Logger.debug(
|
|
90
|
+
Logger_1.Logger.debug('ActivityBar().getViewControl("Extensions"))?.openView(): open Extensions view.');
|
|
91
91
|
extensionsView = await ((_a = (await new monaco_page_objects_1.ActivityBar().getViewControl('Extensions'))) === null || _a === void 0 ? void 0 : _a.openView());
|
|
92
92
|
});
|
|
93
|
-
test(
|
|
94
|
-
Logger_1.Logger.info(`Time for extensions installation TimeoutConstants.TS_COMMON_PLUGIN_TEST_TIMEOUT=${
|
|
95
|
-
await driverHelper.wait(
|
|
93
|
+
test('Let extensions complete installation', async function () {
|
|
94
|
+
Logger_1.Logger.info(`Time for extensions installation TimeoutConstants.TS_COMMON_PLUGIN_TEST_TIMEOUT=${TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_COMMON_PLUGIN_TEST_TIMEOUT}`);
|
|
95
|
+
await driverHelper.wait(TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_COMMON_PLUGIN_TEST_TIMEOUT);
|
|
96
96
|
});
|
|
97
|
-
test(
|
|
97
|
+
test('Check if extensions are installed and enabled', async function () {
|
|
98
98
|
var _a, _b;
|
|
99
99
|
this.retries(10);
|
|
100
|
-
Logger_1.Logger.debug(
|
|
100
|
+
Logger_1.Logger.debug('ActivityBar().getViewControl("Extensions"))?.openView(): open Extensions view.');
|
|
101
101
|
extensionsView = await ((_a = (await new monaco_page_objects_1.ActivityBar().getViewControl('Extensions'))) === null || _a === void 0 ? void 0 : _a.openView());
|
|
102
|
-
Logger_1.Logger.debug(
|
|
103
|
-
[extensionSection] = await (extensionsView === null || extensionsView === void 0 ? void 0 : extensionsView.getContent().getSections());
|
|
104
|
-
await driverHelper.waitAllPresence(webCheCodeLocators.ExtensionsViewSection.itemTitle,
|
|
102
|
+
Logger_1.Logger.debug('extensionsView?.getContent().getSections(): get current section.');
|
|
103
|
+
[extensionSection] = (await (extensionsView === null || extensionsView === void 0 ? void 0 : extensionsView.getContent().getSections()));
|
|
104
|
+
await driverHelper.waitAllPresence(webCheCodeLocators.ExtensionsViewSection.itemTitle, TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_EDITOR_TAB_INTERACTION_TIMEOUT);
|
|
105
105
|
for (const extension of recommendedExtensions.recommendations) {
|
|
106
106
|
Logger_1.Logger.info(`Check if ${JSON.stringify(extension)} are installed.`);
|
|
107
107
|
Logger_1.Logger.debug(`extensionSection.findItem(${extension.name}).`);
|
|
108
108
|
await extensionSection.findItem(extension.name);
|
|
109
109
|
// check if extension require reload the page
|
|
110
110
|
if (await driverHelper.isVisible(webCheCodeLocators.ExtensionsViewSection.requireReloadButton)) {
|
|
111
|
-
Logger_1.Logger.debug(
|
|
111
|
+
Logger_1.Logger.debug('Extension require reload the editor. Refreshing the page..');
|
|
112
112
|
await browserTabsUtil.refreshPage();
|
|
113
113
|
await projectAndFileTests.waitWorkspaceReadinessForCheCodeEditor();
|
|
114
|
-
Logger_1.Logger.debug(
|
|
114
|
+
Logger_1.Logger.debug('ActivityBar().getViewControl("Extensions"))?.openView(): open Extensions view.');
|
|
115
115
|
extensionsView = await ((_b = (await new monaco_page_objects_1.ActivityBar().getViewControl('Extensions'))) === null || _b === void 0 ? void 0 : _b.openView());
|
|
116
|
-
Logger_1.Logger.debug(
|
|
117
|
-
[extensionSection] = await (extensionsView === null || extensionsView === void 0 ? void 0 : extensionsView.getContent().getSections());
|
|
118
|
-
await driverHelper.waitAllPresence(webCheCodeLocators.ExtensionsViewSection.itemTitle,
|
|
116
|
+
Logger_1.Logger.debug('extensionsView?.getContent().getSections(): get current section.');
|
|
117
|
+
[extensionSection] = (await (extensionsView === null || extensionsView === void 0 ? void 0 : extensionsView.getContent().getSections()));
|
|
118
|
+
await driverHelper.waitAllPresence(webCheCodeLocators.ExtensionsViewSection.itemTitle, TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_EDITOR_TAB_INTERACTION_TIMEOUT);
|
|
119
119
|
Logger_1.Logger.debug(`extensionSection.findItem(${extension.name}).`);
|
|
120
120
|
await extensionSection.findItem(extension.name);
|
|
121
121
|
}
|
|
122
|
-
Logger_1.Logger.debug(
|
|
123
|
-
const [marketplaceSection] = await (extensionsView === null || extensionsView === void 0 ? void 0 : extensionsView.getContent().getSections());
|
|
124
|
-
await driverHelper.waitVisibility(webCheCodeLocators.ExtensionsViewSection.items,
|
|
125
|
-
Logger_1.Logger.debug(
|
|
122
|
+
Logger_1.Logger.debug('extensionsView?.getContent().getSections(): switch to marketplace section.');
|
|
123
|
+
const [marketplaceSection] = (await (extensionsView === null || extensionsView === void 0 ? void 0 : extensionsView.getContent().getSections()));
|
|
124
|
+
await driverHelper.waitVisibility(webCheCodeLocators.ExtensionsViewSection.items, TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_EDITOR_TAB_INTERACTION_TIMEOUT);
|
|
125
|
+
Logger_1.Logger.debug('marketplaceSection.getVisibleItems(): get all found items.');
|
|
126
126
|
const allFinedItems = await marketplaceSection.getVisibleItems();
|
|
127
127
|
let itemWithRightNameAndPublisher;
|
|
128
128
|
for (const item of allFinedItems) {
|
|
129
129
|
Logger_1.Logger.debug(`Try to find extension published by ${extension.publisher}.`);
|
|
130
|
-
if (await item.getAuthor() === extension.publisher) {
|
|
130
|
+
if ((await item.getAuthor()) === extension.publisher) {
|
|
131
131
|
itemWithRightNameAndPublisher = item;
|
|
132
132
|
Logger_1.Logger.debug(`Extension was found: ${await (itemWithRightNameAndPublisher === null || itemWithRightNameAndPublisher === void 0 ? void 0 : itemWithRightNameAndPublisher.getTitle())}`);
|
|
133
133
|
break;
|
|
@@ -136,21 +136,21 @@ suite(`Check if recommended extensions installed for ${samples}`, async function
|
|
|
136
136
|
Logger_1.Logger.error(`Extension with publisher as ${extension.publisher} was not found.`);
|
|
137
137
|
}
|
|
138
138
|
}
|
|
139
|
-
Logger_1.Logger.debug(
|
|
140
|
-
const isInstalled = await (itemWithRightNameAndPublisher === null || itemWithRightNameAndPublisher === void 0 ? void 0 : itemWithRightNameAndPublisher.isInstalled());
|
|
139
|
+
Logger_1.Logger.debug('itemWithRightNameAndPublisher?.isInstalled()');
|
|
140
|
+
const isInstalled = (await (itemWithRightNameAndPublisher === null || itemWithRightNameAndPublisher === void 0 ? void 0 : itemWithRightNameAndPublisher.isInstalled()));
|
|
141
141
|
Logger_1.Logger.debug(`itemWithRightNameAndPublisher?.isInstalled(): ${isInstalled}.`);
|
|
142
|
-
chai_1.expect(isInstalled).eqls(true);
|
|
143
|
-
Logger_1.Logger.debug(
|
|
142
|
+
(0, chai_1.expect)(isInstalled).eqls(true);
|
|
143
|
+
Logger_1.Logger.debug('itemWithRightNameAndPublisher.manage(): get context menu.');
|
|
144
144
|
const extensionManageMenu = await itemWithRightNameAndPublisher.manage();
|
|
145
|
-
Logger_1.Logger.debug(
|
|
145
|
+
Logger_1.Logger.debug('extensionManageMenu.getItems(): get menu items.');
|
|
146
146
|
const extensionMenuItems = await extensionManageMenu.getItems();
|
|
147
147
|
let extensionMenuItemLabels = '';
|
|
148
148
|
for (const item of extensionMenuItems) {
|
|
149
|
-
Logger_1.Logger.trace(
|
|
149
|
+
Logger_1.Logger.trace('extensionMenuItems -> item.getLabel(): get menu items names.');
|
|
150
150
|
extensionMenuItemLabels += (await item.getLabel()) + ' ';
|
|
151
151
|
}
|
|
152
152
|
Logger_1.Logger.debug(`extensionMenuItemLabels: ${extensionMenuItemLabels}.`);
|
|
153
|
-
chai_1.expect(extensionMenuItemLabels).contains('Disable').and.not.contains('Enable');
|
|
153
|
+
(0, chai_1.expect)(extensionMenuItemLabels).contains('Disable').and.not.contains('Enable');
|
|
154
154
|
}
|
|
155
155
|
});
|
|
156
156
|
test('Stop the workspace', async function () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RecommendedExtensions.spec.js","sourceRoot":"","sources":["../../../specs/dashboard-samples/RecommendedExtensions.spec.ts"],"names":[],"mappings":";AAAA;;;;;;;;wEAQwE;;AAExE,6DAa6B;AAC7B,8CAAyD;AAEzD,qEAA8D;AAC9D,mEAAwD;AACxD,uFAAoF;AAEpF,+CAA4C;
|
|
1
|
+
{"version":3,"file":"RecommendedExtensions.spec.js","sourceRoot":"","sources":["../../../specs/dashboard-samples/RecommendedExtensions.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
*
|
|
2
|
+
/** *******************************************************************
|
|
3
|
+
* copyright (c) 2019-2023 Red Hat, Inc.
|
|
4
4
|
*
|
|
5
5
|
* This program and the accompanying materials are made
|
|
6
6
|
* available under the terms of the Eclipse Public License 2.0
|
|
@@ -15,24 +15,24 @@ const inversify_config_1 = require("../../configs/inversify.config");
|
|
|
15
15
|
const inversify_types_1 = require("../../configs/inversify.types");
|
|
16
16
|
const WorkspaceHandlingTests_1 = require("../../tests-library/WorkspaceHandlingTests");
|
|
17
17
|
const chai_1 = require("chai");
|
|
18
|
-
const KubernetesCommandLineToolsExecutor_1 = require("../../utils/KubernetesCommandLineToolsExecutor");
|
|
19
18
|
const StringUtil_1 = require("../../utils/StringUtil");
|
|
20
|
-
const
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
const
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
const
|
|
28
|
-
|
|
29
|
-
|
|
19
|
+
const BASE_TEST_CONSTANTS_1 = require("../../constants/BASE_TEST_CONSTANTS");
|
|
20
|
+
suite('DevConsole Integration', function () {
|
|
21
|
+
let ocpImportPage;
|
|
22
|
+
let ocpApplicationPage;
|
|
23
|
+
const projectAndFileTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ProjectAndFileTests);
|
|
24
|
+
const loginTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.LoginTests);
|
|
25
|
+
const workspaceHandlingTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.WorkspaceHandlingTests);
|
|
26
|
+
const browserTabsUtil = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.BrowserTabsUtil);
|
|
27
|
+
const ocpMainPage = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.OcpMainPage);
|
|
28
|
+
const testWorkspaceUtil = inversify_config_1.e2eContainer.get(inversify_types_1.TYPES.WorkspaceUtil);
|
|
29
|
+
const kubernetesCommandLineToolsExecutor = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.KubernetesCommandLineToolsExecutor);
|
|
30
30
|
// test specific data
|
|
31
31
|
const gitImportRepo = 'https://github.com/crw-qe/summit-lab-spring-music.git';
|
|
32
32
|
const gitImportReference = 'pipeline';
|
|
33
33
|
const projectLabel = 'app.openshift.io/runtime=spring';
|
|
34
34
|
const projectName = 'devconsole-integration-test';
|
|
35
|
-
suiteSetup('Create new empty project using ocp',
|
|
35
|
+
suiteSetup('Create new empty project using ocp', function () {
|
|
36
36
|
kubernetesCommandLineToolsExecutor.loginToOcp();
|
|
37
37
|
kubernetesCommandLineToolsExecutor.createProject(projectName);
|
|
38
38
|
});
|
|
@@ -57,8 +57,8 @@ suite(`DevConsole Integration`, async function () {
|
|
|
57
57
|
test('Obtain workspace name from workspace loader page', async function () {
|
|
58
58
|
await workspaceHandlingTests.obtainWorkspaceNameFromStartingPage();
|
|
59
59
|
});
|
|
60
|
-
test('Registering the running workspace',
|
|
61
|
-
MochaHooks_1.registerRunningWorkspace(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
|
|
60
|
+
test('Registering the running workspace', function () {
|
|
61
|
+
(0, MochaHooks_1.registerRunningWorkspace)(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
|
|
62
62
|
});
|
|
63
63
|
test('Check if application source code opens in workspace', async function () {
|
|
64
64
|
await projectAndFileTests.waitWorkspaceReadinessForCheCodeEditor();
|
|
@@ -66,11 +66,15 @@ suite(`DevConsole Integration`, async function () {
|
|
|
66
66
|
test('Check if project and files imported', async function () {
|
|
67
67
|
const applicationSourceProjectName = StringUtil_1.StringUtil.getProjectNameFromGitUrl(gitImportRepo);
|
|
68
68
|
const projectSection = await new monaco_page_objects_1.SideBarView().getContent().getSection(applicationSourceProjectName);
|
|
69
|
-
const isFileImported = await projectSection.findItem(
|
|
70
|
-
chai_1.expect(isFileImported).not.eqls(undefined);
|
|
69
|
+
const isFileImported = await projectSection.findItem(BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TS_SELENIUM_PROJECT_ROOT_FILE_NAME);
|
|
70
|
+
(0, chai_1.expect)(isFileImported).not.eqls(undefined);
|
|
71
|
+
});
|
|
72
|
+
test('Stop and delete the workspace by API', async function () {
|
|
73
|
+
await browserTabsUtil.closeAllTabsExceptCurrent();
|
|
74
|
+
testWorkspaceUtil.stopAndDeleteWorkspaceByName(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
|
|
71
75
|
});
|
|
72
76
|
loginTests.logoutFromChe();
|
|
73
|
-
suiteTeardown('Delete project using ocp',
|
|
77
|
+
suiteTeardown('Delete project using ocp', function () {
|
|
74
78
|
kubernetesCommandLineToolsExecutor.deleteProject(projectName);
|
|
75
79
|
});
|
|
76
80
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DevConsoleIntegration.spec.js","sourceRoot":"","sources":["../../../specs/devconsole-intergration/DevConsoleIntegration.spec.ts"],"names":[],"mappings":";AAAA;;;;;;;;wEAQwE;;AAExE,6DAAyE;AACzE,8CAAyD;AAEzD,qEAA8D;AAC9D,
|
|
1
|
+
{"version":3,"file":"DevConsoleIntegration.spec.js","sourceRoot":"","sources":["../../../specs/devconsole-intergration/DevConsoleIntegration.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
*
|
|
2
|
+
/** *******************************************************************
|
|
3
|
+
* copyright (c) 2021 Red Hat, Inc.
|
|
4
4
|
*
|
|
5
5
|
* This program and the accompanying materials are made
|
|
6
6
|
* available under the terms of the Eclipse Public License 2.0
|
|
@@ -13,42 +13,40 @@ require("reflect-metadata");
|
|
|
13
13
|
const inversify_config_1 = require("../../configs/inversify.config");
|
|
14
14
|
const monaco_page_objects_1 = require("monaco-page-objects");
|
|
15
15
|
const chai_1 = require("chai");
|
|
16
|
-
const OauthPage_1 = require("../../pageobjects/git-providers/OauthPage");
|
|
17
16
|
const StringUtil_1 = require("../../utils/StringUtil");
|
|
18
|
-
const CheCodeLocatorLoader_1 = require("../../pageobjects/ide/CheCodeLocatorLoader");
|
|
19
17
|
const MochaHooks_1 = require("../MochaHooks");
|
|
20
18
|
const WorkspaceHandlingTests_1 = require("../../tests-library/WorkspaceHandlingTests");
|
|
21
19
|
const inversify_types_1 = require("../../configs/inversify.types");
|
|
22
20
|
const Logger_1 = require("../../utils/Logger");
|
|
23
|
-
const
|
|
24
|
-
const
|
|
25
|
-
const
|
|
26
|
-
|
|
27
|
-
const
|
|
28
|
-
const
|
|
29
|
-
const
|
|
30
|
-
const
|
|
31
|
-
const
|
|
32
|
-
|
|
33
|
-
const oauthPage =
|
|
21
|
+
const OAUTH_CONSTANTS_1 = require("../../constants/OAUTH_CONSTANTS");
|
|
22
|
+
const BASE_TEST_CONSTANTS_1 = require("../../constants/BASE_TEST_CONSTANTS");
|
|
23
|
+
const FACTORY_TEST_CONSTANTS_1 = require("../../constants/FACTORY_TEST_CONSTANTS");
|
|
24
|
+
suite(`Create a workspace via launching a factory from the ${FACTORY_TEST_CONSTANTS_1.FACTORY_TEST_CONSTANTS.TS_SELENIUM_FACTORY_GIT_PROVIDER} repository`, function () {
|
|
25
|
+
const browserTabsUtil = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.BrowserTabsUtil);
|
|
26
|
+
const workspaceHandlingTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.WorkspaceHandlingTests);
|
|
27
|
+
const projectAndFileTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ProjectAndFileTests);
|
|
28
|
+
const driverHelper = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.DriverHelper);
|
|
29
|
+
const loginTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.LoginTests);
|
|
30
|
+
const webCheCodeLocators = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.CheCodeLocatorLoader);
|
|
31
|
+
const oauthPage = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.OauthPage);
|
|
34
32
|
let projectSection;
|
|
35
33
|
let scmProvider;
|
|
36
34
|
let rest;
|
|
37
35
|
let scmContextMenu;
|
|
38
36
|
// test specific data
|
|
39
37
|
const timeToRefresh = 1500;
|
|
40
|
-
const changesToCommit =
|
|
38
|
+
const changesToCommit = new Date().getTime().toString();
|
|
41
39
|
const fileToChange = 'Date.txt';
|
|
42
|
-
const commitChangesButtonLabel = `Commit Changes on "${
|
|
40
|
+
const commitChangesButtonLabel = `Commit Changes on "${FACTORY_TEST_CONSTANTS_1.FACTORY_TEST_CONSTANTS.TS_SELENIUM_FACTORY_GIT_REPO_BRANCH}"`;
|
|
43
41
|
const refreshButtonLabel = 'Refresh';
|
|
44
42
|
const pushItemLabel = 'Push';
|
|
45
43
|
let testRepoProjectName;
|
|
46
44
|
loginTests.loginIntoChe();
|
|
47
|
-
test(
|
|
48
|
-
await browserTabsUtil.navigateTo(
|
|
45
|
+
test('Navigate to the factory URL', async function () {
|
|
46
|
+
await browserTabsUtil.navigateTo(FACTORY_TEST_CONSTANTS_1.FACTORY_TEST_CONSTANTS.TS_SELENIUM_FACTORY_URL());
|
|
49
47
|
});
|
|
50
|
-
if (
|
|
51
|
-
test(`Authorize with a ${
|
|
48
|
+
if (OAUTH_CONSTANTS_1.OAUTH_CONSTANTS.TS_SELENIUM_GIT_PROVIDER_OAUTH) {
|
|
49
|
+
test(`Authorize with a ${FACTORY_TEST_CONSTANTS_1.FACTORY_TEST_CONSTANTS.TS_SELENIUM_FACTORY_GIT_PROVIDER} OAuth`, async function () {
|
|
52
50
|
await oauthPage.login();
|
|
53
51
|
await oauthPage.waitOauthPage();
|
|
54
52
|
await oauthPage.confirmAccess();
|
|
@@ -57,25 +55,25 @@ suite(`Create a workspace via launching a factory from the ${FactoryTestConstant
|
|
|
57
55
|
test('Obtain workspace name from workspace loader page', async function () {
|
|
58
56
|
await workspaceHandlingTests.obtainWorkspaceNameFromStartingPage();
|
|
59
57
|
});
|
|
60
|
-
test('Registering the running workspace',
|
|
61
|
-
MochaHooks_1.registerRunningWorkspace(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
|
|
58
|
+
test('Registering the running workspace', function () {
|
|
59
|
+
(0, MochaHooks_1.registerRunningWorkspace)(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
|
|
62
60
|
});
|
|
63
61
|
test('Wait the workspace readiness', async function () {
|
|
64
62
|
await projectAndFileTests.waitWorkspaceReadinessForCheCodeEditor();
|
|
65
63
|
});
|
|
66
64
|
test('Check if a project folder has been created', async function () {
|
|
67
|
-
testRepoProjectName = StringUtil_1.StringUtil.getProjectNameFromGitUrl(
|
|
65
|
+
testRepoProjectName = StringUtil_1.StringUtil.getProjectNameFromGitUrl(FACTORY_TEST_CONSTANTS_1.FACTORY_TEST_CONSTANTS.TS_SELENIUM_FACTORY_GIT_REPO_URL);
|
|
68
66
|
Logger_1.Logger.debug(`new SideBarView().getContent().getSection: get ${testRepoProjectName}`);
|
|
69
67
|
projectSection = await new monaco_page_objects_1.SideBarView().getContent().getSection(testRepoProjectName);
|
|
70
68
|
});
|
|
71
69
|
test('Check if the project files were imported', async function () {
|
|
72
|
-
const label =
|
|
70
|
+
const label = BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TS_SELENIUM_PROJECT_ROOT_FILE_NAME;
|
|
73
71
|
Logger_1.Logger.debug(`projectSection.findItem: find ${label}`);
|
|
74
72
|
const isFileImported = await projectSection.findItem(label);
|
|
75
|
-
chai_1.expect(isFileImported).not.eqls(undefined);
|
|
73
|
+
(0, chai_1.expect)(isFileImported).not.eqls(undefined);
|
|
76
74
|
});
|
|
77
75
|
test('Accept the project as a trusted one', async function () {
|
|
78
|
-
const buttonYesITrustTheAuthors =
|
|
76
|
+
const buttonYesITrustTheAuthors = 'Yes, I trust the authors';
|
|
79
77
|
const trustedProjectDialog = new monaco_page_objects_1.ModalDialog();
|
|
80
78
|
await driverHelper.waitVisibility(webCheCodeLocators.WelcomeContent.button);
|
|
81
79
|
Logger_1.Logger.debug(`trustedProjectDialog.pushButton: "${buttonYesITrustTheAuthors}"`);
|
|
@@ -84,22 +82,22 @@ suite(`Create a workspace via launching a factory from the ${FactoryTestConstant
|
|
|
84
82
|
test('Make changes to the file', async function () {
|
|
85
83
|
Logger_1.Logger.debug(`projectSection.openItem: "${fileToChange}"`);
|
|
86
84
|
await projectSection.openItem(fileToChange);
|
|
87
|
-
const editor = await new monaco_page_objects_1.EditorView().openEditor(fileToChange);
|
|
85
|
+
const editor = (await new monaco_page_objects_1.EditorView().openEditor(fileToChange));
|
|
88
86
|
await driverHelper.waitVisibility(webCheCodeLocators.Editor.inputArea);
|
|
89
|
-
Logger_1.Logger.debug(
|
|
87
|
+
Logger_1.Logger.debug('editor.clearText');
|
|
90
88
|
await editor.clearText();
|
|
91
89
|
Logger_1.Logger.debug(`editor.typeTextAt: "${changesToCommit}"`);
|
|
92
90
|
await editor.typeTextAt(1, 1, changesToCommit);
|
|
93
91
|
});
|
|
94
92
|
test('Open a source control manager', async function () {
|
|
95
|
-
const viewSourceControl =
|
|
96
|
-
const sourceControl = await new monaco_page_objects_1.ActivityBar().getViewControl(viewSourceControl);
|
|
93
|
+
const viewSourceControl = 'Source Control';
|
|
94
|
+
const sourceControl = (await new monaco_page_objects_1.ActivityBar().getViewControl(viewSourceControl));
|
|
97
95
|
Logger_1.Logger.debug(`sourceControl.openView: "${viewSourceControl}"`);
|
|
98
96
|
await sourceControl.openView();
|
|
99
97
|
const scmView = new monaco_page_objects_1.NewScmView();
|
|
100
|
-
await driverHelper.waitVisibility(webCheCodeLocators.ScmView.
|
|
98
|
+
await driverHelper.waitVisibility(webCheCodeLocators.ScmView.inputField);
|
|
101
99
|
[scmProvider, ...rest] = await scmView.getProviders();
|
|
102
|
-
Logger_1.Logger.debug(`scmView.getProviders: "${scmProvider}, ${
|
|
100
|
+
Logger_1.Logger.debug(`scmView.getProviders: "${JSON.stringify(scmProvider)}, ${rest}"`);
|
|
103
101
|
});
|
|
104
102
|
test('Check if the changes are displayed in the source control manager', async function () {
|
|
105
103
|
await driverHelper.waitVisibility(webCheCodeLocators.ScmView.more);
|
|
@@ -110,18 +108,17 @@ suite(`Create a workspace via launching a factory from the ${FactoryTestConstant
|
|
|
110
108
|
await driverHelper.wait(timeToRefresh);
|
|
111
109
|
const changes = await scmProvider.getChangeCount();
|
|
112
110
|
Logger_1.Logger.debug(`scmProvider.getChangeCount: number of changes is "${changes}"`);
|
|
113
|
-
chai_1.expect(changes).eql(1);
|
|
111
|
+
(0, chai_1.expect)(changes).eql(1);
|
|
114
112
|
});
|
|
115
113
|
test('Stage the changes', async function () {
|
|
116
114
|
await driverHelper.waitVisibility(webCheCodeLocators.ScmView.more);
|
|
117
|
-
Logger_1.Logger.debug(
|
|
115
|
+
Logger_1.Logger.debug('scmProvider.openMoreActions');
|
|
118
116
|
scmContextMenu = await scmProvider.openMoreActions();
|
|
119
117
|
await driverHelper.waitVisibility(webCheCodeLocators.ContextMenu.contextView);
|
|
120
|
-
Logger_1.Logger.debug(
|
|
118
|
+
Logger_1.Logger.debug('scmContextMenu.select: "Changes" -> "Stage All Changes"');
|
|
121
119
|
await scmContextMenu.select('Changes', 'Stage All Changes');
|
|
122
120
|
});
|
|
123
121
|
test('Commit the changes', async function () {
|
|
124
|
-
await driverHelper.waitVisibility(webCheCodeLocators.ScmView.actionConstructor(commitChangesButtonLabel));
|
|
125
122
|
Logger_1.Logger.debug(`scmProvider.commitChanges: commit name "Commit ${changesToCommit}"`);
|
|
126
123
|
await scmProvider.commitChanges('Commit ' + changesToCommit);
|
|
127
124
|
await driverHelper.waitVisibility(webCheCodeLocators.ScmView.more);
|
|
@@ -132,12 +129,12 @@ suite(`Create a workspace via launching a factory from the ${FactoryTestConstant
|
|
|
132
129
|
await driverHelper.wait(timeToRefresh);
|
|
133
130
|
const changes = await scmProvider.getChangeCount();
|
|
134
131
|
Logger_1.Logger.debug(`scmProvider.getChangeCount: number of changes is "${changes}"`);
|
|
135
|
-
chai_1.expect(changes).eql(0);
|
|
132
|
+
(0, chai_1.expect)(changes).eql(0);
|
|
136
133
|
});
|
|
137
134
|
test('Push the changes', async function () {
|
|
138
|
-
await driverHelper.waitVisibility(webCheCodeLocators.ScmView.actionConstructor(`Push 1 commits to origin/${
|
|
135
|
+
await driverHelper.waitVisibility(webCheCodeLocators.ScmView.actionConstructor(`Push 1 commits to origin/${FACTORY_TEST_CONSTANTS_1.FACTORY_TEST_CONSTANTS.TS_SELENIUM_FACTORY_GIT_REPO_BRANCH}`));
|
|
139
136
|
await driverHelper.waitVisibility(webCheCodeLocators.ScmView.more);
|
|
140
|
-
Logger_1.Logger.debug(
|
|
137
|
+
Logger_1.Logger.debug('scmProvider.openMoreActions');
|
|
141
138
|
scmContextMenu = await scmProvider.openMoreActions();
|
|
142
139
|
await driverHelper.waitVisibility(webCheCodeLocators.ContextMenu.itemConstructor(pushItemLabel));
|
|
143
140
|
Logger_1.Logger.debug(`scmContextMenu.select: "${pushItemLabel}"`);
|
|
@@ -149,7 +146,7 @@ suite(`Create a workspace via launching a factory from the ${FactoryTestConstant
|
|
|
149
146
|
Logger_1.Logger.debug(`scmProvider.takeAction: "${refreshButtonLabel}"`);
|
|
150
147
|
await scmProvider.takeAction(refreshButtonLabel);
|
|
151
148
|
const isCommitButtonDisabled = await driverHelper.waitAndGetElementAttribute(webCheCodeLocators.ScmView.actionConstructor(commitChangesButtonLabel), 'aria-disabled');
|
|
152
|
-
chai_1.expect(isCommitButtonDisabled).eql('true');
|
|
149
|
+
(0, chai_1.expect)(isCommitButtonDisabled).eql('true');
|
|
153
150
|
});
|
|
154
151
|
test('Stop the workspace', async function () {
|
|
155
152
|
await workspaceHandlingTests.stopWorkspace(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
|