@eclipse-che/che-e2e 7.75.0-next-74f1046 → 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.
- package/dist/specs/MochaHooks.js +2 -0
- package/dist/specs/MochaHooks.js.map +1 -1
- package/dist/specs/miscellaneous/CreateWorkspaceWithExistedName.spec.js +2 -2
- package/dist/utils/CheReporter.js +21 -20
- package/dist/utils/CheReporter.js.map +1 -1
- package/package.json +2 -1
- package/specs/MochaHooks.ts +2 -0
- package/specs/miscellaneous/CreateWorkspaceWithExistedName.spec.ts +2 -2
- package/utils/CheReporter.ts +16 -22
package/dist/specs/MochaHooks.js
CHANGED
|
@@ -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(
|
|
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(
|
|
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
|
|
35
|
-
return
|
|
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
|
|
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',
|
|
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
|
-
|
|
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
|
-
|
|
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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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,
|
|
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-next-
|
|
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",
|
package/specs/MochaHooks.ts
CHANGED
|
@@ -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(
|
|
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,7 +47,7 @@ suite(`"Start workspace with existed workspace name" test`, function (): void {
|
|
|
47
47
|
expect(isFileImported).not.eqls(undefined);
|
|
48
48
|
});
|
|
49
49
|
|
|
50
|
-
test(
|
|
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();
|
package/utils/CheReporter.ts
CHANGED
|
@@ -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 {
|
|
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',
|
|
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
|
-
|
|
172
|
+
browserLogsStream.write(Buffer.from(browserLogs), (): void => {
|
|
173
|
+
browserLogsStream.end();
|
|
174
|
+
});
|
|
181
175
|
});
|
|
182
176
|
}
|
|
183
177
|
}
|