Add fastlane for testing #188
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: iOS Build and Test | |
| permissions: | |
| contents: read | |
| pull-requests: write | |
| on: | |
| push: | |
| branches: [ "main" ] | |
| pull_request: | |
| branches: [ "main" ] | |
| jobs: | |
| test: | |
| name: Run iOS Tests | |
| runs-on: macos-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: List available Xcode versions | |
| run: ls /Applications | grep Xcode | |
| - name: Set Xcode version | |
| run: sudo xcode-select -s /Applications/Xcode_16.2.app | |
| - name: Show Xcode version | |
| run: xcodebuild -version | |
| - name: Set up Ruby | |
| uses: ruby/setup-ruby@v1 | |
| with: | |
| bundler-cache: true | |
| - name: Install dependencies | |
| run: bundle install | |
| - name: Run tests with fastlane | |
| run: bundle exec fastlane test | |
| - name: Upload test results | |
| if: always() | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: test-results | |
| path: | | |
| fastlane/test_output/ | |
| fastlane/test_output/*.junit | |
| fastlane/test_output/*.html | |
| fastlane/test_output/*.xcresult | |
| retention-days: 30 | |
| - name: Publish test results | |
| if: always() | |
| uses: EnricoMi/publish-unit-test-result-action/macos@v2 | |
| with: | |
| files: | | |
| fastlane/test_output/*.junit | |
| check_name: iOS Test Results |