Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add ability to run detox tests on Android #8553

Merged
merged 113 commits into from
Feb 13, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
113 commits
Select commit Hold shift + click to select a range
bd59982
init
yasserfaraazkhan Jan 30, 2025
4cad4c2
test-1
yasserfaraazkhan Jan 30, 2025
6bdfe5d
test-2
yasserfaraazkhan Jan 30, 2025
16e7618
test-3
yasserfaraazkhan Jan 30, 2025
92aa984
test-4
yasserfaraazkhan Jan 30, 2025
fd40f4f
Revert "test-4"
yasserfaraazkhan Jan 30, 2025
062d702
test-5
yasserfaraazkhan Jan 30, 2025
6196ef2
test-6
yasserfaraazkhan Jan 30, 2025
5fd5de9
test-7
yasserfaraazkhan Jan 30, 2025
2277b3f
test-8
yasserfaraazkhan Jan 30, 2025
57e6345
test-9
yasserfaraazkhan Jan 30, 2025
f39a665
test-10
yasserfaraazkhan Jan 31, 2025
92ee7bd
Manually Install Emulator Dependencies
yasserfaraazkhan Jan 31, 2025
811157c
Use preinstalled emulator and change the archi to armv8
yasserfaraazkhan Jan 31, 2025
d1a416f
use v8 archi emulator
yasserfaraazkhan Jan 31, 2025
b9d9d4b
use macos-14-arm
yasserfaraazkhan Jan 31, 2025
205196c
use macos-14-arm
yasserfaraazkhan Jan 31, 2025
d807e43
Java 8
yasserfaraazkhan Jan 31, 2025
7598bd3
Java 8 zulu distribution
yasserfaraazkhan Jan 31, 2025
170fc16
use asop
yasserfaraazkhan Jan 31, 2025
8e66c48
java 11 and asop
yasserfaraazkhan Jan 31, 2025
196c32d
java 17 and asop
yasserfaraazkhan Jan 31, 2025
16e8e97
wait for emulator
yasserfaraazkhan Jan 31, 2025
ae09543
with google_apis
yasserfaraazkhan Jan 31, 2025
f978fcb
with google_apis_playstore
yasserfaraazkhan Jan 31, 2025
421efef
with accel off
yasserfaraazkhan Jan 31, 2025
569944c
with hvf
yasserfaraazkhan Jan 31, 2025
c666be8
set 2 cores
yasserfaraazkhan Jan 31, 2025
8b8344a
accel off
yasserfaraazkhan Jan 31, 2025
380857b
macos-13
yasserfaraazkhan Jan 31, 2025
7b67af0
restart adb server
yasserfaraazkhan Jan 31, 2025
821a0cd
use reactivecircus/android-emulator-runner@v2
yasserfaraazkhan Jan 31, 2025
22c6087
use reactivecircus/android-emulator-runner@v2 with no snapshot
yasserfaraazkhan Jan 31, 2025
d7a1279
remove reactivecircus
yasserfaraazkhan Jan 31, 2025
f3befde
try reactivecircus again with options
yasserfaraazkhan Jan 31, 2025
4419d72
add prepare-android-build step
yasserfaraazkhan Jan 31, 2025
1e24511
custom avd creation
yasserfaraazkhan Feb 1, 2025
065d6e4
custom avd creation
yasserfaraazkhan Feb 1, 2025
736663a
custom avd creation
yasserfaraazkhan Feb 1, 2025
07882e6
kill and start adb server
yasserfaraazkhan Feb 1, 2025
ad141f2
agressive adb clean up
yasserfaraazkhan Feb 1, 2025
b1bcf1e
try linux
yasserfaraazkhan Feb 1, 2025
1c84479
try linux
yasserfaraazkhan Feb 1, 2025
e907a4a
install sdk
yasserfaraazkhan Feb 1, 2025
e2a584f
fix adb path
yasserfaraazkhan Feb 1, 2025
6bb1590
fix adb path
yasserfaraazkhan Feb 1, 2025
938bd11
wait 5m for emulator to boot and run tests
yasserfaraazkhan Feb 1, 2025
c614640
wait 5m for emulator to boot and run tests
yasserfaraazkhan Feb 1, 2025
d961056
run on macos-latest
yasserfaraazkhan Feb 2, 2025
d66ae09
fix path on macos-latest
yasserfaraazkhan Feb 2, 2025
290f7c7
fix path on macos-latest
yasserfaraazkhan Feb 2, 2025
6909b0d
fix path on macos-latest
yasserfaraazkhan Feb 2, 2025
d539545
fix path on macos-latest
yasserfaraazkhan Feb 2, 2025
6481e2a
fix path on macos-latest
yasserfaraazkhan Feb 2, 2025
aec065c
use ubuntu 8 cores
yasserfaraazkhan Feb 2, 2025
2b1db9f
enable KVM
yasserfaraazkhan Feb 2, 2025
b73a9b5
add sdkmanager in path
yasserfaraazkhan Feb 2, 2025
7c272c3
add sdkmanager in path
yasserfaraazkhan Feb 2, 2025
bb14689
fix avd home location
yasserfaraazkhan Feb 2, 2025
222d392
fix avd home location
yasserfaraazkhan Feb 2, 2025
2e2c5cb
fix avd home location
yasserfaraazkhan Feb 2, 2025
e49af40
install linux dependencies
yasserfaraazkhan Feb 2, 2025
8ae8e34
wait for emulator boot
yasserfaraazkhan Feb 2, 2025
d3eafe1
wait for emulator boot
yasserfaraazkhan Feb 2, 2025
a50a746
upload report
yasserfaraazkhan Feb 2, 2025
0a243ba
upload report
yasserfaraazkhan Feb 2, 2025
7e1e7e3
upload report
yasserfaraazkhan Feb 2, 2025
d45e239
increase wait time for server
yasserfaraazkhan Feb 2, 2025
305df44
Add env variables in the android job
yasserfaraazkhan Feb 2, 2025
1318f4c
Start server from the script
yasserfaraazkhan Feb 2, 2025
712be8b
Run all tests
yasserfaraazkhan Feb 2, 2025
5cb7ca1
increase time out
yasserfaraazkhan Feb 2, 2025
2dcffd5
Run for api 33
yasserfaraazkhan Feb 2, 2025
d65b704
set cores 5
yasserfaraazkhan Feb 2, 2025
3515d59
fix emulator name
yasserfaraazkhan Feb 2, 2025
5822ec5
set RUNNING_ENE=true
yasserfaraazkhan Feb 2, 2025
ee005a1
download whole build file
yasserfaraazkhan Feb 2, 2025
9bcf094
download whole build file
yasserfaraazkhan Feb 2, 2025
389de3d
screen record
yasserfaraazkhan Feb 2, 2025
fa650a5
screen record
yasserfaraazkhan Feb 2, 2025
578a60d
install app in emulator
yasserfaraazkhan Feb 2, 2025
0aff8a9
wait for metro server
yasserfaraazkhan Feb 2, 2025
04aa89f
test launchAPP
yasserfaraazkhan Feb 2, 2025
1c2471a
launch app with timeout
yasserfaraazkhan Feb 2, 2025
a5f6c88
reverse port forwarding
yasserfaraazkhan Feb 3, 2025
ba9dd11
Fix report
yasserfaraazkhan Feb 3, 2025
b20d3e7
Fix report
yasserfaraazkhan Feb 3, 2025
a4cb9c1
init
yasserfaraazkhan Feb 3, 2025
0d02b74
Add label in detox-pr workflow
yasserfaraazkhan Feb 4, 2025
46f0b8f
fix argument to build emulator
yasserfaraazkhan Feb 4, 2025
35b2c13
fix argument to build emulator
yasserfaraazkhan Feb 4, 2025
25b7c81
increase execution time of android e2e
yasserfaraazkhan Feb 4, 2025
a287da9
run for small set of tests
yasserfaraazkhan Feb 4, 2025
01c504d
capture test files and run detox
yasserfaraazkhan Feb 4, 2025
856ae4d
run whole tests
yasserfaraazkhan Feb 4, 2025
a5a70fd
separate the statuses for each job
yasserfaraazkhan Feb 5, 2025
9209498
fix status update
yasserfaraazkhan Feb 5, 2025
1b0a9c0
Merge branch 'main' into combine-ios-android-e2e
mattermost-build Feb 6, 2025
7572f0c
Test fixes
yasserfaraazkhan Feb 6, 2025
2dfe7de
Test fixes
yasserfaraazkhan Feb 7, 2025
528dda8
Change toggle locator
yasserfaraazkhan Feb 9, 2025
d75162c
Merge remote-tracking branch 'origin/main' into combine-ios-android-e2e
yasserfaraazkhan Feb 9, 2025
62acb6d
iOS test fixes
yasserfaraazkhan Feb 10, 2025
ea2af63
Merge branch 'main' into combine-ios-android-e2e
mattermost-build Feb 11, 2025
9f02392
iOS test fixes
yasserfaraazkhan Feb 12, 2025
8b6c68d
fix lint
yasserfaraazkhan Feb 12, 2025
76ec9e2
android: set default target to 34
yasserfaraazkhan Feb 12, 2025
c69adc5
increase ios job timeout
yasserfaraazkhan Feb 12, 2025
5ec744b
some clean up
yasserfaraazkhan Feb 12, 2025
534c969
some clean up
yasserfaraazkhan Feb 12, 2025
8a14988
fix lint
yasserfaraazkhan Feb 12, 2025
417326b
Split tests more efficiently
yasserfaraazkhan Feb 12, 2025
b2fca75
remove parallel workers
yasserfaraazkhan Feb 13, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 10 additions & 8 deletions .github/actions/generate-specs/split-tests.js
Original file line number Diff line number Diff line change
Expand Up @@ -52,20 +52,22 @@ class Specs {
}

generateSplits() {
const chunkSize = Math.ceil(this.rawFiles.length / this.parallelism);
const chunkSize = Math.floor(this.rawFiles.length / this.parallelism);
let remainder = this.rawFiles.length % this.parallelism;
let runNo = 1;
let start = 0;

for (let i = 0; i < this.rawFiles.length; i += chunkSize) {
const end = Math.min(i + chunkSize, this.rawFiles.length);
const fileGroup = this.rawFiles.slice(i, end).join(' ');
for (let i = 0; i < this.parallelism; i++) {
let end = start + chunkSize + (remainder > 0 ? 1 : 0);
const fileGroup = this.rawFiles.slice(start, end).join(' ');
const specFileGroup = new SpecGroup(runNo.toString(), fileGroup, this.deviceInfo);
this.groupedFiles.push(specFileGroup);

if (end === this.rawFiles.length) {
break;
}

start = end;
runNo++;
if (remainder > 0) {
remainder--;
}
}
}

Expand Down
73 changes: 0 additions & 73 deletions .github/workflows/e2e-android-detox.yml

This file was deleted.

Loading
Loading