blob: e4fc4a4c423386c9f011c6bf4f8546ed5769d846 [file] [log] [blame]
#!/bin/bash
# Copyright 2018 The Fuchsia Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
#### CATEGORY=Run, inspect and debug
#### DEPRECATED
### build and run tests on host
## Usage: fx run-host-tests [-z] [host test names ...] [-- [test runner flags]]
##
## This command is being deprecated in favor of `fx test`. Read more at:
## https://fuchsia.dev/fuchsia-src/development/testing/running_tests_as_components#running_tests\n
##
## Builds and runs the given host tests.
## With "-z" passed, only Zircon tests will be run - and
## without it only tests from Garnet and above.
## Test runner flags can typically be --gtest_filter=TestSuiteName.TestName
## to restrict to a particular test or set of tests.
set -o errexit
set -o pipefail
source "$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)"/lib/vars.sh || exit $?
fx-config-read
fx-warn "This command is being deprecated in favor of \`fx test\`. Read more at:\n - https://fuchsia.dev/fuchsia-src/development/testing/running_tests_as_components#converting_from_run-test_or_run-host-tests\n"
TEST_NAMES=()
function main {
while [[ -n "$1" ]]; do
case "$1" in
-z) ZIRCON=1 ;;
# break at bare double dash
# allow passing args to runtests
--) shift
break
;;
*) TEST_NAMES+=("$1");;
esac
shift
done
if [[ $ZIRCON -eq 1 ]]; then
host_test_dir="${ZIRCON_BUILDROOT}/host_tests"
fx-command-run build "-v"
runtests_cmd=("${ZIRCON_TOOLS_DIR}/runtests")
if [[ -n "$TEST_NAMES" ]]; then
# Comma-separated list of host test names to filter by.
IFS="," runtests_cmd+=("-t" "${TEST_NAMES[@]}")
fi
# remaining arguments after -- are passed to test runner
"${runtests_cmd[@]}" "${host_test_dir}" -- "$@"
else
"${FUCHSIA_DIR}/tools/devshell/contrib/exec-host-tests"\
"--manifest" "${FUCHSIA_BUILD_DIR}/tests.json"\
"--names" "${TEST_NAMES[@]}"\
"--build-dir" "${FUCHSIA_BUILD_DIR}"\
"--ninja" "${PREBUILT_NINJA}" \
"--"\
"$@"
fi
}
main "$@"