@fgv/ts-utils-jest
Version:
Custom matchers for ts-utils result class
53 lines • 2.32 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.printExpectedResult = printExpectedResult;
exports.printExpectedDetailedResult = printExpectedDetailedResult;
exports.printReceivedResult = printReceivedResult;
exports.printReceivedDetailedResult = printReceivedDetailedResult;
const jest_matcher_utils_1 = require("jest-matcher-utils");
function printExpectedValue(outcome, expected) {
return expected !== undefined ? ` ${outcome} with ${(0, jest_matcher_utils_1.printExpected)(expected)}` : ` ${outcome}`;
}
function printExpectedResult(expect, isNot, expected) {
return [
'Expected:',
isNot
? expect === 'success'
? printExpectedValue('Success', expected)
: printExpectedValue('Failure', expected)
: expect === 'success'
? printExpectedValue('Not success', expected)
: printExpectedValue('Not failure', expected)
].join('\n');
}
function printExpectedDetailedResult(expect, isNot, expectedMessage, expectedDetail) {
/* c8 ignore next */
return [
'Expected:',
isNot
? expect === 'success'
? printExpectedValue('Success', expectedMessage)
: printExpectedValue('Failure', expectedMessage)
: expect === 'success'
? printExpectedValue('Not success', expectedMessage)
: printExpectedValue('Not failure', expectedMessage),
` Detail: "${(0, jest_matcher_utils_1.printExpected)(expectedDetail)}"`
].join('\n');
}
function printReceivedResult(received) {
return [
'Received:',
received.isSuccess()
? ` Success with ${(0, jest_matcher_utils_1.printReceived)(received.value)}`
: ` Failure with "${received.message}"`
].join('\n');
}
function printReceivedDetailedResult(received) {
return [
'Received:',
received.isSuccess()
? ` Success with "${(0, jest_matcher_utils_1.printReceived)(received.value)}"\n Detail: "${(0, jest_matcher_utils_1.printReceived)(received.detail)}"`
: ` Failure with "${received.message}"\n Detail: "${(0, jest_matcher_utils_1.printReceived)(received.detail)}"`
].join('\n');
}
//# sourceMappingURL=matcherHelpers.js.map
;