| #!/bin/bash | |
| # Copyright 2019 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=Test | |
| ### run e2e tests | |
| ## Usage: fx run-e2e-tests | |
| ## | |
| ## Thin wrapper around `fx run-host-tests` which sets up the environment to run | |
| ## an end to end test against the current hardware target. | |
| ## | |
| ## Hint: | |
| ## Use fx --dir flag to change the selected build directory and/or fx -t to | |
| ## change the target device. | |
| set -o errexit | |
| set -o pipefail | |
| source "$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)"/../lib/vars.sh | |
| fx-config-read | |
| export FUCHSIA_DEVICE_ADDR="$(get-fuchsia-device-addr)" | |
| if [[ -z "$FUCHSIA_DEVICE_ADDR" ]]; then | |
| fx-error "Cannot determine IP address of Fuchsia target" | |
| exit 1 | |
| fi | |
| if [[ "$FUCHSIA_DEVICE_ADDR" == "::1" ]]; then | |
| # Device addr is localhost, assume that means that ports were forwarded with | |
| # fx serve-remote from a remote workstation/laptop with a device attached. | |
| export SL4F_HTTP_PORT=9080 | |
| fi | |
| # For legacy code. | |
| export FUCHSIA_IPV4_ADDR="${FUCHSIA_DEVICE_ADDR}" | |
| port="$(get-fuchsia-device-port)" | |
| if [[ -n "${port}" ]]; then | |
| export FUCHSIA_SSH_PORT="${port}" | |
| fi | |
| export FUCHSIA_SSH_KEY="$(get-ssh-privkey)" || exit $? | |
| export FUCHSIA_TEST_OUTDIR="${FUCHSIA_OUT_DIR}/test_out/$(date +'%F-%H:%M:%S')" | |
| mkdir -p "${FUCHSIA_TEST_OUTDIR}" | |
| fx-command-run run-host-tests "$@" |