earljs
Version:
Ergonomic, modern and type-safe assertion library
36 lines (35 loc) • 1.31 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.Control = void 0;
const errors_1 = require("./errors");
const testRunnerCtx_1 = require("./testRunnerCtx");
class Control {
constructor(actual, isNegated, extraMessage) {
this.actual = actual;
this.isNegated = isNegated;
this.extraMessage = extraMessage;
this.testRunnerCtx = (0, testRunnerCtx_1.getTestRunnerIntegration)();
this.stack = errors_1.AssertionError.getCleanStack();
this.assert = (result) => {
if (this.isNegated === result.success) {
throw new errors_1.AssertionError({
message: result.success ? result.negatedReason : result.reason,
stack: this.stack,
actual: result.actual,
expected: result.expected,
extraMessage: this.extraMessage,
});
}
};
this.fail = (result) => {
throw new errors_1.AssertionError({
message: result.reason,
stack: this.stack,
actual: result.actual,
expected: result.expected,
extraMessage: this.extraMessage,
});
};
}
}
exports.Control = Control;