Files
gridpilot.gg/tests/e2e/support/AutoNavGuard.ts
2025-12-03 16:33:12 +01:00

18 lines
784 B
TypeScript

import { StepId } from 'packages/automation-domain/value-objects/StepId';
import type { PlaywrightAutomationAdapter } from 'packages/automation-infrastructure/adapters/automation';
import type { AutomationResult } from 'packages/automation-application/ports/AutomationResults';
export function assertAutoNavigationConfig(config: Record<string, unknown>): void {
if ((config as any).__skipFixtureNavigation) {
throw new Error('__skipFixtureNavigation is forbidden in auto-navigation suites');
}
}
export async function executeStepWithAutoNavigationGuard(
adapter: PlaywrightAutomationAdapter,
step: number,
config: Record<string, unknown>,
): Promise<AutomationResult> {
assertAutoNavigationConfig(config);
return adapter.executeStep(StepId.create(step), config);
}