recordedStepLine function ✓ 100.0%
Last updated: 2026-03-01T23:25:47.083Z
Metrics
LOC: 48
Complexity: 32
Params: 3
Coverage: 100.0% (20/20 lines, 31x executed)
Signature
recordedStepLine(
step: RecordedStep,
useSmartSelectors: boolean,
): : string
Architecture violations
- [warning] max-cyclomatic-complexity: 'recordedStepLine' has cyclomatic complexity 32 (max 10)
Source Code
function recordedStepLine(
step: RecordedStep,
useSmartSelectors: boolean,
): string {
const sel =
step.smartSelectors?.length && useSmartSelectors
? escapeString(pickBestSelector(step.smartSelectors, step.selector ?? ""))
: escapeString(step.selector ?? "");
const val = escapeString(step.value ?? "");
const comment = step.label ? ` // ${step.label}` : "";
switch (step.type) {
case "navigate":
return ` ->visit('${escapeString(step.url ?? "")}')${comment}`;
case "fill":
return ` ->type('${sel}', '${val}')${comment}`;
case "click":
return ` ->click('${sel}')${comment}`;
case "select":
return ` ->select('${sel}', '${val}')${comment}`;
case "check":
return ` ->check('${sel}')${comment}`;
case "uncheck":
return ` ->uncheck('${sel}')${comment}`;
case "clear":
return ` ->clear('${sel}')${comment}`;
case "submit":
return ` ->click('${sel}')${comment}`;
case "hover":
return ` ->mouseover('${sel}')${comment}`;
case "press-key":
return ` ->keys('${sel}', '{${(step.key ?? "").toLowerCase()}}')${comment}`;
case "wait-for-element":
return ` ->waitFor('${sel}', ${Math.round((step.waitTimeout ?? 5000) / 1000)})${comment}`;
case "wait-for-hidden":
return ` ->waitUntilMissing('${sel}', ${Math.round((step.waitTimeout ?? 10000) / 1000)})${comment}`;
case "wait-for-url":
return ` ->waitForLocation('${escapeString(step.url ?? step.value ?? "")}')${comment}`;
case "wait-for-network-idle":
return ` ->pause(1000)${comment}`;
case "scroll":
return ` ->script('window.scrollTo(${step.scrollPosition?.x ?? 0}, ${step.scrollPosition?.y ?? 0})')${comment}`;
case "assert":
return step.assertion
? assertionLine(step.assertion)
: ` // assert${comment}`;
}
}
Dependencies (Outgoing)
| Target | Type |
|---|---|
| escapeString | calls |
| assertionLine | calls |
No incoming dependencies.