UNPKG

earljs

Version:

Ergonomic, modern and type-safe assertion library

21 lines (20 loc) 929 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.toHaveBeenCalledExactlyWith = void 0; const format_1 = require("../../format"); const isEqual_1 = require("../../isEqual"); function getCallsArgs(mock) { return mock.calls.map((c) => c.args); } function toHaveBeenCalledExactlyWith(control, expectedArgs) { const callsArgs = getCallsArgs(control.actual); const formatted = (0, format_1.formatCompact)(expectedArgs); return control.assert({ success: (0, isEqual_1.isEqual)(callsArgs, expectedArgs), reason: `Mock was not called exactly with ${formatted} but was expected to`, negatedReason: `Mock was called exactly with ${formatted} but wasn't expected to`, actual: (0, format_1.format)(callsArgs, null), expected: (0, format_1.format)(expectedArgs, callsArgs), }); } exports.toHaveBeenCalledExactlyWith = toHaveBeenCalledExactlyWith;