@eclipse-che/che-e2e 7.76.0-next-3240700 → 7.76.0-next-af784fc

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. package/configs/sh-scripts/runFunctionalTests.sh +3 -0
  2. package/constants/BASE_TEST_CONSTANTS.ts +6 -0
  3. package/dist/constants/BASE_TEST_CONSTANTS.js +4 -0
  4. package/dist/constants/BASE_TEST_CONSTANTS.js.map +1 -1
  5. package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetails.js +1 -1
  6. package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetails.js.map +1 -1
  7. package/dist/specs/MochaHooks.js +23 -5
  8. package/dist/specs/MochaHooks.js.map +1 -1
  9. package/dist/specs/SmokeTest.spec.js +8 -4
  10. package/dist/specs/SmokeTest.spec.js.map +1 -1
  11. package/dist/specs/dashboard-samples/Documentation.spec.js +7 -2
  12. package/dist/specs/dashboard-samples/Documentation.spec.js.map +1 -1
  13. package/dist/specs/dashboard-samples/EmptyWorkspace.spec.js +12 -6
  14. package/dist/specs/dashboard-samples/EmptyWorkspace.spec.js.map +1 -1
  15. package/dist/specs/dashboard-samples/Quarkus.spec.js +12 -6
  16. package/dist/specs/dashboard-samples/Quarkus.spec.js.map +1 -1
  17. package/dist/specs/dashboard-samples/RecommendedExtensions.spec.js +12 -6
  18. package/dist/specs/dashboard-samples/RecommendedExtensions.spec.js.map +1 -1
  19. package/dist/specs/devconsole-intergration/DevConsoleIntegration.spec.js +18 -5
  20. package/dist/specs/devconsole-intergration/DevConsoleIntegration.spec.js.map +1 -1
  21. package/dist/specs/factory/Factory.spec.js +12 -6
  22. package/dist/specs/factory/Factory.spec.js.map +1 -1
  23. package/dist/specs/factory/NoSetupRepoFactory.spec.js +11 -7
  24. package/dist/specs/factory/NoSetupRepoFactory.spec.js.map +1 -1
  25. package/dist/specs/factory/RefusedOAuthFactory.spec.js +12 -6
  26. package/dist/specs/factory/RefusedOAuthFactory.spec.js.map +1 -1
  27. package/dist/specs/miscellaneous/CreateWorkspaceWithExistedName.spec.js +12 -7
  28. package/dist/specs/miscellaneous/CreateWorkspaceWithExistedName.spec.js.map +1 -1
  29. package/dist/specs/miscellaneous/KubedockPodmanTest.spec.js +12 -6
  30. package/dist/specs/miscellaneous/KubedockPodmanTest.spec.js.map +1 -1
  31. package/dist/specs/miscellaneous/PredefinedNamespace.spec.js +45 -12
  32. package/dist/specs/miscellaneous/PredefinedNamespace.spec.js.map +1 -1
  33. package/dist/specs/miscellaneous/WorkspaceIdleTimeout.spec.js +15 -5
  34. package/dist/specs/miscellaneous/WorkspaceIdleTimeout.spec.js.map +1 -1
  35. package/dist/specs/miscellaneous/WorkspaceWithParent.spec.js +9 -4
  36. package/dist/specs/miscellaneous/WorkspaceWithParent.spec.js.map +1 -1
  37. package/dist/suites/disconnected-ocp/UITest.suite.js +1 -1
  38. package/dist/suites/online-ocp/UITest.suite.js +1 -1
  39. package/dist/tests-library/LoginTests.js +14 -10
  40. package/dist/tests-library/LoginTests.js.map +1 -1
  41. package/dist/tests-library/WorkspaceHandlingTests.js +2 -5
  42. package/dist/tests-library/WorkspaceHandlingTests.js.map +1 -1
  43. package/dist/utils/BrowserTabsUtil.js +8 -1
  44. package/dist/utils/BrowserTabsUtil.js.map +1 -1
  45. package/dist/utils/Logger.js +1 -1
  46. package/package.json +1 -1
  47. package/pageobjects/dashboard/workspace-details/WorkspaceDetails.ts +1 -1
  48. package/specs/MochaHooks.ts +26 -5
  49. package/specs/SmokeTest.spec.ts +8 -4
  50. package/specs/dashboard-samples/Documentation.spec.ts +8 -3
  51. package/specs/dashboard-samples/EmptyWorkspace.spec.ts +15 -8
  52. package/specs/dashboard-samples/Quarkus.spec.ts +15 -7
  53. package/specs/dashboard-samples/RecommendedExtensions.spec.ts +15 -7
  54. package/specs/devconsole-intergration/DevConsoleIntegration.spec.ts +20 -8
  55. package/specs/factory/Factory.spec.ts +15 -7
  56. package/specs/factory/NoSetupRepoFactory.spec.ts +14 -10
  57. package/specs/factory/RefusedOAuthFactory.spec.ts +15 -7
  58. package/specs/miscellaneous/CreateWorkspaceWithExistedName.spec.ts +15 -8
  59. package/specs/miscellaneous/KubedockPodmanTest.spec.ts +16 -7
  60. package/specs/miscellaneous/PredefinedNamespace.spec.ts +51 -14
  61. package/specs/miscellaneous/WorkspaceIdleTimeout.spec.ts +19 -6
  62. package/specs/miscellaneous/WorkspaceWithParent.spec.ts +9 -4
  63. package/suites/disconnected-ocp/UITest.suite.ts +1 -1
  64. package/suites/online-ocp/UITest.suite.ts +1 -1
  65. package/tests-library/LoginTests.ts +17 -10
  66. package/tests-library/WorkspaceHandlingTests.ts +2 -6
  67. package/utils/BrowserTabsUtil.ts +8 -1
  68. package/utils/Logger.ts +1 -1
  69. package/utils/workspace/ITestWorkspaceUtil.ts +7 -7
@@ -1 +1 @@
1
- {"version":3,"file":"WorkspaceHandlingTests.js","sourceRoot":"","sources":["../../tests-library/WorkspaceHandlingTests.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WorkspaceHandlingTests.js","sourceRoot":"","sources":["../../tests-library/WorkspaceHandlingTests.ts"],"names":[],"mappings":"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"}
@@ -67,7 +67,14 @@ let BrowserTabsUtil = class BrowserTabsUtil {
67
67
  }
68
68
  async getCurrentUrl() {
69
69
  Logger_1.Logger.trace();
70
- return await this.driverHelper.getDriver().getCurrentUrl();
70
+ let currentUrl = '';
71
+ try {
72
+ currentUrl = await this.driverHelper.getDriver().getCurrentUrl();
73
+ }
74
+ catch (e) {
75
+ Logger_1.Logger.trace('cannot get current url');
76
+ }
77
+ return currentUrl;
71
78
  }
72
79
  async waitURL(expectedUrl, timeout) {
73
80
  Logger_1.Logger.trace(`${expectedUrl}`);
@@ -1 +1 @@
1
- {"version":3,"file":"BrowserTabsUtil.js","sourceRoot":"","sources":["../../utils/BrowserTabsUtil.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BrowserTabsUtil.js","sourceRoot":"","sources":["../../utils/BrowserTabsUtil.ts"],"names":[],"mappings":"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"}
@@ -136,7 +136,7 @@ class Logger {
136
136
  }
137
137
  static isRootCaller(traceLevel = 6) {
138
138
  return this.getCallStackArray()
139
- .slice(traceLevel, traceLevel + 2)
139
+ .slice(traceLevel, traceLevel + 4)
140
140
  .reduce((acc, e) => {
141
141
  return acc || /MochaHooks|CheReporter/.test(e);
142
142
  }, false);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eclipse-che/che-e2e",
3
- "version": "7.76.0-next-3240700",
3
+ "version": "7.76.0-next-af784fc",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {
@@ -101,7 +101,7 @@ export class WorkspaceDetails {
101
101
 
102
102
  await this.clickOnOpenButton(timeout);
103
103
  await this.testProjectAndFileCheCode.waitWorkspaceReadinessForCheCodeEditor();
104
- this.testWorkspaceUtil.waitWorkspaceStatus(namespace, workspaceName, WorkspaceStatus.STARTING);
104
+ await this.testWorkspaceUtil.waitWorkspaceStatus(workspaceName, WorkspaceStatus.STARTING);
105
105
  }
106
106
 
107
107
  async waitTabsPresence(timeout: number = TIMEOUT_CONSTANTS.TS_COMMON_DASHBOARD_WAIT_TIMEOUT): Promise<void> {
@@ -26,13 +26,19 @@ import { decorate, injectable, unmanaged } from 'inversify';
26
26
  import { Main } from '@eclipse-che/che-devworkspace-generator/lib/main';
27
27
  import { LocatorLoader } from 'monaco-page-objects/out/locators/loader';
28
28
  import { REPORTER_CONSTANTS } from '../constants/REPORTER_CONSTANTS';
29
+ import { WorkspaceHandlingTests } from '../tests-library/WorkspaceHandlingTests';
29
30
 
30
31
  const driverHelper: DriverHelper = e2eContainer.get(CLASSES.DriverHelper);
31
32
  let latestWorkspace: string = '';
32
33
  export let rpApi: any = undefined;
33
34
 
34
35
  export function registerRunningWorkspace(workspaceName: string): void {
35
- workspaceName !== '' ? Logger.debug(`with workspaceName:${workspaceName}`) : Logger.debug('delete workspace name');
36
+ workspaceName !== ''
37
+ ? Logger.debug(`with workspaceName:${workspaceName}`)
38
+ : ((): void => {
39
+ Logger.debug('delete workspace name');
40
+ WorkspaceHandlingTests.clearWorkspaceName();
41
+ })();
36
42
 
37
43
  latestWorkspace = workspaceName;
38
44
  }
@@ -108,18 +114,33 @@ exports.mochaHooks = {
108
114
  }
109
115
  },
110
116
  // stop and remove running workspace
111
- function deleteWorkspaceOnFailedTest(this: Mocha.Context): void {
117
+ async function deleteWorkspaceOnFailedTest(this: Mocha.Context): Promise<void> {
112
118
  if (this.currentTest?.state === 'failed') {
113
- if (BASE_TEST_CONSTANTS.DELETE_WORKSPACE_ON_FAILED_TEST) {
114
- Logger.info('Property DELETE_WORKSPACE_ON_FAILED_TEST is true - trying to stop and delete running workspace with API.');
119
+ if (BASE_TEST_CONSTANTS.DELETE_WORKSPACE_ON_FAILED_TEST && CHROME_DRIVER_CONSTANTS.TS_USE_WEB_DRIVER_FOR_TEST) {
120
+ Logger.trace(
121
+ 'Property DELETE_WORKSPACE_ON_FAILED_TEST is true - trying to stop and delete running workspace with API.'
122
+ );
115
123
  const testWorkspaceUtil: ITestWorkspaceUtil = e2eContainer.get(TYPES.WorkspaceUtil);
116
- testWorkspaceUtil.stopAndDeleteWorkspaceByName(latestWorkspace);
124
+ await testWorkspaceUtil.stopAndDeleteWorkspaceByName(latestWorkspace);
117
125
  }
118
126
  }
119
127
  }
120
128
  ],
121
129
  afterAll: [
122
130
  // stop and remove running workspace
131
+ async function deleteAllWorkspacesOnFinish(): Promise<void> {
132
+ try {
133
+ if (BASE_TEST_CONSTANTS.DELETE_ALL_WORKSPACES_ON_RUN_FINISH && CHROME_DRIVER_CONSTANTS.TS_USE_WEB_DRIVER_FOR_TEST) {
134
+ Logger.trace(
135
+ 'Property DELETE_WORKSPACE_ON_FAILED_TEST is true - trying to stop and delete all running workspace after test run with API.'
136
+ );
137
+ const testWorkspaceUtil: ITestWorkspaceUtil = e2eContainer.get(TYPES.WorkspaceUtil);
138
+ await testWorkspaceUtil.stopAndDeleteAllRunningWorkspaces();
139
+ }
140
+ } catch (e) {
141
+ Logger.trace('Running workspaces not found');
142
+ }
143
+ },
123
144
  async function stopTheDriver(): Promise<void> {
124
145
  if (!BASE_TEST_CONSTANTS.TS_DEBUG_MODE && CHROME_DRIVER_CONSTANTS.TS_USE_WEB_DRIVER_FOR_TEST) {
125
146
  // ensure that fired events done
@@ -29,7 +29,9 @@ suite(`The SmokeTest userstory ${BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, functio
29
29
  FACTORY_TEST_CONSTANTS.TS_SELENIUM_FACTORY_GIT_REPO_URL || 'https://github.com/che-incubator/quarkus-api-example.git';
30
30
  let projectSection: ViewSection;
31
31
  suite(`Create workspace from factory:${factoryUrl}`, function (): void {
32
- loginTests.loginIntoChe();
32
+ suiteSetup('Login', async function (): Promise<void> {
33
+ await loginTests.loginIntoChe();
34
+ });
33
35
  test(`Create and open new workspace from factory:${factoryUrl}`, async function (): Promise<void> {
34
36
  await workspaceHandlingTests.createAndOpenWorkspaceFromGitRepository(factoryUrl);
35
37
  });
@@ -54,13 +56,15 @@ suite(`The SmokeTest userstory ${BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, functio
54
56
  'Project files were not imported'
55
57
  ).not.undefined;
56
58
  });
57
- test('Stop the workspace', async function (): Promise<void> {
59
+ test('Stop the workspace by UI', async function (): Promise<void> {
58
60
  await workspaceHandlingTests.stopWorkspace(WorkspaceHandlingTests.getWorkspaceName());
59
61
  await browserTabsUtil.closeAllTabsExceptCurrent();
60
62
  });
61
- test('Delete the workspace', async function (): Promise<void> {
63
+ test('Delete the workspace by UI', async function (): Promise<void> {
62
64
  await workspaceHandlingTests.removeWorkspace(WorkspaceHandlingTests.getWorkspaceName());
63
65
  });
64
- loginTests.logoutFromChe();
66
+ suiteTeardown('Unregister running workspace', function (): void {
67
+ registerRunningWorkspace('');
68
+ });
65
69
  });
66
70
  });
@@ -65,14 +65,16 @@ suite(`Check links to documentation page in Dashboard ${BASE_TEST_CONSTANTS.TEST
65
65
  ({ webSocketTroubleshooting, workspace, devfile, general, storageTypes } = docs);
66
66
  });
67
67
 
68
+ suiteSetup('Login', async function (): Promise<void> {
69
+ await loginTests.loginIntoChe();
70
+ });
71
+
68
72
  test('Check if product.json config contains correct application version', function (): void {
69
73
  [productVersion, links[1].href, devfile, workspace, general, storageTypes, webSocketTroubleshooting].forEach((e): void => {
70
74
  expect(e, 'Fetched links not matches with tested product version').contains(testingVersion);
71
75
  });
72
76
  });
73
77
 
74
- loginTests.loginIntoChe();
75
-
76
78
  test('Check if documentation section "About" present on Dashboard', async function (): Promise<void> {
77
79
  await dashboard.openAboutMenu();
78
80
  });
@@ -135,7 +137,10 @@ suite(`Check links to documentation page in Dashboard ${BASE_TEST_CONSTANTS.TEST
135
137
  });
136
138
  }
137
139
 
138
- loginTests.logoutFromChe();
140
+ suiteTeardown('Open dashboard and close all other tabs', async function (): Promise<void> {
141
+ await dashboard.openDashboard();
142
+ await browserTabsUtil.closeAllTabsExceptCurrent();
143
+ });
139
144
 
140
145
  suiteTeardown('Delete default DevWorkspace', function (): void {
141
146
  kubernetesCommandLineToolsExecutor.deleteDevWorkspace();
@@ -9,7 +9,7 @@
9
9
  **********************************************************************/
10
10
  import { e2eContainer } from '../../configs/inversify.config';
11
11
  import { ActivityBar, ViewControl, Workbench } from 'monaco-page-objects';
12
- import { CLASSES } from '../../configs/inversify.types';
12
+ import { CLASSES, TYPES } from '../../configs/inversify.types';
13
13
  import { WorkspaceHandlingTests } from '../../tests-library/WorkspaceHandlingTests';
14
14
  import { Logger } from '../../utils/Logger';
15
15
  import { ProjectAndFileTests } from '../../tests-library/ProjectAndFileTests';
@@ -17,6 +17,8 @@ import { LoginTests } from '../../tests-library/LoginTests';
17
17
  import { registerRunningWorkspace } from '../MochaHooks';
18
18
  import { BrowserTabsUtil } from '../../utils/BrowserTabsUtil';
19
19
  import { BASE_TEST_CONSTANTS } from '../../constants/BASE_TEST_CONSTANTS';
20
+ import { ITestWorkspaceUtil } from '../../utils/workspace/ITestWorkspaceUtil';
21
+ import { Dashboard } from '../../pageobjects/dashboard/Dashboard';
20
22
 
21
23
  const stackName: string = 'Empty Workspace';
22
24
 
@@ -25,9 +27,12 @@ suite(`${stackName} test ${BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, function ():
25
27
  const projectAndFileTests: ProjectAndFileTests = e2eContainer.get(CLASSES.ProjectAndFileTests);
26
28
  const loginTests: LoginTests = e2eContainer.get(CLASSES.LoginTests);
27
29
  const browserTabsUtil: BrowserTabsUtil = e2eContainer.get(CLASSES.BrowserTabsUtil);
30
+ const testWorkspaceUtil: ITestWorkspaceUtil = e2eContainer.get(TYPES.WorkspaceUtil);
31
+ const dashboard: Dashboard = e2eContainer.get(CLASSES.Dashboard);
28
32
 
29
- loginTests.loginIntoChe();
30
-
33
+ suiteSetup('Login', async function (): Promise<void> {
34
+ await loginTests.loginIntoChe();
35
+ });
31
36
  test(`Create and open new workspace, stack:${stackName}`, async function (): Promise<void> {
32
37
  await workspaceHandlingTests.createAndOpenWorkspace(stackName);
33
38
  });
@@ -53,14 +58,16 @@ suite(`${stackName} test ${BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, function ():
53
58
  }
54
59
  });
55
60
 
56
- test('Stop the workspace', async function (): Promise<void> {
57
- await workspaceHandlingTests.stopWorkspace(WorkspaceHandlingTests.getWorkspaceName());
61
+ suiteTeardown('Open dashboard and close all other tabs', async function (): Promise<void> {
62
+ await dashboard.openDashboard();
58
63
  await browserTabsUtil.closeAllTabsExceptCurrent();
59
64
  });
60
65
 
61
- test('Delete the workspace', async function (): Promise<void> {
62
- await workspaceHandlingTests.removeWorkspace(WorkspaceHandlingTests.getWorkspaceName());
66
+ suiteTeardown('Stop and delete the workspace by API', async function (): Promise<void> {
67
+ await testWorkspaceUtil.stopAndDeleteWorkspaceByName(WorkspaceHandlingTests.getWorkspaceName());
63
68
  });
64
69
 
65
- loginTests.logoutFromChe();
70
+ suiteTeardown('Unregister running workspace', function (): void {
71
+ registerRunningWorkspace('');
72
+ });
66
73
  });
@@ -12,12 +12,14 @@ import { ViewSection } from 'monaco-page-objects';
12
12
  import { registerRunningWorkspace } from '../MochaHooks';
13
13
  import { LoginTests } from '../../tests-library/LoginTests';
14
14
  import { e2eContainer } from '../../configs/inversify.config';
15
- import { CLASSES } from '../../configs/inversify.types';
15
+ import { CLASSES, TYPES } from '../../configs/inversify.types';
16
16
  import { WorkspaceHandlingTests } from '../../tests-library/WorkspaceHandlingTests';
17
17
  import { ProjectAndFileTests } from '../../tests-library/ProjectAndFileTests';
18
18
  import { BASE_TEST_CONSTANTS } from '../../constants/BASE_TEST_CONSTANTS';
19
19
  import { BrowserTabsUtil } from '../../utils/BrowserTabsUtil';
20
20
  import { expect } from 'chai';
21
+ import { ITestWorkspaceUtil } from '../../utils/workspace/ITestWorkspaceUtil';
22
+ import { Dashboard } from '../../pageobjects/dashboard/Dashboard';
21
23
 
22
24
  const stackName: string = 'Java 11 with Quarkus';
23
25
 
@@ -26,11 +28,15 @@ suite(`The ${stackName} userstory ${BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, func
26
28
  const workspaceHandlingTests: WorkspaceHandlingTests = e2eContainer.get(CLASSES.WorkspaceHandlingTests);
27
29
  const loginTests: LoginTests = e2eContainer.get(CLASSES.LoginTests);
28
30
  const browserTabsUtil: BrowserTabsUtil = e2eContainer.get(CLASSES.BrowserTabsUtil);
31
+ const testWorkspaceUtil: ITestWorkspaceUtil = e2eContainer.get(TYPES.WorkspaceUtil);
32
+ const dashboard: Dashboard = e2eContainer.get(CLASSES.Dashboard);
29
33
 
30
34
  let projectSection: ViewSection;
31
35
  const projectName: string = 'quarkus-quickstarts';
32
36
 
33
- loginTests.loginIntoChe();
37
+ suiteSetup('Login', async function (): Promise<void> {
38
+ await loginTests.loginIntoChe();
39
+ });
34
40
 
35
41
  test(`Create and open new workspace, stack:${stackName}`, async function (): Promise<void> {
36
42
  await workspaceHandlingTests.createAndOpenWorkspace(stackName);
@@ -64,14 +70,16 @@ suite(`The ${stackName} userstory ${BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, func
64
70
  ).not.undefined;
65
71
  });
66
72
 
67
- test('Stop the workspace', async function (): Promise<void> {
68
- await workspaceHandlingTests.stopWorkspace(WorkspaceHandlingTests.getWorkspaceName());
73
+ suiteTeardown('Open dashboard and close all other tabs', async function (): Promise<void> {
74
+ await dashboard.openDashboard();
69
75
  await browserTabsUtil.closeAllTabsExceptCurrent();
70
76
  });
71
77
 
72
- test('Delete the workspace', async function (): Promise<void> {
73
- await workspaceHandlingTests.removeWorkspace(WorkspaceHandlingTests.getWorkspaceName());
78
+ suiteTeardown('Stop and delete the workspace by API', async function (): Promise<void> {
79
+ await testWorkspaceUtil.stopAndDeleteWorkspaceByName(WorkspaceHandlingTests.getWorkspaceName());
74
80
  });
75
81
 
76
- loginTests.logoutFromChe();
82
+ suiteTeardown('Unregister running workspace', function (): void {
83
+ registerRunningWorkspace('');
84
+ });
77
85
  });
@@ -23,7 +23,7 @@ import {
23
23
  import { registerRunningWorkspace } from '../MochaHooks';
24
24
  import { LoginTests } from '../../tests-library/LoginTests';
25
25
  import { e2eContainer } from '../../configs/inversify.config';
26
- import { CLASSES } from '../../configs/inversify.types';
26
+ import { CLASSES, TYPES } from '../../configs/inversify.types';
27
27
  import { WorkspaceHandlingTests } from '../../tests-library/WorkspaceHandlingTests';
28
28
  import { ProjectAndFileTests } from '../../tests-library/ProjectAndFileTests';
29
29
  import { Logger } from '../../utils/Logger';
@@ -34,6 +34,8 @@ import { TIMEOUT_CONSTANTS } from '../../constants/TIMEOUT_CONSTANTS';
34
34
  import { BrowserTabsUtil } from '../../utils/BrowserTabsUtil';
35
35
  import { PLUGIN_TEST_CONSTANTS } from '../../constants/PLUGIN_TEST_CONSTANTS';
36
36
  import { BASE_TEST_CONSTANTS } from '../../constants/BASE_TEST_CONSTANTS';
37
+ import { ITestWorkspaceUtil } from '../../utils/workspace/ITestWorkspaceUtil';
38
+ import { Dashboard } from '../../pageobjects/dashboard/Dashboard';
37
39
 
38
40
  const samples: string[] = PLUGIN_TEST_CONSTANTS.TS_SAMPLE_LIST.split(',');
39
41
 
@@ -46,6 +48,8 @@ for (const sample of samples) {
46
48
  const browserTabsUtil: BrowserTabsUtil = e2eContainer.get(CLASSES.BrowserTabsUtil);
47
49
  const cheCodeLocatorLoader: CheCodeLocatorLoader = e2eContainer.get(CLASSES.CheCodeLocatorLoader);
48
50
  const webCheCodeLocators: Locators = cheCodeLocatorLoader.webCheCodeLocators;
51
+ const testWorkspaceUtil: ITestWorkspaceUtil = e2eContainer.get(TYPES.WorkspaceUtil);
52
+ const dashboard: Dashboard = e2eContainer.get(CLASSES.Dashboard);
49
53
 
50
54
  let projectSection: ViewSection;
51
55
  let extensionSection: ExtensionsViewSection;
@@ -56,7 +60,9 @@ for (const sample of samples) {
56
60
  recommendations: []
57
61
  };
58
62
 
59
- loginTests.loginIntoChe();
63
+ suiteSetup('Login', async function (): Promise<void> {
64
+ await loginTests.loginIntoChe();
65
+ });
60
66
 
61
67
  test(`Create and open new workspace, stack:${sample}`, async function (): Promise<void> {
62
68
  await workspaceHandlingTests.createAndOpenWorkspace(sample);
@@ -202,15 +208,17 @@ for (const sample of samples) {
202
208
  }
203
209
  });
204
210
 
205
- test('Stop the workspace', async function (): Promise<void> {
206
- await workspaceHandlingTests.stopWorkspace(WorkspaceHandlingTests.getWorkspaceName());
211
+ suiteTeardown('Open dashboard and close all other tabs', async function (): Promise<void> {
212
+ await dashboard.openDashboard();
207
213
  await browserTabsUtil.closeAllTabsExceptCurrent();
208
214
  });
209
215
 
210
- test('Delete the workspace', async function (): Promise<void> {
211
- await workspaceHandlingTests.removeWorkspace(WorkspaceHandlingTests.getWorkspaceName());
216
+ suiteTeardown('Stop and delete the workspace by API', async function (): Promise<void> {
217
+ await testWorkspaceUtil.stopAndDeleteWorkspaceByName(WorkspaceHandlingTests.getWorkspaceName());
212
218
  });
213
219
 
214
- loginTests.logoutFromChe();
220
+ suiteTeardown('Unregister running workspace', function (): void {
221
+ registerRunningWorkspace('');
222
+ });
215
223
  });
216
224
  }
@@ -12,7 +12,7 @@ import { ViewSection } from 'monaco-page-objects';
12
12
  import { registerRunningWorkspace } from '../MochaHooks';
13
13
  import { LoginTests } from '../../tests-library/LoginTests';
14
14
  import { e2eContainer } from '../../configs/inversify.config';
15
- import { CLASSES, TYPES } from '../../configs/inversify.types';
15
+ import { CLASSES } from '../../configs/inversify.types';
16
16
  import { WorkspaceHandlingTests } from '../../tests-library/WorkspaceHandlingTests';
17
17
  import { ProjectAndFileTests } from '../../tests-library/ProjectAndFileTests';
18
18
  import { expect } from 'chai';
@@ -22,19 +22,20 @@ import { KubernetesCommandLineToolsExecutor } from '../../utils/KubernetesComman
22
22
  import { StringUtil } from '../../utils/StringUtil';
23
23
  import { OcpApplicationPage } from '../../pageobjects/openshift/OcpApplicationPage';
24
24
  import { BASE_TEST_CONSTANTS } from '../../constants/BASE_TEST_CONSTANTS';
25
- import { ITestWorkspaceUtil } from '../../utils/workspace/ITestWorkspaceUtil';
26
25
  import { BrowserTabsUtil } from '../../utils/BrowserTabsUtil';
26
+ import { Dashboard } from '../../pageobjects/dashboard/Dashboard';
27
+ import { TIMEOUT_CONSTANTS } from '../../constants/TIMEOUT_CONSTANTS';
27
28
 
28
29
  suite(`DevConsole Integration ${BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, function (): void {
29
30
  let ocpImportPage: OcpImportFromGitPage;
30
31
  let ocpApplicationPage: OcpApplicationPage;
31
32
 
32
33
  const projectAndFileTests: ProjectAndFileTests = e2eContainer.get(CLASSES.ProjectAndFileTests);
34
+ const dashboard: Dashboard = e2eContainer.get(CLASSES.Dashboard);
33
35
  const loginTests: LoginTests = e2eContainer.get(CLASSES.LoginTests);
34
36
  const workspaceHandlingTests: WorkspaceHandlingTests = e2eContainer.get(CLASSES.WorkspaceHandlingTests);
35
37
  const browserTabsUtil: BrowserTabsUtil = e2eContainer.get(CLASSES.BrowserTabsUtil);
36
38
  const ocpMainPage: OcpMainPage = e2eContainer.get(CLASSES.OcpMainPage);
37
- const testWorkspaceUtil: ITestWorkspaceUtil = e2eContainer.get(TYPES.WorkspaceUtil);
38
39
  const kubernetesCommandLineToolsExecutor: KubernetesCommandLineToolsExecutor = e2eContainer.get(
39
40
  CLASSES.KubernetesCommandLineToolsExecutor
40
41
  );
@@ -72,7 +73,13 @@ suite(`DevConsole Integration ${BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, function
72
73
  await ocpApplicationPage.waitAndOpenEditSourceCodeIcon();
73
74
  });
74
75
 
75
- loginTests.loginIntoChe();
76
+ test('Login', async function (): Promise<void> {
77
+ try {
78
+ await dashboard.waitLoader(TIMEOUT_CONSTANTS.TS_WAIT_LOADER_PRESENCE_TIMEOUT);
79
+ } catch (e) {
80
+ await loginTests.loginIntoChe();
81
+ }
82
+ });
76
83
 
77
84
  test('Obtain workspace name from workspace loader page', async function (): Promise<void> {
78
85
  await workspaceHandlingTests.obtainWorkspaceNameFromStartingPage();
@@ -99,14 +106,19 @@ suite(`DevConsole Integration ${BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, function
99
106
  ).not.undefined;
100
107
  });
101
108
 
102
- test('Stop and delete the workspace by API', async function (): Promise<void> {
109
+ suiteTeardown('Open dashboard and close all other tabs', async function (): Promise<void> {
110
+ await dashboard.openDashboard();
103
111
  await browserTabsUtil.closeAllTabsExceptCurrent();
104
- testWorkspaceUtil.stopAndDeleteWorkspaceByName(WorkspaceHandlingTests.getWorkspaceName());
105
112
  });
106
113
 
107
- loginTests.logoutFromChe();
108
-
109
114
  suiteTeardown('Delete project using ocp', function (): void {
115
+ kubernetesCommandLineToolsExecutor.workspaceName =
116
+ WorkspaceHandlingTests.getWorkspaceName() !== '' ? WorkspaceHandlingTests.getWorkspaceName() : 'spring-music';
117
+ kubernetesCommandLineToolsExecutor.deleteDevWorkspace();
110
118
  kubernetesCommandLineToolsExecutor.deleteProject(projectName);
111
119
  });
120
+
121
+ suiteTeardown('Unregister running workspace', function (): void {
122
+ registerRunningWorkspace('');
123
+ });
112
124
  });
@@ -29,7 +29,7 @@ import { CheCodeLocatorLoader } from '../../pageobjects/ide/CheCodeLocatorLoader
29
29
  import { registerRunningWorkspace } from '../MochaHooks';
30
30
  import { BrowserTabsUtil } from '../../utils/BrowserTabsUtil';
31
31
  import { WorkspaceHandlingTests } from '../../tests-library/WorkspaceHandlingTests';
32
- import { CLASSES } from '../../configs/inversify.types';
32
+ import { CLASSES, TYPES } from '../../configs/inversify.types';
33
33
  import { DriverHelper } from '../../utils/DriverHelper';
34
34
  import { ProjectAndFileTests } from '../../tests-library/ProjectAndFileTests';
35
35
  import { Logger } from '../../utils/Logger';
@@ -37,6 +37,8 @@ import { LoginTests } from '../../tests-library/LoginTests';
37
37
  import { OAUTH_CONSTANTS } from '../../constants/OAUTH_CONSTANTS';
38
38
  import { BASE_TEST_CONSTANTS } from '../../constants/BASE_TEST_CONSTANTS';
39
39
  import { FACTORY_TEST_CONSTANTS } from '../../constants/FACTORY_TEST_CONSTANTS';
40
+ import { ITestWorkspaceUtil } from '../../utils/workspace/ITestWorkspaceUtil';
41
+ import { Dashboard } from '../../pageobjects/dashboard/Dashboard';
40
42
 
41
43
  suite(
42
44
  `Create a workspace via launching a factory from the ${FACTORY_TEST_CONSTANTS.TS_SELENIUM_FACTORY_GIT_PROVIDER} repository ${BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`,
@@ -49,6 +51,8 @@ suite(
49
51
  const cheCodeLocatorLoader: CheCodeLocatorLoader = e2eContainer.get(CLASSES.CheCodeLocatorLoader);
50
52
  const webCheCodeLocators: Locators = cheCodeLocatorLoader.webCheCodeLocators;
51
53
  const oauthPage: OauthPage = e2eContainer.get(CLASSES.OauthPage);
54
+ const testWorkspaceUtil: ITestWorkspaceUtil = e2eContainer.get(TYPES.WorkspaceUtil);
55
+ const dashboard: Dashboard = e2eContainer.get(CLASSES.Dashboard);
52
56
 
53
57
  let projectSection: ViewSection;
54
58
  let scmProvider: SingleScmProvider;
@@ -64,7 +68,9 @@ suite(
64
68
  const pushItemLabel: string = 'Push';
65
69
  let testRepoProjectName: string;
66
70
 
67
- loginTests.loginIntoChe();
71
+ suiteSetup('Login', async function (): Promise<void> {
72
+ await loginTests.loginIntoChe();
73
+ });
68
74
  test('Navigate to the factory URL', async function (): Promise<void> {
69
75
  await browserTabsUtil.navigateTo(FACTORY_TEST_CONSTANTS.TS_SELENIUM_FACTORY_URL());
70
76
  });
@@ -189,15 +195,17 @@ suite(
189
195
  expect(isCommitButtonDisabled).to.equal('true');
190
196
  });
191
197
 
192
- test('Stop the workspace', async function (): Promise<void> {
193
- await workspaceHandlingTests.stopWorkspace(WorkspaceHandlingTests.getWorkspaceName());
198
+ suiteTeardown('Open dashboard and close all other tabs', async function (): Promise<void> {
199
+ await dashboard.openDashboard();
194
200
  await browserTabsUtil.closeAllTabsExceptCurrent();
195
201
  });
196
202
 
197
- test('Delete the workspace', async function (): Promise<void> {
198
- await workspaceHandlingTests.removeWorkspace(WorkspaceHandlingTests.getWorkspaceName());
203
+ suiteTeardown('Stop and delete the workspace by API', async function (): Promise<void> {
204
+ await testWorkspaceUtil.stopAndDeleteWorkspaceByName(WorkspaceHandlingTests.getWorkspaceName());
199
205
  });
200
206
 
201
- loginTests.logoutFromChe();
207
+ suiteTeardown('Unregister running workspace', function (): void {
208
+ registerRunningWorkspace('');
209
+ });
202
210
  }
203
211
  );
@@ -28,7 +28,7 @@ import { StringUtil } from '../../utils/StringUtil';
28
28
  import { CheCodeLocatorLoader } from '../../pageobjects/ide/CheCodeLocatorLoader';
29
29
  import { registerRunningWorkspace } from '../MochaHooks';
30
30
  import { BrowserTabsUtil } from '../../utils/BrowserTabsUtil';
31
- import { CLASSES } from '../../configs/inversify.types';
31
+ import { CLASSES, TYPES } from '../../configs/inversify.types';
32
32
  import { WorkspaceHandlingTests } from '../../tests-library/WorkspaceHandlingTests';
33
33
  import { ProjectAndFileTests } from '../../tests-library/ProjectAndFileTests';
34
34
  import { DriverHelper } from '../../utils/DriverHelper';
@@ -39,6 +39,7 @@ import { LoginTests } from '../../tests-library/LoginTests';
39
39
  import { FACTORY_TEST_CONSTANTS, GitProviderType } from '../../constants/FACTORY_TEST_CONSTANTS';
40
40
  import { OAUTH_CONSTANTS } from '../../constants/OAUTH_CONSTANTS';
41
41
  import { BASE_TEST_CONSTANTS } from '../../constants/BASE_TEST_CONSTANTS';
42
+ import { ITestWorkspaceUtil } from '../../utils/workspace/ITestWorkspaceUtil';
42
43
 
43
44
  suite(
44
45
  `Create a workspace via launching a factory from the ${FACTORY_TEST_CONSTANTS.TS_SELENIUM_FACTORY_GIT_PROVIDER} repository without PAT/OAuth setup ${BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`,
@@ -52,6 +53,7 @@ suite(
52
53
  const dashboard: Dashboard = e2eContainer.get(CLASSES.Dashboard);
53
54
  const workspaces: Workspaces = e2eContainer.get(CLASSES.Workspaces);
54
55
  const loginTests: LoginTests = e2eContainer.get(CLASSES.LoginTests);
56
+ const testWorkspaceUtil: ITestWorkspaceUtil = e2eContainer.get(TYPES.WorkspaceUtil);
55
57
 
56
58
  let projectSection: ViewSection;
57
59
  let scmProvider: SingleScmProvider;
@@ -69,7 +71,9 @@ suite(
69
71
  let testRepoProjectName: string;
70
72
  const isPrivateRepo: string = FACTORY_TEST_CONSTANTS.TS_SELENIUM_IS_PRIVATE_FACTORY_GIT_REPO ? 'private' : 'public';
71
73
 
72
- loginTests.loginIntoChe();
74
+ suiteSetup('Login', async function (): Promise<void> {
75
+ await loginTests.loginIntoChe();
76
+ });
73
77
 
74
78
  test('Get number of previously created workspaces', async function (): Promise<void> {
75
79
  await dashboard.clickWorkspacesButton();
@@ -95,8 +99,6 @@ suite(
95
99
  const allCreatedWorkspacesNames: string[] = await workspaces.getAllCreatedWorkspacesNames();
96
100
  expect(allCreatedWorkspacesNames).has.length(numberOfCreatedWorkspaces);
97
101
  });
98
-
99
- loginTests.logoutFromChe();
100
102
  } else {
101
103
  test('Obtain workspace name from workspace loader page', async function (): Promise<void> {
102
104
  await workspaceHandlingTests.obtainWorkspaceNameFromStartingPage();
@@ -241,16 +243,18 @@ suite(
241
243
  expect(isCommitButtonDisabled).to.be.true;
242
244
  });
243
245
 
244
- test('Stop the workspace', async function (): Promise<void> {
245
- await workspaceHandlingTests.stopWorkspace(WorkspaceHandlingTests.getWorkspaceName());
246
+ suiteTeardown('Open dashboard and close all other tabs', async function (): Promise<void> {
247
+ await dashboard.openDashboard();
246
248
  await browserTabsUtil.closeAllTabsExceptCurrent();
247
249
  });
248
250
 
249
- test('Delete the workspace', async function (): Promise<void> {
250
- await workspaceHandlingTests.removeWorkspace(WorkspaceHandlingTests.getWorkspaceName());
251
+ suiteTeardown('Stop and delete the workspace by API', async function (): Promise<void> {
252
+ await testWorkspaceUtil.stopAndDeleteWorkspaceByName(WorkspaceHandlingTests.getWorkspaceName());
251
253
  });
252
-
253
- loginTests.logoutFromChe();
254
254
  }
255
+
256
+ suiteTeardown('Unregister running workspace', function (): void {
257
+ registerRunningWorkspace('');
258
+ });
255
259
  }
256
260
  );
@@ -26,7 +26,7 @@ import {
26
26
  import { expect } from 'chai';
27
27
  import { registerRunningWorkspace } from '../MochaHooks';
28
28
  import { BrowserTabsUtil } from '../../utils/BrowserTabsUtil';
29
- import { CLASSES } from '../../configs/inversify.types';
29
+ import { CLASSES, TYPES } from '../../configs/inversify.types';
30
30
  import { WorkspaceHandlingTests } from '../../tests-library/WorkspaceHandlingTests';
31
31
  import { CheCodeLocatorLoader } from '../../pageobjects/ide/CheCodeLocatorLoader';
32
32
  import { ProjectAndFileTests } from '../../tests-library/ProjectAndFileTests';
@@ -38,6 +38,8 @@ import { LoginTests } from '../../tests-library/LoginTests';
38
38
  import { OAUTH_CONSTANTS } from '../../constants/OAUTH_CONSTANTS';
39
39
  import { BASE_TEST_CONSTANTS } from '../../constants/BASE_TEST_CONSTANTS';
40
40
  import { FACTORY_TEST_CONSTANTS, GitProviderType } from '../../constants/FACTORY_TEST_CONSTANTS';
41
+ import { ITestWorkspaceUtil } from '../../utils/workspace/ITestWorkspaceUtil';
42
+ import { Dashboard } from '../../pageobjects/dashboard/Dashboard';
41
43
 
42
44
  suite(
43
45
  `Create a workspace via launching a factory from the ${FACTORY_TEST_CONSTANTS.TS_SELENIUM_FACTORY_GIT_PROVIDER} repository and deny the access ${BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`,
@@ -50,6 +52,8 @@ suite(
50
52
  const driverHelper: DriverHelper = e2eContainer.get(CLASSES.DriverHelper);
51
53
  const loginTests: LoginTests = e2eContainer.get(CLASSES.LoginTests);
52
54
  const oauthPage: OauthPage = e2eContainer.get(CLASSES.OauthPage);
55
+ const testWorkspaceUtil: ITestWorkspaceUtil = e2eContainer.get(TYPES.WorkspaceUtil);
56
+ const dashboard: Dashboard = e2eContainer.get(CLASSES.Dashboard);
53
57
 
54
58
  let projectSection: ViewSection;
55
59
  let scmProvider: SingleScmProvider;
@@ -66,7 +70,9 @@ suite(
66
70
  let testRepoProjectName: string;
67
71
  const isPrivateRepo: string = FACTORY_TEST_CONSTANTS.TS_SELENIUM_IS_PRIVATE_FACTORY_GIT_REPO ? 'private' : 'public';
68
72
 
69
- loginTests.loginIntoChe();
73
+ suiteSetup('Login', async function (): Promise<void> {
74
+ await loginTests.loginIntoChe();
75
+ });
70
76
 
71
77
  test(`Navigate to the ${isPrivateRepo} repository factory URL`, async function (): Promise<void> {
72
78
  await browserTabsUtil.navigateTo(FACTORY_TEST_CONSTANTS.TS_SELENIUM_FACTORY_URL());
@@ -232,15 +238,17 @@ suite(
232
238
  });
233
239
  }
234
240
 
235
- test('Stop the workspace', async function (): Promise<void> {
236
- await workspaceHandlingTests.stopWorkspace(WorkspaceHandlingTests.getWorkspaceName());
241
+ suiteTeardown('Open dashboard and close all other tabs', async function (): Promise<void> {
242
+ await dashboard.openDashboard();
237
243
  await browserTabsUtil.closeAllTabsExceptCurrent();
238
244
  });
239
245
 
240
- test('Delete the workspace', async function (): Promise<void> {
241
- await workspaceHandlingTests.removeWorkspace(WorkspaceHandlingTests.getWorkspaceName());
246
+ suiteTeardown('Stop and delete the workspace by API', async function (): Promise<void> {
247
+ await testWorkspaceUtil.stopAndDeleteWorkspaceByName(WorkspaceHandlingTests.getWorkspaceName());
242
248
  });
243
249
 
244
- loginTests.logoutFromChe();
250
+ suiteTeardown('Unregister running workspace', function (): void {
251
+ registerRunningWorkspace('');
252
+ });
245
253
  }
246
254
  );