@eclipse-che/che-e2e 7.45.0-dev-564dd1b → 7.45.0-dev-ac76942
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/README.md +16 -1
- package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetails.js +1 -1
- package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetails.js.map +1 -1
- package/dist/pageobjects/ide/Ide.js +17 -3
- package/dist/pageobjects/ide/Ide.js.map +1 -1
- package/dist/pageobjects/ide/PreviewWidget.js +6 -2
- package/dist/pageobjects/ide/PreviewWidget.js.map +1 -1
- package/dist/pageobjects/ide/ProjectTree.js +3 -6
- package/dist/pageobjects/ide/ProjectTree.js.map +1 -1
- package/dist/tests/e2e/factories/DirectUrlFactoryWithKeepDirectoryTest.spec.js +10 -9
- package/dist/tests/e2e/factories/DirectUrlFactoryWithKeepDirectoryTest.spec.js.map +1 -1
- package/dist/tests/e2e/factories/DirectUrlFactoryWithRootFolderTest.spec.js +10 -9
- package/dist/tests/e2e/factories/DirectUrlFactoryWithRootFolderTest.spec.js.map +1 -1
- package/dist/tests/e2e/factories/DirectUrlFactoryWithSpecificBranchTest.spec.js +15 -14
- package/dist/tests/e2e/factories/DirectUrlFactoryWithSpecificBranchTest.spec.js.map +1 -1
- package/dist/tests/e2e_happy_path/DevWorkspaceHappyPath.spec.js +2 -4
- package/dist/tests/e2e_happy_path/DevWorkspaceHappyPath.spec.js.map +1 -1
- package/dist/tests/plugins/JavaPlugin.spec.js +27 -23
- package/dist/tests/plugins/JavaPlugin.spec.js.map +1 -1
- package/dist/tests/plugins/PythonPlugin.spec.js +10 -14
- package/dist/tests/plugins/PythonPlugin.spec.js.map +1 -1
- package/dist/testsLibrary/CodeExecutionTests.js +1 -2
- package/dist/testsLibrary/CodeExecutionTests.js.map +1 -1
- package/dist/testsLibrary/LanguageServerTests.js +4 -12
- package/dist/testsLibrary/LanguageServerTests.js.map +1 -1
- package/dist/testsLibrary/ProjectAndFileTests.js +0 -1
- package/dist/testsLibrary/ProjectAndFileTests.js.map +1 -1
- package/mocha-all-factories.json +2 -1
- package/package.json +1 -1
- package/pageobjects/dashboard/workspace-details/WorkspaceDetails.ts +1 -1
- package/pageobjects/ide/Ide.ts +17 -3
- package/pageobjects/ide/PreviewWidget.ts +6 -2
- package/pageobjects/ide/ProjectTree.ts +3 -6
- package/tests/e2e/factories/DirectUrlFactoryWithKeepDirectoryTest.spec.ts +15 -13
- package/tests/e2e/factories/DirectUrlFactoryWithRootFolderTest.spec.ts +15 -14
- package/tests/e2e/factories/DirectUrlFactoryWithSpecificBranchTest.spec.ts +19 -20
- package/tests/e2e_happy_path/DevWorkspaceHappyPath.spec.ts +2 -4
- package/tests/plugins/JavaPlugin.spec.ts +20 -26
- package/tests/plugins/PythonPlugin.spec.ts +13 -17
- package/testsLibrary/CodeExecutionTests.ts +1 -2
- package/testsLibrary/LanguageServerTests.ts +3 -9
- package/testsLibrary/ProjectAndFileTests.ts +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// /*********************************************************************
|
|
2
|
-
// * Copyright (c)
|
|
2
|
+
// * Copyright (c) 2022 Red Hat, Inc.
|
|
3
3
|
// *
|
|
4
4
|
// * This program and the accompanying materials are made
|
|
5
5
|
// * available under the terms of the Eclipse Public License 2.0
|
|
@@ -9,30 +9,27 @@
|
|
|
9
9
|
// **********************************************************************/
|
|
10
10
|
|
|
11
11
|
import { e2eContainer } from '../../../inversify.config';
|
|
12
|
-
import { CLASSES
|
|
12
|
+
import { CLASSES } from '../../../inversify.types';
|
|
13
13
|
import { TestConstants } from '../../../TestConstants';
|
|
14
14
|
import { ProjectAndFileTests } from '../../../testsLibrary/ProjectAndFileTests';
|
|
15
15
|
import CheReporter from '../../../driver/CheReporter';
|
|
16
16
|
import { BrowserTabsUtil } from '../../../utils/BrowserTabsUtil';
|
|
17
|
-
import {
|
|
18
|
-
import {
|
|
17
|
+
import { WorkspaceHandlingTests } from '../../../testsLibrary/WorkspaceHandlingTests';
|
|
18
|
+
import { PreferencesHandler } from '../../../utils/PreferencesHandler';
|
|
19
19
|
|
|
20
|
+
const preferencesHandler: PreferencesHandler = e2eContainer.get(CLASSES.PreferencesHandler);
|
|
21
|
+
const workspaceHandlingTests: WorkspaceHandlingTests = e2eContainer.get(CLASSES.WorkspaceHandlingTests);
|
|
20
22
|
const projectAndFileTests: ProjectAndFileTests = e2eContainer.get(CLASSES.ProjectAndFileTests);
|
|
21
23
|
const browserTabsUtil: BrowserTabsUtil = e2eContainer.get(CLASSES.BrowserTabsUtil);
|
|
22
|
-
const workspaceNameHandler: WorkspaceNameHandler = e2eContainer.get(CLASSES.WorkspaceNameHandler);
|
|
23
|
-
const testWorkspaceUtils: TestWorkspaceUtil = e2eContainer.get<TestWorkspaceUtil>(TYPES.WorkspaceUtil);
|
|
24
24
|
|
|
25
|
-
let
|
|
25
|
+
let factoryUrl : string = `${TestConstants.TS_SELENIUM_BASE_URL}/f?url=https://github.com/che-samples/console-java-simple/tree/java1.11`;
|
|
26
|
+
const workspaceSampleName: string = 'console-java-simple';
|
|
27
|
+
const workspaceRootFolderName: string = 'src';
|
|
28
|
+
const fileFolderPath: string = `${workspaceSampleName}/${workspaceRootFolderName}/main/java/org/eclipse/che/examples`;
|
|
29
|
+
const tabTitle: string = 'HelloWorld.java';
|
|
30
|
+
let workspaceName: string = 'console-java-simple';
|
|
26
31
|
|
|
27
|
-
// the suite expect user to be logged in
|
|
28
32
|
suite('Workspace creation via factory url', async () => {
|
|
29
|
-
|
|
30
|
-
let factoryUrl : string = `${TestConstants.TS_SELENIUM_BASE_URL}/f?url=https://github.com/che-samples/console-java-simple/tree/java1.11`;
|
|
31
|
-
const workspaceSampleName: string = 'console-java-simple';
|
|
32
|
-
const workspaceRootFolderName: string = 'src';
|
|
33
|
-
const fileFolderPath: string = `${workspaceSampleName}/${workspaceRootFolderName}/main/java/org/eclipse/che/examples`;
|
|
34
|
-
const tabTitle: string = 'HelloWorld.java';
|
|
35
|
-
|
|
36
33
|
suite('Open factory URL', async () => {
|
|
37
34
|
test(`Navigating to factory URL`, async () => {
|
|
38
35
|
await browserTabsUtil.navigateTo(factoryUrl);
|
|
@@ -40,8 +37,13 @@ suite('Workspace creation via factory url', async () => {
|
|
|
40
37
|
});
|
|
41
38
|
|
|
42
39
|
suite('Wait workspace readyness', async () => {
|
|
43
|
-
projectAndFileTests.waitWorkspaceReadiness(workspaceSampleName, workspaceRootFolderName
|
|
40
|
+
projectAndFileTests.waitWorkspaceReadiness(workspaceSampleName, workspaceRootFolderName);
|
|
41
|
+
|
|
42
|
+
test('Set confirmExit preference to never', async () => {
|
|
43
|
+
CheReporter.registerRunningWorkspace(workspaceName);
|
|
44
44
|
|
|
45
|
+
await preferencesHandler.setPreferenceUsingUI('application.confirmExit', 'never');
|
|
46
|
+
});
|
|
45
47
|
});
|
|
46
48
|
|
|
47
49
|
suite('Check imported project', async () => {
|
|
@@ -51,10 +53,7 @@ suite('Workspace creation via factory url', async () => {
|
|
|
51
53
|
|
|
52
54
|
suite ('Stopping and deleting the workspace', async () => {
|
|
53
55
|
test('Stop and remove workspace', async () => {
|
|
54
|
-
|
|
55
|
-
CheReporter.registerRunningWorkspace(workspaceName);
|
|
56
|
-
|
|
57
|
-
await testWorkspaceUtils.cleanUpRunningWorkspace(workspaceName);
|
|
56
|
+
await workspaceHandlingTests.stopAndRemoveWorkspace(workspaceName);
|
|
58
57
|
});
|
|
59
58
|
});
|
|
60
59
|
|
|
@@ -43,7 +43,6 @@ const terminal: Terminal = e2eContainer.get(CLASSES.Terminal);
|
|
|
43
43
|
const warningDialog: DialogWindow = e2eContainer.get(CLASSES.DialogWindow);
|
|
44
44
|
const debugView: DebugView = e2eContainer.get(CLASSES.DebugView);
|
|
45
45
|
const welcomeControllerJavaFileName: string = 'WelcomeController.java';
|
|
46
|
-
const factoryUrl : string = `${TestConstants.TS_SELENIUM_BASE_URL}/f?url=https://raw.githubusercontent.com/eclipse/che-devfile-registry/master/devfiles/java-maven/devfile.yaml`;
|
|
47
46
|
|
|
48
47
|
const SpringAppLocators = {
|
|
49
48
|
springTitleLocator: By.xpath('//div[@class=\'container-fluid\']//h2[text()=\'Welcome\']'),
|
|
@@ -55,7 +54,7 @@ const SpringAppLocators = {
|
|
|
55
54
|
|
|
56
55
|
// this test checks only workspace created from "web-nodejs-sample" https://github.com/devfile/devworkspace-operator/blob/main/samples/flattened_theia-next.yaml.
|
|
57
56
|
suite('Workspace creation via factory url', async () => {
|
|
58
|
-
|
|
57
|
+
let factoryUrl : string = `${TestConstants.TS_SELENIUM_DEVWORKSPACE_URL}`;
|
|
59
58
|
|
|
60
59
|
const workspaceRootFolderName: string = 'src';
|
|
61
60
|
|
|
@@ -117,7 +116,6 @@ suite('Language server validation', async () => {
|
|
|
117
116
|
} catch (err) {
|
|
118
117
|
Logger.debug('Workaround for the https://github.com/eclipse/che/issues/18974.');
|
|
119
118
|
await browserTabsUtil.refreshPage();
|
|
120
|
-
await ide.waitAndSwitchToIdeFrame();
|
|
121
119
|
await ide.waitIde();
|
|
122
120
|
await editor.waitErrorInLine(30, javaFileName, TimeoutConstants.TS_ERROR_HIGHLIGHTING_TIMEOUT * 2);
|
|
123
121
|
}
|
|
@@ -131,7 +129,7 @@ suite('Language server validation', async () => {
|
|
|
131
129
|
await editor.waitSuggestionWithScrolling(javaFileName, 'run(Class<?> primarySource, String... args) : ConfigurableApplicationContext', 120_000);
|
|
132
130
|
});
|
|
133
131
|
|
|
134
|
-
test('
|
|
132
|
+
test('CodeNavigation', async () => {
|
|
135
133
|
await editor.moveCursorToLineAndChar(javaFileName, 32, 17);
|
|
136
134
|
await editor.performKeyCombination(javaFileName, Key.chord(Key.CONTROL, Key.F12));
|
|
137
135
|
await editor.waitEditorAvailable(codeNavigationClassName, TimeoutConstants.TS_EDITOR_TAB_INTERACTION_TIMEOUT * 4);
|
|
@@ -7,14 +7,12 @@
|
|
|
7
7
|
*
|
|
8
8
|
* SPDX-License-Identifier: EPL-2.0
|
|
9
9
|
**********************************************************************/
|
|
10
|
-
import { WorkspaceNameHandler } from '../..';
|
|
11
10
|
import 'reflect-metadata';
|
|
12
11
|
import { e2eContainer } from '../../inversify.config';
|
|
13
12
|
import { CLASSES } from '../../inversify.types';
|
|
14
13
|
import { Ide } from '../../pageobjects/ide/Ide';
|
|
15
14
|
import { TimeoutConstants } from '../../TimeoutConstants';
|
|
16
15
|
import { TestConstants } from '../../TestConstants';
|
|
17
|
-
import { ProjectTree } from '../../pageobjects/ide/ProjectTree';
|
|
18
16
|
import { Key } from 'selenium-webdriver';
|
|
19
17
|
import { Editor } from '../../pageobjects/ide/Editor';
|
|
20
18
|
import { ProjectAndFileTests } from '../../testsLibrary/ProjectAndFileTests';
|
|
@@ -22,24 +20,24 @@ import { WorkspaceHandlingTests } from '../../testsLibrary/WorkspaceHandlingTest
|
|
|
22
20
|
import { Logger } from '../../utils/Logger';
|
|
23
21
|
import CheReporter from '../../driver/CheReporter';
|
|
24
22
|
import { BrowserTabsUtil } from '../../utils/BrowserTabsUtil';
|
|
23
|
+
import { PreferencesHandler } from '../../utils/PreferencesHandler';
|
|
25
24
|
|
|
26
25
|
const workspaceHandlingTests: WorkspaceHandlingTests = e2eContainer.get(CLASSES.WorkspaceHandlingTests);
|
|
27
26
|
const projectAndFileTests: ProjectAndFileTests = e2eContainer.get(CLASSES.ProjectAndFileTests);
|
|
28
27
|
const browserTabsUtil: BrowserTabsUtil = e2eContainer.get(CLASSES.BrowserTabsUtil);
|
|
29
28
|
const ide: Ide = e2eContainer.get(CLASSES.Ide);
|
|
30
|
-
const projectTree: ProjectTree = e2eContainer.get(CLASSES.ProjectTree);
|
|
31
29
|
const editor: Editor = e2eContainer.get(CLASSES.Editor);
|
|
32
|
-
const
|
|
30
|
+
const preferencesHandler: PreferencesHandler = e2eContainer.get(CLASSES.PreferencesHandler);
|
|
33
31
|
|
|
34
|
-
const
|
|
35
|
-
const factoryUrl: string = `${TestConstants.TS_SELENIUM_BASE_URL}/f?url=${
|
|
32
|
+
const devFileUrl: string = 'https://github.com/che-samples/java-guestbook/tree/devfilev2';
|
|
33
|
+
const factoryUrl: string = `${TestConstants.TS_SELENIUM_BASE_URL}/f?url=${devFileUrl}`;
|
|
36
34
|
const codeNavigationClassName: string = 'String.class';
|
|
37
|
-
const
|
|
38
|
-
const subRootFolder: string = '
|
|
35
|
+
const projectName: string = 'java-guestbook';
|
|
36
|
+
const subRootFolder: string = 'backend';
|
|
39
37
|
|
|
40
|
-
const fileFolderPath: string = `${
|
|
41
|
-
const tabTitle: string = '
|
|
42
|
-
let workspaceName: string;
|
|
38
|
+
const fileFolderPath: string = `${projectName}/backend/src/main/java/cloudcode/guestbook/backend`;
|
|
39
|
+
const tabTitle: string = 'GuestBookEntry.java';
|
|
40
|
+
let workspaceName: string = 'java-guestbook';
|
|
43
41
|
|
|
44
42
|
suite(`The 'JavaPlugin' test`, async () => {
|
|
45
43
|
suite('Create workspace', async () => {
|
|
@@ -47,16 +45,12 @@ suite(`The 'JavaPlugin' test`, async () => {
|
|
|
47
45
|
await browserTabsUtil.navigateTo(factoryUrl);
|
|
48
46
|
});
|
|
49
47
|
|
|
48
|
+
projectAndFileTests.waitWorkspaceReadiness(projectName, subRootFolder);
|
|
49
|
+
|
|
50
50
|
test('Wait until created workspace is started', async () => {
|
|
51
|
-
await ide.waitAndSwitchToIdeFrame();
|
|
52
|
-
workspaceName = await workspaceNameHandler.getNameFromUrl();
|
|
53
51
|
CheReporter.registerRunningWorkspace(workspaceName);
|
|
54
52
|
|
|
55
|
-
await
|
|
56
|
-
await ide.waitNotificationAndClickOnButton('Do you trust the authors of', 'Yes, I trust', 60_000);
|
|
57
|
-
|
|
58
|
-
await projectTree.openProjectTreeContainer();
|
|
59
|
-
await projectTree.waitProjectImported(sampleName, subRootFolder);
|
|
53
|
+
await preferencesHandler.setPreferenceUsingUI('application.confirmExit', 'never');
|
|
60
54
|
});
|
|
61
55
|
});
|
|
62
56
|
|
|
@@ -66,28 +60,28 @@ suite(`The 'JavaPlugin' test`, async () => {
|
|
|
66
60
|
});
|
|
67
61
|
|
|
68
62
|
suite('Language server validation', async () => {
|
|
69
|
-
test('Wait until Java LS is
|
|
63
|
+
test('Wait until Java LS is initialized', async () => {
|
|
70
64
|
await ide.checkLsInitializationStart('Activating');
|
|
71
65
|
await ide.waitStatusBarTextAbsence('Activating', 900_000);
|
|
72
66
|
});
|
|
73
67
|
|
|
74
68
|
test('Autocomplete', async () => {
|
|
75
|
-
await editor.moveCursorToLineAndChar(tabTitle,
|
|
69
|
+
await editor.moveCursorToLineAndChar(tabTitle, 15, 1);
|
|
76
70
|
await editor.pressControlSpaceCombination(tabTitle);
|
|
77
71
|
await editor.waitSuggestionContainer();
|
|
78
|
-
await editor.waitSuggestion(tabTitle, '
|
|
72
|
+
await editor.waitSuggestion(tabTitle, 'clone() : Object');
|
|
79
73
|
});
|
|
80
74
|
|
|
81
75
|
test('Error highlighting', async () => {
|
|
82
76
|
const textForErrorDisplaying: string = '$';
|
|
83
|
-
await editor.type(tabTitle, textForErrorDisplaying,
|
|
84
|
-
await editor.waitErrorInLine(
|
|
77
|
+
await editor.type(tabTitle, textForErrorDisplaying, 15);
|
|
78
|
+
await editor.waitErrorInLine(15, tabTitle, TimeoutConstants.TS_ERROR_HIGHLIGHTING_TIMEOUT);
|
|
85
79
|
await editor.performKeyCombination(tabTitle, Key.chord(Key.BACK_SPACE));
|
|
86
|
-
await editor.waitErrorInLineDisappearance(
|
|
80
|
+
await editor.waitErrorInLineDisappearance(15, tabTitle);
|
|
87
81
|
});
|
|
88
82
|
|
|
89
|
-
test('
|
|
90
|
-
await editor.moveCursorToLineAndChar(tabTitle, 9,
|
|
83
|
+
test('CodeNavigation', async () => {
|
|
84
|
+
await editor.moveCursorToLineAndChar(tabTitle, 9, 14);
|
|
91
85
|
await editor.performKeyCombination(tabTitle, Key.chord(Key.CONTROL, Key.F12));
|
|
92
86
|
await editor.waitEditorAvailable(codeNavigationClassName, 60_000);
|
|
93
87
|
});
|
|
@@ -10,7 +10,6 @@
|
|
|
10
10
|
import 'reflect-metadata';
|
|
11
11
|
import { e2eContainer } from '../../inversify.config';
|
|
12
12
|
import { CLASSES } from '../../inversify.types';
|
|
13
|
-
import { Ide } from '../../pageobjects/ide/Ide';
|
|
14
13
|
import { TimeoutConstants } from '../../TimeoutConstants';
|
|
15
14
|
import { TestConstants } from '../../TestConstants';
|
|
16
15
|
import { ProjectTree } from '../../pageobjects/ide/ProjectTree';
|
|
@@ -20,23 +19,24 @@ import { WorkspaceHandlingTests } from '../../testsLibrary/WorkspaceHandlingTest
|
|
|
20
19
|
import { Logger } from '../../utils/Logger';
|
|
21
20
|
import CheReporter from '../../driver/CheReporter';
|
|
22
21
|
import { BrowserTabsUtil } from '../../utils/BrowserTabsUtil';
|
|
23
|
-
import {
|
|
22
|
+
import { ProjectAndFileTests } from '../../testsLibrary/ProjectAndFileTests';
|
|
23
|
+
import { PreferencesHandler } from '../../utils/PreferencesHandler';
|
|
24
24
|
|
|
25
|
+
const projectAndFileTests: ProjectAndFileTests = e2eContainer.get(CLASSES.ProjectAndFileTests);
|
|
25
26
|
const workspaceHandlingTests: WorkspaceHandlingTests = e2eContainer.get(CLASSES.WorkspaceHandlingTests);
|
|
26
27
|
const browserTabsUtil: BrowserTabsUtil = e2eContainer.get(CLASSES.BrowserTabsUtil);
|
|
27
|
-
const ide: Ide = e2eContainer.get(CLASSES.Ide);
|
|
28
28
|
const projectTree: ProjectTree = e2eContainer.get(CLASSES.ProjectTree);
|
|
29
29
|
const editor: Editor = e2eContainer.get(CLASSES.Editor);
|
|
30
|
-
const
|
|
30
|
+
const preferencesHandler: PreferencesHandler = e2eContainer.get(CLASSES.PreferencesHandler);
|
|
31
31
|
|
|
32
|
-
const
|
|
33
|
-
const factoryUrl: string = `${TestConstants.TS_SELENIUM_BASE_URL}/f?url=${
|
|
34
|
-
const
|
|
35
|
-
const
|
|
32
|
+
const devFileUrl: string = 'https://github.com/che-samples/python-hello-world/tree/devfilev2';
|
|
33
|
+
const factoryUrl: string = `${TestConstants.TS_SELENIUM_BASE_URL}/f?url=${devFileUrl}`;
|
|
34
|
+
const projectName: string = 'python-hello-world';
|
|
35
|
+
const subRootFolder: string = '.vscode';
|
|
36
36
|
|
|
37
|
-
const fileFolderPath: string = `${
|
|
37
|
+
const fileFolderPath: string = `${projectName}`;
|
|
38
38
|
const tabTitle: string = 'hello-world.py';
|
|
39
|
-
let workspaceName: string;
|
|
39
|
+
let workspaceName: string = 'python-hello-world';
|
|
40
40
|
|
|
41
41
|
suite(`The 'PythonPlugin' test`, async () => {
|
|
42
42
|
suite('Create workspace', async () => {
|
|
@@ -44,16 +44,12 @@ suite(`The 'PythonPlugin' test`, async () => {
|
|
|
44
44
|
await browserTabsUtil.navigateTo(factoryUrl);
|
|
45
45
|
});
|
|
46
46
|
|
|
47
|
+
projectAndFileTests.waitWorkspaceReadiness(projectName, subRootFolder);
|
|
48
|
+
|
|
47
49
|
test('Wait until created workspace is started', async () => {
|
|
48
|
-
await ide.waitAndSwitchToIdeFrame();
|
|
49
|
-
workspaceName = await workspaceNameHandler.getNameFromUrl();
|
|
50
50
|
CheReporter.registerRunningWorkspace(workspaceName);
|
|
51
51
|
|
|
52
|
-
await
|
|
53
|
-
await ide.waitNotificationAndClickOnButton('Do you trust the authors of', 'Yes, I trust', 60_000);
|
|
54
|
-
|
|
55
|
-
await projectTree.openProjectTreeContainer();
|
|
56
|
-
await projectTree.waitProjectImported(sampleName, subRootFile);
|
|
52
|
+
await preferencesHandler.setPreferenceUsingUI('application.confirmExit', 'never');
|
|
57
53
|
});
|
|
58
54
|
});
|
|
59
55
|
|
|
@@ -140,8 +140,7 @@ export class CodeExecutionTests {
|
|
|
140
140
|
// https://issues.redhat.com/browse/CRW-2175
|
|
141
141
|
if (err instanceof error.TimeoutError) {
|
|
142
142
|
Logger.warn(`CodeExecutionTests.verifyRunningApplication application not located, probably blocked by preloader or content not available. Retrying.`);
|
|
143
|
-
await this.
|
|
144
|
-
await this.ide.waitAndSwitchToIdeFrame();
|
|
143
|
+
await this.ide.waitIde();
|
|
145
144
|
await this.previewWidget.refreshPage();
|
|
146
145
|
await this.previewWidget.waitContentAvailable(locator, applicationCheckTimeout, polling);
|
|
147
146
|
}
|
|
@@ -19,7 +19,6 @@ import { DebugView } from '../pageobjects/ide/DebugView';
|
|
|
19
19
|
import { Key, error } from 'selenium-webdriver';
|
|
20
20
|
import { Logger } from '../utils/Logger';
|
|
21
21
|
import { BrowserTabsUtil } from '../utils/BrowserTabsUtil';
|
|
22
|
-
import { DriverHelper } from '../utils/DriverHelper';
|
|
23
22
|
|
|
24
23
|
@injectable()
|
|
25
24
|
export class LanguageServerTests {
|
|
@@ -29,8 +28,7 @@ export class LanguageServerTests {
|
|
|
29
28
|
@inject(CLASSES.Ide) private readonly ide: Ide,
|
|
30
29
|
@inject(CLASSES.TopMenu) private readonly topMenu: TopMenu,
|
|
31
30
|
@inject(CLASSES.DebugView) private readonly debugView: DebugView,
|
|
32
|
-
@inject(CLASSES.BrowserTabsUtil) private readonly browserTabsUtil: BrowserTabsUtil
|
|
33
|
-
@inject(CLASSES.DriverHelper) private readonly driverHelper: DriverHelper) { }
|
|
31
|
+
@inject(CLASSES.BrowserTabsUtil) private readonly browserTabsUtil: BrowserTabsUtil) { }
|
|
34
32
|
|
|
35
33
|
public errorHighlighting(openedTab: string, textToWrite: string, line: number) {
|
|
36
34
|
test('Error highlighting', async () => {
|
|
@@ -164,9 +162,7 @@ export class LanguageServerTests {
|
|
|
164
162
|
} catch (err) {
|
|
165
163
|
// debug config is probably missing, refresh IDE and try again https://github.com/eclipse/che/issues/19887
|
|
166
164
|
await this.browserTabsUtil.refreshPage();
|
|
167
|
-
await this.
|
|
168
|
-
await this.ide.waitAndSwitchToIdeFrame();
|
|
169
|
-
await this.driverHelper.wait(TimeoutConstants.TS_SELENIUM_CLICK_ON_VISIBLE_ITEM);
|
|
165
|
+
await this.ide.waitIde();
|
|
170
166
|
await this.debugView.clickOnRunDebugButton();
|
|
171
167
|
}
|
|
172
168
|
});
|
|
@@ -187,9 +183,7 @@ export class LanguageServerTests {
|
|
|
187
183
|
} catch (err) {
|
|
188
184
|
// debug config is probably missing, refresh IDE and try again https://github.com/eclipse/che/issues/19887
|
|
189
185
|
await this.browserTabsUtil.refreshPage();
|
|
190
|
-
await this.
|
|
191
|
-
await this.ide.waitAndSwitchToIdeFrame();
|
|
192
|
-
await this.driverHelper.wait(TimeoutConstants.TS_SELENIUM_CLICK_ON_VISIBLE_ITEM);
|
|
186
|
+
await this.ide.waitIde();
|
|
193
187
|
await this.debugView.clickOnDebugConfigurationDropDown();
|
|
194
188
|
await this.debugView.clickOnDebugConfigurationItem(configurationName);
|
|
195
189
|
await this.debugView.clickOnRunDebugButton();
|
|
@@ -48,7 +48,6 @@ export class ProjectAndFileTests {
|
|
|
48
48
|
|
|
49
49
|
public waitWorkspaceReadinessNoSubfolder(sampleName : string, checkNotification: boolean = true) {
|
|
50
50
|
test('Wait for workspace readiness', async () => {
|
|
51
|
-
await this.ide.waitAndSwitchToIdeFrame();
|
|
52
51
|
await this.ide.waitIde(TimeoutConstants.TS_SELENIUM_START_WORKSPACE_TIMEOUT);
|
|
53
52
|
if (checkNotification) {
|
|
54
53
|
await this.ide.waitNotificationAndClickOnButton('Do you trust the authors of', 'Yes, I trust', 60_000);
|