README.md
1# Bare Workflow
2
3Learn more about this project in [CONTRIBUTING.md](https://github.com/expo/expo/blob/main/CONTRIBUTING.md).
4
5## Usage
6
7- Run on Android Emulator: `yarn android` (runs npm install if needed, builds the React Android binaries, generate an emulator, start Metro, and open the app in the emulator)
8- Run on iOS Simulator: `yarn ios` (this will automatically pod install, npm install, open a simulator, clear and start Metro, then open the app in the simulator)
9- E2E test on iOS Simulator: `yarn test:ios` (same as `yarn ios` but it installs Detox simulators, builds a Detox binary, and starts the jest Detox runner)
10- Open a test `yarn open <ios | android> <...Modules>` this requires the platform to be running already (deep links you into the test-suite app and runs the provided tests)
11 - ex: `yarn open ios Constants Crypto`
12 - ex: `yarn open android Random`
13- Nuke `yarn nuke` (deletes all generated files for testing the setup scripts)
14- `yarn ci:detox` This should very closely emulate what happens when you run in CI. Use this to ensure native code is linking, pods are installed, and your tests are passing.
15
16## Edits
17
18- [iOS] Needed to do this to get Release builds working
19 - ~~Disable dead code stripping~~: https://github.com/facebook/react-native/issues/4210#issuecomment-171944483
20 - Disable running tests in release mode: https://github.com/facebook/react-native/issues/4210#issuecomment-403179411
21
22## TODO
23
24- [iOS] Detox builds fail but they exit with 0, meaning you can get false positives in CI
25