blob: d78db42ae0ab0d36ae181aa65fe7193533443d6f [file] [log] [blame] [edit]
# 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.
import("//src/sys/build/fuchsia_component.gni")
template("isolated_devmgr_unittest_v2_component") {
if (!defined(invoker.manifest)) {
generated_target = "${target_name}_generated_manifest"
manifest = "$target_out_dir/${generated_target}.cml"
generated_file(generated_target) {
contents = {
include = [ "sdk/lib/diagnostics/syslog/client.shard.cml" ]
program = {
binary = invoker.executable_path
}
children = [
{
name = "isolated-devmgr"
url = "fuchsia-pkg://fuchsia.com/isolated-devmgr#meta/isolated-devmgr.cm"
startup = "eager"
},
]
capabilities = [
{
protocol = "fuchsia.test.Suite"
},
]
use = [
{
if (defined(invoker.runner)) {
runner = invoker.runner
} else {
runner = "gtest_runner"
}
},
{
protocol = [ "fuchsia.process.Launcher" ]
},
{
protocol = "fuchsia.sys2.Realm"
from = "framework"
},
]
offer = [
{
protocol = [
"fuchsia.logger.LogSink",
"fuchsia.process.Launcher",
"fuchsia.sys.Launcher",
]
from = "parent"
to = [ "#isolated-devmgr" ]
},
]
expose = [
{
protocol = "fuchsia.test.Suite"
from = "self"
},
]
}
outputs = [ "$manifest" ]
output_conversion = "json"
testonly = true
visibility = [ ":*" ]
}
}
fuchsia_component(target_name) {
testonly = true
forward_variables_from(invoker,
[
"deps",
"manifest",
"visibility",
"component_name",
])
if (defined(generated_target)) {
deps += [ ":$generated_target" ]
}
}
}