blob: 90d2d25106b6597bd2d9d4cd1d46d3e619c7f67f [file] [log] [blame]
# Copyright 2021 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/components.gni")
import("//build/fidl/fidl.gni")
import("//build/rust/rustc_binary.gni")
import("//build/rust/rustc_test.gni")
rustc_test("fuchsia_component_test_tests_bin") {
name = "fuchsia_component_test_tests_bin"
edition = "2021"
sources = [ "src/lib.rs" ]
deps = [
"..:fuchsia-component-test",
"//examples/components/routing/fidl:echo-rustc",
"//examples/components/services:fuchsia.examples.services-rustc",
"//sdk/fidl/fuchsia.component:fuchsia.component-rustc",
"//sdk/fidl/fuchsia.component.decl:fuchsia.component.decl-rustc",
"//sdk/fidl/fuchsia.component.test:fuchsia.component.test-rustc",
"//sdk/fidl/fuchsia.data:fuchsia.data-rustc",
"//sdk/fidl/fuchsia.io:fuchsia.io-rustc",
"//sdk/fidl/fuchsia.sys2:fuchsia.sys2-rustc",
"//src/lib/fidl/rust/fidl",
"//src/lib/fuchsia",
"//src/lib/fuchsia-async",
"//src/lib/fuchsia-component",
"//src/lib/fuchsia-fs",
"//src/lib/syslog/rust:syslog",
"//src/sys/lib/cm_rust",
"//src/sys/lib/cm_types",
"//third_party/rust_crates:anyhow",
"//third_party/rust_crates:assert_matches",
"//third_party/rust_crates:futures",
"//third_party/rust_crates:tracing",
]
}
fuchsia_test_component("fuchsia_component_test_tests_component") {
manifest = "meta/fuchsia-component-test-tests.cml"
component_name = "fuchsia-component-test-tests"
deps = [ ":fuchsia_component_test_tests_bin" ]
}
fuchsia_component("echo_client_empty_component") {
testonly = true
manifest = "meta/echo_client_empty.cml"
component_name = "echo_client_empty"
deps = [ "//src/sys/component_manager/testing/echo_client" ]
}
fuchsia_component("echo_server_empty_component") {
testonly = true
manifest = "meta/echo_server_empty.cml"
component_name = "echo_server_empty"
deps = [ "//src/sys/component_manager/testing/echo_server" ]
}
fuchsia_component("echo_client_component") {
testonly = true
manifest = "meta/echo_client.cmx"
component_name = "echo_client"
deps = [ "//src/sys/component_manager/testing/echo_client" ]
}
fuchsia_component("echo_server_component") {
testonly = true
manifest = "meta/echo_server.cmx"
component_name = "echo_server"
deps = [ "//src/sys/component_manager/testing/echo_server" ]
}
rustc_test("scoped-instance-test") {
edition = "2021"
source_root = "scoped_instance/lib.rs"
deps = [
"//sdk/fidl/fuchsia.sys2:fuchsia.sys2-rustc",
"//src/lib/fuchsia-async",
"//src/lib/fuchsia-component-test",
"//src/lib/syslog/rust:syslog",
"//src/sys/lib/component-events",
"//third_party/rust_crates:test-case",
]
sources = [ "scoped_instance/lib.rs" ]
}
rustc_binary("realm") {
edition = "2021"
source_root = "scoped_instance/realm.rs"
testonly = true
deps = [
":fuchsia.component.client.test-rustc",
"//examples/components/routing/fidl:echo-rustc",
"//src/lib/fidl/rust/fidl",
"//src/lib/fuchsia-async",
"//src/lib/fuchsia-component",
"//src/lib/fuchsia-component-test",
"//src/lib/syslog/rust:syslog",
"//src/sys/component_manager/testing:test_utils_lib",
"//src/sys/lib/component-events",
"//third_party/rust_crates:anyhow",
"//third_party/rust_crates:argh",
"//third_party/rust_crates:futures",
"//third_party/rust_crates:log",
]
sources = [ "scoped_instance/realm.rs" ]
}
fidl("fuchsia.component.client.test") {
sources = [ "client.test.fidl" ]
}
fuchsia_test_component("scoped_instance_test_component") {
component_name = "scoped_instance_test"
manifest = "meta/scoped_instance_test.cml"
deps = [ ":scoped-instance-test" ]
}
fuchsia_test_component("realm_component") {
component_name = "realm"
manifest = "meta/realm.cml"
deps = [ ":realm" ]
}
fuchsia_test_component("realm_with_wait_component") {
component_name = "realm_with_wait"
manifest = "meta/realm_with_wait.cml"
deps = [ ":realm" ]
}
fuchsia_test_component("echo_realm_component") {
component_name = "echo_realm"
manifest = "meta/echo_realm.cml"
}
fuchsia_test_package("fuchsia-component-test-tests") {
deps = [
":echo_client_component",
":echo_client_empty_component",
":echo_realm_component",
":echo_server_component",
":echo_server_empty_component",
":fuchsia_component_test_tests_component",
"echo_client_sc",
"//src/sys/component_manager:component-manager-realm-builder-cmp",
"//src/sys/component_manager/testing/echo_client",
"//src/sys/component_manager/testing/echo_server",
]
test_components = [ ":fuchsia_component_test_tests_component" ]
}
fuchsia_test_package("scoped-instance-tests") {
test_components = [ ":scoped_instance_test_component" ]
deps = [
":echo_server_component",
":realm_component",
":realm_with_wait_component",
"//src/sys/component_manager:component-manager-realm-builder-debug-cmp",
"//src/sys/component_manager/testing/echo_server",
]
}
group("tests") {
testonly = true
deps = [
":fuchsia-component-test-tests",
":scoped-instance-tests",
]
}