@dev-blinq/cucumber-js 1.0.37 → 1.0.38-stage
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/bin/download-install.js +167 -0
- package/lib/api/convert_configuration.js +1 -0
- package/lib/api/convert_configuration.js.map +1 -1
- package/lib/api/gherkin.js +47 -1
- package/lib/api/gherkin.js.map +1 -1
- package/lib/api/run_cucumber.d.ts +1 -1
- package/lib/api/run_cucumber.js +10 -10
- package/lib/api/run_cucumber.js.map +1 -1
- package/lib/api/types.d.ts +5 -3
- package/lib/api/types.js.map +1 -1
- package/lib/cli/helpers.d.ts +8 -6
- package/lib/cli/helpers.js +27 -6
- package/lib/cli/helpers.js.map +1 -1
- package/lib/cli/index.js +7 -2
- package/lib/cli/index.js.map +1 -1
- package/lib/configuration/argv_parser.js +4 -2
- package/lib/configuration/argv_parser.js.map +1 -1
- package/lib/configuration/axios_client.d.ts +1 -0
- package/lib/configuration/axios_client.js +40 -0
- package/lib/configuration/axios_client.js.map +1 -0
- package/lib/configuration/default_configuration.js +2 -0
- package/lib/configuration/default_configuration.js.map +1 -1
- package/lib/configuration/types.d.ts +2 -0
- package/lib/configuration/types.js.map +1 -1
- package/lib/formatter/api.d.ts +2 -0
- package/lib/formatter/api.js +53 -0
- package/lib/formatter/api.js.map +1 -0
- package/lib/formatter/bvt_analysis_formatter.d.ts +19 -0
- package/lib/formatter/bvt_analysis_formatter.js +244 -0
- package/lib/formatter/bvt_analysis_formatter.js.map +1 -0
- package/lib/formatter/feature_data_format.d.ts +12 -3
- package/lib/formatter/feature_data_format.js +106 -8
- package/lib/formatter/feature_data_format.js.map +1 -1
- package/lib/formatter/helpers/formatters.js +2 -2
- package/lib/formatter/helpers/formatters.js.map +1 -1
- package/lib/formatter/helpers/report_generator.d.ts +48 -8
- package/lib/formatter/helpers/report_generator.js +127 -4
- package/lib/formatter/helpers/report_generator.js.map +1 -1
- package/lib/formatter/helpers/upload_serivce.d.ts +6 -1
- package/lib/formatter/helpers/upload_serivce.js +142 -17
- package/lib/formatter/helpers/upload_serivce.js.map +1 -1
- package/lib/formatter/helpers/uploader.d.ts +11 -0
- package/lib/formatter/helpers/uploader.js +140 -0
- package/lib/formatter/helpers/uploader.js.map +1 -0
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/lib/version.js.map +1 -1
- package/package.json +7 -2
- package/lib/formatter/bvt_formatter.d.ts +0 -9
- package/lib/formatter/bvt_formatter.js +0 -62
- package/lib/formatter/bvt_formatter.js.map +0 -1
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const _1 = __importDefault(require("."));
|
|
7
|
-
const report_generator_1 = __importDefault(require("./helpers/report_generator"));
|
|
8
|
-
const path_1 = __importDefault(require("path"));
|
|
9
|
-
const fs_1 = __importDefault(require("fs"));
|
|
10
|
-
const jszip_1 = __importDefault(require("jszip"));
|
|
11
|
-
const form_data_1 = __importDefault(require("form-data"));
|
|
12
|
-
const upload_serivce_1 = require("./helpers/upload_serivce");
|
|
13
|
-
const REPORT_SERVICE_URL = process.env.REPORT_SERVICE_URL;
|
|
14
|
-
const REPORT_SERVICE_TOKEN = process.env.REPORT_SERVICE_TOKEN;
|
|
15
|
-
class BVTFormatter extends _1.default {
|
|
16
|
-
constructor(options) {
|
|
17
|
-
super(options);
|
|
18
|
-
this.reportGenerator = new report_generator_1.default();
|
|
19
|
-
this.uploadService = new upload_serivce_1.RunUploadService(REPORT_SERVICE_URL, REPORT_SERVICE_TOKEN);
|
|
20
|
-
if (!REPORT_SERVICE_URL || !REPORT_SERVICE_TOKEN) {
|
|
21
|
-
throw new Error('REPORT_SERVICE_URL and REPORT_SERVICE_TOKEN must be set');
|
|
22
|
-
}
|
|
23
|
-
options.eventBroadcaster.on('envelope', async (envelope) => {
|
|
24
|
-
this.reportGenerator.handleMessage(envelope);
|
|
25
|
-
if (envelope.testRunFinished) {
|
|
26
|
-
const report = this.reportGenerator.getReport();
|
|
27
|
-
// this.log(JSON.stringify(report, null, 2))
|
|
28
|
-
await this.uploadRun(report);
|
|
29
|
-
}
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
async uploadRun(report) {
|
|
33
|
-
const runDoc = await this.uploadService.createRunDocument('test');
|
|
34
|
-
const runDocId = runDoc._id;
|
|
35
|
-
const formData = new form_data_1.default();
|
|
36
|
-
const reportFolder = this.reportGenerator.reportFolder;
|
|
37
|
-
if (!fs_1.default.existsSync(reportFolder)) {
|
|
38
|
-
fs_1.default.mkdirSync(reportFolder);
|
|
39
|
-
}
|
|
40
|
-
const zipPath = await this.createZip(reportFolder, report);
|
|
41
|
-
formData.append(runDocId, fs_1.default.readFileSync(zipPath), 'report.zip');
|
|
42
|
-
await this.uploadService.upload(formData);
|
|
43
|
-
process.exit(0);
|
|
44
|
-
}
|
|
45
|
-
async createZip(reportFolder, report) {
|
|
46
|
-
const zip = new jszip_1.default();
|
|
47
|
-
zip.file('report.json', JSON.stringify(report, null, 2));
|
|
48
|
-
const folder = zip.folder('screenshots');
|
|
49
|
-
const files = fs_1.default.readdirSync(path_1.default.join(reportFolder, 'screenshots'));
|
|
50
|
-
files.forEach((file) => {
|
|
51
|
-
folder.file(file, fs_1.default.readFileSync(path_1.default.join(reportFolder, 'screenshots', file)));
|
|
52
|
-
});
|
|
53
|
-
const zipBuffer = await zip.generateAsync({ type: 'nodebuffer' });
|
|
54
|
-
// save zip file
|
|
55
|
-
const zipPath = path_1.default.join(reportFolder, 'report.zip');
|
|
56
|
-
fs_1.default.writeFileSync(zipPath, zipBuffer);
|
|
57
|
-
fs_1.default.writeFileSync(path_1.default.join(reportFolder, 'report.json'), JSON.stringify(report, null, 2));
|
|
58
|
-
return zipPath;
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
exports.default = BVTFormatter;
|
|
62
|
-
//# sourceMappingURL=bvt_formatter.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bvt_formatter.js","sourceRoot":"","sources":["../../src/formatter/bvt_formatter.ts"],"names":[],"mappings":"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","sourcesContent":["import * as messages from '@cucumber/messages'\nimport Formatter, { IFormatterOptions } from '.'\nimport ReportGenerator, { JsonReport } from './helpers/report_generator'\nimport path from 'path'\nimport fs from 'fs'\nimport JSZip from 'jszip'\nimport FormData from 'form-data'\nimport { RunUploadService } from './helpers/upload_serivce'\n\nconst REPORT_SERVICE_URL = process.env.REPORT_SERVICE_URL\nconst REPORT_SERVICE_TOKEN = process.env.REPORT_SERVICE_TOKEN\n\nexport default class BVTFormatter extends Formatter {\n private reportGenerator = new ReportGenerator()\n private uploadService = new RunUploadService(\n REPORT_SERVICE_URL,\n REPORT_SERVICE_TOKEN\n )\n constructor(options: IFormatterOptions) {\n super(options)\n if (!REPORT_SERVICE_URL || !REPORT_SERVICE_TOKEN) {\n throw new Error('REPORT_SERVICE_URL and REPORT_SERVICE_TOKEN must be set')\n }\n options.eventBroadcaster.on(\n 'envelope',\n async (envelope: messages.Envelope) => {\n this.reportGenerator.handleMessage(envelope)\n if (envelope.testRunFinished) {\n const report = this.reportGenerator.getReport()\n // this.log(JSON.stringify(report, null, 2))\n await this.uploadRun(report)\n }\n }\n )\n }\n async uploadRun(report: JsonReport) {\n const runDoc = await this.uploadService.createRunDocument('test')\n const runDocId = runDoc._id\n const formData = new FormData()\n const reportFolder = this.reportGenerator.reportFolder\n if (!fs.existsSync(reportFolder)) {\n fs.mkdirSync(reportFolder)\n }\n const zipPath = await this.createZip(reportFolder, report)\n formData.append(runDocId, fs.readFileSync(zipPath), 'report.zip')\n await this.uploadService.upload(formData)\n process.exit(0)\n }\n async createZip(reportFolder: string | null, report: JsonReport) {\n const zip = new JSZip()\n zip.file('report.json', JSON.stringify(report, null, 2))\n const folder = zip.folder('screenshots')\n const files = fs.readdirSync(path.join(reportFolder, 'screenshots'))\n files.forEach((file) => {\n folder.file(\n file,\n fs.readFileSync(path.join(reportFolder, 'screenshots', file))\n )\n })\n const zipBuffer = await zip.generateAsync({ type: 'nodebuffer' })\n // save zip file\n const zipPath = path.join(reportFolder, 'report.zip')\n fs.writeFileSync(zipPath, zipBuffer)\n fs.writeFileSync(\n path.join(reportFolder, 'report.json'),\n JSON.stringify(report, null, 2)\n )\n return zipPath\n }\n}\n"]}
|