@fgv/ts-utils-jest
Version:
Custom matchers for ts-utils result class
29 lines • 1.34 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const matcherHelpers_1 = require("../../utils/matcherHelpers");
const predicate_1 = require("./predicate");
const jest_matcher_utils_1 = require("jest-matcher-utils");
function passMessage(received, expected, expectedDetail) {
return () => [
(0, jest_matcher_utils_1.matcherHint)(`.not.${predicate_1.matcherName}`),
(0, matcherHelpers_1.printExpectedDetailedResult)('success', false, expected, expectedDetail),
(0, matcherHelpers_1.printReceivedDetailedResult)(received)
].join('\n');
}
function failMessage(received, expected, expectedDetail) {
return () => [
(0, jest_matcher_utils_1.matcherHint)(`${predicate_1.matcherName}`),
(0, matcherHelpers_1.printExpectedDetailedResult)('success', true, expected, expectedDetail),
(0, matcherHelpers_1.printReceivedDetailedResult)(received)
].join('\n');
}
exports.default = {
toSucceedWithDetail: function (received, expected, detail) {
const pass = (0, predicate_1.predicate)(received, expected, detail);
if (pass) {
return { pass: true, message: passMessage(received, expected, detail) };
}
return { pass: false, message: failMessage(received, expected, detail) };
}
};
//# sourceMappingURL=index.js.map