Commit 582eebd4 authored by Daniel Martí's avatar Daniel Martí

Run connectedAndroidTest against an emulator

Using 2.3.7 (10) armeabi for now. We can look into using more images in the
future.
parent ab1ec076
......@@ -16,11 +16,24 @@ before_script:
- echo y | android -s update sdk --no-ui -a -t platform-tools,tools,build-tools-23.0.0,android-22,extra-android-m2repository
- export PATH="$ANDROID_HOME/platform-tools:$PATH"
- export PATH="$ANDROID_HOME/build-tools/23.0.0:$PATH"
- echo " == Installing emulator system images"
- echo y | android -s update sdk --no-ui -a -t android-10
- echo " == Installing Gradle"
- wget -q -O gradle.zip https://services.gradle.org/distributions/gradle-2.4-bin.zip
- unzip -q gradle.zip
- export PATH="$PWD/gradle-2.4/bin:$PATH"
build:
test:
script:
- gradle build
- cd F-Droid
- echo " == Building via gradle"
- gradle clean assemble
- echo " == Setting up Android 2.3.7 emulator"
- echo no | android create avd --force -n fcl-test -t android-10 -b armeabi
- echo " == Starting Android 2.3.7 emulator"
- emulator -force-32bit -avd fcl-test -no-skin -no-audio -no-window &
- ./tools/wait-for-emulator
- echo " == Running Android tests"
- gradle connectedAndroidTest
- echo " == Stopping Android 2.3.7 emulator"
- kill $!
#!/bin/bash
sec=0
timeout=360
err() {
echo "$@"
exit 1
}
explain() {
if [[ "$1" =~ "not found" ]]; then
printf "device not found"
elif [[ "$1" =~ "offline" ]]; then
printf "device offline"
elif [[ "$1" =~ "running" ]]; then
printf "booting"
else
printf "unknown: $1"
fi
}
while true; do
if [[ $sec -ge $timeout ]]; then
err "Timeout ($timeout seconds) reached - Failed to start emulator"
fi
out=$(adb -e shell getprop init.svc.bootanim 2>&1)
if [[ "$out" =~ "command not found" ]]; then
err "$out"
fi
if [[ "$out" =~ "stopped" ]]; then
break
fi
exp=$(explain "$out")
let "r = sec % 5"
if [[ $r -eq 0 ]]; then
echo "Waiting for emulator to start: $exp"
fi
sleep 1
let "sec++"
done
echo "Emulator is ready"
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment