66 lines
2.0 KiB
Bash
66 lines
2.0 KiB
Bash
#!/bin/bash
|
|
set -e
|
|
set -x
|
|
|
|
TEST_MODULE="{module_name}"
|
|
TEST_PATH="{tradefed_test_dir}"
|
|
ATEST_TF_LAUNCHER="{atest_tradefed_launcher}"
|
|
ATEST_HELPER="{atest_helper}"
|
|
SHARED_LIB_DIRS="{shared_lib_dirs}"
|
|
PATH_ADDITIONS="{path_additions}"
|
|
TRADEFED_CLASSPATH="{tradefed_classpath}"
|
|
RESULT_REPORTERS_CONFIG_FILE="{result_reporters_config_file}"
|
|
ATEST_JAVA_HOME="{atest_java_home}"
|
|
read -a ADDITIONAL_TRADEFED_OPTIONS <<< "{additional_tradefed_options}"
|
|
|
|
# Export variables expected by the Atest launcher script.
|
|
export LD_LIBRARY_PATH="${SHARED_LIB_DIRS}"
|
|
export TF_PATH="${TRADEFED_CLASSPATH}"
|
|
export PATH="${PATH_ADDITIONS}:${PATH}"
|
|
export ATEST_HELPER="${ATEST_HELPER}"
|
|
export JAVA_HOME="${ATEST_JAVA_HOME}"
|
|
|
|
exit_code_file="$(mktemp /tmp/tf-exec-XXXXXXXXXX)"
|
|
|
|
"${ATEST_TF_LAUNCHER}" template/atest_local_min \
|
|
--template:map test=atest \
|
|
--template:map reporters="${RESULT_REPORTERS_CONFIG_FILE}" \
|
|
--tests-dir "${TEST_PATH}" \
|
|
--logcat-on-failure \
|
|
--no-enable-granular-attempts \
|
|
--no-early-device-release \
|
|
--include-filter "${TEST_MODULE}" \
|
|
--skip-loading-config-jar \
|
|
--log-level-display VERBOSE \
|
|
--log-level VERBOSE \
|
|
"${ADDITIONAL_TRADEFED_OPTIONS[@]}" \
|
|
--bazel-exit-code-result-reporter:file=${exit_code_file} \
|
|
--bazel-xml-result-reporter:file=${XML_OUTPUT_FILE} \
|
|
--proto-output-file="${TEST_UNDECLARED_OUTPUTS_DIR}/proto-results" \
|
|
--use-delimited-api=true \
|
|
--log-file-path="${TEST_UNDECLARED_OUTPUTS_DIR}" \
|
|
--compress-files=false \
|
|
"$@"
|
|
|
|
# Use the TF exit code if it terminates abnormally.
|
|
tf_exit=$?
|
|
if [ ${tf_exit} -ne 0 ]
|
|
then
|
|
echo "Tradefed command failed with exit code ${tf_exit}"
|
|
exit ${tf_exit}
|
|
fi
|
|
|
|
# Set the exit code based on the exit code in the reporter-generated file.
|
|
exit_code=$(<${exit_code_file})
|
|
if [ $? -ne 0 ]
|
|
then
|
|
echo "Could not read exit code file: ${exit_code_file}"
|
|
exit 36
|
|
fi
|
|
|
|
if [ ${exit_code} -ne 0 ]
|
|
then
|
|
echo "Test failed with exit code ${exit_code}"
|
|
exit ${exit_code}
|
|
fi
|