UNPKG

appium-xcuitest-driver

Version:

Appium driver for iOS using XCUITest for backend

61 lines 2.51 kB
import type { XCUITestDriver, XCUITestDriverOpts } from '../driver'; import type { StringRecord, DownloadAppOptions, PostProcessOptions, PostProcessResult } from '@appium/types'; import type { Readable } from 'node:stream'; export declare const SAFARI_BUNDLE_ID = "com.apple.mobilesafari"; export declare const APP_EXT = ".app"; export declare const IPA_EXT = ".ipa"; export declare const SUPPORTED_EXTENSIONS: string[]; export interface LocalizableStringsOptions { app?: string; language?: string; localizableStringsDir?: string; stringFile?: string; strictMode?: boolean; } export interface UnzipInfo { rootDir: string; archiveSize: number; } /** * Verify whether the given application is compatible to the * platform where it is going to be installed and tested. * * @throws If bundle architecture does not match the expected device architecture. */ export declare function verifyApplicationPlatform(this: XCUITestDriver): Promise<void>; /** * Extracts string resources from an app */ export declare function parseLocalizableStrings(this: XCUITestDriver, opts?: LocalizableStringsOptions): Promise<StringRecord>; /** * Unzips a ZIP archive on the local file system. * * @param archivePath Full path to a .zip archive * @returns temporary folder root where the archive has been extracted */ export declare function unzipFile(archivePath: string): Promise<UnzipInfo>; /** * Unzips a ZIP archive from a stream. * Uses bdstar tool for this purpose. * This allows to optimize the time needed to prepare the app under test * to MAX(download, unzip) instead of SUM(download, unzip) */ export declare function unzipStream(zipStream: Readable): Promise<UnzipInfo>; /** * Builds Safari preferences object based on the given session capabilities * * @param opts * @return */ export declare function buildSafariPreferences(opts: XCUITestDriverOpts): StringRecord; /** * The callback invoked by configureApp helper * when it is necessary to download the remote application. * We assume the remote file could be anythingm, but only * .zip and .ipa formats are supported. * A .zip archive can contain one or more */ export declare function onDownloadApp(this: XCUITestDriver, opts: DownloadAppOptions): Promise<string>; /** Post-processes configured apps and reuses a valid cache entry when possible. */ export declare function onPostConfigureApp(this: XCUITestDriver, opts: PostProcessOptions): Promise<PostProcessResult | false>; //# sourceMappingURL=app.d.ts.map