Files
hapi/.github/workflows/ios.yml
T

60 lines
2.1 KiB
YAML

name: ios
on:
push:
branches:
- main
paths:
- 'ios/**'
- 'shared/fixtures/**'
- '.github/workflows/ios.yml'
pull_request:
paths:
- 'ios/**'
- 'shared/fixtures/**'
- '.github/workflows/ios.yml'
concurrency:
group: ios-${{ github.ref }}
cancel-in-progress: true
jobs:
package-tests:
runs-on: macos-15
steps:
- uses: actions/checkout@v4
- name: Show toolchain versions
run: |
xcodebuild -version
swift --version
- name: Run HapiKit package tests
run: swift test --package-path ios/Packages/HapiKit
app-build:
runs-on: macos-15
steps:
- uses: actions/checkout@v4
- name: Show toolchain versions
run: xcodebuild -version
- name: Check manual localization catalog
env:
PYTHONDONTWRITEBYTECODE: '1'
run: |
python3 ios/scripts/localizations.py --check
python3 -m unittest discover -s ios/scripts/tests -p 'test_localizations.py'
- name: Build Hapi app for iOS Simulator
run: xcodebuild build -project ios/Hapi.xcodeproj -scheme Hapi -destination 'generic/platform=iOS Simulator' CODE_SIGNING_ALLOWED=NO
- name: Transcript layout regression tests
run: ios/scripts/test-transcript.sh
- name: iPad navigation and layout regression tests
env:
HAPI_TEST_DEVICE_TYPE: com.apple.CoreSimulator.SimDeviceType.iPad-Air-11-inch-M2
run: >-
ios/scripts/test-transcript.sh
-only-testing:HapiTests/SessionNavigationTests
-only-testing:HapiTests/SessionSplitPresentationTests
-only-testing:HapiTests/TranscriptTypographyTests
-only-testing:HapiTests/TranscriptGeometryTests
- name: Verify localization catalog was not rewritten
run: git diff --exit-code -- ios/Hapi/Resources/Localizable.xcstrings