UNPKG

tdpw

Version:

CLI tool for uploading Playwright test reports to TestDino platform with Azure storage support

80 lines 2.36 kB
/** * Attachment processing utilities for Playwright reports */ import { PlaywrightReport } from './parser'; /** * Attachment information extracted from Playwright report */ export interface AttachmentInfo { name: string; contentType: string; originalPath: string; relativePath: string; absolutePath: string; type: 'image' | 'video' | 'trace' | 'other'; } /** * Result of attachment scanning process */ export interface AttachmentScanResult { images: AttachmentInfo[]; videos: AttachmentInfo[]; traces: AttachmentInfo[]; other: AttachmentInfo[]; total: number; } /** * Service for scanning and processing attachments from Playwright reports */ export declare class AttachmentScanner { private readonly baseDirectory; constructor(baseDirectory: string); /** * Scan Playwright report for all attachments */ scanAttachments(report: PlaywrightReport): Promise<AttachmentScanResult>; /** * Recursively scan a test suite for attachments */ private scanSuite; /** * Scan a spec for attachments */ private scanSpec; /** * Process a single attachment and resolve its paths */ private processAttachment; /** * Classify attachment by content type and name */ private classifyAttachment; /** * Filter attachments based on configuration flags */ static filterAttachments(scanResult: AttachmentScanResult, config: { uploadImages: boolean; uploadVideos: boolean; uploadHtml: boolean; uploadTraces: boolean; }): AttachmentInfo[]; /** * Static version of classifyAttachment for use in static methods */ private static classifyAttachmentType; /** * Determine what should happen to an attachment path based on config * Returns: 'upload' | 'not-enabled' | 'not-supported' | 'unchanged' */ private static getAttachmentPathAction; /** * Update attachment paths in the JSON report to use Azure URLs or mark as 'Not Enabled' */ static updateAttachmentPaths(report: PlaywrightReport, urlMapping: Map<string, string>, config?: { uploadImages: boolean; uploadVideos: boolean; uploadHtml: boolean; uploadTraces: boolean; }): PlaywrightReport; } //# sourceMappingURL=attachments.d.ts.map