testplane
Version:
Tests framework based on mocha and wdio
44 lines (43 loc) • 1.8 kB
TypeScript
import { Image } from "../../image";
import type { AssertViewOpts } from "../../config/types";
import { WdioBrowser } from "../../types";
import { Camera } from "../camera";
import type * as browserSideScreenshooterImplementation from "../client-scripts/screen-shooter/implementation";
import { ClientBridge } from "../client-bridge";
import type { PrepareScreenshotSuccess } from "../client-scripts/screen-shooter/types";
interface ScreenShooterOpts extends AssertViewOpts {
debugId?: string;
}
interface CaptureImageResult {
image: Image;
meta: PrepareScreenshotSuccess;
}
interface ScreenShooterBrowserProperties {
isWebdriverProtocol: boolean;
shouldUsePixelRatio: boolean;
needsCompatLib: boolean;
}
interface ScreenShooterInputParams {
camera: Camera;
browser: WdioBrowser;
browserProperties: ScreenShooterBrowserProperties;
}
interface ScreenShooterFullParams extends ScreenShooterInputParams {
browserSideScreenshooter: ClientBridge<typeof browserSideScreenshooterImplementation>;
}
export declare class ElementsScreenShooter {
private _browser;
private _camera;
private _browserProperties;
private _browserSideScreenshooter;
static create(params: ScreenShooterInputParams): Promise<ElementsScreenShooter>;
constructor({ browser, camera, browserProperties, browserSideScreenshooter }: ScreenShooterFullParams);
capture(selectorOrSelectors: string | string[], opts?: ScreenShooterOpts): Promise<CaptureImageResult>;
private _prepareScreenshot;
private _cleanupScreenshot;
/** Scrolls through the entire capture area to trigger lazy loading, then restores scroll and records anchor baselines. */
private _preloadCaptureArea;
private _scrollThroughCaptureArea;
private _performCaptureAttempt;
}
export {};