@eclipse-che/che-e2e 7.75.0-dev-8a0bacc → 7.75.0-next-b6eb83e

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.
@@ -93,6 +93,8 @@ exports.mochaHooks = {
93
93
  afterAll: [
94
94
  async function stopTheDriver() {
95
95
  if (!BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TS_DEBUG_MODE && CHROME_DRIVER_CONSTANTS_1.CHROME_DRIVER_CONSTANTS.TS_USE_WEB_DRIVER_FOR_TEST) {
96
+ // ensure that fired events done
97
+ await driverHelper.wait(5000);
96
98
  await driverHelper.getDriver().quit();
97
99
  Logger_1.Logger.info('Chrome driver session stopped.');
98
100
  }
@@ -1 +1 @@
1
- {"version":3,"file":"MochaHooks.js","sourceRoot":"","sources":["../../specs/MochaHooks.ts"],"names":[],"mappings":";AAAA;;;;;;;;wEAQwE;;;;;;;;;;;;;;;;;;;;;;;;;;AAExE,4BAA0B;AAC1B,gEAA4D;AAC5D,yFAAsF;AACtF,sEAAmE;AACnE,uEAAyD;AACzD,gGAAkF;AAClF,kEAA2D;AAG3D,4CAAyC;AACzC,0EAAuE;AACvE,kFAA+E;AAC/E,oEAAiE;AAEjE,MAAM,YAAY,GAAiB,+BAAY,CAAC,GAAG,CAAC,yBAAO,CAAC,YAAY,CAAC,CAAC;AAC1E,IAAI,eAAe,GAAW,EAAE,CAAC;AAEjC,SAAgB,wBAAwB,CAAC,aAAqB;IAC7D,eAAM,CAAC,KAAK,CAAC,sBAAsB,aAAa,EAAE,CAAC,CAAC;IACpD,eAAe,GAAG,aAAa,CAAC;AACjC,CAAC;AAHD,4DAGC;AAED,OAAO,CAAC,UAAU,GAAG;IACpB,SAAS,EAAE;QACV,SAAS,wBAAwB;YAChC,IAAI,yCAAmB,CAAC,+BAA+B,EAAE;gBACxD,2CAAoB,CAAC,wBAAwB,EAAE,CAAC;aAChD;QACF,CAAC;QACD,SAAS,yBAAyB;YACjC,IAAI,yCAAmB,CAAC,gCAAgC,EAAE;gBACzD,2CAAoB,CAAC,yBAAyB,EAAE,CAAC;aACjD;QACF,CAAC;QACD,mDAAmD;QACnD,SAAS,qBAAqB;YAC7B,iBAAiB,CAAC,eAAe,CAChC,mCAAgB,CAAC,2CAA2C,EAC5D,mCAAgB,CAAC,4CAA4C,EAC7D,6BAA6B,CAAC,eAAe,EAAE,EAC/C,YAAY,CAAC,SAAS,EAAE,EACxB,eAAe,CACf,CAAC;QACH,CAAC;QACD,SAAS,kCAAkC;YAC1C,IAAI,yCAAmB,CAAC,aAAa,EAAE;gBACtC,KAAK,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,qCAAiB,CAAC,EAAE;oBACnE,MAAM,CAAC,cAAc,CAAC,qCAAiB,EAAE,OAAO,EAAE;wBACjD,KAAK,EAAE,OAAO,GAAG,GAAG;qBACpB,CAAC,CAAC;iBACH;aACD;QACF,CAAC;KACD;IACD,SAAS,EAAE;QACV,oCAAoC;QACpC,SAAS,2BAA2B;;YACnC,IAAI,CAAA,MAAA,IAAI,CAAC,WAAW,0CAAE,KAAK,MAAK,QAAQ,EAAE;gBACzC,IAAI,yCAAmB,CAAC,+BAA+B,EAAE;oBACxD,eAAM,CAAC,IAAI,CAAC,0GAA0G,CAAC,CAAC;oBACxH,MAAM,iBAAiB,GAAuB,+BAAY,CAAC,GAAG,CAAC,uBAAK,CAAC,aAAa,CAAC,CAAC;oBACpF,iBAAiB,CAAC,4BAA4B,CAAC,eAAe,CAAC,CAAC;iBAChE;aACD;QACF,CAAC;KACD;IACD,QAAQ,EAAE;QACT,KAAK,UAAU,aAAa;YAC3B,IAAI,CAAC,yCAAmB,CAAC,aAAa,IAAI,iDAAuB,CAAC,0BAA0B,EAAE;gBAC7F,MAAM,YAAY,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC;gBACtC,eAAM,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;aAC9C;QACF,CAAC;KACD;CACD,CAAC"}
1
+ {"version":3,"file":"MochaHooks.js","sourceRoot":"","sources":["../../specs/MochaHooks.ts"],"names":[],"mappings":";AAAA;;;;;;;;wEAQwE;;;;;;;;;;;;;;;;;;;;;;;;;;AAExE,4BAA0B;AAC1B,gEAA4D;AAC5D,yFAAsF;AACtF,sEAAmE;AACnE,uEAAyD;AACzD,gGAAkF;AAClF,kEAA2D;AAG3D,4CAAyC;AACzC,0EAAuE;AACvE,kFAA+E;AAC/E,oEAAiE;AAEjE,MAAM,YAAY,GAAiB,+BAAY,CAAC,GAAG,CAAC,yBAAO,CAAC,YAAY,CAAC,CAAC;AAC1E,IAAI,eAAe,GAAW,EAAE,CAAC;AAEjC,SAAgB,wBAAwB,CAAC,aAAqB;IAC7D,eAAM,CAAC,KAAK,CAAC,sBAAsB,aAAa,EAAE,CAAC,CAAC;IACpD,eAAe,GAAG,aAAa,CAAC;AACjC,CAAC;AAHD,4DAGC;AAED,OAAO,CAAC,UAAU,GAAG;IACpB,SAAS,EAAE;QACV,SAAS,wBAAwB;YAChC,IAAI,yCAAmB,CAAC,+BAA+B,EAAE;gBACxD,2CAAoB,CAAC,wBAAwB,EAAE,CAAC;aAChD;QACF,CAAC;QACD,SAAS,yBAAyB;YACjC,IAAI,yCAAmB,CAAC,gCAAgC,EAAE;gBACzD,2CAAoB,CAAC,yBAAyB,EAAE,CAAC;aACjD;QACF,CAAC;QACD,mDAAmD;QACnD,SAAS,qBAAqB;YAC7B,iBAAiB,CAAC,eAAe,CAChC,mCAAgB,CAAC,2CAA2C,EAC5D,mCAAgB,CAAC,4CAA4C,EAC7D,6BAA6B,CAAC,eAAe,EAAE,EAC/C,YAAY,CAAC,SAAS,EAAE,EACxB,eAAe,CACf,CAAC;QACH,CAAC;QACD,SAAS,kCAAkC;YAC1C,IAAI,yCAAmB,CAAC,aAAa,EAAE;gBACtC,KAAK,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,qCAAiB,CAAC,EAAE;oBACnE,MAAM,CAAC,cAAc,CAAC,qCAAiB,EAAE,OAAO,EAAE;wBACjD,KAAK,EAAE,OAAO,GAAG,GAAG;qBACpB,CAAC,CAAC;iBACH;aACD;QACF,CAAC;KACD;IACD,SAAS,EAAE;QACV,oCAAoC;QACpC,SAAS,2BAA2B;;YACnC,IAAI,CAAA,MAAA,IAAI,CAAC,WAAW,0CAAE,KAAK,MAAK,QAAQ,EAAE;gBACzC,IAAI,yCAAmB,CAAC,+BAA+B,EAAE;oBACxD,eAAM,CAAC,IAAI,CAAC,0GAA0G,CAAC,CAAC;oBACxH,MAAM,iBAAiB,GAAuB,+BAAY,CAAC,GAAG,CAAC,uBAAK,CAAC,aAAa,CAAC,CAAC;oBACpF,iBAAiB,CAAC,4BAA4B,CAAC,eAAe,CAAC,CAAC;iBAChE;aACD;QACF,CAAC;KACD;IACD,QAAQ,EAAE;QACT,KAAK,UAAU,aAAa;YAC3B,IAAI,CAAC,yCAAmB,CAAC,aAAa,IAAI,iDAAuB,CAAC,0BAA0B,EAAE;gBAC7F,gCAAgC;gBAChC,MAAM,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC9B,MAAM,YAAY,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC;gBACtC,eAAM,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;aAC9C;QACF,CAAC;KACD;CACD,CAAC"}
@@ -19,7 +19,7 @@ const BASE_TEST_CONSTANTS_1 = require("../../constants/BASE_TEST_CONSTANTS");
19
19
  const FACTORY_TEST_CONSTANTS_1 = require("../../constants/FACTORY_TEST_CONSTANTS");
20
20
  const stackName = BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TS_SELENIUM_DASHBOARD_SAMPLE_NAME || 'Python';
21
21
  const projectName = FACTORY_TEST_CONSTANTS_1.FACTORY_TEST_CONSTANTS.TS_SELENIUM_PROJECT_NAME || 'python-hello-world';
22
- suite(`"Start workspace with existed workspace name" test`, function () {
22
+ suite('"Start workspace with existed workspace name" test', function () {
23
23
  const workspaceHandlingTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.WorkspaceHandlingTests);
24
24
  const projectAndFileTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ProjectAndFileTests);
25
25
  const loginTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.LoginTests);
@@ -39,7 +39,7 @@ suite(`"Start workspace with existed workspace name" test`, function () {
39
39
  const isFileImported = await projectSection.findItem(BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TS_SELENIUM_PROJECT_ROOT_FILE_NAME);
40
40
  (0, chai_1.expect)(isFileImported).not.eqls(undefined);
41
41
  });
42
- test(`Stop created workspace`, async function () {
42
+ test('Stop created workspace', async function () {
43
43
  existedWorkspaceName = WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName();
44
44
  await workspaceHandlingTests.stopWorkspace(existedWorkspaceName);
45
45
  await browserTabsUtil.closeAllTabsExceptCurrent();
@@ -31,8 +31,8 @@ var __importStar = (this && this.__importStar) || function (mod) {
31
31
  var __metadata = (this && this.__metadata) || function (k, v) {
32
32
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
33
33
  };
34
- var __param = (this && this.__param) || function (paramIndex, decorator) {
35
- return function (target, key) { decorator(target, key, paramIndex); }
34
+ var __importDefault = (this && this.__importDefault) || function (mod) {
35
+ return (mod && mod.__esModule) ? mod : { "default": mod };
36
36
  };
37
37
  var CheReporter_1;
38
38
  /** *******************************************************************
@@ -59,11 +59,12 @@ const OAUTH_CONSTANTS_1 = require("../constants/OAUTH_CONSTANTS");
59
59
  const REPORTER_CONSTANTS_1 = require("../constants/REPORTER_CONSTANTS");
60
60
  const PLUGIN_TEST_CONSTANTS_1 = require("../constants/PLUGIN_TEST_CONSTANTS");
61
61
  const inversify_1 = require("inversify");
62
+ const inversify_inject_decorators_1 = __importDefault(require("inversify-inject-decorators"));
63
+ const inversify_config_1 = require("../configs/inversify.config");
64
+ const { lazyInject } = (0, inversify_inject_decorators_1.default)(inversify_config_1.e2eContainer);
62
65
  let CheReporter = CheReporter_1 = class CheReporter extends mocha.reporters.Spec {
63
- constructor(runner, options, driverHelper, screenCatcher) {
66
+ constructor(runner, options) {
64
67
  super(runner, options);
65
- this.driverHelper = driverHelper;
66
- this.screenCatcher = screenCatcher;
67
68
  runner.on('start', () => {
68
69
  let launchInformation = `################## Launch Information ##################
69
70
 
@@ -126,11 +127,7 @@ let CheReporter = CheReporter_1 = class CheReporter extends mocha.reporters.Spec
126
127
  fs.appendFileSync(loadTestFilePath, report);
127
128
  }
128
129
  });
129
- runner.on('end', async () => {
130
- // ensure that fired events done
131
- await this.driverHelper.wait(5000);
132
- // close driver
133
- await this.driverHelper.getDriver().quit();
130
+ runner.on('end', () => {
134
131
  // delete screencast folder if conditions matched
135
132
  if (CheReporter_1.deleteScreencast && REPORTER_CONSTANTS_1.REPORTER_CONSTANTS.DELETE_SCREENCAST_IF_TEST_PASS) {
136
133
  rm.sync(REPORTER_CONSTANTS_1.REPORTER_CONSTANTS.TS_SELENIUM_REPORT_FOLDER);
@@ -163,13 +160,11 @@ let CheReporter = CheReporter_1 = class CheReporter extends mocha.reporters.Spec
163
160
  // take screenshot and write to file
164
161
  const screenshot = await this.driverHelper.getDriver().takeScreenshot();
165
162
  const screenshotStream = fs.createWriteStream(screenshotFileName);
166
- screenshotStream.write(Buffer.from(screenshot, 'base64'));
167
- screenshotStream.end();
163
+ screenshotStream.write(Buffer.from(screenshot, 'base64'), () => screenshotStream.end());
168
164
  // take page source and write to file
169
165
  const pageSource = await this.driverHelper.getDriver().getPageSource();
170
166
  const pageSourceStream = fs.createWriteStream(pageSourceFileName);
171
- pageSourceStream.write(Buffer.from(pageSource));
172
- pageSourceStream.end();
167
+ pageSourceStream.write(Buffer.from(pageSource), () => pageSourceStream.end());
173
168
  // take browser console logs and write to file
174
169
  const browserLogsEntries = await this.driverHelper.getDriver().manage().logs().get('browser');
175
170
  let browserLogs = '';
@@ -177,19 +172,25 @@ let CheReporter = CheReporter_1 = class CheReporter extends mocha.reporters.Spec
177
172
  browserLogs += `\"${log.level}\" \"${log.type}\" \"${log.message}\"\n`;
178
173
  });
179
174
  const browserLogsStream = fs.createWriteStream(browserLogsFileName);
180
- browserLogsStream.write(Buffer.from(browserLogs));
181
- browserLogsStream.end();
175
+ browserLogsStream.write(Buffer.from(browserLogs), () => {
176
+ browserLogsStream.end();
177
+ });
182
178
  });
183
179
  }
184
180
  };
185
181
  CheReporter.methodIndex = 0;
186
182
  CheReporter.deleteScreencast = true;
183
+ __decorate([
184
+ lazyInject(inversify_types_1.CLASSES.DriverHelper),
185
+ __metadata("design:type", DriverHelper_1.DriverHelper)
186
+ ], CheReporter.prototype, "driverHelper", void 0);
187
+ __decorate([
188
+ lazyInject(inversify_types_1.CLASSES.ScreenCatcher),
189
+ __metadata("design:type", ScreenCatcher_1.ScreenCatcher)
190
+ ], CheReporter.prototype, "screenCatcher", void 0);
187
191
  CheReporter = CheReporter_1 = __decorate([
188
192
  (0, inversify_1.injectable)(),
189
- __param(2, (0, inversify_1.inject)(inversify_types_1.CLASSES.DriverHelper)),
190
- __param(3, (0, inversify_1.inject)(inversify_types_1.CLASSES.ScreenCatcher)),
191
- __metadata("design:paramtypes", [mocha.Runner, Object, DriverHelper_1.DriverHelper,
192
- ScreenCatcher_1.ScreenCatcher])
193
+ __metadata("design:paramtypes", [mocha.Runner, Object])
193
194
  ], CheReporter);
194
195
  module.exports = CheReporter;
195
196
  //# sourceMappingURL=CheReporter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CheReporter.js","sourceRoot":"","sources":["../../utils/CheReporter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CheReporter.js","sourceRoot":"","sources":["../../utils/CheReporter.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.75.0-dev-8a0bacc",
3
+ "version": "7.75.0-next-b6eb83e",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {
@@ -38,6 +38,7 @@
38
38
  "eslint-plugin-header": "^3.1.1",
39
39
  "eslint-plugin-jsdoc": "^46.5.0",
40
40
  "eslint-plugin-prettier": "^5.0.0",
41
+ "inversify-inject-decorators": "^3.1.0",
41
42
  "husky": "^8.0.3",
42
43
  "mocha": "^9.1.3",
43
44
  "monaco-page-objects": "3.9.1",
@@ -77,6 +77,8 @@ exports.mochaHooks = {
77
77
  afterAll: [
78
78
  async function stopTheDriver(): Promise<void> {
79
79
  if (!BASE_TEST_CONSTANTS.TS_DEBUG_MODE && CHROME_DRIVER_CONSTANTS.TS_USE_WEB_DRIVER_FOR_TEST) {
80
+ // ensure that fired events done
81
+ await driverHelper.wait(5000);
80
82
  await driverHelper.getDriver().quit();
81
83
  Logger.info('Chrome driver session stopped.');
82
84
  }
@@ -23,7 +23,7 @@ import { FACTORY_TEST_CONSTANTS } from '../../constants/FACTORY_TEST_CONSTANTS';
23
23
  const stackName: string = BASE_TEST_CONSTANTS.TS_SELENIUM_DASHBOARD_SAMPLE_NAME || 'Python';
24
24
  const projectName: string = FACTORY_TEST_CONSTANTS.TS_SELENIUM_PROJECT_NAME || 'python-hello-world';
25
25
 
26
- suite(`"Start workspace with existed workspace name" test`, function (): void {
26
+ suite('"Start workspace with existed workspace name" test', function (): void {
27
27
  const workspaceHandlingTests: WorkspaceHandlingTests = e2eContainer.get(CLASSES.WorkspaceHandlingTests);
28
28
  const projectAndFileTests: ProjectAndFileTests = e2eContainer.get(CLASSES.ProjectAndFileTests);
29
29
  const loginTests: LoginTests = e2eContainer.get(CLASSES.LoginTests);
@@ -47,11 +47,11 @@ suite(`"Start workspace with existed workspace name" test`, function (): void {
47
47
  expect(isFileImported).not.eqls(undefined);
48
48
  });
49
49
 
50
- test(`Stop created workspace`, async function (): Promise<void> {
50
+ test('Stop created workspace', async function (): Promise<void> {
51
51
  existedWorkspaceName = WorkspaceHandlingTests.getWorkspaceName();
52
52
  await workspaceHandlingTests.stopWorkspace(existedWorkspaceName);
53
53
  await browserTabsUtil.closeAllTabsExceptCurrent();
54
- });
54
+ });
55
55
 
56
56
  test(`Create new workspace from the same ${stackName} stack`, async function (): Promise<void> {
57
57
  existedWorkspaceName = WorkspaceHandlingTests.getWorkspaceName();
@@ -23,21 +23,22 @@ import { CHROME_DRIVER_CONSTANTS } from '../constants/CHROME_DRIVER_CONSTANTS';
23
23
  import { OAUTH_CONSTANTS } from '../constants/OAUTH_CONSTANTS';
24
24
  import { REPORTER_CONSTANTS } from '../constants/REPORTER_CONSTANTS';
25
25
  import { PLUGIN_TEST_CONSTANTS } from '../constants/PLUGIN_TEST_CONSTANTS';
26
- import { inject, injectable } from 'inversify';
26
+ import { injectable } from 'inversify';
27
+ import getDecorators from 'inversify-inject-decorators';
28
+ import { e2eContainer } from '../configs/inversify.config';
29
+
30
+ const { lazyInject } = getDecorators(e2eContainer);
27
31
 
28
32
  @injectable()
29
33
  class CheReporter extends mocha.reporters.Spec {
30
34
  private static methodIndex: number = 0;
31
35
  private static deleteScreencast: boolean = true;
36
+ @lazyInject(CLASSES.DriverHelper)
37
+ private readonly driverHelper!: DriverHelper;
38
+ @lazyInject(CLASSES.ScreenCatcher)
39
+ private readonly screenCatcher!: ScreenCatcher;
32
40
 
33
- constructor(
34
- runner: mocha.Runner,
35
- options: mocha.MochaOptions,
36
- @inject(CLASSES.DriverHelper)
37
- private readonly driverHelper: DriverHelper,
38
- @inject(CLASSES.ScreenCatcher)
39
- private readonly screenCatcher: ScreenCatcher
40
- ) {
41
+ constructor(runner: mocha.Runner, options: mocha.MochaOptions) {
41
42
  super(runner, options);
42
43
 
43
44
  runner.on('start', (): void => {
@@ -111,13 +112,7 @@ class CheReporter extends mocha.reporters.Spec {
111
112
  }
112
113
  });
113
114
 
114
- runner.on('end', async (): Promise<void> => {
115
- // ensure that fired events done
116
- await this.driverHelper.wait(5000);
117
-
118
- // close driver
119
- await this.driverHelper.getDriver().quit();
120
-
115
+ runner.on('end', (): void => {
121
116
  // delete screencast folder if conditions matched
122
117
  if (CheReporter.deleteScreencast && REPORTER_CONSTANTS.DELETE_SCREENCAST_IF_TEST_PASS) {
123
118
  rm.sync(REPORTER_CONSTANTS.TS_SELENIUM_REPORT_FOLDER);
@@ -158,14 +153,12 @@ class CheReporter extends mocha.reporters.Spec {
158
153
  // take screenshot and write to file
159
154
  const screenshot: string = await this.driverHelper.getDriver().takeScreenshot();
160
155
  const screenshotStream: WriteStream = fs.createWriteStream(screenshotFileName);
161
- screenshotStream.write(Buffer.from(screenshot, 'base64'));
162
- screenshotStream.end();
156
+ screenshotStream.write(Buffer.from(screenshot, 'base64'), (): void => screenshotStream.end());
163
157
 
164
158
  // take page source and write to file
165
159
  const pageSource: string = await this.driverHelper.getDriver().getPageSource();
166
160
  const pageSourceStream: WriteStream = fs.createWriteStream(pageSourceFileName);
167
- pageSourceStream.write(Buffer.from(pageSource));
168
- pageSourceStream.end();
161
+ pageSourceStream.write(Buffer.from(pageSource), (): void => pageSourceStream.end());
169
162
 
170
163
  // take browser console logs and write to file
171
164
  const browserLogsEntries: logging.Entry[] = await this.driverHelper.getDriver().manage().logs().get('browser');
@@ -176,8 +169,9 @@ class CheReporter extends mocha.reporters.Spec {
176
169
  });
177
170
 
178
171
  const browserLogsStream: WriteStream = fs.createWriteStream(browserLogsFileName);
179
- browserLogsStream.write(Buffer.from(browserLogs));
180
- browserLogsStream.end();
172
+ browserLogsStream.write(Buffer.from(browserLogs), (): void => {
173
+ browserLogsStream.end();
174
+ });
181
175
  });
182
176
  }
183
177
  }