Skip to content

Commit 4075302

Browse files
authored
Run emulator tests in CI (#269)
1 parent 924a115 commit 4075302

File tree

1 file changed

+52
-0
lines changed

1 file changed

+52
-0
lines changed

.github/workflows/test.yml

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,3 +74,55 @@ jobs:
7474
path: |
7575
**/build/reports/
7676
**/build/test-results/
77+
78+
android_emulator:
79+
runs-on: ubuntu-latest
80+
timeout-minutes: 30
81+
env:
82+
AVD_NAME: ubuntu-avd-x86_64-31
83+
steps:
84+
- name: checkout
85+
uses: actions/checkout@v4
86+
87+
- name: Validate Gradle Wrapper
88+
uses: gradle/actions/wrapper-validation@v4
89+
- uses: actions/cache@v4
90+
with:
91+
path: ~/.konan
92+
key: ${{ runner.os }}-${{ hashFiles('**/.lock') }}
93+
- name: Set up JDK 17
94+
uses: actions/setup-java@v4
95+
with:
96+
java-version: '17'
97+
distribution: 'temurin'
98+
- name: Set up Gradle
99+
uses: gradle/actions/setup-gradle@v4
100+
with:
101+
cache-encryption-key: ${{ secrets.GRADLE_ENCRYPTION_KEY }}
102+
- name: AVD Cache
103+
uses: actions/cache@v4
104+
id: avd-cache
105+
with:
106+
path: |
107+
~/.android/avd/*
108+
~/.android/adb*
109+
key: avd-31
110+
111+
# https://github.com/ReactiveCircus/android-emulator-runner?tab=readme-ov-file#usage--examples
112+
- name: Enable KVM
113+
run: |
114+
echo 'KERNEL=="kvm", GROUP="kvm", MODE="0666", OPTIONS+="static_node=kvm"' | sudo tee /etc/udev/rules.d/99-kvm4all.rules
115+
sudo udevadm control --reload-rules
116+
sudo udevadm trigger --name-match=kvm
117+
118+
- name: emulator tests
119+
uses: reactivecircus/android-emulator-runner@v2
120+
with:
121+
api-level: 31
122+
force-avd-creation: false
123+
target: google_apis
124+
arch: x86_64
125+
disable-animations: false
126+
avd-name: $AVD_NAME
127+
emulator-options: -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
128+
script: ./gradlew --scan core-tests-android:connectedCheck

0 commit comments

Comments
 (0)