mirror of
https://github.com/expo/examples.git
synced 2026-11-13 20:38:07 -10:00
# Why TesterArmy is adding Expo to the [e2e showcase](https://e2e.tester.army/examples) and asked for an Expo example that runs on Expo Simulators. This folder is that example. The showcase lists it by folder URL, so it lives here and installs with `npx create-expo --example with-e2e`. # How - One screen: a greeting form built with `@expo/ui` universal components inside a `GlassView` from `expo-glass-effect`, with native tabs. A second tab explains the tests. - The five tests from TesterArmy's with-expo starter: three locator tests and two agent tests that skip without `AI_GATEWAY_API_KEY`. - `e2e.config.ts` has `ios`, `android`, and `web` targets. With `E2E_IOS_BUILD_ID` or `E2E_ANDROID_BUILD_ID` set, the mobile targets run on Expo Simulators through `@e2e-dev/eas`. Without them, they drive the local simulator or emulator. The web target lets the runner pick a free port. - `eas.json` adds an `e2e` build profile. `.eas/workflows/e2e.yml` builds both platforms and runs the suite on Expo Simulators from Linux runners. - `AGENTS.md` tells coding agents to install the Expo skills and which skill to use for the screen, Expo Simulators, and the workflow. # Test Plan - [x] `tsc --noEmit` and `eslint .` pass. - [x] Fresh install of the folder (from this branch, since `create-expo --example` reads master), then the README steps: `npm run ios:release` and `npm run test:e2e:ios` on an iPhone 17 simulator (iOS 26.5). Three locator tests pass, the agent tests skip without a key. - [x] `npm run test:e2e:web` in the fresh install: three pass. - [x] `npm run android:release` and `npm run test:e2e:android` on a Pixel 9 emulator (Android 16): three pass. - [ ] The agent tests with a model key. - [ ] A run on Expo Simulators with an `e2e` profile build (`E2E_IOS_BUILD_ID`). - [ ] `eas workflow:validate` and one workflow run. Both need the project linked with `eas init`. 🤖 Generated with [Claude Code](https://claude.com/claude-code) --------- Co-authored-by: Claude Fable 5.1 <[email protected]> Co-authored-by: Tori Expo <[email protected]>