| # 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_rust", |
| "//examples/components/services/fidl:fuchsia.examples.services_rust", |
| "//sdk/fidl/fuchsia.component:fuchsia.component_rust", |
| "//sdk/fidl/fuchsia.component.decl:fuchsia.component.decl_rust", |
| "//sdk/fidl/fuchsia.component.test:fuchsia.component.test_rust", |
| "//sdk/fidl/fuchsia.data:fuchsia.data_rust", |
| "//sdk/fidl/fuchsia.io:fuchsia.io_rust", |
| "//sdk/fidl/fuchsia.process:fuchsia.process_rust", |
| "//sdk/fidl/fuchsia.sys2:fuchsia.sys2_rust", |
| "//src/lib/fidl/rust/fidl", |
| "//src/lib/fuchsia", |
| "//src/lib/fuchsia-async", |
| "//src/lib/fuchsia-component", |
| "//src/lib/fuchsia-fs", |
| "//src/lib/zircon/rust:fuchsia-zircon", |
| "//src/sys/lib/cm_rust", |
| "//src/sys/lib/cm_rust/testing", |
| "//third_party/rust_crates:anyhow", |
| "//third_party/rust_crates:assert_matches", |
| "//third_party/rust_crates:futures", |
| ] |
| } |
| |
| 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:echo_client_testing" ] |
| } |
| |
| fuchsia_component("echo_client_with_elf_runner") { |
| testonly = true |
| manifest = "meta/echo_client_with_elf_runner.cml" |
| component_name = "echo_client_with_elf_runner" |
| deps = |
| [ "//src/sys/component_manager/testing/echo_client:echo_client_testing" ] |
| } |
| |
| 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" ] |
| } |
| |
| rustc_test("scoped-instance-test") { |
| edition = "2021" |
| source_root = "scoped_instance/lib.rs" |
| deps = [ |
| "//sdk/fidl/fuchsia.component:fuchsia.component_rust", |
| "//src/lib/fuchsia", |
| "//src/lib/fuchsia-component-test", |
| "//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 = [ |
| "//examples/components/routing/fidl:echo_rust", |
| "//src/lib/fuchsia", |
| "//src/lib/fuchsia-component", |
| "//src/lib/fuchsia-component-test", |
| "//src/sys/lib/component-events", |
| "//third_party/rust_crates:anyhow", |
| "//third_party/rust_crates:argh", |
| "//third_party/rust_crates:futures", |
| "//third_party/rust_crates:tracing", |
| ] |
| |
| sources = [ "scoped_instance/realm.rs" ] |
| } |
| |
| fidl("fuchsia.component.client.test") { |
| testonly = true |
| 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" |
| } |
| |
| rustc_test("arbitrary_realm_test_bin") { |
| name = "arbitrary_realm_test_bin" |
| edition = "2021" |
| source_root = "src/arbitrary_realm_test.rs" |
| sources = [ source_root ] |
| |
| deps = [ |
| "..:fuchsia-component-test", |
| "//examples/components/routing/fidl:echo_rust", |
| "//sdk/fidl/fuchsia.component:fuchsia.component_rust", |
| "//src/lib/fuchsia", |
| "//src/lib/fuchsia-component", |
| "//third_party/rust_crates:anyhow", |
| ] |
| } |
| |
| fuchsia_test_component("arbitrary_realm_test_component") { |
| manifest = "meta/arbitrary_realm_test.cml" |
| component_name = "arbitrary_realm_test" |
| deps = [ ":arbitrary_realm_test_bin" ] |
| |
| # disable check for realm_builder.shard.cml as we don't want the realm builder |
| # library to use it from namespace. |
| check_includes = false |
| } |
| |
| fuchsia_component("child_realm_with_realmbuilder") { |
| testonly = true |
| manifest = "meta/child_realm.cml" |
| component_name = "child_realm_with_realmbuilder" |
| } |
| |
| fuchsia_test_package("fuchsia-component-test-tests") { |
| deps = [ |
| ":child_realm_with_realmbuilder", |
| ":echo_client_empty_component", |
| ":echo_client_with_elf_runner", |
| ":echo_realm_component", |
| ":echo_server_empty_component", |
| ":fuchsia_component_test_tests_component", |
| "collection_sc", |
| "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", |
| "//src/sys/component_manager/tests/rights:component_manager_debug_config", |
| "//src/sys/component_manager/tests/rights:component_manager_for_rights_test", |
| "//src/sys/component_manager/tests/rights:elf_runner_and_environment", |
| "//src/sys/component_manager/tests/rights:expose_dir_rights", |
| ] |
| test_components = [ |
| ":fuchsia_component_test_tests_component", |
| ":arbitrary_realm_test_component", |
| ] |
| } |
| |
| fuchsia_test_package("scoped-instance-tests") { |
| test_components = [ ":scoped_instance_test_component" ] |
| deps = [ |
| ":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", |
| ] |
| } |