generateNegativeTest function test ✓ 100.0%
Last updated: 2026-03-01T23:25:47.083Z
Metrics
LOC: 38
Complexity: 6
Params: 4
Coverage: 100.0% (11/11 lines, 3x executed)
Signature
generateNegativeTest(
actions: CapturedAction[],
options: E2EGenerateOptions,
useSmartSelectors: boolean,
): : string
Source Code
function generateNegativeTest(
actions: CapturedAction[],
options: E2EGenerateOptions,
useSmartSelectors: boolean,
): string {
const requiredActions = actions.filter((a) => a.required);
if (requiredActions.length === 0) return "";
const urlLine = options.pageUrl
? ` cy.visit('${escapeString(options.pageUrl)}');\n\n`
: "";
const submitAction = actions.find(
(a) => a.actionType === "click" || a.actionType === "submit",
);
const submitLine = submitAction
? `\n cy.get('${escapeString(resolveSelector(submitAction, useSmartSelectors))}').click();`
: "";
const assertionLines = (options.assertions ?? [])
.filter((a) => a.type === "field-error")
.map(assertionLine);
return [
``,
` it('should show validation errors for empty required fields', () => {`,
urlLine + ` // Leave required fields empty and submit` + submitLine,
``,
...assertionLines,
` // Required fields should show validation`,
...requiredActions.map((a) => {
const sel = escapeString(resolveSelector(a, useSmartSelectors));
return ` cy.get('${sel}').should('have.attr', 'required');`;
}),
` });`,
].join("\n");
}
Dependencies (Outgoing)
| Target | Type |
|---|---|
| escapeString | calls |
| resolveSelector | calls |
No incoming dependencies.