@eclipse-che/che-e2e 7.76.0-next-bd36cef → 7.76.0-next-be6d9b8
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/dist/driver/ChromeDriver.js +1 -0
- package/dist/driver/ChromeDriver.js.map +1 -1
- package/dist/pageobjects/dashboard/Dashboard.js +1 -1
- package/dist/pageobjects/dashboard/Dashboard.js.map +1 -1
- package/dist/specs/SmokeTest.spec.js +4 -16
- package/dist/specs/SmokeTest.spec.js.map +1 -1
- package/dist/specs/dashboard-samples/Quarkus.spec.js +7 -6
- package/dist/specs/dashboard-samples/Quarkus.spec.js.map +1 -1
- package/dist/specs/dashboard-samples/RecommendedExtensions.spec.js +6 -8
- package/dist/specs/dashboard-samples/RecommendedExtensions.spec.js.map +1 -1
- package/dist/specs/devconsole-intergration/DevConsoleIntegration.spec.js +3 -4
- package/dist/specs/devconsole-intergration/DevConsoleIntegration.spec.js.map +1 -1
- package/dist/specs/factory/Factory.spec.js +8 -8
- package/dist/specs/factory/Factory.spec.js.map +1 -1
- package/dist/specs/factory/NoSetupRepoFactory.spec.js +6 -7
- package/dist/specs/factory/NoSetupRepoFactory.spec.js.map +1 -1
- package/dist/specs/factory/RefusedOAuthFactory.spec.js +7 -9
- package/dist/specs/factory/RefusedOAuthFactory.spec.js.map +1 -1
- package/dist/specs/miscellaneous/CreateWorkspaceWithExistedName.spec.js +6 -7
- package/dist/specs/miscellaneous/CreateWorkspaceWithExistedName.spec.js.map +1 -1
- package/dist/specs/miscellaneous/KubedockPodmanTest.spec.js +2 -12
- package/dist/specs/miscellaneous/KubedockPodmanTest.spec.js.map +1 -1
- package/dist/specs/miscellaneous/WorkspaceWithParent.spec.js +10 -9
- package/dist/specs/miscellaneous/WorkspaceWithParent.spec.js.map +1 -1
- package/dist/tests-library/ProjectAndFileTests.js +44 -1
- package/dist/tests-library/ProjectAndFileTests.js.map +1 -1
- package/dist/utils/CheReporter.js +11 -0
- package/dist/utils/CheReporter.js.map +1 -1
- package/driver/ChromeDriver.ts +1 -0
- package/package.json +3 -2
- package/pageobjects/dashboard/Dashboard.ts +1 -1
- package/specs/SmokeTest.spec.ts +8 -9
- package/specs/dashboard-samples/Quarkus.spec.ts +13 -7
- package/specs/dashboard-samples/RecommendedExtensions.spec.ts +6 -8
- package/specs/devconsole-intergration/DevConsoleIntegration.spec.ts +10 -4
- package/specs/factory/Factory.spec.ts +9 -11
- package/specs/factory/NoSetupRepoFactory.spec.ts +6 -9
- package/specs/factory/RefusedOAuthFactory.spec.ts +7 -11
- package/specs/miscellaneous/CreateWorkspaceWithExistedName.spec.ts +13 -7
- package/specs/miscellaneous/KubedockPodmanTest.spec.ts +3 -3
- package/specs/miscellaneous/WorkspaceWithParent.spec.ts +15 -10
- package/tests-library/ProjectAndFileTests.ts +58 -2
- package/utils/CheReporter.ts +12 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KubedockPodmanTest.spec.js","sourceRoot":"","sources":["../../../specs/miscellaneous/KubedockPodmanTest.spec.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"KubedockPodmanTest.spec.js","sourceRoot":"","sources":["../../../specs/miscellaneous/KubedockPodmanTest.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,8 +26,10 @@ suite('Workspace using a parent test suite', function () {
|
|
|
26
26
|
const workspaceHandlingTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.WorkspaceHandlingTests);
|
|
27
27
|
const kubernetesCommandLineToolsExecutor = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.KubernetesCommandLineToolsExecutor);
|
|
28
28
|
let podName = '';
|
|
29
|
+
suiteSetup(function () {
|
|
30
|
+
kubernetesCommandLineToolsExecutor.loginToOcp();
|
|
31
|
+
});
|
|
29
32
|
loginTests.loginIntoChe();
|
|
30
|
-
kubernetesCommandLineToolsExecutor.loginToOcp();
|
|
31
33
|
test('Create a workspace using a parent', async function () {
|
|
32
34
|
const factoryUrl = `${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TS_SELENIUM_BASE_URL}/dashboard/#https://github.com/testsfactory/parentDevfile`;
|
|
33
35
|
await dashboard.waitPage();
|
|
@@ -38,11 +40,11 @@ suite('Workspace using a parent test suite', function () {
|
|
|
38
40
|
await projectAndFileTests.performTrustAuthorDialog();
|
|
39
41
|
});
|
|
40
42
|
test('Check cloning of the test project', async function () {
|
|
41
|
-
const expectedProjectItems = ['.devfile.yaml', 'parent.yaml', 'README.md'];
|
|
42
|
-
const visibleContent = await
|
|
43
|
+
const expectedProjectItems = ['.devfile.yaml', 'parent.yaml', 'README.md', 'parentdevfile'];
|
|
44
|
+
const visibleContent = await projectAndFileTests.getProjectViewSession();
|
|
43
45
|
for (const expectedProjectItem of expectedProjectItems) {
|
|
44
|
-
const visibleItem = await
|
|
45
|
-
(0, chai_1.expect)(visibleItem).not.
|
|
46
|
+
const visibleItem = await projectAndFileTests.getProjectTreeItem(visibleContent, expectedProjectItem);
|
|
47
|
+
(0, chai_1.expect)(visibleItem).not.undefined;
|
|
46
48
|
}
|
|
47
49
|
});
|
|
48
50
|
test('Check devfile VS Code tasks ', async function () {
|
|
@@ -61,14 +63,13 @@ suite('Workspace using a parent test suite', function () {
|
|
|
61
63
|
const getPodNameCommand = `${API_TEST_CONSTANTS_1.API_TEST_CONSTANTS.TS_API_TEST_KUBERNETES_COMMAND_LINE_TOOL} get pods --selector=controller.devfile.io/devworkspace_name=sample-using-parent --output jsonpath=\'{.items[0].metadata.name}\'`;
|
|
62
64
|
podName = shellExecutor.executeArbitraryShellScript(getPodNameCommand);
|
|
63
65
|
const containerNames = shellExecutor.executeArbitraryShellScript(`${API_TEST_CONSTANTS_1.API_TEST_CONSTANTS.TS_API_TEST_KUBERNETES_COMMAND_LINE_TOOL} get pod ${podName} --output jsonpath=\'{.spec.containers[*].name}\'`);
|
|
64
|
-
(0, chai_1.expect)(containerNames).
|
|
65
|
-
(0, chai_1.expect)(containerNames).contains('che-gateway');
|
|
66
|
+
(0, chai_1.expect)(containerNames).contains('tools').and.contains('che-gateway');
|
|
66
67
|
const initContainerName = shellExecutor.executeArbitraryShellScript(`${API_TEST_CONSTANTS_1.API_TEST_CONSTANTS.TS_API_TEST_KUBERNETES_COMMAND_LINE_TOOL} get pod ${podName} --output jsonpath=\'{.spec.initContainers[].name}\'`);
|
|
67
|
-
(0, chai_1.expect)(initContainerName).
|
|
68
|
+
(0, chai_1.expect)(initContainerName).contains('che-code-injector');
|
|
68
69
|
});
|
|
69
70
|
test('Check expected environment variables', function () {
|
|
70
71
|
const envList = shellExecutor.executeArbitraryShellScript(`${API_TEST_CONSTANTS_1.API_TEST_CONSTANTS.TS_API_TEST_KUBERNETES_COMMAND_LINE_TOOL} exec -i ${podName} -c tools -- sh -c env`);
|
|
71
|
-
(0, chai_1.expect)(envList).
|
|
72
|
+
(0, chai_1.expect)(envList).contains('DEVFILE_ENV_VAR=true').and.contains('PARENT_ENV_VAR=true');
|
|
72
73
|
});
|
|
73
74
|
loginTests.logoutFromChe();
|
|
74
75
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorkspaceWithParent.spec.js","sourceRoot":"","sources":["../../../specs/miscellaneous/WorkspaceWithParent.spec.ts"],"names":[],"mappings":";;AAAA;;;;;;;;wEAQwE;AACxE,qEAA8D;AAE9D,
|
|
1
|
+
{"version":3,"file":"WorkspaceWithParent.spec.js","sourceRoot":"","sources":["../../../specs/miscellaneous/WorkspaceWithParent.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -51,15 +51,58 @@ let ProjectAndFileTests = class ProjectAndFileTests {
|
|
|
51
51
|
async performTrustAuthorDialog() {
|
|
52
52
|
Logger_1.Logger.debug();
|
|
53
53
|
// sometimes the trust dialog does not appear at first time, for avoiding this problem we send click event for activating
|
|
54
|
-
|
|
54
|
+
const workbench = new monaco_page_objects_1.Workbench();
|
|
55
|
+
await workbench.click();
|
|
55
56
|
await this.driverHelper.waitAndClick(this.cheCodeLocatorLoader.webCheCodeLocators.WelcomeContent.button, TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_DIALOG_WINDOW_DEFAULT_TIMEOUT);
|
|
56
57
|
try {
|
|
58
|
+
await workbench.click();
|
|
57
59
|
await this.driverHelper.waitAndClick(this.cheCodeLocatorLoader.webCheCodeLocators.WelcomeContent.button, TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_DIALOG_WINDOW_DEFAULT_TIMEOUT);
|
|
58
60
|
}
|
|
59
61
|
catch (e) {
|
|
60
62
|
Logger_1.Logger.info('Second welcome content dialog box was not shown');
|
|
61
63
|
}
|
|
62
64
|
}
|
|
65
|
+
/**
|
|
66
|
+
* find an ViewSection with project tree.
|
|
67
|
+
* @returns Promise resolving to ViewSection object
|
|
68
|
+
*/
|
|
69
|
+
async getProjectViewSession() {
|
|
70
|
+
Logger_1.Logger.debug();
|
|
71
|
+
await this.driverHelper.waitVisibility(this.cheCodeLocatorLoader.webCheCodeLocators.DefaultTreeSection.itemRow, TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_EXPAND_PROJECT_TREE_ITEM_TIMEOUT);
|
|
72
|
+
const viewContent = new monaco_page_objects_1.SideBarView().getContent();
|
|
73
|
+
const [projectSection] = await viewContent.getSections();
|
|
74
|
+
return projectSection;
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* find an item in this view section by label. Does not perform recursive search through the whole tree.
|
|
78
|
+
* Does however scroll through all the expanded content. Will find items beyond the current scroll range.
|
|
79
|
+
* @param projectSection ViewSection with project tree files.
|
|
80
|
+
* @param label Label of the item to search for.
|
|
81
|
+
* @param itemLevel Shows how deep the algorithm should look into expanded folders to find item,
|
|
82
|
+
* default - 2 means first level is project directory and files inside it is the second level, unlimited 0
|
|
83
|
+
* @returns Promise resolving to ViewItem object is such item exists, undefined otherwise
|
|
84
|
+
*/
|
|
85
|
+
async getProjectTreeItem(projectSection, label, itemLevel = 2) {
|
|
86
|
+
Logger_1.Logger.debug(`${label}`);
|
|
87
|
+
let projectTreeItem;
|
|
88
|
+
await this.driverHelper.waitVisibility(this.cheCodeLocatorLoader.webCheCodeLocators.ScmView.itemLevel(itemLevel), TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_EXPAND_PROJECT_TREE_ITEM_TIMEOUT);
|
|
89
|
+
try {
|
|
90
|
+
projectTreeItem = await projectSection.findItem(label, itemLevel);
|
|
91
|
+
if (!projectTreeItem) {
|
|
92
|
+
try {
|
|
93
|
+
await projectSection.collapse();
|
|
94
|
+
projectTreeItem = await projectSection.findItem(label, itemLevel);
|
|
95
|
+
}
|
|
96
|
+
catch (e) {
|
|
97
|
+
Logger_1.Logger.warn(JSON.stringify(e));
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
catch (e) {
|
|
102
|
+
Logger_1.Logger.warn(JSON.stringify(e));
|
|
103
|
+
}
|
|
104
|
+
return projectTreeItem;
|
|
105
|
+
}
|
|
63
106
|
};
|
|
64
107
|
ProjectAndFileTests = __decorate([
|
|
65
108
|
(0, inversify_1.injectable)(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectAndFileTests.js","sourceRoot":"","sources":["../../tests-library/ProjectAndFileTests.ts"],"names":[],"mappings":";AAAA;;;;;;;;wEAQwE;;;;;;;;;;;;;;;AAExE,4BAA0B;AAC1B,yCAA+C;AAC/C,wDAAqD;AACrD,gEAAqD;AACrD,4CAAyC;AACzC,sEAAmE;AACnE,kFAA+E;AAC/E,
|
|
1
|
+
{"version":3,"file":"ProjectAndFileTests.js","sourceRoot":"","sources":["../../tests-library/ProjectAndFileTests.ts"],"names":[],"mappings":"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"}
|
|
@@ -61,6 +61,8 @@ const PLUGIN_TEST_CONSTANTS_1 = require("../constants/PLUGIN_TEST_CONSTANTS");
|
|
|
61
61
|
const inversify_1 = require("inversify");
|
|
62
62
|
const inversify_inject_decorators_1 = __importDefault(require("inversify-inject-decorators"));
|
|
63
63
|
const inversify_config_1 = require("../configs/inversify.config");
|
|
64
|
+
// @ts-ignore: No module declaration file
|
|
65
|
+
const chromeHar = __importStar(require("chrome-har"));
|
|
64
66
|
const { lazyInject } = (0, inversify_inject_decorators_1.default)(inversify_config_1.e2eContainer);
|
|
65
67
|
let CheReporter = CheReporter_1 = class CheReporter extends mocha.reporters.Spec {
|
|
66
68
|
constructor(runner, options) {
|
|
@@ -147,6 +149,7 @@ let CheReporter = CheReporter_1 = class CheReporter extends mocha.reporters.Spec
|
|
|
147
149
|
const screenshotFileName = `${testReportDirPath}/screenshot-${testTitle}.png`;
|
|
148
150
|
const pageSourceFileName = `${testReportDirPath}/pagesource-${testTitle}.html`;
|
|
149
151
|
const browserLogsFileName = `${testReportDirPath}/browserlogs-${testTitle}.txt`;
|
|
152
|
+
const harFileName = `${testReportDirPath}/har-${testTitle}.har`;
|
|
150
153
|
// create reporter dir if not exist
|
|
151
154
|
const reportDirExists = fs.existsSync(REPORTER_CONSTANTS_1.REPORTER_CONSTANTS.TS_SELENIUM_REPORT_FOLDER);
|
|
152
155
|
if (!reportDirExists) {
|
|
@@ -175,6 +178,14 @@ let CheReporter = CheReporter_1 = class CheReporter extends mocha.reporters.Spec
|
|
|
175
178
|
browserLogsStream.write(Buffer.from(browserLogs), () => {
|
|
176
179
|
browserLogsStream.end();
|
|
177
180
|
});
|
|
181
|
+
// take networking logs and write to file
|
|
182
|
+
const networkLogsEntries = await this.driverHelper.getDriver().manage().logs().get('performance');
|
|
183
|
+
const events = networkLogsEntries.map((entry) => JSON.parse(entry.message).message);
|
|
184
|
+
const har = chromeHar.harFromMessages(events, { includeTextFromResponseBody: true });
|
|
185
|
+
const networkLogsStream = fs.createWriteStream(harFileName);
|
|
186
|
+
networkLogsStream.write(Buffer.from(JSON.stringify(har)), () => {
|
|
187
|
+
networkLogsStream.end();
|
|
188
|
+
});
|
|
178
189
|
});
|
|
179
190
|
}
|
|
180
191
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CheReporter.js","sourceRoot":"","sources":["../../utils/CheReporter.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;wEAQwE;AACxE,6CAA+B;AAC/B,gEAAqD;AACrD,uCAAyB;AAEzB,2CAA6B;AAE7B,iDAA8C;AAC9C,mDAAgD;AAChD,sEAAmE;AACnE,qCAAkC;AAClC,6CAA0C;AAC1C,0EAAuE;AACvE,kFAA+E;AAC/E,kEAA+D;AAC/D,wEAAqE;AACrE,8EAA2E;AAC3E,yCAAuC;AACvC,8FAAwD;AACxD,kEAA2D;
|
|
1
|
+
{"version":3,"file":"CheReporter.js","sourceRoot":"","sources":["../../utils/CheReporter.ts"],"names":[],"mappings":"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"}
|
package/driver/ChromeDriver.ts
CHANGED
|
@@ -21,6 +21,7 @@ export class ChromeDriver implements IDriver {
|
|
|
21
21
|
|
|
22
22
|
constructor() {
|
|
23
23
|
const options: Options = this.getDriverOptions();
|
|
24
|
+
options.setLoggingPrefs({ performance: 'ALL' });
|
|
24
25
|
if (CHROME_DRIVER_CONSTANTS.TS_USE_WEB_DRIVER_FOR_TEST) {
|
|
25
26
|
this.driver = this.getDriverBuilder(options).build();
|
|
26
27
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@eclipse-che/che-e2e",
|
|
3
|
-
"version": "7.76.0-next-
|
|
3
|
+
"version": "7.76.0-next-be6d9b8",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -38,7 +38,8 @@
|
|
|
38
38
|
"@typescript-eslint/parser": "^6.1.0",
|
|
39
39
|
"axios": "^0.25.0",
|
|
40
40
|
"chai": "^4.3.4",
|
|
41
|
-
"
|
|
41
|
+
"chrome-har": "^0.13.2",
|
|
42
|
+
"chromedriver": "^117.0.3",
|
|
42
43
|
"clone-deep": "^4.0.1",
|
|
43
44
|
"eslint": "^8.45.0",
|
|
44
45
|
"eslint-config-prettier": "^8.10.0",
|
|
@@ -163,7 +163,7 @@ export class Dashboard {
|
|
|
163
163
|
await this.driverHelper.waitAndClick(Dashboard.ABOUT_DIALOG_WINDOW_CLOSE_BUTTON);
|
|
164
164
|
}
|
|
165
165
|
|
|
166
|
-
async waitExistingWorkspaceFoundAlert(timeout: number = TIMEOUT_CONSTANTS.
|
|
166
|
+
async waitExistingWorkspaceFoundAlert(timeout: number = TIMEOUT_CONSTANTS.TS_WAIT_LOADER_PRESENCE_TIMEOUT): Promise<void> {
|
|
167
167
|
Logger.debug();
|
|
168
168
|
|
|
169
169
|
await this.driverHelper.waitVisibility(Dashboard.EXISTING_WORKSPACE_FOUND_ALERT, timeout);
|
package/specs/SmokeTest.spec.ts
CHANGED
|
@@ -7,13 +7,12 @@
|
|
|
7
7
|
*
|
|
8
8
|
* SPDX-License-Identifier: EPL-2.0
|
|
9
9
|
**********************************************************************/
|
|
10
|
-
import {
|
|
10
|
+
import { ViewSection } from 'monaco-page-objects';
|
|
11
11
|
import { ProjectAndFileTests } from '../tests-library/ProjectAndFileTests';
|
|
12
12
|
import { CLASSES } from '../configs/inversify.types';
|
|
13
13
|
import { e2eContainer } from '../configs/inversify.config';
|
|
14
14
|
import { WorkspaceHandlingTests } from '../tests-library/WorkspaceHandlingTests';
|
|
15
15
|
import { registerRunningWorkspace } from './MochaHooks';
|
|
16
|
-
import { Logger } from '../utils/Logger';
|
|
17
16
|
import { LoginTests } from '../tests-library/LoginTests';
|
|
18
17
|
import { StringUtil } from '../utils/StringUtil';
|
|
19
18
|
import { FACTORY_TEST_CONSTANTS } from '../constants/FACTORY_TEST_CONSTANTS';
|
|
@@ -45,15 +44,15 @@ suite('The SmokeTest userstory', function (): void {
|
|
|
45
44
|
});
|
|
46
45
|
test('Check a project folder has been created', async function (): Promise<void> {
|
|
47
46
|
const projectName: string = FACTORY_TEST_CONSTANTS.TS_SELENIUM_PROJECT_NAME || StringUtil.getProjectNameFromGitUrl(factoryUrl);
|
|
48
|
-
projectSection =
|
|
49
|
-
expect(await
|
|
47
|
+
projectSection = await projectAndFileTests.getProjectViewSession();
|
|
48
|
+
expect(await projectAndFileTests.getProjectTreeItem(projectSection, projectName), 'Project folder was not imported').not
|
|
49
|
+
.undefined;
|
|
50
50
|
});
|
|
51
51
|
test('Check the project files was imported', async function (): Promise<void> {
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
);
|
|
56
|
-
expect(isFileImported).not.eqls(undefined);
|
|
52
|
+
expect(
|
|
53
|
+
await projectAndFileTests.getProjectTreeItem(projectSection, BASE_TEST_CONSTANTS.TS_SELENIUM_PROJECT_ROOT_FILE_NAME),
|
|
54
|
+
'Project files were not imported'
|
|
55
|
+
).not.undefined;
|
|
57
56
|
});
|
|
58
57
|
test('Stop the workspace', async function (): Promise<void> {
|
|
59
58
|
await workspaceHandlingTests.stopWorkspace(WorkspaceHandlingTests.getWorkspaceName());
|
|
@@ -8,16 +8,16 @@
|
|
|
8
8
|
* SPDX-License-Identifier: EPL-2.0
|
|
9
9
|
**********************************************************************/
|
|
10
10
|
|
|
11
|
-
import {
|
|
11
|
+
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
15
|
import { CLASSES } from '../../configs/inversify.types';
|
|
16
16
|
import { WorkspaceHandlingTests } from '../../tests-library/WorkspaceHandlingTests';
|
|
17
17
|
import { ProjectAndFileTests } from '../../tests-library/ProjectAndFileTests';
|
|
18
|
-
import { Logger } from '../../utils/Logger';
|
|
19
18
|
import { BASE_TEST_CONSTANTS } from '../../constants/BASE_TEST_CONSTANTS';
|
|
20
19
|
import { BrowserTabsUtil } from '../../utils/BrowserTabsUtil';
|
|
20
|
+
import { expect } from 'chai';
|
|
21
21
|
|
|
22
22
|
const stackName: string = 'Java 11 with Quarkus';
|
|
23
23
|
|
|
@@ -28,7 +28,6 @@ suite(`The ${stackName} userstory`, function (): void {
|
|
|
28
28
|
const browserTabsUtil: BrowserTabsUtil = e2eContainer.get(CLASSES.BrowserTabsUtil);
|
|
29
29
|
|
|
30
30
|
let projectSection: ViewSection;
|
|
31
|
-
|
|
32
31
|
const projectName: string = 'quarkus-quickstarts';
|
|
33
32
|
|
|
34
33
|
loginTests.loginIntoChe();
|
|
@@ -50,13 +49,19 @@ suite(`The ${stackName} userstory`, function (): void {
|
|
|
50
49
|
});
|
|
51
50
|
|
|
52
51
|
test('Check a project folder has been created', async function (): Promise<void> {
|
|
53
|
-
projectSection = await
|
|
54
|
-
|
|
52
|
+
projectSection = await projectAndFileTests.getProjectViewSession();
|
|
53
|
+
expect(await projectAndFileTests.getProjectTreeItem(projectSection, projectName), 'Project folder was not imported').not.undefined;
|
|
54
|
+
});
|
|
55
|
+
|
|
56
|
+
test('Accept the project as a trusted one', async function (): Promise<void> {
|
|
57
|
+
await projectAndFileTests.performTrustAuthorDialog();
|
|
55
58
|
});
|
|
56
59
|
|
|
57
60
|
test('Check the project files was imported', async function (): Promise<void> {
|
|
58
|
-
|
|
59
|
-
|
|
61
|
+
expect(
|
|
62
|
+
await projectAndFileTests.getProjectTreeItem(projectSection, BASE_TEST_CONSTANTS.TS_SELENIUM_PROJECT_ROOT_FILE_NAME, 2),
|
|
63
|
+
'Project files were not imported'
|
|
64
|
+
).not.undefined;
|
|
60
65
|
});
|
|
61
66
|
|
|
62
67
|
test('Stop the workspace', async function (): Promise<void> {
|
|
@@ -67,5 +72,6 @@ suite(`The ${stackName} userstory`, function (): void {
|
|
|
67
72
|
test('Delete the workspace', async function (): Promise<void> {
|
|
68
73
|
await workspaceHandlingTests.removeWorkspace(WorkspaceHandlingTests.getWorkspaceName());
|
|
69
74
|
});
|
|
75
|
+
|
|
70
76
|
loginTests.logoutFromChe();
|
|
71
77
|
});
|
|
@@ -74,8 +74,9 @@ for (const sample of samples) {
|
|
|
74
74
|
});
|
|
75
75
|
|
|
76
76
|
test('Check the project files were imported', async function (): Promise<void> {
|
|
77
|
-
|
|
78
|
-
expect(await
|
|
77
|
+
projectSection = await projectAndFileTests.getProjectViewSession();
|
|
78
|
+
expect(await projectAndFileTests.getProjectTreeItem(projectSection, pathToExtensionsListFileName), 'Files not imported').not
|
|
79
|
+
.undefined;
|
|
79
80
|
});
|
|
80
81
|
|
|
81
82
|
test('Accept the project as a trusted one', async function (): Promise<void> {
|
|
@@ -83,11 +84,8 @@ for (const sample of samples) {
|
|
|
83
84
|
});
|
|
84
85
|
|
|
85
86
|
test(`Get recommended extensions list from ${extensionsListFileName}`, async function (): Promise<void> {
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
await (await projectSection.findItem(pathToExtensionsListFileName))?.select();
|
|
89
|
-
await driverHelper.waitVisibility(webCheCodeLocators.DefaultTreeItem.ctor(extensionsListFileName));
|
|
90
|
-
await (await projectSection.findItem(extensionsListFileName))?.select();
|
|
87
|
+
await (await projectAndFileTests.getProjectTreeItem(projectSection, pathToExtensionsListFileName))?.select();
|
|
88
|
+
await (await projectAndFileTests.getProjectTreeItem(projectSection, extensionsListFileName, 3))?.select();
|
|
91
89
|
Logger.debug(`EditorView().openEditor(${extensionsListFileName})`);
|
|
92
90
|
const editor: TextEditor = (await new EditorView().openEditor(extensionsListFileName)) as TextEditor;
|
|
93
91
|
await driverHelper.waitVisibility(webCheCodeLocators.Editor.inputArea);
|
|
@@ -185,7 +183,7 @@ for (const sample of samples) {
|
|
|
185
183
|
const isInstalled: boolean = (await itemWithRightNameAndPublisher?.isInstalled()) as boolean;
|
|
186
184
|
|
|
187
185
|
Logger.debug(`itemWithRightNameAndPublisher?.isInstalled(): ${isInstalled}.`);
|
|
188
|
-
expect(isInstalled, `Extension ${extension.name} not installed`).
|
|
186
|
+
expect(isInstalled, `Extension ${extension.name} not installed`).to.be.true;
|
|
189
187
|
|
|
190
188
|
Logger.debug('itemWithRightNameAndPublisher.manage(): get context menu.');
|
|
191
189
|
const extensionManageMenu: ContextMenu = await (itemWithRightNameAndPublisher as ExtensionsViewItem).manage();
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
* SPDX-License-Identifier: EPL-2.0
|
|
9
9
|
**********************************************************************/
|
|
10
10
|
|
|
11
|
-
import {
|
|
11
|
+
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';
|
|
@@ -88,9 +88,15 @@ suite('DevConsole Integration', function (): void {
|
|
|
88
88
|
|
|
89
89
|
test('Check if project and files imported', async function (): Promise<void> {
|
|
90
90
|
const applicationSourceProjectName: string = StringUtil.getProjectNameFromGitUrl(gitImportRepo);
|
|
91
|
-
const projectSection: ViewSection = await
|
|
92
|
-
|
|
93
|
-
|
|
91
|
+
const projectSection: ViewSection = await projectAndFileTests.getProjectViewSession();
|
|
92
|
+
expect(
|
|
93
|
+
await projectAndFileTests.getProjectTreeItem(projectSection, applicationSourceProjectName),
|
|
94
|
+
'Project folder was not imported'
|
|
95
|
+
).not.undefined;
|
|
96
|
+
expect(
|
|
97
|
+
await projectAndFileTests.getProjectTreeItem(projectSection, BASE_TEST_CONSTANTS.TS_SELENIUM_PROJECT_ROOT_FILE_NAME),
|
|
98
|
+
'Project files were not imported'
|
|
99
|
+
).not.undefined;
|
|
94
100
|
});
|
|
95
101
|
|
|
96
102
|
test('Stop and delete the workspace by API', async function (): Promise<void> {
|
|
@@ -17,11 +17,9 @@ import {
|
|
|
17
17
|
EditorView,
|
|
18
18
|
Locators,
|
|
19
19
|
NewScmView,
|
|
20
|
-
SideBarView,
|
|
21
20
|
SingleScmProvider,
|
|
22
21
|
TextEditor,
|
|
23
22
|
ViewControl,
|
|
24
|
-
ViewItem,
|
|
25
23
|
ViewSection
|
|
26
24
|
} from 'monaco-page-objects';
|
|
27
25
|
import { expect } from 'chai';
|
|
@@ -92,20 +90,20 @@ suite(
|
|
|
92
90
|
test('Check if a project folder has been created', async function (): Promise<void> {
|
|
93
91
|
testRepoProjectName = StringUtil.getProjectNameFromGitUrl(FACTORY_TEST_CONSTANTS.TS_SELENIUM_FACTORY_GIT_REPO_URL);
|
|
94
92
|
Logger.debug(`new SideBarView().getContent().getSection: get ${testRepoProjectName}`);
|
|
95
|
-
projectSection = await
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
test('Check if the project files were imported', async function (): Promise<void> {
|
|
99
|
-
const label: string = BASE_TEST_CONSTANTS.TS_SELENIUM_PROJECT_ROOT_FILE_NAME;
|
|
100
|
-
Logger.debug(`projectSection.findItem: find ${label}`);
|
|
101
|
-
const isFileImported: ViewItem | undefined = await projectSection.findItem(label);
|
|
102
|
-
expect(isFileImported).not.eqls(undefined);
|
|
93
|
+
projectSection = await projectAndFileTests.getProjectViewSession();
|
|
94
|
+
expect(await projectAndFileTests.getProjectTreeItem(projectSection, testRepoProjectName), 'Project folder was not imported').not
|
|
95
|
+
.undefined;
|
|
103
96
|
});
|
|
104
97
|
|
|
105
98
|
test('Accept the project as a trusted one', async function (): Promise<void> {
|
|
106
99
|
await projectAndFileTests.performTrustAuthorDialog();
|
|
107
100
|
});
|
|
108
101
|
|
|
102
|
+
test('Check if the project files were imported', async function (): Promise<void> {
|
|
103
|
+
const label: string = BASE_TEST_CONSTANTS.TS_SELENIUM_PROJECT_ROOT_FILE_NAME;
|
|
104
|
+
expect(await projectAndFileTests.getProjectTreeItem(projectSection, label), 'Project files were not imported').not.undefined;
|
|
105
|
+
});
|
|
106
|
+
|
|
109
107
|
test('Make changes to the file', async function (): Promise<void> {
|
|
110
108
|
Logger.debug(`projectSection.openItem: "${fileToChange}"`);
|
|
111
109
|
await projectSection.openItem(fileToChange);
|
|
@@ -186,7 +184,7 @@ suite(
|
|
|
186
184
|
webCheCodeLocators.ScmView.actionConstructor(commitChangesButtonLabel),
|
|
187
185
|
'aria-disabled'
|
|
188
186
|
);
|
|
189
|
-
expect(isCommitButtonDisabled).
|
|
187
|
+
expect(isCommitButtonDisabled).to.be.true;
|
|
190
188
|
});
|
|
191
189
|
|
|
192
190
|
test('Stop the workspace', async function (): Promise<void> {
|
|
@@ -18,11 +18,9 @@ import {
|
|
|
18
18
|
Locators,
|
|
19
19
|
ModalDialog,
|
|
20
20
|
NewScmView,
|
|
21
|
-
SideBarView,
|
|
22
21
|
SingleScmProvider,
|
|
23
22
|
TextEditor,
|
|
24
23
|
ViewControl,
|
|
25
|
-
ViewItem,
|
|
26
24
|
ViewSection
|
|
27
25
|
} from 'monaco-page-objects';
|
|
28
26
|
import { expect } from 'chai';
|
|
@@ -113,8 +111,9 @@ suite(
|
|
|
113
111
|
|
|
114
112
|
test('Check if a project folder has been created', async function (): Promise<void> {
|
|
115
113
|
testRepoProjectName = StringUtil.getProjectNameFromGitUrl(FACTORY_TEST_CONSTANTS.TS_SELENIUM_FACTORY_GIT_REPO_URL);
|
|
116
|
-
|
|
117
|
-
projectSection
|
|
114
|
+
projectSection = await projectAndFileTests.getProjectViewSession();
|
|
115
|
+
expect(await projectAndFileTests.getProjectTreeItem(projectSection, testRepoProjectName), 'Project folder was not imported')
|
|
116
|
+
.not.undefined;
|
|
118
117
|
});
|
|
119
118
|
|
|
120
119
|
test('Accept the project as a trusted one', async function (): Promise<void> {
|
|
@@ -122,10 +121,8 @@ suite(
|
|
|
122
121
|
});
|
|
123
122
|
|
|
124
123
|
test('Check if the project files were imported', async function (): Promise<void> {
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
// projectSection.findItem(label) can return undefined but test will goes on
|
|
128
|
-
expect(isFileImported).not.eqls(undefined);
|
|
124
|
+
expect(await projectAndFileTests.getProjectTreeItem(projectSection, label), 'Project files were not imported').not
|
|
125
|
+
.undefined;
|
|
129
126
|
});
|
|
130
127
|
|
|
131
128
|
test('Make changes to the file', async function (): Promise<void> {
|
|
@@ -240,7 +237,7 @@ suite(
|
|
|
240
237
|
webCheCodeLocators.ScmView.actionConstructor(commitChangesButtonLabel),
|
|
241
238
|
'aria-disabled'
|
|
242
239
|
);
|
|
243
|
-
expect(isCommitButtonDisabled).
|
|
240
|
+
expect(isCommitButtonDisabled).to.be.true;
|
|
244
241
|
});
|
|
245
242
|
|
|
246
243
|
test('Stop the workspace', async function (): Promise<void> {
|
|
@@ -18,11 +18,9 @@ import {
|
|
|
18
18
|
Locators,
|
|
19
19
|
ModalDialog,
|
|
20
20
|
NewScmView,
|
|
21
|
-
SideBarView,
|
|
22
21
|
SingleScmProvider,
|
|
23
22
|
TextEditor,
|
|
24
23
|
ViewControl,
|
|
25
|
-
ViewItem,
|
|
26
24
|
ViewSection
|
|
27
25
|
} from 'monaco-page-objects';
|
|
28
26
|
import { expect } from 'chai';
|
|
@@ -99,8 +97,9 @@ suite(
|
|
|
99
97
|
|
|
100
98
|
test('Check if a project folder has been created', async function (): Promise<void> {
|
|
101
99
|
testRepoProjectName = StringUtil.getProjectNameFromGitUrl(FACTORY_TEST_CONSTANTS.TS_SELENIUM_FACTORY_GIT_REPO_URL);
|
|
102
|
-
|
|
103
|
-
projectSection
|
|
100
|
+
projectSection = await projectAndFileTests.getProjectViewSession();
|
|
101
|
+
expect(await projectAndFileTests.getProjectTreeItem(projectSection, testRepoProjectName), 'Project folder was not imported').not
|
|
102
|
+
.undefined;
|
|
104
103
|
});
|
|
105
104
|
|
|
106
105
|
test('Accept the project as a trusted one', async function (): Promise<void> {
|
|
@@ -116,15 +115,12 @@ suite(
|
|
|
116
115
|
});
|
|
117
116
|
|
|
118
117
|
test('Check that project files were not imported', async function (): Promise<void> {
|
|
119
|
-
|
|
120
|
-
expect(isFileImported).eqls(undefined);
|
|
118
|
+
expect(await projectAndFileTests.getProjectTreeItem(projectSection, label), 'Project files were found').to.be.undefined;
|
|
121
119
|
});
|
|
122
120
|
} else {
|
|
123
121
|
test('Check if the project files were imported', async function (): Promise<void> {
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
// projectSection.findItem(label) can return undefined but test will goes on
|
|
127
|
-
expect(isFileImported).not.eqls(undefined);
|
|
122
|
+
expect(await projectAndFileTests.getProjectTreeItem(projectSection, label), 'Project files were not imported').not
|
|
123
|
+
.undefined;
|
|
128
124
|
});
|
|
129
125
|
|
|
130
126
|
test('Make changes to the file', async function (): Promise<void> {
|
|
@@ -231,7 +227,7 @@ suite(
|
|
|
231
227
|
webCheCodeLocators.ScmView.actionConstructor(commitChangesButtonLabel),
|
|
232
228
|
'aria-disabled'
|
|
233
229
|
);
|
|
234
|
-
expect(isCommitButtonDisabled).
|
|
230
|
+
expect(isCommitButtonDisabled).to.be.true;
|
|
235
231
|
});
|
|
236
232
|
}
|
|
237
233
|
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
* SPDX-License-Identifier: EPL-2.0
|
|
9
9
|
**********************************************************************/
|
|
10
10
|
import { e2eContainer } from '../../configs/inversify.config';
|
|
11
|
-
import { ViewSection
|
|
11
|
+
import { ViewSection } from 'monaco-page-objects';
|
|
12
12
|
import { CLASSES } from '../../configs/inversify.types';
|
|
13
13
|
import { expect } from 'chai';
|
|
14
14
|
import { WorkspaceHandlingTests } from '../../tests-library/WorkspaceHandlingTests';
|
|
@@ -42,9 +42,12 @@ suite('"Start workspace with existed workspace name" test', function (): void {
|
|
|
42
42
|
|
|
43
43
|
test('Wait workspace readiness and project folder has been created', async function (): Promise<void> {
|
|
44
44
|
await projectAndFileTests.waitWorkspaceReadinessForCheCodeEditor();
|
|
45
|
-
projectSection = await
|
|
46
|
-
|
|
47
|
-
expect(
|
|
45
|
+
projectSection = await projectAndFileTests.getProjectViewSession();
|
|
46
|
+
expect(await projectAndFileTests.getProjectTreeItem(projectSection, projectName), 'Project folder was not imported').not.undefined;
|
|
47
|
+
expect(
|
|
48
|
+
await projectAndFileTests.getProjectTreeItem(projectSection, BASE_TEST_CONSTANTS.TS_SELENIUM_PROJECT_ROOT_FILE_NAME),
|
|
49
|
+
'Project files were not imported'
|
|
50
|
+
).not.undefined;
|
|
48
51
|
});
|
|
49
52
|
|
|
50
53
|
test('Stop created workspace', async function (): Promise<void> {
|
|
@@ -65,9 +68,12 @@ suite('"Start workspace with existed workspace name" test', function (): void {
|
|
|
65
68
|
|
|
66
69
|
test('Wait the second workspace readiness and project folder has been created', async function (): Promise<void> {
|
|
67
70
|
await projectAndFileTests.waitWorkspaceReadinessForCheCodeEditor();
|
|
68
|
-
projectSection = await
|
|
69
|
-
|
|
70
|
-
expect(
|
|
71
|
+
projectSection = await projectAndFileTests.getProjectViewSession();
|
|
72
|
+
expect(await projectAndFileTests.getProjectTreeItem(projectSection, projectName), 'Project folder was not imported').not.undefined;
|
|
73
|
+
expect(
|
|
74
|
+
await projectAndFileTests.getProjectTreeItem(projectSection, BASE_TEST_CONSTANTS.TS_SELENIUM_PROJECT_ROOT_FILE_NAME),
|
|
75
|
+
'Project files were not imported'
|
|
76
|
+
).not.undefined;
|
|
71
77
|
});
|
|
72
78
|
|
|
73
79
|
test(`Stop all created ${stackName} workspaces`, async function (): Promise<void> {
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
*
|
|
8
8
|
* SPDX-License-Identifier: EPL-2.0
|
|
9
9
|
**********************************************************************/
|
|
10
|
-
import {
|
|
10
|
+
import { ViewSection } from 'monaco-page-objects';
|
|
11
11
|
import { ProjectAndFileTests } from '../../tests-library/ProjectAndFileTests';
|
|
12
12
|
import { CLASSES } from '../../configs/inversify.types';
|
|
13
13
|
import { e2eContainer } from '../../configs/inversify.config';
|
|
@@ -66,8 +66,8 @@ suite('Check possibility to manage containers within a workspace with kubedock a
|
|
|
66
66
|
});
|
|
67
67
|
|
|
68
68
|
test('Check the project files were imported', async function (): Promise<void> {
|
|
69
|
-
const
|
|
70
|
-
expect(await
|
|
69
|
+
const projectSection: ViewSection = await projectAndFileTests.getProjectViewSession();
|
|
70
|
+
expect(await projectAndFileTests.getProjectTreeItem(projectSection, 'Dockerfile'), 'Files not imported').not.undefined;
|
|
71
71
|
});
|
|
72
72
|
|
|
73
73
|
test('Create and check container runs using kubedock and podman', function (): void {
|