1*b7c941bbSAndroid Build Coastguard Worker#!/bin/bash 2*b7c941bbSAndroid Build Coastguard Worker 3*b7c941bbSAndroid Build Coastguard Worker# Copyright (C) 2015 The Android Open Source Project 4*b7c941bbSAndroid Build Coastguard Worker# 5*b7c941bbSAndroid Build Coastguard Worker# Licensed under the Apache License, Version 2.0 (the "License"); 6*b7c941bbSAndroid Build Coastguard Worker# you may not use this file except in compliance with the License. 7*b7c941bbSAndroid Build Coastguard Worker# You may obtain a copy of the License at 8*b7c941bbSAndroid Build Coastguard Worker# 9*b7c941bbSAndroid Build Coastguard Worker# http://www.apache.org/licenses/LICENSE-2.0 10*b7c941bbSAndroid Build Coastguard Worker# 11*b7c941bbSAndroid Build Coastguard Worker# Unless required by applicable law or agreed to in writing, software 12*b7c941bbSAndroid Build Coastguard Worker# distributed under the License is distributed on an "AS IS" BASIS, 13*b7c941bbSAndroid Build Coastguard Worker# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14*b7c941bbSAndroid Build Coastguard Worker# See the License for the specific language governing permissions and 15*b7c941bbSAndroid Build Coastguard Worker# limitations under the License. 16*b7c941bbSAndroid Build Coastguard Worker 17*b7c941bbSAndroid Build Coastguard WorkerCTS_DIR=$(dirname ${0})/../../.. 18*b7c941bbSAndroid Build Coastguard Workersource ${CTS_DIR}/test_defs.sh 19*b7c941bbSAndroid Build Coastguard Worker 20*b7c941bbSAndroid Build Coastguard Workerif [ `adb devices | wc -l` -lt 3 ]; then 21*b7c941bbSAndroid Build Coastguard Worker echo "NO DEVICES/EMULATORS AVAILABLE. CONNECT ONE." 22*b7c941bbSAndroid Build Coastguard Worker exit 1 23*b7c941bbSAndroid Build Coastguard Workerfi 24*b7c941bbSAndroid Build Coastguard Worker 25*b7c941bbSAndroid Build Coastguard Worker# Take the last serial in the list of devices 26*b7c941bbSAndroid Build Coastguard WorkerSERIAL=`adb devices | egrep -o "^\w+" | tail -n1` 27*b7c941bbSAndroid Build Coastguard Workerif [ -z ${SERIAL} ]; then 28*b7c941bbSAndroid Build Coastguard Worker echo "FAILED TO GET ADB DEVICE SERIAL FOR TEST. EXITING" 29*b7c941bbSAndroid Build Coastguard Worker exit 1 30*b7c941bbSAndroid Build Coastguard Workerfi 31*b7c941bbSAndroid Build Coastguard Worker 32*b7c941bbSAndroid Build Coastguard Workerecho "Running device side tests on device: ${SERIAL}" 33*b7c941bbSAndroid Build Coastguard Worker 34*b7c941bbSAndroid Build Coastguard WorkerAPK=${ANDROID_PRODUCT_OUT}/data/app/CompatibilityTestApp/CompatibilityTestApp.apk 35*b7c941bbSAndroid Build Coastguard WorkercheckFile ${APK} 36*b7c941bbSAndroid Build Coastguard Worker 37*b7c941bbSAndroid Build Coastguard WorkerCOMMON_PACKAGE=com.android.compatibility.common 38*b7c941bbSAndroid Build Coastguard WorkerRUNNER=androidx.test.runner.AndroidJUnitRunner 39*b7c941bbSAndroid Build Coastguard Worker# TODO [2015-12-09 kalle] Fail & exit on failing install? 40*b7c941bbSAndroid Build Coastguard Workeradb -s ${SERIAL} install -r -g ${APK} 41*b7c941bbSAndroid Build Coastguard Workerbuild_jar_path ${JAR_DIR} "${JARS}" 42*b7c941bbSAndroid Build Coastguard Workerjava $RDBG_FLAG -cp ${JAR_PATH} ${TF_CONSOLE} run singleCommand instrument --serial ${SERIAL} --package ${COMMON_PACKAGE} --runner ${RUNNER} 43*b7c941bbSAndroid Build Coastguard Workeradb -s ${SERIAL} uninstall ${COMMON_PACKAGE} 44