@testomatio/reporter 2.3.2 → 2.3.4
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/lib/bin/cli.js +0 -1
- package/lib/pipe/testomatio.d.ts +1 -1
- package/lib/pipe/testomatio.js +8 -1
- package/lib/utils/utils.d.ts +1 -0
- package/lib/utils/utils.js +18 -0
- package/package.json +1 -1
- package/src/bin/cli.js +0 -1
- package/src/pipe/testomatio.js +13 -2
- package/src/utils/utils.js +13 -0
package/lib/bin/cli.js
CHANGED
|
@@ -61,7 +61,6 @@ program
|
|
|
61
61
|
const client = new client_js_1.default({ apiKey });
|
|
62
62
|
// @ts-ignore
|
|
63
63
|
client.updateRunStatus(constants_js_1.STATUS.FINISHED).then(() => {
|
|
64
|
-
console.log(picocolors_1.default.yellow(`Run ${process.env.TESTOMATIO_RUN} was finished`));
|
|
65
64
|
process.exit(0);
|
|
66
65
|
});
|
|
67
66
|
});
|
package/lib/pipe/testomatio.d.ts
CHANGED
package/lib/pipe/testomatio.js
CHANGED
|
@@ -78,7 +78,7 @@ class TestomatioPipe {
|
|
|
78
78
|
});
|
|
79
79
|
this.isEnabled = true;
|
|
80
80
|
// do not finish this run (for parallel testing)
|
|
81
|
-
this.proceed = process.env.TESTOMATIO_PROCEED;
|
|
81
|
+
this.proceed = (0, utils_js_1.transformEnvVarToBoolean)(process.env.TESTOMATIO_PROCEED);
|
|
82
82
|
this.jiraId = process.env.TESTOMATIO_JIRA_ID;
|
|
83
83
|
this.runId = params.runId || process.env.TESTOMATIO_RUN;
|
|
84
84
|
this.createNewTests = params.createNewTests ?? !!process.env.TESTOMATIO_CREATE;
|
|
@@ -239,6 +239,12 @@ class TestomatioPipe {
|
|
|
239
239
|
if (!process.env.TESTOMATIO_STACK_PASSED && data.status === constants_js_1.STATUS.PASSED) {
|
|
240
240
|
data.stack = null;
|
|
241
241
|
}
|
|
242
|
+
if (!process.env.TESTOMATIO_STEPS_PASSED && data.status === constants_js_1.STATUS.PASSED) {
|
|
243
|
+
data.steps = null;
|
|
244
|
+
}
|
|
245
|
+
if (process.env.TESTOMATIO_NO_STEPS) {
|
|
246
|
+
data.steps = null;
|
|
247
|
+
}
|
|
242
248
|
const json = json_cycle_1.default.stringify(data);
|
|
243
249
|
debug('Adding test', json);
|
|
244
250
|
return this.client.request({
|
|
@@ -396,6 +402,7 @@ class TestomatioPipe {
|
|
|
396
402
|
tests: params.tests,
|
|
397
403
|
}
|
|
398
404
|
});
|
|
405
|
+
console.log(constants_js_1.APP_PREFIX, '✅ Testrun finished');
|
|
399
406
|
if (this.runUrl) {
|
|
400
407
|
console.log(constants_js_1.APP_PREFIX, '📊 Report Saved. Report URL:', picocolors_1.default.magenta(this.runUrl));
|
|
401
408
|
}
|
package/lib/utils/utils.d.ts
CHANGED
|
@@ -51,6 +51,7 @@ export function storeRunId(runId: any): any;
|
|
|
51
51
|
export namespace testRunnerHelper {
|
|
52
52
|
function getNameOfCurrentlyRunningTest(): any;
|
|
53
53
|
}
|
|
54
|
+
export function transformEnvVarToBoolean(value: any): boolean;
|
|
54
55
|
/**
|
|
55
56
|
* Validates TESTOMATIO_SUITE environment variable format
|
|
56
57
|
* @param {String} suiteId - suite ID to validate
|
package/lib/utils/utils.js
CHANGED
|
@@ -43,6 +43,7 @@ exports.formatStep = formatStep;
|
|
|
43
43
|
exports.readLatestRunId = readLatestRunId;
|
|
44
44
|
exports.removeColorCodes = removeColorCodes;
|
|
45
45
|
exports.storeRunId = storeRunId;
|
|
46
|
+
exports.transformEnvVarToBoolean = transformEnvVarToBoolean;
|
|
46
47
|
const url_1 = require("url");
|
|
47
48
|
const path_1 = __importStar(require("path"));
|
|
48
49
|
const picocolors_1 = __importDefault(require("picocolors"));
|
|
@@ -453,6 +454,21 @@ function getPackageVersion() {
|
|
|
453
454
|
const packageJson = JSON.parse(fs_1.default.readFileSync(packageJsonPath, 'utf8'));
|
|
454
455
|
return packageJson.version;
|
|
455
456
|
}
|
|
457
|
+
function transformEnvVarToBoolean(value) {
|
|
458
|
+
if (value === undefined || value === null || value === 'undefined')
|
|
459
|
+
return false;
|
|
460
|
+
if (typeof value === 'boolean')
|
|
461
|
+
return value;
|
|
462
|
+
if (typeof value !== 'string')
|
|
463
|
+
value = String(value);
|
|
464
|
+
value = value.trim();
|
|
465
|
+
if (['1', 'true', 'yes', 'on'].includes(value.toLowerCase()))
|
|
466
|
+
return true;
|
|
467
|
+
if (['0', 'false', 'no', 'off'].includes(value.toLowerCase()))
|
|
468
|
+
return false;
|
|
469
|
+
// if not recognized, return truthy if any value is set
|
|
470
|
+
return Boolean(value);
|
|
471
|
+
}
|
|
456
472
|
|
|
457
473
|
module.exports.getPackageVersion = getPackageVersion;
|
|
458
474
|
|
|
@@ -466,6 +482,8 @@ module.exports.removeColorCodes = removeColorCodes;
|
|
|
466
482
|
|
|
467
483
|
module.exports.storeRunId = storeRunId;
|
|
468
484
|
|
|
485
|
+
module.exports.transformEnvVarToBoolean = transformEnvVarToBoolean;
|
|
486
|
+
|
|
469
487
|
module.exports.getTestomatIdFromTestTitle = getTestomatIdFromTestTitle;
|
|
470
488
|
|
|
471
489
|
module.exports.parseSuite = parseSuite;
|
package/package.json
CHANGED
package/src/bin/cli.js
CHANGED
package/src/pipe/testomatio.js
CHANGED
|
@@ -3,7 +3,7 @@ import pc from 'picocolors';
|
|
|
3
3
|
import { Gaxios } from 'gaxios';
|
|
4
4
|
import JsonCycle from 'json-cycle';
|
|
5
5
|
import { APP_PREFIX, STATUS, AXIOS_TIMEOUT, REPORTER_REQUEST_RETRIES } from '../constants.js';
|
|
6
|
-
import { isValidUrl, foundedTestLog, readLatestRunId } from '../utils/utils.js';
|
|
6
|
+
import { isValidUrl, foundedTestLog, readLatestRunId, transformEnvVarToBoolean } from '../utils/utils.js';
|
|
7
7
|
import { parseFilterParams, generateFilterRequestParams, setS3Credentials } from '../utils/pipe_utils.js';
|
|
8
8
|
import { config } from '../config.js';
|
|
9
9
|
|
|
@@ -79,7 +79,7 @@ class TestomatioPipe {
|
|
|
79
79
|
|
|
80
80
|
this.isEnabled = true;
|
|
81
81
|
// do not finish this run (for parallel testing)
|
|
82
|
-
this.proceed = process.env.TESTOMATIO_PROCEED;
|
|
82
|
+
this.proceed = transformEnvVarToBoolean(process.env.TESTOMATIO_PROCEED);
|
|
83
83
|
this.jiraId = process.env.TESTOMATIO_JIRA_ID;
|
|
84
84
|
this.runId = params.runId || process.env.TESTOMATIO_RUN;
|
|
85
85
|
this.createNewTests = params.createNewTests ?? !!process.env.TESTOMATIO_CREATE;
|
|
@@ -259,6 +259,14 @@ class TestomatioPipe {
|
|
|
259
259
|
data.stack = null;
|
|
260
260
|
}
|
|
261
261
|
|
|
262
|
+
if (!process.env.TESTOMATIO_STEPS_PASSED && data.status === STATUS.PASSED) {
|
|
263
|
+
data.steps = null;
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
if (process.env.TESTOMATIO_NO_STEPS) {
|
|
267
|
+
data.steps = null;
|
|
268
|
+
}
|
|
269
|
+
|
|
262
270
|
const json = JsonCycle.stringify(data);
|
|
263
271
|
|
|
264
272
|
debug('Adding test', json);
|
|
@@ -438,6 +446,9 @@ class TestomatioPipe {
|
|
|
438
446
|
tests: params.tests,
|
|
439
447
|
}
|
|
440
448
|
});
|
|
449
|
+
|
|
450
|
+
console.log(APP_PREFIX, '✅ Testrun finished');
|
|
451
|
+
|
|
441
452
|
if (this.runUrl) {
|
|
442
453
|
console.log(APP_PREFIX, '📊 Report Saved. Report URL:', pc.magenta(this.runUrl));
|
|
443
454
|
}
|
package/src/utils/utils.js
CHANGED
|
@@ -416,6 +416,18 @@ export function getPackageVersion() {
|
|
|
416
416
|
return packageJson.version;
|
|
417
417
|
}
|
|
418
418
|
|
|
419
|
+
function transformEnvVarToBoolean(value) {
|
|
420
|
+
if (value === undefined || value === null || value === 'undefined') return false;
|
|
421
|
+
if (typeof value === 'boolean') return value;
|
|
422
|
+
if (typeof value !== 'string') value = String(value);
|
|
423
|
+
value = value.trim();
|
|
424
|
+
|
|
425
|
+
if (['1', 'true', 'yes', 'on'].includes(value.toLowerCase())) return true;
|
|
426
|
+
if (['0', 'false', 'no', 'off'].includes(value.toLowerCase())) return false;
|
|
427
|
+
// if not recognized, return truthy if any value is set
|
|
428
|
+
return Boolean(value);
|
|
429
|
+
}
|
|
430
|
+
|
|
419
431
|
export {
|
|
420
432
|
ansiRegExp,
|
|
421
433
|
cleanLatestRunId,
|
|
@@ -438,5 +450,6 @@ export {
|
|
|
438
450
|
specificTestInfo,
|
|
439
451
|
storeRunId,
|
|
440
452
|
testRunnerHelper,
|
|
453
|
+
transformEnvVarToBoolean,
|
|
441
454
|
validateSuiteId,
|
|
442
455
|
};
|