jest-allure2-adapter
Version:
Allure 2 Adapter for jest
70 lines (69 loc) • 2.61 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const child_process_1 = require("child_process");
const allure_js_parser_1 = require("allure-js-parser");
const fs_1 = require("fs");
const path_1 = __importDefault(require("path"));
describe('simple.test.ts check', () => {
const examples = path_1.default.resolve(process.cwd(), './examples');
const allureDir = path_1.default.resolve(examples + '/allure-results');
let tests;
beforeAll(() => {
if (fs_1.existsSync(allureDir)) {
child_process_1.execSync(`rm -rf ${allureDir}`);
}
const cmd = `cd examples && jest --testNamePattern=^simple-suite --runTestsByPath ${examples}/__tests__/simple.test.ts && true`;
console.log(cmd);
try {
child_process_1.execSync(cmd);
}
catch (e) {
// ignore
}
tests = allure_js_parser_1.parseAllure('./examples/allure-results');
});
it('test names', () => {
expect(tests.map((t) => t.name).sort()).toEqual([
'simple-test',
'simple-test-2-fail#tag',
]);
});
it('test parents', () => {
expect(tests
.map((t) => ({
name: t.name,
parents: allure_js_parser_1.getParentsArray(t).map((t) => t.name),
}))
.sort((a, b) => (b.name && a.name && a.name > b.name ? -1 : 1))).toEqual([
{
name: 'simple-test-2-fail#tag',
parents: ['simple-suite'],
},
{
name: 'simple-test',
parents: ['simple-suite'],
},
]);
});
it('test summary', () => {
expect(allure_js_parser_1.getSummary(tests)).toEqual({
broken: 0,
failed: 1,
passed: 1,
skipped: 0,
unknown: 0,
});
});
it('test all tests have thread', () => {
expect(tests.every((t) => t.labels.filter((l) => l.name === 'thread').length > 0)).toEqual(true);
});
it('test all tests have feature', () => {
expect(tests.every((t) => t.labels.filter((l) => l.name === 'feature').length > 0)).toEqual(true);
});
it('test all tests have feature feature1', () => {
expect(tests.map((t) => { var _a; return (_a = t.labels.find((l) => l.name === 'feature')) === null || _a === void 0 ? void 0 : _a.value; })).toEqual(['feature1', 'feature1']);
});
});