UNPKG

cypress-spok-command

Version:
174 lines (158 loc) 7.91 kB
var $8zHUo$cyspok = require("cy-spok"); function $parcel$interopDefault(a) { return a && a.__esModule ? a.default : a; } const $c3160573e8648cec$var$stringifySortKeys = (object)=>JSON.stringify(Object.keys(object).sort()); const $c3160573e8648cec$var$sameKeys = (target, matcher)=>$c3160573e8648cec$var$stringifySortKeys(target) === $c3160573e8648cec$var$stringifySortKeys(matcher); const $c3160573e8648cec$export$16ed51028860e0c0 = "cy.spok() strictMode error: object keys were not an exact match"; function $c3160573e8648cec$export$302a47ce5e674e39(target, matcher) { const result = $c3160573e8648cec$var$sameKeys(target, matcher); Cypress.log({ name: "strictMode", message: `target and matcher have same keys: ${result}` }); if (!result) throw new Error($c3160573e8648cec$export$16ed51028860e0c0); } const $5a1ca3ecd66aac5d$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: $1c228307971ee708$var$spokArrayElementsRegex, spokGeRegex: $1c228307971ee708$var$spokGeRegex, spokGtRegex: $1c228307971ee708$var$spokGtRegex, spokLeRegex: $1c228307971ee708$var$spokLeRegex, spokLtRegex: $1c228307971ee708$var$spokLtRegex, spokNeRegex: $1c228307971ee708$var$spokNeRegex, spokRangeRegex: $1c228307971ee708$var$spokRangeRegex, spokSLRegex: $1c228307971ee708$var$spokSLRegex, spokTestRegex: $1c228307971ee708$var$spokTestRegex, spokTypeRegex: $1c228307971ee708$var$spokTypeRegex } = (0, $5a1ca3ecd66aac5d$export$64c4f432e043d5dd); const $1c228307971ee708$export$e29616b55ad743cf = (value)=>{ switch(value){ case "spok.array": value = (0, ($parcel$interopDefault($8zHUo$cyspok))).array; break; // spok.arrayElements case value.match($1c228307971ee708$var$spokArrayElementsRegex)?.input: value = (0, ($parcel$interopDefault($8zHUo$cyspok))).arrayElements(Number(value.match($1c228307971ee708$var$spokArrayElementsRegex)[1])); break; case "spok.boolean": value = (0, ($parcel$interopDefault($8zHUo$cyspok))).type("boolean"); break; case "spok.defined": value = (0, ($parcel$interopDefault($8zHUo$cyspok))).defined; break; case "spok.definedObject": value = (0, ($parcel$interopDefault($8zHUo$cyspok))).definedObject; break; case "spok.emptyArray": value = []; break; case "spok.emptyObject": value = {}; break; case "spok.function": value = (0, ($parcel$interopDefault($8zHUo$cyspok))).function; break; // spok.ge case value.match($1c228307971ee708$var$spokGeRegex)?.input: value = (0, ($parcel$interopDefault($8zHUo$cyspok))).ge(Number(value.match($1c228307971ee708$var$spokGeRegex)[1])); break; case "spok.gez": value = (0, ($parcel$interopDefault($8zHUo$cyspok))).gez; break; // spok.gt case value.match($1c228307971ee708$var$spokGtRegex)?.input: value = (0, ($parcel$interopDefault($8zHUo$cyspok))).gt(Number(value.match($1c228307971ee708$var$spokGtRegex)[1])); break; case "spok.gtz": value = (0, ($parcel$interopDefault($8zHUo$cyspok))).gtz; break; // spok.le case value.match($1c228307971ee708$var$spokLeRegex)?.input: value = (0, ($parcel$interopDefault($8zHUo$cyspok))).le(Number(value.match($1c228307971ee708$var$spokLeRegex)[1])); break; case "spok.lez": value = (0, ($parcel$interopDefault($8zHUo$cyspok))).lez; break; // spok.lt case value.match($1c228307971ee708$var$spokLtRegex)?.input: value = (0, ($parcel$interopDefault($8zHUo$cyspok))).lt(Number(value.match($1c228307971ee708$var$spokLtRegex)[1])); break; case "spok.ltz": value = (0, ($parcel$interopDefault($8zHUo$cyspok))).ltz; break; // spok.ne case value.match($1c228307971ee708$var$spokNeRegex)?.input: value = (0, ($parcel$interopDefault($8zHUo$cyspok))).ne(Number(value.match($1c228307971ee708$var$spokNeRegex)[1])); break; case "spok.nonEmptyArray": value = (0, ($parcel$interopDefault($8zHUo$cyspok))).arrayElementsRange(1, 999999999); break; case "spok.notDefined": value = (0, ($parcel$interopDefault($8zHUo$cyspok))).notDefined; break; case "spok.number": value = (0, ($parcel$interopDefault($8zHUo$cyspok))).number; break; case "spok.string": value = (0, ($parcel$interopDefault($8zHUo$cyspok))).string; break; // spok.range case value.match($1c228307971ee708$var$spokRangeRegex)?.input: value = (0, ($parcel$interopDefault($8zHUo$cyspok))).range(Number(value.match($1c228307971ee708$var$spokRangeRegex)[1]), Number(value.match($1c228307971ee708$var$spokRangeRegex)[2])); break; // spok.stringLength case value.match($1c228307971ee708$var$spokSLRegex)?.input: value = (0, ($parcel$interopDefault($8zHUo$cyspok))).test(new RegExp(`.{${value.match($1c228307971ee708$var$spokSLRegex)[1]}}`)); break; // spok.test case value.match($1c228307971ee708$var$spokTestRegex)?.input: // extract the regex value from the passed string and execute the match value = (0, ($parcel$interopDefault($8zHUo$cyspok))).test(new RegExp(value.match($1c228307971ee708$var$spokTestRegex)[1])); break; // spok.type case value.match($1c228307971ee708$var$spokTypeRegex)?.input: value = (0, ($parcel$interopDefault($8zHUo$cyspok))).type(value.match($1c228307971ee708$var$spokTypeRegex)[1]); break; default: Cypress.log({ name: "literal", message: `using literal value: "${value}"` }); } return value; }; const { spokRegex: $9092234f5f8dccf5$var$spokRegex } = (0, $5a1ca3ecd66aac5d$export$64c4f432e043d5dd); function $9092234f5f8dccf5$export$c8fc1961ce6344e5(object) { const newMatcher = {}; for (const [key, value] of Object.entries(object)){ let result = value; if (typeof value === "string" && value.match($9092234f5f8dccf5$var$spokRegex)) result = (0, $1c228307971ee708$export$e29616b55ad743cf)(value); if (typeof value === "object" && !Array.isArray(value)) { newMatcher[key] = {}; result = $9092234f5f8dccf5$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, $c3160573e8648cec$export$302a47ce5e674e39)(target, matcher); const finalMatcher = (0, $9092234f5f8dccf5$export$c8fc1961ce6344e5)(matcher); cy.wrap(target, { log: false }).should((0, ($parcel$interopDefault($8zHUo$cyspok)))(finalMatcher)); }); //# sourceMappingURL=index.js.map