UNPKG

cypress-spok-command

Version:
170 lines (155 loc) 7.2 kB
import $hgUW1$cyspok from "cy-spok"; const $c28a58ceaf5fb2f1$var$stringifySortKeys = (object)=>JSON.stringify(Object.keys(object).sort()); const $c28a58ceaf5fb2f1$var$sameKeys = (target, matcher)=>$c28a58ceaf5fb2f1$var$stringifySortKeys(target) === $c28a58ceaf5fb2f1$var$stringifySortKeys(matcher); const $c28a58ceaf5fb2f1$export$16ed51028860e0c0 = "cy.spok() strictMode error: object keys were not an exact match"; function $c28a58ceaf5fb2f1$export$302a47ce5e674e39(target, matcher) { const result = $c28a58ceaf5fb2f1$var$sameKeys(target, matcher); Cypress.log({ name: "strictMode", message: `target and matcher have same keys: ${result}` }); if (!result) throw new Error($c28a58ceaf5fb2f1$export$16ed51028860e0c0); } const $aeeceec19374ab2a$export$64c4f432e043d5dd = { spokRegex: /^spok\..*$/, spokArrayElementsRegex: /^spok\.arrayElements\((.*)\)$/, spokGeRegex: /^spok.ge\((.*)\)$/, spokGtRegex: /^spok.gt\((.*)\)$/, spokLeRegex: /^spok.le\((.*)\)$/, spokLtRegex: /^spok.lt\((.*)\)$/, spokNeRegex: /^spok.ne\((.*)\)$/, spokSLRegex: /^spok.stringLength\((.*)\)$/, spokRangeRegex: /^spok\.range\((\d*),\s?(\d*)\)$/, spokTestRegex: /^spok\.test\((.*)\)$/, spokTypeRegex: /^spok\.type\((.*)\)$/ }; const { spokArrayElementsRegex: $f6a33f899b579977$var$spokArrayElementsRegex, spokGeRegex: $f6a33f899b579977$var$spokGeRegex, spokGtRegex: $f6a33f899b579977$var$spokGtRegex, spokLeRegex: $f6a33f899b579977$var$spokLeRegex, spokLtRegex: $f6a33f899b579977$var$spokLtRegex, spokNeRegex: $f6a33f899b579977$var$spokNeRegex, spokRangeRegex: $f6a33f899b579977$var$spokRangeRegex, spokSLRegex: $f6a33f899b579977$var$spokSLRegex, spokTestRegex: $f6a33f899b579977$var$spokTestRegex, spokTypeRegex: $f6a33f899b579977$var$spokTypeRegex } = (0, $aeeceec19374ab2a$export$64c4f432e043d5dd); const $f6a33f899b579977$export$e29616b55ad743cf = (value)=>{ switch(value){ case "spok.array": value = (0, $hgUW1$cyspok).array; break; // spok.arrayElements case value.match($f6a33f899b579977$var$spokArrayElementsRegex)?.input: value = (0, $hgUW1$cyspok).arrayElements(Number(value.match($f6a33f899b579977$var$spokArrayElementsRegex)[1])); break; case "spok.boolean": value = (0, $hgUW1$cyspok).type("boolean"); break; case "spok.defined": value = (0, $hgUW1$cyspok).defined; break; case "spok.definedObject": value = (0, $hgUW1$cyspok).definedObject; break; case "spok.emptyArray": value = []; break; case "spok.emptyObject": value = {}; break; case "spok.function": value = (0, $hgUW1$cyspok).function; break; // spok.ge case value.match($f6a33f899b579977$var$spokGeRegex)?.input: value = (0, $hgUW1$cyspok).ge(Number(value.match($f6a33f899b579977$var$spokGeRegex)[1])); break; case "spok.gez": value = (0, $hgUW1$cyspok).gez; break; // spok.gt case value.match($f6a33f899b579977$var$spokGtRegex)?.input: value = (0, $hgUW1$cyspok).gt(Number(value.match($f6a33f899b579977$var$spokGtRegex)[1])); break; case "spok.gtz": value = (0, $hgUW1$cyspok).gtz; break; // spok.le case value.match($f6a33f899b579977$var$spokLeRegex)?.input: value = (0, $hgUW1$cyspok).le(Number(value.match($f6a33f899b579977$var$spokLeRegex)[1])); break; case "spok.lez": value = (0, $hgUW1$cyspok).lez; break; // spok.lt case value.match($f6a33f899b579977$var$spokLtRegex)?.input: value = (0, $hgUW1$cyspok).lt(Number(value.match($f6a33f899b579977$var$spokLtRegex)[1])); break; case "spok.ltz": value = (0, $hgUW1$cyspok).ltz; break; // spok.ne case value.match($f6a33f899b579977$var$spokNeRegex)?.input: value = (0, $hgUW1$cyspok).ne(Number(value.match($f6a33f899b579977$var$spokNeRegex)[1])); break; case "spok.nonEmptyArray": value = (0, $hgUW1$cyspok).arrayElementsRange(1, 999999999); break; case "spok.notDefined": value = (0, $hgUW1$cyspok).notDefined; break; case "spok.number": value = (0, $hgUW1$cyspok).number; break; case "spok.string": value = (0, $hgUW1$cyspok).string; break; // spok.range case value.match($f6a33f899b579977$var$spokRangeRegex)?.input: value = (0, $hgUW1$cyspok).range(Number(value.match($f6a33f899b579977$var$spokRangeRegex)[1]), Number(value.match($f6a33f899b579977$var$spokRangeRegex)[2])); break; // spok.stringLength case value.match($f6a33f899b579977$var$spokSLRegex)?.input: value = (0, $hgUW1$cyspok).test(new RegExp(`.{${value.match($f6a33f899b579977$var$spokSLRegex)[1]}}`)); break; // spok.test case value.match($f6a33f899b579977$var$spokTestRegex)?.input: // extract the regex value from the passed string and execute the match value = (0, $hgUW1$cyspok).test(new RegExp(value.match($f6a33f899b579977$var$spokTestRegex)[1])); break; // spok.type case value.match($f6a33f899b579977$var$spokTypeRegex)?.input: value = (0, $hgUW1$cyspok).type(value.match($f6a33f899b579977$var$spokTypeRegex)[1]); break; default: Cypress.log({ name: "literal", message: `using literal value: "${value}"` }); } return value; }; const { spokRegex: $9842562fd980235e$var$spokRegex } = (0, $aeeceec19374ab2a$export$64c4f432e043d5dd); function $9842562fd980235e$export$c8fc1961ce6344e5(object) { const newMatcher = {}; for (const [key, value] of Object.entries(object)){ let result = value; if (typeof value === "string" && value.match($9842562fd980235e$var$spokRegex)) result = (0, $f6a33f899b579977$export$e29616b55ad743cf)(value); if (typeof value === "object" && !Array.isArray(value)) { newMatcher[key] = {}; result = $9842562fd980235e$export$c8fc1961ce6344e5(value); } newMatcher[key] = result; } return newMatcher; } Cypress.Commands.add(// @ts-expect-error issue referring types in `index.d.ts` "spok", (target, matcher, options = { strictMode: false })=>{ const { strictMode: strictMode } = options; Cypress.log({ name: "spok", message: strictMode ? "strictMode: true" : "", consoleProps: ()=>({ target: target }) }); if (strictMode) (0, $c28a58ceaf5fb2f1$export$302a47ce5e674e39)(target, matcher); const finalMatcher = (0, $9842562fd980235e$export$c8fc1961ce6344e5)(matcher); cy.wrap(target, { log: false }).should((0, $hgUW1$cyspok)(finalMatcher)); }); //# sourceMappingURL=module.js.map