| # 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. |
| |
| import("//build/package.gni") |
| import("//build/test/test_package.gni") |
| |
| # A variant of package() that only contains test executables. The test |
| # executables are specified as the build products of the deps. A tests_package() |
| # is always testonly = true. The deps are expected to be executable()s. |
| # |
| # Additional parameters |
| # |
| # environments (optional, default: [ { dimensions = { device_type = "QEMU" } } ]) |
| # [list of scopes] Device environments in which the tests should run. See |
| # //build/package.gni for more details. |
| # |
| template("tests_package") { |
| computed_tests = [] |
| foreach(dep, invoker.deps) { |
| computed_tests += [ |
| { |
| name = get_label_info(dep, "name") |
| if (defined(invoker.environments)) { |
| environments = invoker.environments |
| } |
| }, |
| ] |
| } |
| |
| package(target_name) { |
| testonly = true |
| |
| forward_variables_from(invoker, |
| [ |
| "deps", |
| "meta", |
| "resources", |
| ]) |
| tests = computed_tests |
| } |
| } |
| |
| # A variant of test_package() that only contains test executables. It computes |
| # the value of the 'tests' paremeter from 'deps'. |
| # |
| # This variant, as described in |
| # https://fuchsia.dev/fuchsia-src/development/tests/test_component.md, |
| # requires a .cmx file for each test. |
| # |
| # |
| # Additional parameters |
| # |
| # environments (optional, default: [ { dimensions = { device_type = "QEMU" } } ]) |
| # [list of scopes] Device environments in which the tests should run. See |
| # //build/package.gni for more details. |
| # |
| template("hermetic_tests_package") { |
| computed_tests = [] |
| foreach(dep, invoker.deps) { |
| computed_tests += [ |
| { |
| name = get_label_info(dep, "name") |
| if (defined(invoker.environments)) { |
| environments = invoker.environments |
| } |
| }, |
| ] |
| } |
| |
| test_package(target_name) { |
| forward_variables_from(invoker, |
| [ |
| "deprecated_shell", |
| "deps", |
| "meta", |
| "resources", |
| ]) |
| tests = computed_tests |
| } |
| } |