UNPKG

arda-site-scan

Version:

A standalone CLI tool for comprehensive website analysis including screenshots, SEO, and accessibility testing using Playwright

82 lines 2.44 kB
import { TestConfig } from './index.js'; export type TestPhase = 1 | 2 | 3; export type TestScope = 'session' | 'page'; export interface PhaseDefinition { phase: TestPhase; name: string; description: string; scope: TestScope; dependencies: TestPhase[]; parallelizable: boolean; } export interface TestClassification { testId: string; phase: TestPhase; scope: TestScope; executionOrder: number; dependencies: string[]; conflictsWith: string[]; resourceIntensive: boolean; outputType: 'per-page' | 'site-wide'; } export declare const TEST_CLASSIFICATIONS: Record<string, TestClassification>; export declare const PHASE_DEFINITIONS: Record<TestPhase, PhaseDefinition>; export interface PhaseExecutionPlan { phase: TestPhase; sessionTests: string[]; pageTests: string[]; maxConcurrency: number; estimatedDuration?: number; } export interface ExecutionStrategy { phases: PhaseExecutionPlan[]; totalEstimatedDuration: number; parallelPages: boolean; maxConcurrentPages: number; } export declare class TestPhaseManager { /** * Organize selected tests into execution phases */ static organizeTestsIntoPhases(config: TestConfig): ExecutionStrategy; /** * Check if tests can run in parallel (no conflicts) */ static canRunInParallel(testId1: string, testId2: string): boolean; /** * Get execution order for tests within a phase */ static getExecutionOrder(testIds: string[]): string[]; /** * Check if all dependencies are satisfied */ static validateDependencies(testIds: string[]): { valid: boolean; missingDependencies: string[]; }; /** * Get resource requirements for a phase */ static getPhaseResourceRequirements(phase: TestPhase, testIds: string[]): { memoryIntensive: number; cpuIntensive: number; networkIntensive: number; recommendedConcurrency: number; }; /** * Estimate duration for execution strategy */ private static estimateTotalDuration; /** * Get phase summary for display */ static getPhaseSummary(phase: TestPhase, testIds: string[]): { name: string; description: string; testCount: number; sessionTests: string[]; pageTests: string[]; estimatedDuration: number; }; } //# sourceMappingURL=test-phases.d.ts.map