blob: 97d47ceb3d3e00442bd6d9ed8b3d2e949efd7d37 [file] [log] [blame]
# 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.
import("//build/rust/rustc_binary.gni")
import("//build/rust/rustc_library.gni")
import("//build/rust/rustc_test.gni")
import("//build/test/test_package.gni")
group("tests") {
testonly = true
deps = [
":component_manager_panic_test",
":shutdown_integration_test",
"base_resolver_test",
"collections:collections_integration_test",
"destruction:destruction_integration_test",
"elf_runner:tests",
"events:events_integration_test",
"hub:hub_integration_test",
"rights:tests",
"routing:tests",
"storage:storage_integration_test",
"work_scheduler:work_scheduler_integration_test",
]
}
rustc_library("test_utils_lib") {
name = "test_utils_lib"
edition = "2018"
source_root = "lib.rs"
deps = [
"//examples/components/routing/fidl:echo-rustc",
"//garnet/lib/rust/files_async",
"//sdk/fidl/fuchsia.sys:fuchsia.sys-rustc",
"//sdk/fidl/fuchsia.sys2:fuchsia.sys2-rustc",
"//src/lib/fdio/rust:fdio",
"//src/lib/fidl/rust/fidl",
"//src/lib/fuchsia-async",
"//src/lib/fuchsia-component",
"//src/lib/zircon/rust:fuchsia-zircon",
"//src/sys/component_manager/tests/fidl:components-rustc",
"//src/sys/component_manager/tests/fidl:echofactory-rustc",
"//third_party/rust_crates:anyhow",
"//third_party/rust_crates:async-trait",
"//third_party/rust_crates:futures",
"//third_party/rust_crates:log",
"//third_party/rust_crates:paste",
"//third_party/rust_crates:rand",
"//zircon/system/fidl/fuchsia-io:fuchsia-io-rustc",
]
}
rustc_binary("trigger_bin") {
name = "trigger"
edition = "2018"
source_root = "trigger.rs"
deps = [
"//examples/components/routing/fidl:echo-rustc",
"//sdk/fidl/fuchsia.component:fuchsia.component-rustc",
"//src/lib/fuchsia-async",
"//src/lib/fuchsia-component",
"//src/sys/component_manager/tests:test_utils_lib",
"//src/sys/component_manager/tests/fidl:components-rustc",
"//third_party/rust_crates:anyhow",
"//third_party/rust_crates:futures",
]
}
rustc_test("shutdown_integration_test_bin") {
name = "shutdown_integration_test"
edition = "2018"
source_root = "shutdown_integration.rs"
deps = [
":test_utils_lib",
"//src/lib/fuchsia-async",
"//third_party/rust_crates:anyhow",
]
# TODO(46841): Fix the leaks and remove this.
non_rust_deps = [ "//build/config/sanitizers:suppress-lsan.DO-NOT-USE-THIS" ]
}
rustc_binary("system_controller_client") {
name = "system_controller_client"
edition = "2018"
source_root = "system_controller_client.rs"
deps = [
"//sdk/fidl/fuchsia.sys2:fuchsia.sys2-rustc",
"//src/lib/fuchsia-async",
"//src/lib/fuchsia-component",
"//src/lib/syslog/rust:syslog",
"//third_party/rust_crates:anyhow",
]
# TODO(46841): Fix the leaks and remove this.
non_rust_deps = [ "//build/config/sanitizers:suppress-lsan.DO-NOT-USE-THIS" ]
}
rustc_test("component_manager_panic_test_bin") {
name = "component_manager_panic_test"
edition = "2018"
source_root = "component_manager_panic.rs"
deps = [
":test_utils_lib",
"//src/lib/fuchsia-async",
"//src/lib/fuchsia-component",
"//src/lib/syslog/rust:syslog",
"//third_party/rust_crates:anyhow",
"//third_party/rust_crates:log",
"//third_party/rust_crates:matches",
]
}
test_package("shutdown_integration_test") {
deps = [
":shutdown_integration_test_bin",
":system_controller_client",
"//src/sys/component_manager:bin",
]
meta = [
{
path = rebase_path("meta/shutdown_integration_root.cml")
dest = "shutdown_integration_root.cm"
},
{
path = rebase_path("meta/system_controller_consumer.cml")
dest = "system_controller_consumer.cm"
},
{
path =
rebase_path("//src/sys/component_manager/meta/component_manager.cmx")
dest = "component_manager.cmx"
},
]
binaries = [
{
name = "system_controller_client"
},
{
name = "component_manager"
},
]
tests = [
{
name = "shutdown_integration_test"
},
]
}
test_package("component_manager_panic_test") {
deps = [
":component_manager_panic_test_bin",
"//src/sys/component_manager:bin",
]
tests = [
{
name = "component_manager_panic_test"
},
]
meta = [
{
path =
rebase_path("//src/sys/component_manager/meta/component_manager.cmx")
dest = "component_manager.cmx"
},
]
binaries = [
{
name = "component_manager"
},
]
}