From dd5f0f1944a20c436d3e600cdaee6059791ebb5e Mon Sep 17 00:00:00 2001 From: Sam Judd Date: Wed, 25 Oct 2017 08:53:44 -0700 Subject: [PATCH] =?UTF-8?q?Run=20Firebase=20robot=20tests=20on=20Glide?= =?UTF-8?q?=E2=80=99s=20sample=20apps.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- scripts/install_firebase.sh | 10 ++++++++ scripts/run_sample_robo_tests.sh | 44 ++++++++++++++++++++++++++++++++ scripts/travis_firebase.sh | 9 +------ scripts/travis_samples.sh | 36 +++++++++++++++++++++++++- 4 files changed, 90 insertions(+), 9 deletions(-) create mode 100755 scripts/install_firebase.sh create mode 100755 scripts/run_sample_robo_tests.sh diff --git a/scripts/install_firebase.sh b/scripts/install_firebase.sh new file mode 100755 index 000000000..594d16e87 --- /dev/null +++ b/scripts/install_firebase.sh @@ -0,0 +1,10 @@ +#!/usr/bin/env bash + +set -e + +openssl aes-256-cbc -K $encrypted_ad2664a1c4dd_key -iv $encrypted_ad2664a1c4dd_iv -in $GCLOUD_FILE -out gcloud.json -d + +wget https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-176.0.0-linux-x86_64.tar.gz +tar xf google-cloud-sdk-176.0.0-linux-x86_64.tar.gz +echo "y" | ./google-cloud-sdk/bin/gcloud components update beta +./google-cloud-sdk/bin/gcloud auth activate-service-account --key-file gcloud.json diff --git a/scripts/run_sample_robo_tests.sh b/scripts/run_sample_robo_tests.sh new file mode 100755 index 000000000..d7c9cc23d --- /dev/null +++ b/scripts/run_sample_robo_tests.sh @@ -0,0 +1,44 @@ +#!/usr/bin/env bash +# Runs Firebases' robo tests (monkeyrunner) on Glide's sample apps +# +# Usage: +# ./scripts/run_sample_robo_tests.sh + +set -e + +./gradlew :samples:flickr:build \ + :samples:giphy:build \ + :samples:contacturi:build \ + :samples:gallery:build \ + :samples:imgur:build \ + :samples:svg:build \ + --parallel + +declare -a samples=("flickr" + "giphy" + "contacturi" + "gallery" + "imgur" + "svg") +pids=() + +for sample in "${samples[@]}" +do + sample_dir="samples/${sample}/build/outputs/apk/" + sample_apk="${sample_dir}/${sample}-debug.apk" + gcloud firebase test android run \ + --type robo \ + --app $sample_apk \ + --device model=Nexus6P,version=26,locale=en,orientation=portrait \ + --project android-glide \ + --no-auto-google-login & + pids+=("$!") +done + +for current in "${pids[@]}" +do + wait $current +done + + + diff --git a/scripts/travis_firebase.sh b/scripts/travis_firebase.sh index 7de0fda3c..95f084720 100755 --- a/scripts/travis_firebase.sh +++ b/scripts/travis_firebase.sh @@ -9,14 +9,7 @@ fi ./gradlew :instrumentation:assembleDebug :instrumentation:assembleDebugAndroidTest --parallel & pid=$! - -openssl aes-256-cbc -K $encrypted_ad2664a1c4dd_key -iv $encrypted_ad2664a1c4dd_iv -in $GCLOUD_FILE -out gcloud.json -d - -wget https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-176.0.0-linux-x86_64.tar.gz -tar xf google-cloud-sdk-176.0.0-linux-x86_64.tar.gz -echo "y" | ./google-cloud-sdk/bin/gcloud components update beta -./google-cloud-sdk/bin/gcloud auth activate-service-account --key-file gcloud.json - +./scripts/install_firebase.sh wait $pid apk_dir=instrumentation/build/outputs/apk diff --git a/scripts/travis_samples.sh b/scripts/travis_samples.sh index 4ab3f1451..72c4e2860 100755 --- a/scripts/travis_samples.sh +++ b/scripts/travis_samples.sh @@ -8,4 +8,38 @@ set -e :samples:gallery:build \ :samples:imgur:build \ :samples:svg:build \ - --parallel + --parallel & +pid=$! + +./scripts/install_firebase.sh + +wait $pid + +declare -a samples=("flickr" + "giphy" + "contacturi" + "gallery" + "imgur" + "svg") +pids=() + +for sample in "${samples[@]}" +do + sample_dir="samples/${sample}/build/outputs/apk/" + sample_apk="${sample_dir}/${sample}-debug.apk" + ./google-cloud-sdk/bin/gcloud firebase test android run \ + --type robo \ + --app $sample_apk \ + --device model=Nexus6P,version=26,locale=en,orientation=portrait \ + --project android-glide \ + --no-auto-google-login & + pids+=("$!") +done + +for current in "${pids[@]}" +do + wait $current +done + + + -- GitLab