vitest-teamcity-reporter
Version:
A TeamCity reporter for vitest.
42 lines (41 loc) • 1.64 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.TestMessage = void 0;
const message_1 = require("./message");
class TestMessage extends message_1.Message {
constructor(test) {
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
super(test.file.id, test.name);
this.fail = (error) => {
var _a, _b, _c, _d;
return this.generate('testFailed', {
message: (_a = error.message) !== null && _a !== void 0 ? _a : '',
details: (_b = error.stackStr) !== null && _b !== void 0 ? _b : '',
actual: (_c = error.actual) !== null && _c !== void 0 ? _c : '',
expected: (_d = error.expected) !== null && _d !== void 0 ? _d : '',
});
};
this.started = () => {
return this.generate('testStarted');
};
this.finished = (duration) => {
return this.generate('testFinished', { duration });
};
this.ignored = () => {
return this.generate('testIgnored');
};
this.stdOut = (out) => {
return this.generate('testStdOut', { out });
};
this.stdErr = (out) => {
return this.generate('testStdErr', { out });
};
this.log = (type, out) => {
return type === 'stdout' ? this.stdOut(out) : this.stdErr(out);
};
}
generate(type, parameters = {}) {
return this.generateTeamcityMessage(type, this.id, Object.assign(Object.assign({}, parameters), { name: this.name }));
}
}
exports.TestMessage = TestMessage;