@eclipse-che/che-e2e 7.115.0-next-1e2be97 → 7.115.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/skills/e2e-test-developer/SKILL.md +0 -3
- package/CODE_STYLE.md +0 -5
- package/dist/specs/miscellaneous/ExtensionActivationTest.spec.js +3 -6
- package/dist/specs/miscellaneous/ExtensionActivationTest.spec.js.map +1 -1
- package/dist/tests-library/ProjectAndFileTests.js +27 -0
- package/dist/tests-library/ProjectAndFileTests.js.map +1 -1
- package/package.json +3 -2
- package/specs/miscellaneous/ExtensionActivationTest.spec.ts +3 -6
- package/tests-library/ProjectAndFileTests.ts +34 -1
|
@@ -152,7 +152,6 @@ Classes must follow this order:
|
|
|
152
152
|
### Test File Conventions
|
|
153
153
|
|
|
154
154
|
1. **Naming**
|
|
155
|
-
|
|
156
155
|
- UI tests: `*.spec.ts` (e.g., `Factory.spec.ts`)
|
|
157
156
|
- API-only tests: `*API.spec.ts` (e.g., `EmptyWorkspaceAPI.spec.ts`)
|
|
158
157
|
|
|
@@ -217,12 +216,10 @@ async function doSomething(param, timeout) {
|
|
|
217
216
|
```
|
|
218
217
|
|
|
219
218
|
2. **Naming Conventions**
|
|
220
|
-
|
|
221
219
|
- Variables: camelCase or UPPER_CASE
|
|
222
220
|
- No leading/trailing underscores
|
|
223
221
|
|
|
224
222
|
3. **String Quotes**
|
|
225
|
-
|
|
226
223
|
- Use single quotes for strings
|
|
227
224
|
|
|
228
225
|
4. **Comments**
|
package/CODE_STYLE.md
CHANGED
|
@@ -28,7 +28,6 @@ Automated lint checking and code format performs with ESLint and Prettier tools
|
|
|
28
28
|
### Preferable code style
|
|
29
29
|
|
|
30
30
|
1. Page-object and util classes
|
|
31
|
-
|
|
32
31
|
1. ✔ Class declaration using dependency injection (inversify library)
|
|
33
32
|
|
|
34
33
|
```
|
|
@@ -38,7 +37,6 @@ Automated lint checking and code format performs with ESLint and Prettier tools
|
|
|
38
37
|
```
|
|
39
38
|
|
|
40
39
|
2. Public methods
|
|
41
|
-
|
|
42
40
|
- ✔ Declare public methods without "public "keyword
|
|
43
41
|
- ✔ Add Logger.debug() inside method to log its name (with optional message)
|
|
44
42
|
|
|
@@ -51,7 +49,6 @@ Automated lint checking and code format performs with ESLint and Prettier tools
|
|
|
51
49
|
```
|
|
52
50
|
|
|
53
51
|
3. Locators
|
|
54
|
-
|
|
55
52
|
- ✔ For static locators - private static readonly fields type of By
|
|
56
53
|
|
|
57
54
|
```
|
|
@@ -105,7 +102,6 @@ Automated lint checking and code format performs with ESLint and Prettier tools
|
|
|
105
102
|
```
|
|
106
103
|
|
|
107
104
|
2. Mocha framework
|
|
108
|
-
|
|
109
105
|
- ✔ TDD framework (`suite()`, `test()`)
|
|
110
106
|
- ✔ Inject class instances, declare all test data inside test `suit()` function to avoid unnecessary code execution if test suit will not be run
|
|
111
107
|
|
|
@@ -122,7 +118,6 @@ Automated lint checking and code format performs with ESLint and Prettier tools
|
|
|
122
118
|
- ✔ Use test [./constants](constants) to make test flexible
|
|
123
119
|
|
|
124
120
|
3. Packages
|
|
125
|
-
|
|
126
121
|
1. Add packages as dev dependencies
|
|
127
122
|
2. If any changes re-create package-lock.json before push
|
|
128
123
|
|
|
@@ -58,8 +58,7 @@ suite(`Extension Activation Test ${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TES
|
|
|
58
58
|
});
|
|
59
59
|
test('Open Python file and run it', async function () {
|
|
60
60
|
const projectSection = await projectAndFileTests.getProjectViewSession();
|
|
61
|
-
await
|
|
62
|
-
await driverHelper.wait(TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_SELENIUM_CLICK_ON_VISIBLE_ITEM);
|
|
61
|
+
await projectAndFileTests.openFileAndVerify(projectSection, PROJECT_NAME, PYTHON_FILE_NAME);
|
|
63
62
|
await driverHelper.waitAndClick(RUN_PYTHON_BUTTON);
|
|
64
63
|
await driverHelper.wait(TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_DIALOG_WINDOW_DEFAULT_TIMEOUT);
|
|
65
64
|
});
|
|
@@ -82,8 +81,7 @@ suite(`Extension Activation Test ${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TES
|
|
|
82
81
|
await projectAndFileTests.waitWorkspaceReadinessForCheCodeEditor();
|
|
83
82
|
await driverHelper.wait(TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_IDE_LOAD_TIMEOUT);
|
|
84
83
|
const projectSection = await projectAndFileTests.getProjectViewSession();
|
|
85
|
-
await
|
|
86
|
-
await driverHelper.wait(TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_SELENIUM_CLICK_ON_VISIBLE_ITEM);
|
|
84
|
+
await projectAndFileTests.openFileAndVerify(projectSection, PROJECT_NAME, PYTHON_FILE_NAME);
|
|
87
85
|
await driverHelper.waitAndClick(RUN_PYTHON_BUTTON);
|
|
88
86
|
await driverHelper.wait(TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_DIALOG_WINDOW_DEFAULT_TIMEOUT);
|
|
89
87
|
const terminalOutput = await driverHelper.waitAndGetText(TERMINAL_OUTPUT, TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_COMMON_PLUGIN_TEST_TIMEOUT);
|
|
@@ -111,8 +109,7 @@ suite(`Extension Activation Test ${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TES
|
|
|
111
109
|
});
|
|
112
110
|
test('Verify Python execution after workspace restart', async function () {
|
|
113
111
|
const projectSection = await projectAndFileTests.getProjectViewSession();
|
|
114
|
-
await
|
|
115
|
-
await driverHelper.wait(TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_SELENIUM_CLICK_ON_VISIBLE_ITEM);
|
|
112
|
+
await projectAndFileTests.openFileAndVerify(projectSection, PROJECT_NAME, PYTHON_FILE_NAME);
|
|
116
113
|
await driverHelper.waitAndClick(RUN_PYTHON_BUTTON);
|
|
117
114
|
await driverHelper.wait(TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_DIALOG_WINDOW_DEFAULT_TIMEOUT);
|
|
118
115
|
const terminalOutput = await driverHelper.waitAndGetText(TERMINAL_OUTPUT, TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_COMMON_PLUGIN_TEST_TIMEOUT);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExtensionActivationTest.spec.js","sourceRoot":"","sources":["../../../specs/miscellaneous/ExtensionActivationTest.spec.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ExtensionActivationTest.spec.js","sourceRoot":"","sources":["../../../specs/miscellaneous/ExtensionActivationTest.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -156,6 +156,33 @@ let ProjectAndFileTests = ProjectAndFileTests_1 = class ProjectAndFileTests {
|
|
|
156
156
|
const output = await this.driverHelper.waitAndGetText(ProjectAndFileTests_1.BRANCH_NAME_XPATH);
|
|
157
157
|
return output.trimStart();
|
|
158
158
|
}
|
|
159
|
+
/**
|
|
160
|
+
* open a file in the project tree and verify it is opened in the editor.
|
|
161
|
+
* Retries up to 2 times if the file doesn't open on the first attempt.
|
|
162
|
+
* @param projectSection ViewSection with project tree files.
|
|
163
|
+
* @param projectName Name of the project folder.
|
|
164
|
+
* @param fileName Name of the file to open.
|
|
165
|
+
*/
|
|
166
|
+
async openFileAndVerify(projectSection, projectName, fileName) {
|
|
167
|
+
const maxAttempts = 2;
|
|
168
|
+
const editorView = new monaco_page_objects_1.EditorView();
|
|
169
|
+
for (let attempt = 1; attempt <= maxAttempts; attempt++) {
|
|
170
|
+
Logger_1.Logger.debug(`Attempt ${attempt}/${maxAttempts}: opening file "${fileName}" in project "${projectName}"`);
|
|
171
|
+
await projectSection.openItem(projectName, fileName);
|
|
172
|
+
await this.driverHelper.wait(TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_SELENIUM_CLICK_ON_VISIBLE_ITEM);
|
|
173
|
+
const openEditorTitles = await editorView.getOpenEditorTitles();
|
|
174
|
+
Logger_1.Logger.debug(`Open editor titles: ${openEditorTitles.join(', ')}`);
|
|
175
|
+
if (openEditorTitles.includes(fileName)) {
|
|
176
|
+
Logger_1.Logger.debug(`File "${fileName}" successfully opened in the editor`);
|
|
177
|
+
return;
|
|
178
|
+
}
|
|
179
|
+
if (attempt < maxAttempts) {
|
|
180
|
+
Logger_1.Logger.warn(`File "${fileName}" not found in editor tabs, retrying...`);
|
|
181
|
+
await this.driverHelper.wait(TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_SELENIUM_DEFAULT_POLLING);
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
throw new Error(`File "${fileName}" was not opened in the editor after ${maxAttempts} attempts`);
|
|
185
|
+
}
|
|
159
186
|
};
|
|
160
187
|
ProjectAndFileTests.BRANCH_NAME_XPATH = monaco_page_objects_1.By.xpath('//a[contains(@aria-label,"Checkout Branch/Tag...")]');
|
|
161
188
|
ProjectAndFileTests.TRUST_PUBLISHER_BOX = monaco_page_objects_1.By.xpath('//*[@class="dialog-message-text" and contains(text(), "publisher")]');
|
|
@@ -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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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@eclipse-che/che-e2e",
|
|
3
|
-
"version": "7.115.0
|
|
3
|
+
"version": "7.115.0",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -66,7 +66,8 @@
|
|
|
66
66
|
"dependencies": {
|
|
67
67
|
"@eclipse-che/api": "latest",
|
|
68
68
|
"inversify": "6.0.1",
|
|
69
|
-
"reflect-metadata": "0.1.13"
|
|
69
|
+
"reflect-metadata": "0.1.13",
|
|
70
|
+
"@eclipse-che/che-devworkspace-generator": "7.115.0"
|
|
70
71
|
},
|
|
71
72
|
"resolutions": {
|
|
72
73
|
"minimist": "^1.2.5"
|
|
@@ -75,8 +75,7 @@ suite(`Extension Activation Test ${BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, funct
|
|
|
75
75
|
|
|
76
76
|
test('Open Python file and run it', async function (): Promise<void> {
|
|
77
77
|
const projectSection: ViewSection = await projectAndFileTests.getProjectViewSession();
|
|
78
|
-
await
|
|
79
|
-
await driverHelper.wait(TIMEOUT_CONSTANTS.TS_SELENIUM_CLICK_ON_VISIBLE_ITEM);
|
|
78
|
+
await projectAndFileTests.openFileAndVerify(projectSection, PROJECT_NAME, PYTHON_FILE_NAME);
|
|
80
79
|
|
|
81
80
|
await driverHelper.waitAndClick(RUN_PYTHON_BUTTON);
|
|
82
81
|
await driverHelper.wait(TIMEOUT_CONSTANTS.TS_DIALOG_WINDOW_DEFAULT_TIMEOUT);
|
|
@@ -108,8 +107,7 @@ suite(`Extension Activation Test ${BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, funct
|
|
|
108
107
|
await driverHelper.wait(TIMEOUT_CONSTANTS.TS_IDE_LOAD_TIMEOUT);
|
|
109
108
|
|
|
110
109
|
const projectSection: ViewSection = await projectAndFileTests.getProjectViewSession();
|
|
111
|
-
await
|
|
112
|
-
await driverHelper.wait(TIMEOUT_CONSTANTS.TS_SELENIUM_CLICK_ON_VISIBLE_ITEM);
|
|
110
|
+
await projectAndFileTests.openFileAndVerify(projectSection, PROJECT_NAME, PYTHON_FILE_NAME);
|
|
113
111
|
|
|
114
112
|
await driverHelper.waitAndClick(RUN_PYTHON_BUTTON);
|
|
115
113
|
await driverHelper.wait(TIMEOUT_CONSTANTS.TS_DIALOG_WINDOW_DEFAULT_TIMEOUT);
|
|
@@ -147,8 +145,7 @@ suite(`Extension Activation Test ${BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, funct
|
|
|
147
145
|
|
|
148
146
|
test('Verify Python execution after workspace restart', async function (): Promise<void> {
|
|
149
147
|
const projectSection: ViewSection = await projectAndFileTests.getProjectViewSession();
|
|
150
|
-
await
|
|
151
|
-
await driverHelper.wait(TIMEOUT_CONSTANTS.TS_SELENIUM_CLICK_ON_VISIBLE_ITEM);
|
|
148
|
+
await projectAndFileTests.openFileAndVerify(projectSection, PROJECT_NAME, PYTHON_FILE_NAME);
|
|
152
149
|
|
|
153
150
|
await driverHelper.waitAndClick(RUN_PYTHON_BUTTON);
|
|
154
151
|
await driverHelper.wait(TIMEOUT_CONSTANTS.TS_DIALOG_WINDOW_DEFAULT_TIMEOUT);
|
|
@@ -15,7 +15,7 @@ import { CLASSES } from '../configs/inversify.types';
|
|
|
15
15
|
import { Logger } from '../utils/Logger';
|
|
16
16
|
import { TIMEOUT_CONSTANTS } from '../constants/TIMEOUT_CONSTANTS';
|
|
17
17
|
import { CheCodeLocatorLoader } from '../pageobjects/ide/CheCodeLocatorLoader';
|
|
18
|
-
import { By, SideBarView, ViewContent, ViewItem, ViewSection, Workbench } from 'monaco-page-objects';
|
|
18
|
+
import { By, EditorView, SideBarView, ViewContent, ViewItem, ViewSection, Workbench } from 'monaco-page-objects';
|
|
19
19
|
import { WorkspaceHandlingTests } from '../tests-library/WorkspaceHandlingTests';
|
|
20
20
|
import { RestrictedModeButton } from '../pageobjects/ide/RestrictedModeButton';
|
|
21
21
|
|
|
@@ -190,4 +190,37 @@ export class ProjectAndFileTests {
|
|
|
190
190
|
|
|
191
191
|
return output.trimStart();
|
|
192
192
|
}
|
|
193
|
+
|
|
194
|
+
/**
|
|
195
|
+
* open a file in the project tree and verify it is opened in the editor.
|
|
196
|
+
* Retries up to 2 times if the file doesn't open on the first attempt.
|
|
197
|
+
* @param projectSection ViewSection with project tree files.
|
|
198
|
+
* @param projectName Name of the project folder.
|
|
199
|
+
* @param fileName Name of the file to open.
|
|
200
|
+
*/
|
|
201
|
+
async openFileAndVerify(projectSection: ViewSection, projectName: string, fileName: string): Promise<void> {
|
|
202
|
+
const maxAttempts: number = 2;
|
|
203
|
+
const editorView: EditorView = new EditorView();
|
|
204
|
+
|
|
205
|
+
for (let attempt: number = 1; attempt <= maxAttempts; attempt++) {
|
|
206
|
+
Logger.debug(`Attempt ${attempt}/${maxAttempts}: opening file "${fileName}" in project "${projectName}"`);
|
|
207
|
+
await projectSection.openItem(projectName, fileName);
|
|
208
|
+
await this.driverHelper.wait(TIMEOUT_CONSTANTS.TS_SELENIUM_CLICK_ON_VISIBLE_ITEM);
|
|
209
|
+
|
|
210
|
+
const openEditorTitles: string[] = await editorView.getOpenEditorTitles();
|
|
211
|
+
Logger.debug(`Open editor titles: ${openEditorTitles.join(', ')}`);
|
|
212
|
+
|
|
213
|
+
if (openEditorTitles.includes(fileName)) {
|
|
214
|
+
Logger.debug(`File "${fileName}" successfully opened in the editor`);
|
|
215
|
+
return;
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
if (attempt < maxAttempts) {
|
|
219
|
+
Logger.warn(`File "${fileName}" not found in editor tabs, retrying...`);
|
|
220
|
+
await this.driverHelper.wait(TIMEOUT_CONSTANTS.TS_SELENIUM_DEFAULT_POLLING);
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
throw new Error(`File "${fileName}" was not opened in the editor after ${maxAttempts} attempts`);
|
|
225
|
+
}
|
|
193
226
|
}
|