Skip to content

Bump koin-compose from 4.0.1 to 4.0.2 #1026

Bump koin-compose from 4.0.1 to 4.0.2

Bump koin-compose from 4.0.1 to 4.0.2 #1026

Workflow file for this run

name: Tests
on:
pull_request:
branches: [ main ]
env:
JAVA_VERSION: 21
JAVA_DIST: "zulu"
IOS_XCODE_VERSION: "16.0"
jobs:
android-unit-test:
name: Android unit tests
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- name: Checkout
uses: actions/checkout@v3
- uses: actions/setup-java@v4
with:
distribution: ${{ env.JAVA_DIST }}
java-version: ${{ env.JAVA_VERSION }}
cache: 'gradle'
- uses: actions/cache@v4
with:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Run unit tests
run: ./gradlew assembleDebug testDebug -x :app:testDebug -x :screenshot-tests:testDebug
- name: Run screenshot tests
run: ./gradlew :screenshot-tests:verifyPaparazziDebug
- name: Upload test reports
if: always()
uses: actions/upload-artifact@v4
with:
name: android-unit-test-reports
path: |
**/build/reports/tests
**/build/reports/androidTests/connected
uitest-screenshot-failure
android-integration-tests:
name: Android integration tests
#
# macos-14 is not supported yet:
# https://github.com/ReactiveCircus/android-emulator-runner/issues/324
#
runs-on: macos-13
timeout-minutes: 45
strategy:
fail-fast: false
matrix:
include:
- api-level: 34 # Android 15
arch: x86_64
target: default
steps:
- name: Checkout
uses: actions/checkout@v3
- uses: actions/setup-java@v4
with:
distribution: ${{ env.JAVA_DIST }}
java-version: ${{ env.JAVA_VERSION }}
cache: 'gradle'
- uses: actions/cache@v4
with:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: AVD cache
uses: actions/cache@v4
id: avd-cache
with:
path: |
~/.android/avd/*
~/.android/adb*
key: avd-${{ matrix.api-level }} - ${{ matrix.arch }} - ${{ matrix.target }}
- name: Run Android instrumentation tests
uses: reactivecircus/android-emulator-runner@v2
with:
api-level: ${{ matrix.api-level }}
arch: ${{ matrix.arch }}
target: ${{ matrix.target }}
disable-animations: false
emulator-build: 11834374
emulator-options: -no-snapshot -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none -camera-front none
script: >
./gradlew connectedAndroidTest ||
(adb pull sdcard/Download/uitest-screenshot-failure &&
exit 1)
- name: Upload Android test reports
if: failure()
uses: actions/upload-artifact@v4
with:
name: android-integration-test-reports-${{ matrix.api-level }}
path: |
**/build/reports/tests
**/build/reports/androidTests/connected
uitest-screenshot-failure
ios-tests:
name: IOS unit and integration tests
runs-on: macos-15
timeout-minutes: 30
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Select Xcode
run: sudo xcode-select -switch /Applications/Xcode_${{ env.IOS_XCODE_VERSION }}.app
- uses: actions/setup-java@v4
with:
distribution: ${{ env.JAVA_DIST }}
java-version: ${{ env.JAVA_VERSION }}
cache: 'gradle'
continue-on-error: true
- uses: actions/cache@v4
with:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
restore-keys: |
${{ runner.os }}-gradle-
continue-on-error: true
- name: Run IOS instrumentation tests
run: ./gradlew iosSimulatorArm64Test
- name: Upload IOS test reports
if: failure()
uses: actions/upload-artifact@v4
with:
name: ios-integration-test-reports-${{ matrix.api-level }}
path: |
**/build/reports/tests