Skip to content

AppiumTransportConfig

Configuration for the Appium transport.

Import:

import type { AppiumTransportConfig } from 'obsidian-integration-testing';

Signature:

export interface AppiumTransportConfig

Properties

PropertyTypeDescription
appId?stringApp package (Android) or bundle ID (iOS). Defaults to 'md.obsidian'.
browserBrowserThe Appium browser/driver instance. Created by the consumer via e.g. WebDriverIO's remote().
deviceIdstringThe device UDID (e.g. 'emulator-5554'). Used for adb commands when pushing files to the device.
isSessionOwner?booleanWhether this transport owns the Appium session and should delete it on AppiumTransport.dispose.

true for sessions created via remote() (global setup). false for sessions reattached via attach() (test workers).
layoutReadyTimeoutInMilliseconds?numberTimeout in milliseconds for waiting for app.workspace.layoutReady after the vault is (re)opened.
platform'android' | 'ios'Target platform. Determines WebView context naming and device file paths.
shouldSweepLeftovers?booleanWhether registering a vault also prunes the **other** temp-vault-* registrations earlier runs left in Obsidian Mobile's localStorage.

The device-side directories are swept before the app launches (see the factory); this removes their now-dangling registry entries, which are what Obsidian actually enumerates at startup. Unregistering this run's own vault is unaffected — that always happens.
vaultBasePath?stringBase path on the device where Obsidian stores vaults.

Defaults: - Android: /sdcard/Documents/ - iOS: @md.obsidian:documents/
webviewTimeoutInMilliseconds?numberTimeout in milliseconds for waiting for the WebView context to become available.