assertthat
Version:
assertthat provides fluent TDD.
26 lines (25 loc) • 1.23 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.assertArrayIsNotContainingItem = void 0;
const errors_1 = require("../../errors");
const compare_1 = require("../../comparisons/typeAware/compare");
const dispel_1 = require("../../dispel/dispel");
const EqualDiff_1 = require("../../diffs/EqualDiff");
const prettyPrint_1 = require("../../prettyPrint/typeAware/prettyPrint");
const defekt_1 = require("defekt");
const assertArrayIsNotContainingItem = function (actual, item) {
const dispelledActual = (0, dispel_1.dispel)(actual);
const dispelledItem = (0, dispel_1.dispel)(item);
for (const actualItem of dispelledActual) {
const diff = (0, compare_1.compare)(actualItem, dispelledItem);
if ((0, EqualDiff_1.isEqualDiff)(diff)) {
return (0, defekt_1.error)(new errors_1.AssertionFailed({
message: 'The array contains the item.',
expected: `To not contain:\n${(0, prettyPrint_1.prettyPrint)(dispelledItem)}`,
actual: (0, prettyPrint_1.prettyPrint)(dispelledActual)
}));
}
}
return (0, defekt_1.value)();
};
exports.assertArrayIsNotContainingItem = assertArrayIsNotContainingItem;