@eclipse-che/che-e2e 7.76.0-next-95f5f91 → 7.76.0-next-af784fc
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/configs/reporters.config.js +3 -0
- package/configs/sh-scripts/runFunctionalTests.sh +3 -0
- package/constants/BASE_TEST_CONSTANTS.ts +6 -0
- package/constants/REPORTER_CONSTANTS.ts +6 -3
- package/dist/constants/BASE_TEST_CONSTANTS.js +4 -0
- package/dist/constants/BASE_TEST_CONSTANTS.js.map +1 -1
- package/dist/constants/REPORTER_CONSTANTS.js +2 -1
- package/dist/constants/REPORTER_CONSTANTS.js.map +1 -1
- package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetails.js +1 -1
- package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetails.js.map +1 -1
- package/dist/specs/MochaHooks.js +23 -5
- package/dist/specs/MochaHooks.js.map +1 -1
- package/dist/specs/SmokeTest.spec.js +8 -4
- package/dist/specs/SmokeTest.spec.js.map +1 -1
- package/dist/specs/dashboard-samples/Documentation.spec.js +7 -2
- package/dist/specs/dashboard-samples/Documentation.spec.js.map +1 -1
- package/dist/specs/dashboard-samples/EmptyWorkspace.spec.js +12 -6
- package/dist/specs/dashboard-samples/EmptyWorkspace.spec.js.map +1 -1
- package/dist/specs/dashboard-samples/Quarkus.spec.js +12 -6
- package/dist/specs/dashboard-samples/Quarkus.spec.js.map +1 -1
- package/dist/specs/dashboard-samples/RecommendedExtensions.spec.js +12 -6
- package/dist/specs/dashboard-samples/RecommendedExtensions.spec.js.map +1 -1
- package/dist/specs/devconsole-intergration/DevConsoleIntegration.spec.js +18 -5
- package/dist/specs/devconsole-intergration/DevConsoleIntegration.spec.js.map +1 -1
- package/dist/specs/factory/Factory.spec.js +12 -6
- package/dist/specs/factory/Factory.spec.js.map +1 -1
- package/dist/specs/factory/NoSetupRepoFactory.spec.js +11 -7
- package/dist/specs/factory/NoSetupRepoFactory.spec.js.map +1 -1
- package/dist/specs/factory/RefusedOAuthFactory.spec.js +12 -6
- package/dist/specs/factory/RefusedOAuthFactory.spec.js.map +1 -1
- package/dist/specs/miscellaneous/CreateWorkspaceWithExistedName.spec.js +12 -7
- package/dist/specs/miscellaneous/CreateWorkspaceWithExistedName.spec.js.map +1 -1
- package/dist/specs/miscellaneous/KubedockPodmanTest.spec.js +12 -6
- package/dist/specs/miscellaneous/KubedockPodmanTest.spec.js.map +1 -1
- package/dist/specs/miscellaneous/PredefinedNamespace.spec.js +45 -12
- package/dist/specs/miscellaneous/PredefinedNamespace.spec.js.map +1 -1
- package/dist/specs/miscellaneous/WorkspaceIdleTimeout.spec.js +15 -5
- package/dist/specs/miscellaneous/WorkspaceIdleTimeout.spec.js.map +1 -1
- package/dist/specs/miscellaneous/WorkspaceWithParent.spec.js +9 -4
- package/dist/specs/miscellaneous/WorkspaceWithParent.spec.js.map +1 -1
- package/dist/suites/disconnected-ocp/UITest.suite.js +1 -1
- package/dist/suites/online-ocp/UITest.suite.js +1 -1
- package/dist/tests-library/LoginTests.js +14 -10
- package/dist/tests-library/LoginTests.js.map +1 -1
- package/dist/tests-library/WorkspaceHandlingTests.js +2 -5
- package/dist/tests-library/WorkspaceHandlingTests.js.map +1 -1
- package/dist/utils/BrowserTabsUtil.js +8 -1
- package/dist/utils/BrowserTabsUtil.js.map +1 -1
- package/dist/utils/Logger.js +1 -1
- package/package.json +1 -1
- package/pageobjects/dashboard/workspace-details/WorkspaceDetails.ts +1 -1
- package/specs/MochaHooks.ts +26 -5
- package/specs/SmokeTest.spec.ts +8 -4
- package/specs/dashboard-samples/Documentation.spec.ts +8 -3
- package/specs/dashboard-samples/EmptyWorkspace.spec.ts +15 -8
- package/specs/dashboard-samples/Quarkus.spec.ts +15 -7
- package/specs/dashboard-samples/RecommendedExtensions.spec.ts +15 -7
- package/specs/devconsole-intergration/DevConsoleIntegration.spec.ts +20 -8
- package/specs/factory/Factory.spec.ts +15 -7
- package/specs/factory/NoSetupRepoFactory.spec.ts +14 -10
- package/specs/factory/RefusedOAuthFactory.spec.ts +15 -7
- package/specs/miscellaneous/CreateWorkspaceWithExistedName.spec.ts +15 -8
- package/specs/miscellaneous/KubedockPodmanTest.spec.ts +16 -7
- package/specs/miscellaneous/PredefinedNamespace.spec.ts +51 -14
- package/specs/miscellaneous/WorkspaceIdleTimeout.spec.ts +19 -6
- package/specs/miscellaneous/WorkspaceWithParent.spec.ts +9 -4
- package/suites/disconnected-ocp/UITest.suite.ts +1 -1
- package/suites/online-ocp/UITest.suite.ts +1 -1
- package/tests-library/LoginTests.ts +17 -10
- package/tests-library/WorkspaceHandlingTests.ts +2 -6
- package/utils/BrowserTabsUtil.ts +8 -1
- package/utils/Logger.ts +1 -1
- package/utils/workspace/ITestWorkspaceUtil.ts +7 -7
|
@@ -27,7 +27,8 @@ const BrowserTabsUtil_1 = require("../utils/BrowserTabsUtil");
|
|
|
27
27
|
const inversify_1 = require("inversify");
|
|
28
28
|
const Dashboard_1 = require("../pageobjects/dashboard/Dashboard");
|
|
29
29
|
const BASE_TEST_CONSTANTS_1 = require("../constants/BASE_TEST_CONSTANTS");
|
|
30
|
-
const
|
|
30
|
+
const TIMEOUT_CONSTANTS_1 = require("../constants/TIMEOUT_CONSTANTS");
|
|
31
|
+
const Logger_1 = require("../utils/Logger");
|
|
31
32
|
let LoginTests = class LoginTests {
|
|
32
33
|
constructor(browserTabsUtil, productLoginPage, ocpLoginPage, dashboard) {
|
|
33
34
|
this.browserTabsUtil = browserTabsUtil;
|
|
@@ -35,29 +36,32 @@ let LoginTests = class LoginTests {
|
|
|
35
36
|
this.ocpLoginPage = ocpLoginPage;
|
|
36
37
|
this.dashboard = dashboard;
|
|
37
38
|
}
|
|
38
|
-
loginIntoChe(userName, password) {
|
|
39
|
-
|
|
39
|
+
async loginIntoChe(userName, password, timeout = TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_COMMON_DASHBOARD_WAIT_TIMEOUT) {
|
|
40
|
+
Logger_1.Logger.debug();
|
|
41
|
+
try {
|
|
40
42
|
if (!(await this.browserTabsUtil.getCurrentUrl()).includes(BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TS_SELENIUM_BASE_URL)) {
|
|
41
43
|
await this.browserTabsUtil.navigateTo(BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TS_SELENIUM_BASE_URL);
|
|
42
44
|
}
|
|
45
|
+
await this.dashboard.waitPage(timeout);
|
|
46
|
+
Logger_1.Logger.debug('user already logged in');
|
|
47
|
+
}
|
|
48
|
+
catch (e) {
|
|
49
|
+
Logger_1.Logger.debug('try to login into application');
|
|
43
50
|
await this.productLoginPage.login(userName, password);
|
|
44
51
|
await this.browserTabsUtil.maximize();
|
|
45
52
|
await this.dashboard.waitStartingPageLoaderDisappearance();
|
|
46
|
-
}
|
|
53
|
+
}
|
|
47
54
|
}
|
|
48
55
|
loginIntoOcpConsole() {
|
|
49
|
-
|
|
56
|
+
suiteSetup('Login into ocp console', async () => {
|
|
50
57
|
const openshiftConsoleUrl = BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TS_SELENIUM_BASE_URL.replace(BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TESTING_APPLICATION_NAME(), 'console-openshift-console');
|
|
51
58
|
await this.browserTabsUtil.navigateTo(openshiftConsoleUrl);
|
|
52
59
|
await this.ocpLoginPage.login();
|
|
53
60
|
await this.browserTabsUtil.maximize();
|
|
54
61
|
});
|
|
55
62
|
}
|
|
56
|
-
logoutFromChe() {
|
|
57
|
-
|
|
58
|
-
await this.dashboard.logout();
|
|
59
|
-
(0, MochaHooks_1.registerRunningWorkspace)('');
|
|
60
|
-
});
|
|
63
|
+
async logoutFromChe() {
|
|
64
|
+
await this.dashboard.logout();
|
|
61
65
|
}
|
|
62
66
|
};
|
|
63
67
|
LoginTests = __decorate([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoginTests.js","sourceRoot":"","sources":["../../tests-library/LoginTests.ts"],"names":[],"mappings":";AAAA;;;;;;;;wEAQwE;;;;;;;;;;;;;;;AAExE,gEAA4D;AAE5D,8DAA2D;AAC3D,yCAA+C;AAC/C,kEAA+D;AAE/D,0EAAuE;AACvE,
|
|
1
|
+
{"version":3,"file":"LoginTests.js","sourceRoot":"","sources":["../../tests-library/LoginTests.ts"],"names":[],"mappings":";AAAA;;;;;;;;wEAQwE;;;;;;;;;;;;;;;AAExE,gEAA4D;AAE5D,8DAA2D;AAC3D,yCAA+C;AAC/C,kEAA+D;AAE/D,0EAAuE;AACvE,sEAAmE;AACnE,4CAAyC;AAGlC,IAAM,UAAU,GAAhB,MAAM,UAAU;IACtB,YAEkB,eAAgC,EAEhC,gBAA+B,EACP,YAA2B,EACxB,SAAoB;QAJ/C,oBAAe,GAAf,eAAe,CAAiB;QAEhC,qBAAgB,GAAhB,gBAAgB,CAAe;QACP,iBAAY,GAAZ,YAAY,CAAe;QACxB,cAAS,GAAT,SAAS,CAAW;IAC9D,CAAC;IAEJ,KAAK,CAAC,YAAY,CACjB,QAAiB,EACjB,QAAiB,EACjB,UAAkB,qCAAiB,CAAC,gCAAgC;QAEpE,eAAM,CAAC,KAAK,EAAE,CAAC;QACf,IAAI;YACH,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,aAAa,EAAE,CAAC,CAAC,QAAQ,CAAC,yCAAmB,CAAC,oBAAoB,CAAC,EAAE;gBACrG,MAAM,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,yCAAmB,CAAC,oBAAoB,CAAC,CAAC;aAChF;YACD,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YACvC,eAAM,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;SACvC;QAAC,OAAO,CAAC,EAAE;YACX,eAAM,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;YAC9C,MAAM,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACtD,MAAM,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC;YACtC,MAAM,IAAI,CAAC,SAAS,CAAC,mCAAmC,EAAE,CAAC;SAC3D;IACF,CAAC;IAED,mBAAmB;QAClB,UAAU,CAAC,wBAAwB,EAAE,KAAK,IAAmB,EAAE;YAC9D,MAAM,mBAAmB,GAAW,yCAAmB,CAAC,oBAAoB,CAAC,OAAO,CACnF,yCAAmB,CAAC,wBAAwB,EAAE,EAC9C,2BAA2B,CAC3B,CAAC;YACF,MAAM,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC;YAC3D,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;YAChC,MAAM,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC;QACvC,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,aAAa;QAClB,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;IAC/B,CAAC;CACD,CAAA;AA7CY,UAAU;IADtB,IAAA,sBAAU,GAAE;IAGV,WAAA,IAAA,kBAAM,EAAC,yBAAO,CAAC,eAAe,CAAC,CAAA;IAE/B,WAAA,IAAA,kBAAM,EAAC,uBAAK,CAAC,QAAQ,CAAC,CAAA;IAEtB,WAAA,IAAA,kBAAM,EAAC,uBAAK,CAAC,QAAQ,CAAC,CAAA;IACtB,WAAA,IAAA,kBAAM,EAAC,yBAAO,CAAC,SAAS,CAAC,CAAA;qCAJQ,iCAAe,kBAIM,qBAAS;GAPrD,UAAU,CA6CtB;AA7CY,gCAAU"}
|
|
@@ -45,11 +45,8 @@ let WorkspaceHandlingTests = WorkspaceHandlingTests_1 = class WorkspaceHandlingT
|
|
|
45
45
|
static getWorkspaceName() {
|
|
46
46
|
return WorkspaceHandlingTests_1.workspaceName;
|
|
47
47
|
}
|
|
48
|
-
|
|
49
|
-
WorkspaceHandlingTests_1.
|
|
50
|
-
}
|
|
51
|
-
getWindowHandle() {
|
|
52
|
-
return WorkspaceHandlingTests_1.parentGUID;
|
|
48
|
+
static clearWorkspaceName() {
|
|
49
|
+
WorkspaceHandlingTests_1.workspaceName = 'undefined';
|
|
53
50
|
}
|
|
54
51
|
async createAndOpenWorkspace(stack) {
|
|
55
52
|
await this.dashboard.clickWorkspacesButton();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorkspaceHandlingTests.js","sourceRoot":"","sources":["../../tests-library/WorkspaceHandlingTests.ts"],"names":[],"mappings":";AAAA;;;;;;;;wEAQwE;;;;;;;;;;;;;;;;AAExE,4BAA0B;AAC1B,yCAA+C;AAC/C,gEAAqD;AACrD,kEAA+D;AAC/D,8EAA2E;AAC3E,8DAA2D;AAC3D,4CAAyC;AACzC,sEAAmE;AACnE,sEAAmE;AACnE,wDAAqD;AACrD,2DAA+C;AAGxC,IAAM,sBAAsB,8BAA5B,MAAM,sBAAsB;IAKlC,YAC6C,SAAoB,EAE/C,eAAgC,EAEhC,eAAgC,EAEhC,cAA8B,EAE9B,YAA0B;QARC,cAAS,GAAT,SAAS,CAAW;QAE/C,oBAAe,GAAf,eAAe,CAAiB;QAEhC,oBAAe,GAAf,eAAe,CAAiB;QAEhC,mBAAc,GAAd,cAAc,CAAgB;QAE9B,iBAAY,GAAZ,YAAY,CAAc;IACzC,CAAC;IAEJ,MAAM,CAAC,gBAAgB;QACtB,OAAO,wBAAsB,CAAC,aAAa,CAAC;IAC7C,CAAC;IAED,
|
|
1
|
+
{"version":3,"file":"WorkspaceHandlingTests.js","sourceRoot":"","sources":["../../tests-library/WorkspaceHandlingTests.ts"],"names":[],"mappings":"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"}
|
|
@@ -67,7 +67,14 @@ let BrowserTabsUtil = class BrowserTabsUtil {
|
|
|
67
67
|
}
|
|
68
68
|
async getCurrentUrl() {
|
|
69
69
|
Logger_1.Logger.trace();
|
|
70
|
-
|
|
70
|
+
let currentUrl = '';
|
|
71
|
+
try {
|
|
72
|
+
currentUrl = await this.driverHelper.getDriver().getCurrentUrl();
|
|
73
|
+
}
|
|
74
|
+
catch (e) {
|
|
75
|
+
Logger_1.Logger.trace('cannot get current url');
|
|
76
|
+
}
|
|
77
|
+
return currentUrl;
|
|
71
78
|
}
|
|
72
79
|
async waitURL(expectedUrl, timeout) {
|
|
73
80
|
Logger_1.Logger.trace(`${expectedUrl}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BrowserTabsUtil.js","sourceRoot":"","sources":["../../utils/BrowserTabsUtil.ts"],"names":[],"mappings":";AAAA;;;;;;;;wEAQwE;;;;;;;;;;;;;;;AAExE,yCAA+C;AAC/C,gEAAqD;AACrD,iDAA8C;AAC9C,qCAAkC;AAClC,kFAA+E;AAC/E,sEAAmE;AAG5D,IAAM,eAAe,GAArB,MAAM,eAAe;IAC3B,YAEkB,YAA0B;QAA1B,iBAAY,GAAZ,YAAY,CAAc;IACzC,CAAC;IAEJ,KAAK,CAAC,cAAc,CAAC,YAAoB;QACxC,eAAM,CAAC,KAAK,EAAE,CAAC;QAEf,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IACrE,CAAC;IAED,KAAK,CAAC,mBAAmB;QACxB,eAAM,CAAC,KAAK,EAAE,CAAC;QAEf,OAAO,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC,CAAC,mBAAmB,EAAE,CAAC;IACpE,CAAC;IAED,KAAK,CAAC,sBAAsB;QAC3B,eAAM,CAAC,KAAK,EAAE,CAAC;QAEf,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC,eAAe,EAAE,CAAC;IAC9D,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,GAAW;QAC3B,eAAM,CAAC,KAAK,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC;QAEvB,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,4BAA4B,CACjC,mBAA2B,EAC3B,UAAkB,qCAAiB,CAAC,wBAAwB;QAE5D,eAAM,CAAC,KAAK,EAAE,CAAC;QAEf,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,KAAK,IAAsB,EAAE;YAClE,MAAM,aAAa,GAAa,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAEjE,OAAO,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC;QACjC,CAAC,EAAE,OAAO,CAAC,CAAC;QAEZ,MAAM,aAAa,GAAa,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAEjE,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE;YACzC,IAAI,YAAY,KAAK,mBAAmB,EAAE;gBACzC,MAAM,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;aACxC;SACD;IACF,CAAC;IAED,KAAK,CAAC,WAAW;QAChB,eAAM,CAAC,KAAK,EAAE,CAAC;QAEf,MAAM,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAC;IAClE,CAAC;IAED,KAAK,CAAC,aAAa;QAClB,eAAM,CAAC,KAAK,EAAE,CAAC;QAEf,
|
|
1
|
+
{"version":3,"file":"BrowserTabsUtil.js","sourceRoot":"","sources":["../../utils/BrowserTabsUtil.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/Logger.js
CHANGED
|
@@ -136,7 +136,7 @@ class Logger {
|
|
|
136
136
|
}
|
|
137
137
|
static isRootCaller(traceLevel = 6) {
|
|
138
138
|
return this.getCallStackArray()
|
|
139
|
-
.slice(traceLevel, traceLevel +
|
|
139
|
+
.slice(traceLevel, traceLevel + 4)
|
|
140
140
|
.reduce((acc, e) => {
|
|
141
141
|
return acc || /MochaHooks|CheReporter/.test(e);
|
|
142
142
|
}, false);
|
package/package.json
CHANGED
|
@@ -101,7 +101,7 @@ export class WorkspaceDetails {
|
|
|
101
101
|
|
|
102
102
|
await this.clickOnOpenButton(timeout);
|
|
103
103
|
await this.testProjectAndFileCheCode.waitWorkspaceReadinessForCheCodeEditor();
|
|
104
|
-
this.testWorkspaceUtil.waitWorkspaceStatus(
|
|
104
|
+
await this.testWorkspaceUtil.waitWorkspaceStatus(workspaceName, WorkspaceStatus.STARTING);
|
|
105
105
|
}
|
|
106
106
|
|
|
107
107
|
async waitTabsPresence(timeout: number = TIMEOUT_CONSTANTS.TS_COMMON_DASHBOARD_WAIT_TIMEOUT): Promise<void> {
|
package/specs/MochaHooks.ts
CHANGED
|
@@ -26,13 +26,19 @@ import { decorate, injectable, unmanaged } from 'inversify';
|
|
|
26
26
|
import { Main } from '@eclipse-che/che-devworkspace-generator/lib/main';
|
|
27
27
|
import { LocatorLoader } from 'monaco-page-objects/out/locators/loader';
|
|
28
28
|
import { REPORTER_CONSTANTS } from '../constants/REPORTER_CONSTANTS';
|
|
29
|
+
import { WorkspaceHandlingTests } from '../tests-library/WorkspaceHandlingTests';
|
|
29
30
|
|
|
30
31
|
const driverHelper: DriverHelper = e2eContainer.get(CLASSES.DriverHelper);
|
|
31
32
|
let latestWorkspace: string = '';
|
|
32
33
|
export let rpApi: any = undefined;
|
|
33
34
|
|
|
34
35
|
export function registerRunningWorkspace(workspaceName: string): void {
|
|
35
|
-
workspaceName !== ''
|
|
36
|
+
workspaceName !== ''
|
|
37
|
+
? Logger.debug(`with workspaceName:${workspaceName}`)
|
|
38
|
+
: ((): void => {
|
|
39
|
+
Logger.debug('delete workspace name');
|
|
40
|
+
WorkspaceHandlingTests.clearWorkspaceName();
|
|
41
|
+
})();
|
|
36
42
|
|
|
37
43
|
latestWorkspace = workspaceName;
|
|
38
44
|
}
|
|
@@ -108,18 +114,33 @@ exports.mochaHooks = {
|
|
|
108
114
|
}
|
|
109
115
|
},
|
|
110
116
|
// stop and remove running workspace
|
|
111
|
-
function deleteWorkspaceOnFailedTest(this: Mocha.Context): void {
|
|
117
|
+
async function deleteWorkspaceOnFailedTest(this: Mocha.Context): Promise<void> {
|
|
112
118
|
if (this.currentTest?.state === 'failed') {
|
|
113
|
-
if (BASE_TEST_CONSTANTS.DELETE_WORKSPACE_ON_FAILED_TEST) {
|
|
114
|
-
Logger.
|
|
119
|
+
if (BASE_TEST_CONSTANTS.DELETE_WORKSPACE_ON_FAILED_TEST && CHROME_DRIVER_CONSTANTS.TS_USE_WEB_DRIVER_FOR_TEST) {
|
|
120
|
+
Logger.trace(
|
|
121
|
+
'Property DELETE_WORKSPACE_ON_FAILED_TEST is true - trying to stop and delete running workspace with API.'
|
|
122
|
+
);
|
|
115
123
|
const testWorkspaceUtil: ITestWorkspaceUtil = e2eContainer.get(TYPES.WorkspaceUtil);
|
|
116
|
-
testWorkspaceUtil.stopAndDeleteWorkspaceByName(latestWorkspace);
|
|
124
|
+
await testWorkspaceUtil.stopAndDeleteWorkspaceByName(latestWorkspace);
|
|
117
125
|
}
|
|
118
126
|
}
|
|
119
127
|
}
|
|
120
128
|
],
|
|
121
129
|
afterAll: [
|
|
122
130
|
// stop and remove running workspace
|
|
131
|
+
async function deleteAllWorkspacesOnFinish(): Promise<void> {
|
|
132
|
+
try {
|
|
133
|
+
if (BASE_TEST_CONSTANTS.DELETE_ALL_WORKSPACES_ON_RUN_FINISH && CHROME_DRIVER_CONSTANTS.TS_USE_WEB_DRIVER_FOR_TEST) {
|
|
134
|
+
Logger.trace(
|
|
135
|
+
'Property DELETE_WORKSPACE_ON_FAILED_TEST is true - trying to stop and delete all running workspace after test run with API.'
|
|
136
|
+
);
|
|
137
|
+
const testWorkspaceUtil: ITestWorkspaceUtil = e2eContainer.get(TYPES.WorkspaceUtil);
|
|
138
|
+
await testWorkspaceUtil.stopAndDeleteAllRunningWorkspaces();
|
|
139
|
+
}
|
|
140
|
+
} catch (e) {
|
|
141
|
+
Logger.trace('Running workspaces not found');
|
|
142
|
+
}
|
|
143
|
+
},
|
|
123
144
|
async function stopTheDriver(): Promise<void> {
|
|
124
145
|
if (!BASE_TEST_CONSTANTS.TS_DEBUG_MODE && CHROME_DRIVER_CONSTANTS.TS_USE_WEB_DRIVER_FOR_TEST) {
|
|
125
146
|
// ensure that fired events done
|
package/specs/SmokeTest.spec.ts
CHANGED
|
@@ -29,7 +29,9 @@ suite(`The SmokeTest userstory ${BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, functio
|
|
|
29
29
|
FACTORY_TEST_CONSTANTS.TS_SELENIUM_FACTORY_GIT_REPO_URL || 'https://github.com/che-incubator/quarkus-api-example.git';
|
|
30
30
|
let projectSection: ViewSection;
|
|
31
31
|
suite(`Create workspace from factory:${factoryUrl}`, function (): void {
|
|
32
|
-
|
|
32
|
+
suiteSetup('Login', async function (): Promise<void> {
|
|
33
|
+
await loginTests.loginIntoChe();
|
|
34
|
+
});
|
|
33
35
|
test(`Create and open new workspace from factory:${factoryUrl}`, async function (): Promise<void> {
|
|
34
36
|
await workspaceHandlingTests.createAndOpenWorkspaceFromGitRepository(factoryUrl);
|
|
35
37
|
});
|
|
@@ -54,13 +56,15 @@ suite(`The SmokeTest userstory ${BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, functio
|
|
|
54
56
|
'Project files were not imported'
|
|
55
57
|
).not.undefined;
|
|
56
58
|
});
|
|
57
|
-
test('Stop the workspace', async function (): Promise<void> {
|
|
59
|
+
test('Stop the workspace by UI', async function (): Promise<void> {
|
|
58
60
|
await workspaceHandlingTests.stopWorkspace(WorkspaceHandlingTests.getWorkspaceName());
|
|
59
61
|
await browserTabsUtil.closeAllTabsExceptCurrent();
|
|
60
62
|
});
|
|
61
|
-
test('Delete the workspace', async function (): Promise<void> {
|
|
63
|
+
test('Delete the workspace by UI', async function (): Promise<void> {
|
|
62
64
|
await workspaceHandlingTests.removeWorkspace(WorkspaceHandlingTests.getWorkspaceName());
|
|
63
65
|
});
|
|
64
|
-
|
|
66
|
+
suiteTeardown('Unregister running workspace', function (): void {
|
|
67
|
+
registerRunningWorkspace('');
|
|
68
|
+
});
|
|
65
69
|
});
|
|
66
70
|
});
|
|
@@ -65,14 +65,16 @@ suite(`Check links to documentation page in Dashboard ${BASE_TEST_CONSTANTS.TEST
|
|
|
65
65
|
({ webSocketTroubleshooting, workspace, devfile, general, storageTypes } = docs);
|
|
66
66
|
});
|
|
67
67
|
|
|
68
|
+
suiteSetup('Login', async function (): Promise<void> {
|
|
69
|
+
await loginTests.loginIntoChe();
|
|
70
|
+
});
|
|
71
|
+
|
|
68
72
|
test('Check if product.json config contains correct application version', function (): void {
|
|
69
73
|
[productVersion, links[1].href, devfile, workspace, general, storageTypes, webSocketTroubleshooting].forEach((e): void => {
|
|
70
74
|
expect(e, 'Fetched links not matches with tested product version').contains(testingVersion);
|
|
71
75
|
});
|
|
72
76
|
});
|
|
73
77
|
|
|
74
|
-
loginTests.loginIntoChe();
|
|
75
|
-
|
|
76
78
|
test('Check if documentation section "About" present on Dashboard', async function (): Promise<void> {
|
|
77
79
|
await dashboard.openAboutMenu();
|
|
78
80
|
});
|
|
@@ -135,7 +137,10 @@ suite(`Check links to documentation page in Dashboard ${BASE_TEST_CONSTANTS.TEST
|
|
|
135
137
|
});
|
|
136
138
|
}
|
|
137
139
|
|
|
138
|
-
|
|
140
|
+
suiteTeardown('Open dashboard and close all other tabs', async function (): Promise<void> {
|
|
141
|
+
await dashboard.openDashboard();
|
|
142
|
+
await browserTabsUtil.closeAllTabsExceptCurrent();
|
|
143
|
+
});
|
|
139
144
|
|
|
140
145
|
suiteTeardown('Delete default DevWorkspace', function (): void {
|
|
141
146
|
kubernetesCommandLineToolsExecutor.deleteDevWorkspace();
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
**********************************************************************/
|
|
10
10
|
import { e2eContainer } from '../../configs/inversify.config';
|
|
11
11
|
import { ActivityBar, ViewControl, Workbench } from 'monaco-page-objects';
|
|
12
|
-
import { CLASSES } from '../../configs/inversify.types';
|
|
12
|
+
import { CLASSES, TYPES } from '../../configs/inversify.types';
|
|
13
13
|
import { WorkspaceHandlingTests } from '../../tests-library/WorkspaceHandlingTests';
|
|
14
14
|
import { Logger } from '../../utils/Logger';
|
|
15
15
|
import { ProjectAndFileTests } from '../../tests-library/ProjectAndFileTests';
|
|
@@ -17,6 +17,8 @@ import { LoginTests } from '../../tests-library/LoginTests';
|
|
|
17
17
|
import { registerRunningWorkspace } from '../MochaHooks';
|
|
18
18
|
import { BrowserTabsUtil } from '../../utils/BrowserTabsUtil';
|
|
19
19
|
import { BASE_TEST_CONSTANTS } from '../../constants/BASE_TEST_CONSTANTS';
|
|
20
|
+
import { ITestWorkspaceUtil } from '../../utils/workspace/ITestWorkspaceUtil';
|
|
21
|
+
import { Dashboard } from '../../pageobjects/dashboard/Dashboard';
|
|
20
22
|
|
|
21
23
|
const stackName: string = 'Empty Workspace';
|
|
22
24
|
|
|
@@ -25,9 +27,12 @@ suite(`${stackName} test ${BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, function ():
|
|
|
25
27
|
const projectAndFileTests: ProjectAndFileTests = e2eContainer.get(CLASSES.ProjectAndFileTests);
|
|
26
28
|
const loginTests: LoginTests = e2eContainer.get(CLASSES.LoginTests);
|
|
27
29
|
const browserTabsUtil: BrowserTabsUtil = e2eContainer.get(CLASSES.BrowserTabsUtil);
|
|
30
|
+
const testWorkspaceUtil: ITestWorkspaceUtil = e2eContainer.get(TYPES.WorkspaceUtil);
|
|
31
|
+
const dashboard: Dashboard = e2eContainer.get(CLASSES.Dashboard);
|
|
28
32
|
|
|
29
|
-
|
|
30
|
-
|
|
33
|
+
suiteSetup('Login', async function (): Promise<void> {
|
|
34
|
+
await loginTests.loginIntoChe();
|
|
35
|
+
});
|
|
31
36
|
test(`Create and open new workspace, stack:${stackName}`, async function (): Promise<void> {
|
|
32
37
|
await workspaceHandlingTests.createAndOpenWorkspace(stackName);
|
|
33
38
|
});
|
|
@@ -53,14 +58,16 @@ suite(`${stackName} test ${BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, function ():
|
|
|
53
58
|
}
|
|
54
59
|
});
|
|
55
60
|
|
|
56
|
-
|
|
57
|
-
await
|
|
61
|
+
suiteTeardown('Open dashboard and close all other tabs', async function (): Promise<void> {
|
|
62
|
+
await dashboard.openDashboard();
|
|
58
63
|
await browserTabsUtil.closeAllTabsExceptCurrent();
|
|
59
64
|
});
|
|
60
65
|
|
|
61
|
-
|
|
62
|
-
await
|
|
66
|
+
suiteTeardown('Stop and delete the workspace by API', async function (): Promise<void> {
|
|
67
|
+
await testWorkspaceUtil.stopAndDeleteWorkspaceByName(WorkspaceHandlingTests.getWorkspaceName());
|
|
63
68
|
});
|
|
64
69
|
|
|
65
|
-
|
|
70
|
+
suiteTeardown('Unregister running workspace', function (): void {
|
|
71
|
+
registerRunningWorkspace('');
|
|
72
|
+
});
|
|
66
73
|
});
|
|
@@ -12,12 +12,14 @@ import { ViewSection } from 'monaco-page-objects';
|
|
|
12
12
|
import { registerRunningWorkspace } from '../MochaHooks';
|
|
13
13
|
import { LoginTests } from '../../tests-library/LoginTests';
|
|
14
14
|
import { e2eContainer } from '../../configs/inversify.config';
|
|
15
|
-
import { CLASSES } from '../../configs/inversify.types';
|
|
15
|
+
import { CLASSES, TYPES } from '../../configs/inversify.types';
|
|
16
16
|
import { WorkspaceHandlingTests } from '../../tests-library/WorkspaceHandlingTests';
|
|
17
17
|
import { ProjectAndFileTests } from '../../tests-library/ProjectAndFileTests';
|
|
18
18
|
import { BASE_TEST_CONSTANTS } from '../../constants/BASE_TEST_CONSTANTS';
|
|
19
19
|
import { BrowserTabsUtil } from '../../utils/BrowserTabsUtil';
|
|
20
20
|
import { expect } from 'chai';
|
|
21
|
+
import { ITestWorkspaceUtil } from '../../utils/workspace/ITestWorkspaceUtil';
|
|
22
|
+
import { Dashboard } from '../../pageobjects/dashboard/Dashboard';
|
|
21
23
|
|
|
22
24
|
const stackName: string = 'Java 11 with Quarkus';
|
|
23
25
|
|
|
@@ -26,11 +28,15 @@ suite(`The ${stackName} userstory ${BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, func
|
|
|
26
28
|
const workspaceHandlingTests: WorkspaceHandlingTests = e2eContainer.get(CLASSES.WorkspaceHandlingTests);
|
|
27
29
|
const loginTests: LoginTests = e2eContainer.get(CLASSES.LoginTests);
|
|
28
30
|
const browserTabsUtil: BrowserTabsUtil = e2eContainer.get(CLASSES.BrowserTabsUtil);
|
|
31
|
+
const testWorkspaceUtil: ITestWorkspaceUtil = e2eContainer.get(TYPES.WorkspaceUtil);
|
|
32
|
+
const dashboard: Dashboard = e2eContainer.get(CLASSES.Dashboard);
|
|
29
33
|
|
|
30
34
|
let projectSection: ViewSection;
|
|
31
35
|
const projectName: string = 'quarkus-quickstarts';
|
|
32
36
|
|
|
33
|
-
|
|
37
|
+
suiteSetup('Login', async function (): Promise<void> {
|
|
38
|
+
await loginTests.loginIntoChe();
|
|
39
|
+
});
|
|
34
40
|
|
|
35
41
|
test(`Create and open new workspace, stack:${stackName}`, async function (): Promise<void> {
|
|
36
42
|
await workspaceHandlingTests.createAndOpenWorkspace(stackName);
|
|
@@ -64,14 +70,16 @@ suite(`The ${stackName} userstory ${BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, func
|
|
|
64
70
|
).not.undefined;
|
|
65
71
|
});
|
|
66
72
|
|
|
67
|
-
|
|
68
|
-
await
|
|
73
|
+
suiteTeardown('Open dashboard and close all other tabs', async function (): Promise<void> {
|
|
74
|
+
await dashboard.openDashboard();
|
|
69
75
|
await browserTabsUtil.closeAllTabsExceptCurrent();
|
|
70
76
|
});
|
|
71
77
|
|
|
72
|
-
|
|
73
|
-
await
|
|
78
|
+
suiteTeardown('Stop and delete the workspace by API', async function (): Promise<void> {
|
|
79
|
+
await testWorkspaceUtil.stopAndDeleteWorkspaceByName(WorkspaceHandlingTests.getWorkspaceName());
|
|
74
80
|
});
|
|
75
81
|
|
|
76
|
-
|
|
82
|
+
suiteTeardown('Unregister running workspace', function (): void {
|
|
83
|
+
registerRunningWorkspace('');
|
|
84
|
+
});
|
|
77
85
|
});
|
|
@@ -23,7 +23,7 @@ import {
|
|
|
23
23
|
import { registerRunningWorkspace } from '../MochaHooks';
|
|
24
24
|
import { LoginTests } from '../../tests-library/LoginTests';
|
|
25
25
|
import { e2eContainer } from '../../configs/inversify.config';
|
|
26
|
-
import { CLASSES } from '../../configs/inversify.types';
|
|
26
|
+
import { CLASSES, TYPES } from '../../configs/inversify.types';
|
|
27
27
|
import { WorkspaceHandlingTests } from '../../tests-library/WorkspaceHandlingTests';
|
|
28
28
|
import { ProjectAndFileTests } from '../../tests-library/ProjectAndFileTests';
|
|
29
29
|
import { Logger } from '../../utils/Logger';
|
|
@@ -34,6 +34,8 @@ import { TIMEOUT_CONSTANTS } from '../../constants/TIMEOUT_CONSTANTS';
|
|
|
34
34
|
import { BrowserTabsUtil } from '../../utils/BrowserTabsUtil';
|
|
35
35
|
import { PLUGIN_TEST_CONSTANTS } from '../../constants/PLUGIN_TEST_CONSTANTS';
|
|
36
36
|
import { BASE_TEST_CONSTANTS } from '../../constants/BASE_TEST_CONSTANTS';
|
|
37
|
+
import { ITestWorkspaceUtil } from '../../utils/workspace/ITestWorkspaceUtil';
|
|
38
|
+
import { Dashboard } from '../../pageobjects/dashboard/Dashboard';
|
|
37
39
|
|
|
38
40
|
const samples: string[] = PLUGIN_TEST_CONSTANTS.TS_SAMPLE_LIST.split(',');
|
|
39
41
|
|
|
@@ -46,6 +48,8 @@ for (const sample of samples) {
|
|
|
46
48
|
const browserTabsUtil: BrowserTabsUtil = e2eContainer.get(CLASSES.BrowserTabsUtil);
|
|
47
49
|
const cheCodeLocatorLoader: CheCodeLocatorLoader = e2eContainer.get(CLASSES.CheCodeLocatorLoader);
|
|
48
50
|
const webCheCodeLocators: Locators = cheCodeLocatorLoader.webCheCodeLocators;
|
|
51
|
+
const testWorkspaceUtil: ITestWorkspaceUtil = e2eContainer.get(TYPES.WorkspaceUtil);
|
|
52
|
+
const dashboard: Dashboard = e2eContainer.get(CLASSES.Dashboard);
|
|
49
53
|
|
|
50
54
|
let projectSection: ViewSection;
|
|
51
55
|
let extensionSection: ExtensionsViewSection;
|
|
@@ -56,7 +60,9 @@ for (const sample of samples) {
|
|
|
56
60
|
recommendations: []
|
|
57
61
|
};
|
|
58
62
|
|
|
59
|
-
|
|
63
|
+
suiteSetup('Login', async function (): Promise<void> {
|
|
64
|
+
await loginTests.loginIntoChe();
|
|
65
|
+
});
|
|
60
66
|
|
|
61
67
|
test(`Create and open new workspace, stack:${sample}`, async function (): Promise<void> {
|
|
62
68
|
await workspaceHandlingTests.createAndOpenWorkspace(sample);
|
|
@@ -202,15 +208,17 @@ for (const sample of samples) {
|
|
|
202
208
|
}
|
|
203
209
|
});
|
|
204
210
|
|
|
205
|
-
|
|
206
|
-
await
|
|
211
|
+
suiteTeardown('Open dashboard and close all other tabs', async function (): Promise<void> {
|
|
212
|
+
await dashboard.openDashboard();
|
|
207
213
|
await browserTabsUtil.closeAllTabsExceptCurrent();
|
|
208
214
|
});
|
|
209
215
|
|
|
210
|
-
|
|
211
|
-
await
|
|
216
|
+
suiteTeardown('Stop and delete the workspace by API', async function (): Promise<void> {
|
|
217
|
+
await testWorkspaceUtil.stopAndDeleteWorkspaceByName(WorkspaceHandlingTests.getWorkspaceName());
|
|
212
218
|
});
|
|
213
219
|
|
|
214
|
-
|
|
220
|
+
suiteTeardown('Unregister running workspace', function (): void {
|
|
221
|
+
registerRunningWorkspace('');
|
|
222
|
+
});
|
|
215
223
|
});
|
|
216
224
|
}
|
|
@@ -12,7 +12,7 @@ import { ViewSection } from 'monaco-page-objects';
|
|
|
12
12
|
import { registerRunningWorkspace } from '../MochaHooks';
|
|
13
13
|
import { LoginTests } from '../../tests-library/LoginTests';
|
|
14
14
|
import { e2eContainer } from '../../configs/inversify.config';
|
|
15
|
-
import { CLASSES
|
|
15
|
+
import { CLASSES } from '../../configs/inversify.types';
|
|
16
16
|
import { WorkspaceHandlingTests } from '../../tests-library/WorkspaceHandlingTests';
|
|
17
17
|
import { ProjectAndFileTests } from '../../tests-library/ProjectAndFileTests';
|
|
18
18
|
import { expect } from 'chai';
|
|
@@ -22,19 +22,20 @@ import { KubernetesCommandLineToolsExecutor } from '../../utils/KubernetesComman
|
|
|
22
22
|
import { StringUtil } from '../../utils/StringUtil';
|
|
23
23
|
import { OcpApplicationPage } from '../../pageobjects/openshift/OcpApplicationPage';
|
|
24
24
|
import { BASE_TEST_CONSTANTS } from '../../constants/BASE_TEST_CONSTANTS';
|
|
25
|
-
import { ITestWorkspaceUtil } from '../../utils/workspace/ITestWorkspaceUtil';
|
|
26
25
|
import { BrowserTabsUtil } from '../../utils/BrowserTabsUtil';
|
|
26
|
+
import { Dashboard } from '../../pageobjects/dashboard/Dashboard';
|
|
27
|
+
import { TIMEOUT_CONSTANTS } from '../../constants/TIMEOUT_CONSTANTS';
|
|
27
28
|
|
|
28
29
|
suite(`DevConsole Integration ${BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, function (): void {
|
|
29
30
|
let ocpImportPage: OcpImportFromGitPage;
|
|
30
31
|
let ocpApplicationPage: OcpApplicationPage;
|
|
31
32
|
|
|
32
33
|
const projectAndFileTests: ProjectAndFileTests = e2eContainer.get(CLASSES.ProjectAndFileTests);
|
|
34
|
+
const dashboard: Dashboard = e2eContainer.get(CLASSES.Dashboard);
|
|
33
35
|
const loginTests: LoginTests = e2eContainer.get(CLASSES.LoginTests);
|
|
34
36
|
const workspaceHandlingTests: WorkspaceHandlingTests = e2eContainer.get(CLASSES.WorkspaceHandlingTests);
|
|
35
37
|
const browserTabsUtil: BrowserTabsUtil = e2eContainer.get(CLASSES.BrowserTabsUtil);
|
|
36
38
|
const ocpMainPage: OcpMainPage = e2eContainer.get(CLASSES.OcpMainPage);
|
|
37
|
-
const testWorkspaceUtil: ITestWorkspaceUtil = e2eContainer.get(TYPES.WorkspaceUtil);
|
|
38
39
|
const kubernetesCommandLineToolsExecutor: KubernetesCommandLineToolsExecutor = e2eContainer.get(
|
|
39
40
|
CLASSES.KubernetesCommandLineToolsExecutor
|
|
40
41
|
);
|
|
@@ -72,7 +73,13 @@ suite(`DevConsole Integration ${BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, function
|
|
|
72
73
|
await ocpApplicationPage.waitAndOpenEditSourceCodeIcon();
|
|
73
74
|
});
|
|
74
75
|
|
|
75
|
-
|
|
76
|
+
test('Login', async function (): Promise<void> {
|
|
77
|
+
try {
|
|
78
|
+
await dashboard.waitLoader(TIMEOUT_CONSTANTS.TS_WAIT_LOADER_PRESENCE_TIMEOUT);
|
|
79
|
+
} catch (e) {
|
|
80
|
+
await loginTests.loginIntoChe();
|
|
81
|
+
}
|
|
82
|
+
});
|
|
76
83
|
|
|
77
84
|
test('Obtain workspace name from workspace loader page', async function (): Promise<void> {
|
|
78
85
|
await workspaceHandlingTests.obtainWorkspaceNameFromStartingPage();
|
|
@@ -99,14 +106,19 @@ suite(`DevConsole Integration ${BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, function
|
|
|
99
106
|
).not.undefined;
|
|
100
107
|
});
|
|
101
108
|
|
|
102
|
-
|
|
109
|
+
suiteTeardown('Open dashboard and close all other tabs', async function (): Promise<void> {
|
|
110
|
+
await dashboard.openDashboard();
|
|
103
111
|
await browserTabsUtil.closeAllTabsExceptCurrent();
|
|
104
|
-
testWorkspaceUtil.stopAndDeleteWorkspaceByName(WorkspaceHandlingTests.getWorkspaceName());
|
|
105
112
|
});
|
|
106
113
|
|
|
107
|
-
loginTests.logoutFromChe();
|
|
108
|
-
|
|
109
114
|
suiteTeardown('Delete project using ocp', function (): void {
|
|
115
|
+
kubernetesCommandLineToolsExecutor.workspaceName =
|
|
116
|
+
WorkspaceHandlingTests.getWorkspaceName() !== '' ? WorkspaceHandlingTests.getWorkspaceName() : 'spring-music';
|
|
117
|
+
kubernetesCommandLineToolsExecutor.deleteDevWorkspace();
|
|
110
118
|
kubernetesCommandLineToolsExecutor.deleteProject(projectName);
|
|
111
119
|
});
|
|
120
|
+
|
|
121
|
+
suiteTeardown('Unregister running workspace', function (): void {
|
|
122
|
+
registerRunningWorkspace('');
|
|
123
|
+
});
|
|
112
124
|
});
|
|
@@ -29,7 +29,7 @@ import { CheCodeLocatorLoader } from '../../pageobjects/ide/CheCodeLocatorLoader
|
|
|
29
29
|
import { registerRunningWorkspace } from '../MochaHooks';
|
|
30
30
|
import { BrowserTabsUtil } from '../../utils/BrowserTabsUtil';
|
|
31
31
|
import { WorkspaceHandlingTests } from '../../tests-library/WorkspaceHandlingTests';
|
|
32
|
-
import { CLASSES } from '../../configs/inversify.types';
|
|
32
|
+
import { CLASSES, TYPES } from '../../configs/inversify.types';
|
|
33
33
|
import { DriverHelper } from '../../utils/DriverHelper';
|
|
34
34
|
import { ProjectAndFileTests } from '../../tests-library/ProjectAndFileTests';
|
|
35
35
|
import { Logger } from '../../utils/Logger';
|
|
@@ -37,6 +37,8 @@ import { LoginTests } from '../../tests-library/LoginTests';
|
|
|
37
37
|
import { OAUTH_CONSTANTS } from '../../constants/OAUTH_CONSTANTS';
|
|
38
38
|
import { BASE_TEST_CONSTANTS } from '../../constants/BASE_TEST_CONSTANTS';
|
|
39
39
|
import { FACTORY_TEST_CONSTANTS } from '../../constants/FACTORY_TEST_CONSTANTS';
|
|
40
|
+
import { ITestWorkspaceUtil } from '../../utils/workspace/ITestWorkspaceUtil';
|
|
41
|
+
import { Dashboard } from '../../pageobjects/dashboard/Dashboard';
|
|
40
42
|
|
|
41
43
|
suite(
|
|
42
44
|
`Create a workspace via launching a factory from the ${FACTORY_TEST_CONSTANTS.TS_SELENIUM_FACTORY_GIT_PROVIDER} repository ${BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`,
|
|
@@ -49,6 +51,8 @@ suite(
|
|
|
49
51
|
const cheCodeLocatorLoader: CheCodeLocatorLoader = e2eContainer.get(CLASSES.CheCodeLocatorLoader);
|
|
50
52
|
const webCheCodeLocators: Locators = cheCodeLocatorLoader.webCheCodeLocators;
|
|
51
53
|
const oauthPage: OauthPage = e2eContainer.get(CLASSES.OauthPage);
|
|
54
|
+
const testWorkspaceUtil: ITestWorkspaceUtil = e2eContainer.get(TYPES.WorkspaceUtil);
|
|
55
|
+
const dashboard: Dashboard = e2eContainer.get(CLASSES.Dashboard);
|
|
52
56
|
|
|
53
57
|
let projectSection: ViewSection;
|
|
54
58
|
let scmProvider: SingleScmProvider;
|
|
@@ -64,7 +68,9 @@ suite(
|
|
|
64
68
|
const pushItemLabel: string = 'Push';
|
|
65
69
|
let testRepoProjectName: string;
|
|
66
70
|
|
|
67
|
-
|
|
71
|
+
suiteSetup('Login', async function (): Promise<void> {
|
|
72
|
+
await loginTests.loginIntoChe();
|
|
73
|
+
});
|
|
68
74
|
test('Navigate to the factory URL', async function (): Promise<void> {
|
|
69
75
|
await browserTabsUtil.navigateTo(FACTORY_TEST_CONSTANTS.TS_SELENIUM_FACTORY_URL());
|
|
70
76
|
});
|
|
@@ -189,15 +195,17 @@ suite(
|
|
|
189
195
|
expect(isCommitButtonDisabled).to.equal('true');
|
|
190
196
|
});
|
|
191
197
|
|
|
192
|
-
|
|
193
|
-
await
|
|
198
|
+
suiteTeardown('Open dashboard and close all other tabs', async function (): Promise<void> {
|
|
199
|
+
await dashboard.openDashboard();
|
|
194
200
|
await browserTabsUtil.closeAllTabsExceptCurrent();
|
|
195
201
|
});
|
|
196
202
|
|
|
197
|
-
|
|
198
|
-
await
|
|
203
|
+
suiteTeardown('Stop and delete the workspace by API', async function (): Promise<void> {
|
|
204
|
+
await testWorkspaceUtil.stopAndDeleteWorkspaceByName(WorkspaceHandlingTests.getWorkspaceName());
|
|
199
205
|
});
|
|
200
206
|
|
|
201
|
-
|
|
207
|
+
suiteTeardown('Unregister running workspace', function (): void {
|
|
208
|
+
registerRunningWorkspace('');
|
|
209
|
+
});
|
|
202
210
|
}
|
|
203
211
|
);
|