Locale and timezone
Test translations, date formats and day boundaries by running the app in another language, region or timezone from a spec or a suite.
device.locale and device.timezone change what the app formats dates, numbers and strings with. Both take null to put the setting back, and both are undone when the test ends.
await device.locale("fr-FR");
await device.timezone("Asia/Tokyo");
await app.open(); // iOS: the next launch picks both up| Member | Does |
|---|---|
locale(tag | null, { bundleId? }) | a BCP 47 tag ("fr-FR") for the app |
timezone(tz | null) | an IANA name ("Asia/Tokyo") |
On iOS, set both before app.open(), or relaunch the app. Android changes them live; the per-app locale needs Android 13+ (per platform).
In a suite
conditions: { locale: "fr-FR", timezone: "Asia/Tokyo" },By hand with warden ui locale and warden ui timezone: Locale and timezone on a simulator.
Camera
Test QR scanning, photo capture and video recording against a known image or video fed into the app's real camera, from a spec or a suite.
Accessibility settings
Test that layouts hold at the largest text size and reduced-motion paths run, by changing text size, bold text, contrast, reduce motion or the screen reader from a spec or a suite.