#!/bin/bash
# Copyright 2020 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
### run zircon core-tests

## usage: core-tests [-...`fx run-zbi-test` switches...] [--gtest-filter=<FILTER>]
##        [--gtest_repeat=<REPEAT>]

source "$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)"/../lib/vars.sh || exit $?

ARGS=()
for arg in "$@"; do
  case "$arg" in
  --gtest_repeat*) ARGS+=(--cmdline="$arg") ;;
  --gtest_filter*) ARGS+=(--cmdline="$arg") ;;
  -*) ARGS+=("$arg") ;;
  esac
done

fx-command-exec run-zbi-test "${ARGS[@]}" core-tests
