UNPKG

@thisisagile/easy-test

Version:

Straightforward library for testing microservices built with @thisisagile/easy

52 lines (51 loc) 1.38 kB
import { eq } from "../chunk-QE3TR4BY.mjs"; import { asJson, asString, toArray } from "../chunk-O475TEG2.mjs"; // src/mock/Fits.ts import { AsymmetricMatcher } from "expect"; var ObjectContainingText = class extends AsymmetricMatcher { asymmetricMatch(other) { return asString(other).includes(asString(this.sample)); } toString() { return `String${this.inverse ? "Not" : ""}Containing`; } }; var ObjectContainingTextExact = class extends AsymmetricMatcher { asymmetricMatch(other) { return asString(other) === asString(this.sample); } toString() { return `String${this.inverse ? "Not" : ""}Containing`; } }; var ObjectContainingJson = class extends AsymmetricMatcher { asymmetricMatch(other) { return eq.subset(asJson(other), asJson(this.sample)); } toString() { return `Object${this.inverse ? "Not" : ""}Containing`; } }; var fits = { any: () => expect.anything(), type: (type) => expect.any(type), with: (o) => expect.objectContaining(o), text: (s) => new ObjectContainingText(s), textExact: (s) => new ObjectContainingTextExact(s), uri: (u) => fits.textExact(u), json: (s) => new ObjectContainingJson(s), items: (...items) => expect.arrayContaining(toArray(...items)) }; export { ObjectContainingJson, ObjectContainingText, ObjectContainingTextExact, fits }; //# sourceMappingURL=Fits.mjs.map