@eclipse-che/che-e2e 7.64.0-dev-2c00276 → 7.64.1-dev-43c3317
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/inversify.config.ts +10 -4
- package/configs/inversify.types.ts +3 -0
- package/constants/TestConstants.ts +14 -1
- package/constants/TimeoutConstants.ts +3 -3
- package/dist/configs/inversify.config.js +7 -3
- package/dist/configs/inversify.config.js.map +1 -1
- package/dist/configs/inversify.types.js +3 -0
- package/dist/configs/inversify.types.js.map +1 -1
- package/dist/constants/TestConstants.js +12 -2
- package/dist/constants/TestConstants.js.map +1 -1
- package/dist/constants/TimeoutConstants.js +3 -3
- package/dist/index.js +5 -1
- package/dist/index.js.map +1 -1
- package/dist/pageobjects/dashboard/Dashboard.js +5 -4
- package/dist/pageobjects/dashboard/Dashboard.js.map +1 -1
- package/dist/pageobjects/dashboard/Workspaces.js +4 -1
- package/dist/pageobjects/dashboard/Workspaces.js.map +1 -1
- package/dist/pageobjects/ide/CheCodeLocatorLoader.js +5 -0
- package/dist/pageobjects/ide/CheCodeLocatorLoader.js.map +1 -1
- package/dist/pageobjects/login/RedHatLoginPage.js +14 -15
- package/dist/pageobjects/login/RedHatLoginPage.js.map +1 -1
- package/dist/pageobjects/openshift/OcpApplicationPage.js +60 -0
- package/dist/pageobjects/openshift/OcpApplicationPage.js.map +1 -0
- package/dist/pageobjects/openshift/OcpImportFromGitPage.js +91 -0
- package/dist/pageobjects/openshift/OcpImportFromGitPage.js.map +1 -0
- package/dist/pageobjects/openshift/OcpLoginPage.js +3 -3
- package/dist/pageobjects/openshift/OcpLoginPage.js.map +1 -1
- package/dist/pageobjects/openshift/OcpMainPage.js +108 -0
- package/dist/pageobjects/openshift/OcpMainPage.js.map +1 -0
- package/dist/specs/api/CloneGitRepoAPI.spec.js +7 -7
- package/dist/specs/api/CloneGitRepoAPI.spec.js.map +1 -1
- package/dist/specs/api/ContainerOverridesAPI.spec.js +36 -0
- package/dist/specs/api/ContainerOverridesAPI.spec.js.map +1 -0
- package/dist/specs/api/PodOverridesAPI.spec.js +42 -0
- package/dist/specs/api/PodOverridesAPI.spec.js.map +1 -0
- package/dist/specs/dashboard-samples/RecomendedExtentions.spec.js +58 -19
- package/dist/specs/dashboard-samples/RecomendedExtentions.spec.js.map +1 -1
- package/dist/specs/devconsole-intergration/DevConsoleIntegration.spec.js +75 -0
- package/dist/specs/devconsole-intergration/DevConsoleIntegration.spec.js.map +1 -0
- package/dist/specs/factory/Factory.spec.js.map +1 -1
- package/dist/specs/factory/NoSetupRepoFactory.spec.js.map +1 -1
- package/dist/specs/factory/RefusedOAuthFactory.spec.js.map +1 -1
- package/dist/tests-library/LoginTests.js +19 -10
- package/dist/tests-library/LoginTests.js.map +1 -1
- package/dist/tests-library/ProjectAndFileTests.js +4 -0
- package/dist/tests-library/ProjectAndFileTests.js.map +1 -1
- package/dist/tests-library/WorkspaceHandlingTests.js +2 -2
- package/dist/tests-library/WorkspaceHandlingTests.js.map +1 -1
- package/dist/utils/BrowserTabsUtil.js +16 -1
- package/dist/utils/BrowserTabsUtil.js.map +1 -1
- package/dist/utils/CheReporter.js +6 -0
- package/dist/utils/CheReporter.js.map +1 -1
- package/dist/utils/DriverHelper.js +29 -3
- package/dist/utils/DriverHelper.js.map +1 -1
- package/dist/utils/KubernetesCommandLineToolsExecutor.js +162 -0
- package/dist/utils/KubernetesCommandLineToolsExecutor.js.map +1 -0
- package/dist/utils/ShellExecutor.js +15 -0
- package/dist/utils/ShellExecutor.js.map +1 -0
- package/index.ts +5 -1
- package/package.json +4 -3
- package/pageobjects/dashboard/Dashboard.ts +5 -4
- package/pageobjects/dashboard/Workspaces.ts +5 -2
- package/pageobjects/ide/CheCodeLocatorLoader.ts +5 -0
- package/pageobjects/login/RedHatLoginPage.ts +14 -16
- package/pageobjects/openshift/OcpApplicationPage.ts +42 -0
- package/pageobjects/openshift/OcpImportFromGitPage.ts +87 -0
- package/pageobjects/openshift/OcpLoginPage.ts +3 -3
- package/pageobjects/openshift/OcpMainPage.ts +109 -0
- package/resources/container-overrides.yaml +28 -0
- package/resources/pod-overrides.yaml +37 -0
- package/specs/api/CloneGitRepoAPI.spec.ts +8 -7
- package/specs/api/ContainerOverridesAPI.spec.ts +37 -0
- package/specs/api/PodOverridesAPI.spec.ts +43 -0
- package/specs/dashboard-samples/RecomendedExtentions.spec.ts +73 -21
- package/specs/devconsole-intergration/DevConsoleIntegration.spec.ts +98 -0
- package/specs/factory/Factory.spec.ts +1 -1
- package/specs/factory/NoSetupRepoFactory.spec.ts +1 -1
- package/specs/factory/RefusedOAuthFactory.spec.ts +1 -1
- package/tests-library/LoginTests.ts +17 -7
- package/tests-library/ProjectAndFileTests.ts +4 -0
- package/tests-library/WorkspaceHandlingTests.ts +2 -2
- package/utils/BrowserTabsUtil.ts +18 -3
- package/utils/CheReporter.ts +6 -0
- package/utils/DriverHelper.ts +36 -4
- package/utils/KubernetesCommandLineToolsExecutor.ts +167 -0
- package/utils/ShellExecutor.ts +13 -0
- package/dist/utils/OpenshiftClientExecutor.js +0 -98
- package/dist/utils/OpenshiftClientExecutor.js.map +0 -1
- package/utils/OpenshiftClientExecutor.ts +0 -117
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
14
|
+
var OcpImportFromGitPage_1;
|
|
15
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
|
+
exports.OcpImportFromGitPage = void 0;
|
|
17
|
+
/*********************************************************************
|
|
18
|
+
* Copyright (c) 2019-2023 Red Hat, Inc.
|
|
19
|
+
*
|
|
20
|
+
* This program and the accompanying materials are made
|
|
21
|
+
* available under the terms of the Eclipse Public License 2.0
|
|
22
|
+
* which is available at https://www.eclipse.org/legal/epl-2.0/
|
|
23
|
+
*
|
|
24
|
+
* SPDX-License-Identifier: EPL-2.0
|
|
25
|
+
**********************************************************************/
|
|
26
|
+
require("reflect-metadata");
|
|
27
|
+
const inversify_1 = require("inversify");
|
|
28
|
+
const DriverHelper_1 = require("../../utils/DriverHelper");
|
|
29
|
+
const inversify_types_1 = require("../../configs/inversify.types");
|
|
30
|
+
const selenium_webdriver_1 = require("selenium-webdriver");
|
|
31
|
+
const Logger_1 = require("../../utils/Logger");
|
|
32
|
+
const inversify_config_1 = require("../../configs/inversify.config");
|
|
33
|
+
let OcpImportFromGitPage = OcpImportFromGitPage_1 = class OcpImportFromGitPage {
|
|
34
|
+
constructor(driverHelper) {
|
|
35
|
+
this.driverHelper = driverHelper;
|
|
36
|
+
}
|
|
37
|
+
async enterGitRepoUrl(gitRepoUrl) {
|
|
38
|
+
Logger_1.Logger.debug(`${this.constructor.name}.${this.enterGitRepoUrl.name} "${gitRepoUrl}"`);
|
|
39
|
+
await this.driverHelper.enterValue(OcpImportFromGitPage_1.GIT_URL_INPUT_LOCATOR, gitRepoUrl);
|
|
40
|
+
}
|
|
41
|
+
async clickOnAdvancedOptionsButton() {
|
|
42
|
+
Logger_1.Logger.debug(`${this.constructor.name}.${this.clickOnAdvancedOptionsButton.name}`);
|
|
43
|
+
if (!(await this.driverHelper.isVisible(OcpImportFromGitPage_1.HIDE_ADVANCED_GIT_OPTIONS_LOCATOR))) {
|
|
44
|
+
await this.driverHelper.waitAndClick(OcpImportFromGitPage_1.SHOW_ADVANCED_GIT_OPTIONS_LINK_LOCATOR);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
async enterGitReference(gitReference) {
|
|
48
|
+
Logger_1.Logger.debug(`${this.constructor.name}.${this.enterGitReference.name} "${gitReference}"`);
|
|
49
|
+
await this.driverHelper.enterValue(OcpImportFromGitPage_1.GIT_REFERENCE_INPUT_LOCATOR, gitReference);
|
|
50
|
+
}
|
|
51
|
+
async selectBuilderImageImportStrategy() {
|
|
52
|
+
Logger_1.Logger.debug(`${this.constructor.name}.${this.selectBuilderImageImportStrategy.name}`);
|
|
53
|
+
await this.driverHelper.scrollToAndClick(OcpImportFromGitPage_1.EDIT_IMPORT_STRATEGY_LINK_LOCATOR);
|
|
54
|
+
await this.driverHelper.scrollToAndClick(OcpImportFromGitPage_1.BUILDER_IMAGE_STRATEGY_ITEM_LOCATOR);
|
|
55
|
+
}
|
|
56
|
+
async addLabel(label) {
|
|
57
|
+
Logger_1.Logger.debug(`${this.constructor.name}.${this.addLabel.name} "${label}"`);
|
|
58
|
+
await this.driverHelper.scrollToAndClick(OcpImportFromGitPage_1.ADD_LABEL_LINK_LOCATOR);
|
|
59
|
+
await this.driverHelper.scrollToAndEnterValue(OcpImportFromGitPage_1.ADD_LABEL_INPUT_LOCATOR, label);
|
|
60
|
+
}
|
|
61
|
+
async submitConfiguration() {
|
|
62
|
+
Logger_1.Logger.debug(`${this.constructor.name}.${this.submitConfiguration.name}`);
|
|
63
|
+
await this.driverHelper.waitAndClick(OcpImportFromGitPage_1.SUBMIT_BUTTON_LOCATOR);
|
|
64
|
+
return inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.OcpApplicationPage);
|
|
65
|
+
}
|
|
66
|
+
async fitAndSubmitConfiguration(gitRepoUrl, gitReference, label) {
|
|
67
|
+
Logger_1.Logger.debug(`${this.constructor.name}.${this.fitAndSubmitConfiguration.name}`);
|
|
68
|
+
await this.enterGitRepoUrl(gitRepoUrl);
|
|
69
|
+
await this.clickOnAdvancedOptionsButton();
|
|
70
|
+
await this.enterGitReference(gitReference);
|
|
71
|
+
await this.selectBuilderImageImportStrategy();
|
|
72
|
+
await this.addLabel(label);
|
|
73
|
+
return await this.submitConfiguration();
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
OcpImportFromGitPage.GIT_URL_INPUT_LOCATOR = selenium_webdriver_1.By.id('form-input-git-url-field');
|
|
77
|
+
OcpImportFromGitPage.SHOW_ADVANCED_GIT_OPTIONS_LINK_LOCATOR = selenium_webdriver_1.By.xpath('//*[text()="Show advanced Git options"]//ancestor::button');
|
|
78
|
+
OcpImportFromGitPage.HIDE_ADVANCED_GIT_OPTIONS_LOCATOR = selenium_webdriver_1.By.xpath('//*[text()="Hide advanced Git options"]');
|
|
79
|
+
OcpImportFromGitPage.GIT_REFERENCE_INPUT_LOCATOR = selenium_webdriver_1.By.id('form-input-git-ref-field');
|
|
80
|
+
OcpImportFromGitPage.EDIT_IMPORT_STRATEGY_LINK_LOCATOR = selenium_webdriver_1.By.xpath('//*[text()="Edit Import Strategy"]//ancestor::button');
|
|
81
|
+
OcpImportFromGitPage.BUILDER_IMAGE_STRATEGY_ITEM_LOCATOR = selenium_webdriver_1.By.xpath('//*[text()="Builder Image"]//parent::div//parent::div');
|
|
82
|
+
OcpImportFromGitPage.ADD_LABEL_LINK_LOCATOR = selenium_webdriver_1.By.xpath('//button[text()="Labels"]');
|
|
83
|
+
OcpImportFromGitPage.ADD_LABEL_INPUT_LOCATOR = selenium_webdriver_1.By.id('form-selector-labels-field');
|
|
84
|
+
OcpImportFromGitPage.SUBMIT_BUTTON_LOCATOR = selenium_webdriver_1.By.xpath('//*[@data-test-id="submit-button"]');
|
|
85
|
+
OcpImportFromGitPage = OcpImportFromGitPage_1 = __decorate([
|
|
86
|
+
inversify_1.injectable(),
|
|
87
|
+
__param(0, inversify_1.inject(inversify_types_1.CLASSES.DriverHelper)),
|
|
88
|
+
__metadata("design:paramtypes", [DriverHelper_1.DriverHelper])
|
|
89
|
+
], OcpImportFromGitPage);
|
|
90
|
+
exports.OcpImportFromGitPage = OcpImportFromGitPage;
|
|
91
|
+
//# sourceMappingURL=OcpImportFromGitPage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OcpImportFromGitPage.js","sourceRoot":"","sources":["../../../pageobjects/openshift/OcpImportFromGitPage.ts"],"names":[],"mappings":"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"}
|
|
@@ -42,7 +42,7 @@ let OcpLoginPage = OcpLoginPage_1 = class OcpLoginPage {
|
|
|
42
42
|
async clickOnLoginProviderTitle() {
|
|
43
43
|
Logger_1.Logger.debug('OcpLoginPage.clickOnLoginProviderTitle');
|
|
44
44
|
const loginProviderTitleLocator = selenium_webdriver_1.By.xpath(`//a[text()=\'${TestConstants_1.TestConstants.TS_OCP_LOGIN_PAGE_PROVIDER_TITLE}\']`);
|
|
45
|
-
await this.driverHelper.waitAndClick(loginProviderTitleLocator);
|
|
45
|
+
await this.driverHelper.waitAndClick(loginProviderTitleLocator, TimeoutConstants_1.TimeoutConstants.TS_SELENIUM_WAIT_FOR_URL);
|
|
46
46
|
}
|
|
47
47
|
async isIdentityProviderLinkVisible() {
|
|
48
48
|
Logger_1.Logger.debug('OcpLoginPage.isIdentityProviderLinkVisible');
|
|
@@ -74,8 +74,8 @@ let OcpLoginPage = OcpLoginPage_1 = class OcpLoginPage {
|
|
|
74
74
|
}
|
|
75
75
|
async clickOnLoginButton() {
|
|
76
76
|
Logger_1.Logger.debug('OcpLoginPage.clickOnLoginButton');
|
|
77
|
-
const
|
|
78
|
-
await this.driverHelper.waitAndClick(
|
|
77
|
+
const loginButtonLocator = selenium_webdriver_1.By.css('button[type=submit]');
|
|
78
|
+
await this.driverHelper.waitAndClick(loginButtonLocator);
|
|
79
79
|
}
|
|
80
80
|
async waitDisappearanceOpenShiftLoginWelcomePage() {
|
|
81
81
|
Logger_1.Logger.debug('OcpLoginPage.waitDisappearanceOpenShiftLoginWelcomePage');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OcpLoginPage.js","sourceRoot":"","sources":["../../../pageobjects/openshift/OcpLoginPage.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA;;;;;;;;wEAQwE;AACxE,4BAA0B;AAC1B,yCAA+C;AAC/C,2DAAwD;AACxD,mEAAwD;AACxD,2DAAwC;AACxC,+CAA4C;AAC5C,iEAA8D;AAC9D,uEAAoE;AAGpE,IAAa,YAAY,oBAAzB,MAAa,YAAY;IAIrB,YACmD,YAA0B;QAA1B,iBAAY,GAAZ,YAAY,CAAc;IAAI,CAAC;IAElF,KAAK,CAAC,6BAA6B;QAC/B,eAAM,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAE3D,MAAM,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,uBAAE,CAAC,KAAK,CAAC,cAAY,CAAC,0BAA0B,CAAC,EAAE,mCAAgB,CAAC,6BAA6B,CAAC,CAAC;IAC9I,CAAC;IAED,KAAK,CAAC,yBAAyB;QAC3B,eAAM,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAC;QAEvD,MAAM,yBAAyB,GAAO,uBAAE,CAAC,KAAK,CAAC,gBAAgB,6BAAa,CAAC,gCAAgC,KAAK,CAAC,CAAC;QACpH,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,yBAAyB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"OcpLoginPage.js","sourceRoot":"","sources":["../../../pageobjects/openshift/OcpLoginPage.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
14
|
+
var OcpMainPage_1;
|
|
15
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
|
+
exports.OcpMainPage = void 0;
|
|
17
|
+
/*********************************************************************
|
|
18
|
+
* Copyright (c) 2019-2023 Red Hat, Inc.
|
|
19
|
+
*
|
|
20
|
+
* This program and the accompanying materials are made
|
|
21
|
+
* available under the terms of the Eclipse Public License 2.0
|
|
22
|
+
* which is available at https://www.eclipse.org/legal/epl-2.0/
|
|
23
|
+
*
|
|
24
|
+
* SPDX-License-Identifier: EPL-2.0
|
|
25
|
+
**********************************************************************/
|
|
26
|
+
require("reflect-metadata");
|
|
27
|
+
const inversify_1 = require("inversify");
|
|
28
|
+
const DriverHelper_1 = require("../../utils/DriverHelper");
|
|
29
|
+
const inversify_types_1 = require("../../configs/inversify.types");
|
|
30
|
+
const selenium_webdriver_1 = require("selenium-webdriver");
|
|
31
|
+
const Logger_1 = require("../../utils/Logger");
|
|
32
|
+
const TimeoutConstants_1 = require("../../constants/TimeoutConstants");
|
|
33
|
+
const inversify_config_1 = require("../../configs/inversify.config");
|
|
34
|
+
let OcpMainPage = OcpMainPage_1 = class OcpMainPage {
|
|
35
|
+
constructor(driverHelper) {
|
|
36
|
+
this.driverHelper = driverHelper;
|
|
37
|
+
}
|
|
38
|
+
static getRoleLocator(role) {
|
|
39
|
+
return selenium_webdriver_1.By.xpath(`//a//*[text()="${role}"]`);
|
|
40
|
+
}
|
|
41
|
+
static getProjectDropdownItemLocator(projectName) {
|
|
42
|
+
return selenium_webdriver_1.By.xpath(`//button//*[text()="${projectName}"]`);
|
|
43
|
+
}
|
|
44
|
+
async waitOpenMainPage() {
|
|
45
|
+
Logger_1.Logger.debug(`${this.constructor.name}.${this.waitOpenMainPage.name}`);
|
|
46
|
+
await this.driverHelper.waitVisibility(OcpMainPage_1.MAIN_PAGE_HEADER_LOCATOR, TimeoutConstants_1.TimeoutConstants.TS_SELENIUM_LOAD_PAGE_TIMEOUT);
|
|
47
|
+
}
|
|
48
|
+
async clickOnSelectRoleButton() {
|
|
49
|
+
Logger_1.Logger.debug(`${this.constructor.name}.${this.clickOnSelectRoleButton.name}`);
|
|
50
|
+
await this.driverHelper.waitAndClick(OcpMainPage_1.SELECT_ROLE_BUTTON_LOCATOR);
|
|
51
|
+
}
|
|
52
|
+
async clickAddToProjectButton() {
|
|
53
|
+
Logger_1.Logger.debug(`${this.constructor.name}.${this.clickAddToProjectButton.name}`);
|
|
54
|
+
await this.driverHelper.waitAndClick(OcpMainPage_1.ADD_BUTTON_LOCATOR);
|
|
55
|
+
}
|
|
56
|
+
async selectDeveloperRole() {
|
|
57
|
+
Logger_1.Logger.debug(`${this.constructor.name}.${this.selectDeveloperRole.name}`);
|
|
58
|
+
await this.waitOpenMainPage();
|
|
59
|
+
await this.tryToSkipWebTour();
|
|
60
|
+
await this.clickOnSelectRoleButton();
|
|
61
|
+
await this.selectRole('Developer');
|
|
62
|
+
await this.tryToSkipWebTour();
|
|
63
|
+
}
|
|
64
|
+
async selectImportFromGitMethod() {
|
|
65
|
+
Logger_1.Logger.debug(`${this.constructor.name}.${this.selectImportFromGitMethod.name}`);
|
|
66
|
+
await this.driverHelper.waitAndClick(OcpMainPage_1.IMPORT_FROM_GIT_ITEM_LOCATOR);
|
|
67
|
+
return inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.OcpImportFromGitPage);
|
|
68
|
+
}
|
|
69
|
+
async openImportFromGitPage() {
|
|
70
|
+
Logger_1.Logger.debug(`${this.constructor.name}.${this.openImportFromGitPage.name}`);
|
|
71
|
+
await this.clickAddToProjectButton();
|
|
72
|
+
return await this.selectImportFromGitMethod();
|
|
73
|
+
}
|
|
74
|
+
async selectProject(projectName) {
|
|
75
|
+
Logger_1.Logger.debug(`${this.constructor.name}.${this.selectProject.name}`);
|
|
76
|
+
await this.driverHelper.waitAndClick(OcpMainPage_1.SELECT_PROJECT_DROPDOWN_LOCATOR);
|
|
77
|
+
await this.driverHelper.enterValue(OcpMainPage_1.PROJECT_FILTER_INPUT_LOCATOR, projectName);
|
|
78
|
+
await this.driverHelper.waitAndClick(OcpMainPage_1.getProjectDropdownItemLocator(projectName));
|
|
79
|
+
}
|
|
80
|
+
async selectRole(role) {
|
|
81
|
+
Logger_1.Logger.debug(`${this.constructor.name}.${this.selectRole.name} - selecting role ${role}`);
|
|
82
|
+
await this.driverHelper.waitAndClick(OcpMainPage_1.getRoleLocator(role));
|
|
83
|
+
}
|
|
84
|
+
async tryToSkipWebTour() {
|
|
85
|
+
Logger_1.Logger.debug(`${this.constructor.name}.${this.tryToSkipWebTour.name}`);
|
|
86
|
+
if (await this.driverHelper.isVisible(OcpMainPage_1.SKIP_TOUR_BUTTON_LOCATOR)) {
|
|
87
|
+
await this.driverHelper.waitAndClick(OcpMainPage_1.SKIP_TOUR_BUTTON_LOCATOR);
|
|
88
|
+
Logger_1.Logger.debug(`${this.constructor.name}.${this.tryToSkipWebTour.name} - Welcome tour modal dialog was located and skipped`);
|
|
89
|
+
}
|
|
90
|
+
else {
|
|
91
|
+
Logger_1.Logger.debug(`${this.constructor.name}.${this.tryToSkipWebTour.name} - Welcome tour modal dialog was not located`);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
};
|
|
95
|
+
OcpMainPage.MAIN_PAGE_HEADER_LOCATOR = selenium_webdriver_1.By.id('page-main-header');
|
|
96
|
+
OcpMainPage.SELECT_ROLE_BUTTON_LOCATOR = selenium_webdriver_1.By.xpath('//*[@data-test-id="perspective-switcher-toggle"]');
|
|
97
|
+
OcpMainPage.ADD_BUTTON_LOCATOR = selenium_webdriver_1.By.xpath('//*[@data-test-id="+Add-header"]');
|
|
98
|
+
OcpMainPage.IMPORT_FROM_GIT_ITEM_LOCATOR = selenium_webdriver_1.By.xpath('//*[@data-test="item import-from-git"]');
|
|
99
|
+
OcpMainPage.SELECT_PROJECT_DROPDOWN_LOCATOR = selenium_webdriver_1.By.xpath('//div[@class="co-namespace-dropdown"]//button');
|
|
100
|
+
OcpMainPage.PROJECT_FILTER_INPUT_LOCATOR = selenium_webdriver_1.By.xpath('//*[@data-test="dropdown-text-filter"]');
|
|
101
|
+
OcpMainPage.SKIP_TOUR_BUTTON_LOCATOR = selenium_webdriver_1.By.xpath('//*[text()="Skip tour"]');
|
|
102
|
+
OcpMainPage = OcpMainPage_1 = __decorate([
|
|
103
|
+
inversify_1.injectable(),
|
|
104
|
+
__param(0, inversify_1.inject(inversify_types_1.CLASSES.DriverHelper)),
|
|
105
|
+
__metadata("design:paramtypes", [DriverHelper_1.DriverHelper])
|
|
106
|
+
], OcpMainPage);
|
|
107
|
+
exports.OcpMainPage = OcpMainPage;
|
|
108
|
+
//# sourceMappingURL=OcpMainPage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OcpMainPage.js","sourceRoot":"","sources":["../../../pageobjects/openshift/OcpMainPage.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const
|
|
3
|
+
const KubernetesCommandLineToolsExecutor_1 = require("../../utils/KubernetesCommandLineToolsExecutor");
|
|
4
4
|
const chai_1 = require("chai");
|
|
5
5
|
const GitUtil_1 = require("../../utils/vsc/GitUtil");
|
|
6
6
|
const TestConstants_1 = require("../../constants/TestConstants");
|
|
7
7
|
const gitRepository = 'https://github.com/crw-qe/web-nodejs-sample';
|
|
8
8
|
suite(`Test cloning of repo "${gitRepository}" into empty workspace.`, async function () {
|
|
9
9
|
// works only for root user
|
|
10
|
-
const namespace =
|
|
10
|
+
const namespace = TestConstants_1.TestConstants.TS_API_TEST_NAMESPACE ? TestConstants_1.TestConstants.TS_API_TEST_NAMESPACE : undefined;
|
|
11
11
|
const workspaceName = 'empty-' + Math.floor(Math.random() * 1000);
|
|
12
12
|
const clonedProjectName = GitUtil_1.GitUtil.getProjectNameFromGitUrl(gitRepository);
|
|
13
13
|
let containerWorkDir = '';
|
|
14
|
-
const
|
|
15
|
-
const containerTerminal = new
|
|
14
|
+
const kubernetesCommandLineToolsExecutor = new KubernetesCommandLineToolsExecutor_1.KubernetesCommandLineToolsExecutor(workspaceName, namespace);
|
|
15
|
+
const containerTerminal = new KubernetesCommandLineToolsExecutor_1.KubernetesCommandLineToolsExecutor.ContainerTerminal(kubernetesCommandLineToolsExecutor);
|
|
16
16
|
const emptyYaml = 'apiVersion: workspace.devfile.io/v1alpha2\n' +
|
|
17
17
|
'kind: DevWorkspace\n' +
|
|
18
18
|
'metadata:\n' +
|
|
@@ -34,11 +34,11 @@ suite(`Test cloning of repo "${gitRepository}" into empty workspace.`, async fun
|
|
|
34
34
|
' - name: CODE_HOST\n' +
|
|
35
35
|
' value: 0.0.0.0';
|
|
36
36
|
suiteSetup('Create empty workspace with OC client', function () {
|
|
37
|
-
|
|
38
|
-
|
|
37
|
+
kubernetesCommandLineToolsExecutor.loginToOcp();
|
|
38
|
+
kubernetesCommandLineToolsExecutor.applyAndWaitDevWorkspace(emptyYaml);
|
|
39
39
|
});
|
|
40
40
|
suiteTeardown('Delete workspace', function () {
|
|
41
|
-
|
|
41
|
+
kubernetesCommandLineToolsExecutor.deleteDevWorkspace();
|
|
42
42
|
});
|
|
43
43
|
suite('Clone public repo without previous setup', function () {
|
|
44
44
|
suiteTeardown('Delete cloned project', function () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CloneGitRepoAPI.spec.js","sourceRoot":"","sources":["../../../specs/api/CloneGitRepoAPI.spec.ts"],"names":[],"mappings":";;AAAA,
|
|
1
|
+
{"version":3,"file":"CloneGitRepoAPI.spec.js","sourceRoot":"","sources":["../../../specs/api/CloneGitRepoAPI.spec.ts"],"names":[],"mappings":";;AAAA,uGAAoG;AACpG,+BAA8B;AAE9B,qDAAkD;AAClD,iEAA8D;AAG9D,MAAM,aAAa,GAAW,6CAA6C,CAAC;AAE5E,KAAK,CAAC,yBAAyB,aAAa,yBAAyB,EAAE,KAAK;IACxE,2BAA2B;IAC3B,MAAM,SAAS,GAAW,6BAAa,CAAC,qBAAqB,CAAC,CAAC,CAAC,6BAAa,CAAC,qBAAqB,CAAC,CAAC,CAAC,SAAS,CAAC;IAChH,MAAM,aAAa,GAAW,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC;IAC1E,MAAM,iBAAiB,GAAW,iBAAO,CAAC,wBAAwB,CAAC,aAAa,CAAC,CAAC;IAClF,IAAI,gBAAgB,GAAW,EAAE,CAAC;IAElC,MAAM,kCAAkC,GAAuC,IAAI,uEAAkC,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;IAChJ,MAAM,iBAAiB,GAAyD,IAAI,uEAAkC,CAAC,iBAAiB,CAAC,kCAAkC,CAAC,CAAC;IAE7K,MAAM,SAAS,GACX,6CAA6C;QAC7C,sBAAsB;QACtB,aAAa;QACb,WAAW,aAAa,IAAI;QAC5B,SAAS;QACT,mBAAmB;QACnB,eAAe;QACf,mBAAmB;QACnB,sBAAsB;QACtB,oBAAoB,6BAAa,CAAC,qBAAqB,IAAI;QAC3D,2CAA2C;QAC3C,oBAAoB;QACpB,wBAAwB;QACxB,cAAc,6BAAa,CAAC,uCAAuC,IAAI;QACvE,qBAAqB;QACrB,gDAAgD;QAChD,wBAAwB;QACxB,oBAAoB;QACpB,mCAAmC;QACnC,gCAAgC,CAAC;IAErC,UAAU,CAAC,uCAAuC,EAAE;QAChD,kCAAkC,CAAC,UAAU,EAAE,CAAC;QAChD,kCAAkC,CAAC,wBAAwB,CAAC,SAAS,CAAC,CAAC;IAC3E,CAAC,CAAC,CAAC;IAEH,aAAa,CAAC,kBAAkB,EAAE;QAC9B,kCAAkC,CAAC,kBAAkB,EAAE,CAAC;IAC5D,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,0CAA0C,EAAE;QAC9C,aAAa,CAAC,uBAAuB,EAAE;YACnC,iBAAiB,CAAC,YAAY,CAAC,GAAG,iBAAiB,EAAE,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,oCAAoC,EAAE;YACvC,gBAAgB,GAAG,iBAAiB,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACpE,MAAM,WAAW,GAAgB,iBAAiB,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;YAC3E,aAAM,CAAC,WAAW,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACxE,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,8BAA8B,EAAE;YACjC,aAAM,CAAC,iBAAiB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;QACtE,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,+BAA+B,EAAE;YAClC,aAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC,GAAG,gBAAgB,IAAI,iBAAiB,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,6BAAa,CAAC,kCAAkC,CAAC,CAAC;QAC/I,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const KubernetesCommandLineToolsExecutor_1 = require("../../utils/KubernetesCommandLineToolsExecutor");
|
|
7
|
+
const fs_1 = __importDefault(require("fs"));
|
|
8
|
+
const path_1 = __importDefault(require("path"));
|
|
9
|
+
const yaml_1 = __importDefault(require("yaml"));
|
|
10
|
+
const chai_1 = require("chai");
|
|
11
|
+
suite(`Test defining container overrides via attribute.`, async function () {
|
|
12
|
+
const pathToSampleFile = path_1.default.resolve('resources/container-overrides.yaml');
|
|
13
|
+
const workspaceName = yaml_1.default.parse(fs_1.default.readFileSync(pathToSampleFile, 'utf8')).metadata.name;
|
|
14
|
+
const kubernetesCommandLineToolsExecutor = new KubernetesCommandLineToolsExecutor_1.KubernetesCommandLineToolsExecutor(workspaceName);
|
|
15
|
+
suiteSetup('Login into OC client', function () {
|
|
16
|
+
kubernetesCommandLineToolsExecutor.loginToOcp();
|
|
17
|
+
});
|
|
18
|
+
suiteTeardown('Delete DewWorkspace', function () {
|
|
19
|
+
kubernetesCommandLineToolsExecutor.deleteDevWorkspace();
|
|
20
|
+
});
|
|
21
|
+
test('Apply container-overrides sample as DewWorkspace with OC client', function () {
|
|
22
|
+
kubernetesCommandLineToolsExecutor.applyYamlConfigurationAsFile(pathToSampleFile);
|
|
23
|
+
kubernetesCommandLineToolsExecutor.wait(5);
|
|
24
|
+
});
|
|
25
|
+
test('Check that fields are overridden in the Deployment for DewWorkspace', function () {
|
|
26
|
+
const devWorkspaceFullYamlOutput = yaml_1.default.parse(kubernetesCommandLineToolsExecutor.getDevWorkspaceYamlConfiguration());
|
|
27
|
+
chai_1.expect(devWorkspaceFullYamlOutput.spec.template.components[0].attributes['container-overrides']).eqls({
|
|
28
|
+
resources: {
|
|
29
|
+
limits: {
|
|
30
|
+
'nvidia.com/gpu': '1'
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
});
|
|
35
|
+
});
|
|
36
|
+
//# sourceMappingURL=ContainerOverridesAPI.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ContainerOverridesAPI.spec.js","sourceRoot":"","sources":["../../../specs/api/ContainerOverridesAPI.spec.ts"],"names":[],"mappings":";;;;;AAAA,uGAAoG;AACpG,4CAAoB;AACpB,gDAAwB;AACxB,gDAAwB;AACxB,+BAA8B;AAE9B,KAAK,CAAC,kDAAkD,EAAE,KAAK;IAC3D,MAAM,gBAAgB,GAAW,cAAI,CAAC,OAAO,CAAC,oCAAoC,CAAC,CAAC;IACpF,MAAM,aAAa,GAAW,cAAI,CAAC,KAAK,CAAC,YAAE,CAAC,YAAY,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;IAClG,MAAM,kCAAkC,GAAuC,IAAI,uEAAkC,CAAC,aAAa,CAAC,CAAC;IAErI,UAAU,CAAC,sBAAsB,EAAE;QAC/B,kCAAkC,CAAC,UAAU,EAAE,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,aAAa,CAAC,qBAAqB,EAAE;QACjC,kCAAkC,CAAC,kBAAkB,EAAE,CAAC;IAC5D,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,iEAAiE,EAAE;QACpE,kCAAkC,CAAC,4BAA4B,CAAC,gBAAgB,CAAC,CAAC;QAClF,kCAAkC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,qEAAqE,EAAE;QACzE,MAAM,0BAA0B,GAAQ,cAAI,CAAC,KAAK,CAAC,kCAAkC,CAAC,gCAAgC,EAAE,CAAC,CAAC;QAC1H,aAAM,CAAC,0BAA0B,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC,CAAC,IAAI,CAAC;YAClG,SAAS,EAAE;gBACP,MAAM,EAAE;oBACJ,gBAAgB,EAAE,GAAG;iBACxB;aACJ;SACJ,CAAC,CAAC;IACN,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const KubernetesCommandLineToolsExecutor_1 = require("../../utils/KubernetesCommandLineToolsExecutor");
|
|
7
|
+
const fs_1 = __importDefault(require("fs"));
|
|
8
|
+
const path_1 = __importDefault(require("path"));
|
|
9
|
+
const yaml_1 = __importDefault(require("yaml"));
|
|
10
|
+
const chai_1 = require("chai");
|
|
11
|
+
suite(`Test defining pod overrides via attribute.`, async function () {
|
|
12
|
+
const pathToSampleFile = path_1.default.resolve('resources/pod-overrides.yaml');
|
|
13
|
+
const workspaceName = yaml_1.default.parse(fs_1.default.readFileSync(pathToSampleFile, 'utf8')).metadata.name;
|
|
14
|
+
const kubernetesCommandLineToolsExecutor = new KubernetesCommandLineToolsExecutor_1.KubernetesCommandLineToolsExecutor(workspaceName);
|
|
15
|
+
suiteSetup('Login into OC client', function () {
|
|
16
|
+
kubernetesCommandLineToolsExecutor.loginToOcp();
|
|
17
|
+
});
|
|
18
|
+
suiteTeardown('Delete DewWorkspace', function () {
|
|
19
|
+
kubernetesCommandLineToolsExecutor.deleteDevWorkspace();
|
|
20
|
+
});
|
|
21
|
+
test('Apply pod-overrides sample as DewWorkspace with OC client', function () {
|
|
22
|
+
kubernetesCommandLineToolsExecutor.applyYamlConfigurationAsFile(pathToSampleFile);
|
|
23
|
+
kubernetesCommandLineToolsExecutor.wait(5);
|
|
24
|
+
});
|
|
25
|
+
test('Check that fields are overridden in the Deployment for DewWorkspace', function () {
|
|
26
|
+
const devWorkspaceFullYamlOutput = yaml_1.default.parse(kubernetesCommandLineToolsExecutor.getDevWorkspaceYamlConfiguration());
|
|
27
|
+
chai_1.expect(devWorkspaceFullYamlOutput.spec.template.attributes['pod-overrides']).eqls({
|
|
28
|
+
metadata: {
|
|
29
|
+
annotations: {
|
|
30
|
+
'io.kubernetes.cri-o.userns-mode': 'auto:size=65536;map-to-root=true',
|
|
31
|
+
'io.openshift.userns': 'true',
|
|
32
|
+
'openshift.io/scc': 'container-build'
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
spec: {
|
|
36
|
+
runtimeClassName: 'kata',
|
|
37
|
+
schedulerName: 'stork'
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
});
|
|
41
|
+
});
|
|
42
|
+
//# sourceMappingURL=PodOverridesAPI.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PodOverridesAPI.spec.js","sourceRoot":"","sources":["../../../specs/api/PodOverridesAPI.spec.ts"],"names":[],"mappings":";;;;;AAAA,uGAAoG;AACpG,4CAAoB;AACpB,gDAAwB;AACxB,gDAAwB;AACxB,+BAA8B;AAE9B,KAAK,CAAC,4CAA4C,EAAE,KAAK;IACrD,MAAM,gBAAgB,GAAW,cAAI,CAAC,OAAO,CAAC,8BAA8B,CAAC,CAAC;IAC9E,MAAM,aAAa,GAAW,cAAI,CAAC,KAAK,CAAC,YAAE,CAAC,YAAY,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;IAClG,MAAM,kCAAkC,GAAuC,IAAI,uEAAkC,CAAC,aAAa,CAAC,CAAC;IAErI,UAAU,CAAC,sBAAsB,EAAE;QAC/B,kCAAkC,CAAC,UAAU,EAAE,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,aAAa,CAAC,qBAAqB,EAAE;QACjC,kCAAkC,CAAC,kBAAkB,EAAE,CAAC;IAC5D,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,2DAA2D,EAAE;QAC9D,kCAAkC,CAAC,4BAA4B,CAAC,gBAAgB,CAAC,CAAC;QAClF,kCAAkC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,qEAAqE,EAAE;QACzE,MAAM,0BAA0B,GAAQ,cAAI,CAAC,KAAK,CAAC,kCAAkC,CAAC,gCAAgC,EAAE,CAAC,CAAC;QAC1H,aAAM,CAAC,0BAA0B,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC;YAC9E,QAAQ,EAAE;gBACN,WAAW,EAAE;oBACT,iCAAiC,EAAE,kCAAkC;oBACrE,qBAAqB,EAAE,MAAM;oBAC7B,kBAAkB,EAAE,iBAAiB;iBACxC;aACJ;YACD,IAAI,EAAE;gBACF,gBAAgB,EAAE,MAAM;gBACxB,aAAa,EAAE,OAAO;aACzB;SACJ,CAAC,CAAC;IACN,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
|
@@ -25,6 +25,7 @@ const loginTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES
|
|
|
25
25
|
const driverHelper = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.DriverHelper);
|
|
26
26
|
const webCheCodeLocators = new CheCodeLocatorLoader_1.CheCodeLocatorLoader().webCheCodeLocators;
|
|
27
27
|
const samples = TestConstants_1.TestConstants.TS_SAMPLE_LIST.split(',');
|
|
28
|
+
const browserTabsUtil = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.BrowserTabsUtil);
|
|
28
29
|
suite(`Check if recommended extensions installed for ${samples}`, async function () {
|
|
29
30
|
let projectSection;
|
|
30
31
|
let extensionsView;
|
|
@@ -57,7 +58,7 @@ suite(`Check if recommended extensions installed for ${samples}`, async function
|
|
|
57
58
|
await trustedProjectDialog.pushButton(buttonYesITrustTheAuthors);
|
|
58
59
|
}
|
|
59
60
|
catch (e) {
|
|
60
|
-
Logger_1.Logger.
|
|
61
|
+
Logger_1.Logger.debug(`Welcome modal dialog was not shown: ${e}`);
|
|
61
62
|
}
|
|
62
63
|
});
|
|
63
64
|
test(`Get recommended extensions list from ${extensionsListFileName}`, async function () {
|
|
@@ -73,37 +74,71 @@ suite(`Check if recommended extensions installed for ${samples}`, async function
|
|
|
73
74
|
Logger_1.Logger.debug(`editor.getText(): get recommended extensions as text from editor, delete comments and parse to object.`);
|
|
74
75
|
recommendedExtensions = JSON.parse((await editor.getText()).replace(/\/\*[\s\S]*?\*\/|(?<=[^:])\/\/.*|^\/\/.*/g, '').trim());
|
|
75
76
|
Logger_1.Logger.debug(`recommendedExtensions.recommendations: Get recommendations clear names using map().`);
|
|
76
|
-
recommendedExtensions.recommendations = recommendedExtensions.recommendations.map((r) =>
|
|
77
|
+
recommendedExtensions.recommendations = recommendedExtensions.recommendations.map((r) => {
|
|
78
|
+
const [publisher, name] = r.split('.');
|
|
79
|
+
return { publisher, name };
|
|
80
|
+
});
|
|
81
|
+
Logger_1.Logger.info(`Recommended extension for this workspace:\n${JSON.stringify(recommendedExtensions.recommendations)}.`);
|
|
77
82
|
});
|
|
78
83
|
test(`Open "Extensions" view section`, async function () {
|
|
79
84
|
var _a;
|
|
80
85
|
Logger_1.Logger.debug(`ActivityBar().getViewControl('Extensions'))?.openView(): open Extensions view.`);
|
|
81
86
|
extensionsView = await ((_a = (await new monaco_page_objects_1.ActivityBar().getViewControl('Extensions'))) === null || _a === void 0 ? void 0 : _a.openView());
|
|
82
|
-
Logger_1.Logger.debug(`extensionsView?.getContent().getSections(): get current section.`);
|
|
83
|
-
[extensionSection] = await (extensionsView === null || extensionsView === void 0 ? void 0 : extensionsView.getContent().getSections());
|
|
84
87
|
});
|
|
85
|
-
test(`
|
|
88
|
+
test(`Let extensions complete installation`, async function () {
|
|
86
89
|
Logger_1.Logger.info(`Time for extensions installation TimeoutConstants.TS_COMMON_PLUGIN_TEST_TIMEOUT=${TimeoutConstants_1.TimeoutConstants.TS_COMMON_PLUGIN_TEST_TIMEOUT}`);
|
|
87
90
|
await driverHelper.wait(TimeoutConstants_1.TimeoutConstants.TS_COMMON_PLUGIN_TEST_TIMEOUT);
|
|
88
91
|
});
|
|
89
92
|
test(`Check if extensions is installed and enabled`, async function () {
|
|
90
|
-
|
|
93
|
+
var _a, _b;
|
|
94
|
+
this.retries(10);
|
|
95
|
+
Logger_1.Logger.debug(`ActivityBar().getViewControl('Extensions'))?.openView(): open Extensions view.`);
|
|
96
|
+
extensionsView = await ((_a = (await new monaco_page_objects_1.ActivityBar().getViewControl('Extensions'))) === null || _a === void 0 ? void 0 : _a.openView());
|
|
97
|
+
Logger_1.Logger.debug(`extensionsView?.getContent().getSections(): get current section.`);
|
|
98
|
+
[extensionSection] = await (extensionsView === null || extensionsView === void 0 ? void 0 : extensionsView.getContent().getSections());
|
|
99
|
+
await driverHelper.waitAllPresence(webCheCodeLocators.ExtensionsViewSection.itemTitle, TimeoutConstants_1.TimeoutConstants.TS_EDITOR_TAB_INTERACTION_TIMEOUT);
|
|
91
100
|
for (const extension of recommendedExtensions.recommendations) {
|
|
92
|
-
Logger_1.Logger.
|
|
93
|
-
|
|
101
|
+
Logger_1.Logger.info(`Check if ${JSON.stringify(extension)} are installed.`);
|
|
102
|
+
Logger_1.Logger.debug(`extensionSection.findItem(${extension.name}).`);
|
|
103
|
+
await extensionSection.findItem(extension.name);
|
|
104
|
+
// check if extension require reload the page
|
|
105
|
+
if (await driverHelper.isVisible(webCheCodeLocators.ExtensionsViewSection.requireReloadButton)) {
|
|
106
|
+
Logger_1.Logger.debug(`Extension require reload the editor. Refreshing the page..`);
|
|
107
|
+
await browserTabsUtil.refreshPage();
|
|
108
|
+
await projectAndFileTests.waitWorkspaceReadinessForCheCodeEditor();
|
|
109
|
+
Logger_1.Logger.debug(`ActivityBar().getViewControl('Extensions'))?.openView(): open Extensions view.`);
|
|
110
|
+
extensionsView = await ((_b = (await new monaco_page_objects_1.ActivityBar().getViewControl('Extensions'))) === null || _b === void 0 ? void 0 : _b.openView());
|
|
111
|
+
Logger_1.Logger.debug(`extensionsView?.getContent().getSections(): get current section.`);
|
|
112
|
+
[extensionSection] = await (extensionsView === null || extensionsView === void 0 ? void 0 : extensionsView.getContent().getSections());
|
|
113
|
+
await driverHelper.waitAllPresence(webCheCodeLocators.ExtensionsViewSection.itemTitle, TimeoutConstants_1.TimeoutConstants.TS_EDITOR_TAB_INTERACTION_TIMEOUT);
|
|
114
|
+
Logger_1.Logger.debug(`extensionSection.findItem(${extension.name}).`);
|
|
115
|
+
await extensionSection.findItem(extension.name);
|
|
116
|
+
}
|
|
94
117
|
Logger_1.Logger.debug(`extensionsView?.getContent().getSections(): switch to marketplace section.`);
|
|
95
118
|
const [marketplaceSection] = await (extensionsView === null || extensionsView === void 0 ? void 0 : extensionsView.getContent().getSections());
|
|
96
|
-
await driverHelper.waitVisibility(webCheCodeLocators.ExtensionsViewSection.items, TimeoutConstants_1.TimeoutConstants.
|
|
97
|
-
Logger_1.Logger.debug(`marketplaceSection.getVisibleItems(): get
|
|
98
|
-
const
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
119
|
+
await driverHelper.waitVisibility(webCheCodeLocators.ExtensionsViewSection.items, TimeoutConstants_1.TimeoutConstants.TS_EDITOR_TAB_INTERACTION_TIMEOUT);
|
|
120
|
+
Logger_1.Logger.debug(`marketplaceSection.getVisibleItems(): get all found items.`);
|
|
121
|
+
const allFinedItems = await marketplaceSection.getVisibleItems();
|
|
122
|
+
let itemWithRightNameAndPublisher;
|
|
123
|
+
for (const item of allFinedItems) {
|
|
124
|
+
Logger_1.Logger.debug(`Try to find extension published by ${extension.publisher}.`);
|
|
125
|
+
if (await item.getAuthor() === extension.publisher) {
|
|
126
|
+
itemWithRightNameAndPublisher = item;
|
|
127
|
+
Logger_1.Logger.debug(`Extension was found: ${await (itemWithRightNameAndPublisher === null || itemWithRightNameAndPublisher === void 0 ? void 0 : itemWithRightNameAndPublisher.getTitle())}`);
|
|
128
|
+
break;
|
|
129
|
+
}
|
|
130
|
+
if (itemWithRightNameAndPublisher === undefined) {
|
|
131
|
+
Logger_1.Logger.error(`Extension with publisher as ${extension.publisher} was not found.`);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
Logger_1.Logger.debug(`itemWithRightNameAndPublisher?.isInstalled()`);
|
|
135
|
+
const isInstalled = await (itemWithRightNameAndPublisher === null || itemWithRightNameAndPublisher === void 0 ? void 0 : itemWithRightNameAndPublisher.isInstalled());
|
|
136
|
+
Logger_1.Logger.debug(`itemWithRightNameAndPublisher?.isInstalled(): ${isInstalled}.`);
|
|
102
137
|
chai_1.expect(isInstalled).eqls(true);
|
|
103
|
-
Logger_1.Logger.debug(`
|
|
104
|
-
const extensionManageMenu = await
|
|
138
|
+
Logger_1.Logger.debug(`itemWithRightNameAndPublisher.manage(): get context menu.`);
|
|
139
|
+
const extensionManageMenu = await (itemWithRightNameAndPublisher === null || itemWithRightNameAndPublisher === void 0 ? void 0 : itemWithRightNameAndPublisher.manage());
|
|
105
140
|
Logger_1.Logger.debug(`extensionManageMenu.getItems(): get menu items.`);
|
|
106
|
-
const extensionMenuItems = await extensionManageMenu.getItems();
|
|
141
|
+
const extensionMenuItems = await (extensionManageMenu === null || extensionManageMenu === void 0 ? void 0 : extensionManageMenu.getItems());
|
|
107
142
|
let extensionMenuItemLabels = '';
|
|
108
143
|
for (const item of extensionMenuItems) {
|
|
109
144
|
Logger_1.Logger.trace(`extensionMenuItems -> item.getLabel(): get menu items names.`);
|
|
@@ -113,8 +148,12 @@ suite(`Check if recommended extensions installed for ${samples}`, async function
|
|
|
113
148
|
chai_1.expect(extensionMenuItemLabels).contains('Disable').and.not.contains('Enable');
|
|
114
149
|
}
|
|
115
150
|
});
|
|
116
|
-
test('
|
|
117
|
-
await workspaceHandlingTests.
|
|
151
|
+
test('Stop the workspace', async function () {
|
|
152
|
+
await workspaceHandlingTests.stopWorkspace(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
|
|
153
|
+
await browserTabsUtil.closeAllTabsExceptCurrent();
|
|
154
|
+
});
|
|
155
|
+
test('Delete the workspace', async function () {
|
|
156
|
+
await workspaceHandlingTests.removeWorkspace(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
|
|
118
157
|
});
|
|
119
158
|
}
|
|
120
159
|
loginTests.logoutFromChe();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RecomendedExtentions.spec.js","sourceRoot":"","sources":["../../../specs/dashboard-samples/RecomendedExtentions.spec.ts"],"names":[],"mappings":";AAAA;;;;;;;;wEAQwE;;AAExE,6DAa6B;AAC7B,8CAAyD;AAEzD,qEAA8D;AAC9D,mEAAwD;AACxD,uFAAoF;AAEpF,+CAA4C;AAE5C,qFAAkF;AAClF,+BAA8B;AAC9B,uEAAoE;AACpE,iEAA8D;
|
|
1
|
+
{"version":3,"file":"RecomendedExtentions.spec.js","sourceRoot":"","sources":["../../../specs/dashboard-samples/RecomendedExtentions.spec.ts"],"names":[],"mappings":"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"}
|