FlowCrypt iOS App, download from https://flowcrypt.com/download
You will need to have Xcode (version 12.4) installed
# clone repo
git clone https://github.com/FlowCrypt/flowcrypt-ios.git && cd flowcrypt-ios
# set up environment
sudo xcode-select --install
curl -sSL https://get.rvm.io | bash -s stable
rvm install 3.0.2
rvm --default use 3.0.2
# install dependencies and pods
make dependencies
bundle exec pod install
To run UI tests, you will need a FlowCryptUITests/test-ci-secrets.json file. For this, please reach out to tom@flowcrypt.com to get an NDA signed, and the file will be shared with you. On SemaphoreCI the file is loaded as a secret. If you need to update this file on CI, communicate with Tom to get help. After the update, please email it encrypted to other iOS team members.
Follow steps in installation above, and then:
- from terminal:
make ui_tests
- for all ui testsmake ui_tests_gmail
- for Gmail ui testsmake ui_tests_imap
- for Imap ui tests
- from Xcode:
- Choose
FlowCryptUITests
run target on top and select a simulator - select Tests in Navigators area (cmd+6)
- Scroll down to
FlowCryptUITests
in the navigator and run them all or run a particular one
- Choose
Before running tests, please make sure keyboard is visible in simulator. (cmd+shift+k)
Storage - Realm
Async Operations - PromiseKit
IMAP/SMTP provider - MailCore
- get uuid of their device and input it into https://developer.apple.com/account/ -> Devices
- choose the right build (eg
FlowCrypt Enterprise
) and chooseAny iOS Device (arm64)
- Xcode -> Product -> Archive
- Distribute app -> Add Hoc -> Next -> Next (automatically manage signing)
- This creates a folder at the target where you export it to, and the IPA will be there