|  | # Copyright 2022 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/rust/rustc_test.gni") | 
|  |  | 
|  | group("tests") { | 
|  | testonly = true | 
|  | deps = [ ":subpackage-examples" ] | 
|  | } | 
|  |  | 
|  | rustc_test("bin") { | 
|  | name = "parent_realm" | 
|  | edition = "2021" | 
|  |  | 
|  | deps = [ | 
|  | "//src/lib/fuchsia", | 
|  | "//src/lib/fuchsia-component-test:lib", | 
|  | "//src/sys/lib/component-events", | 
|  | "//third_party/rust_crates:tracing", | 
|  | ] | 
|  |  | 
|  | sources = [ "src/lib.rs" ] | 
|  | } | 
|  |  | 
|  | fuchsia_package_with_single_component("echo_client_with_subpackaged_server") { | 
|  | component_name = "default" | 
|  | testonly = true | 
|  | manifest = "meta/echo_client_with_subpackaged_server.cml" | 
|  | deps = [ "//examples/components/routing/rust/echo_client:bin" ] | 
|  | subpackages = [ "//examples/components/routing/rust/echo_server" ] | 
|  | } | 
|  |  | 
|  | fuchsia_test_component("subpackage-examples-component") { | 
|  | component_name = "default" | 
|  | manifest = "meta/parent_realm.cml" | 
|  | deps = [ ":bin" ] | 
|  | } | 
|  |  | 
|  | # Run with `fx test subpackage-examples` or | 
|  | # `ffx test run fuchsia-pkg://fuchsia.com/subpackage-examples#meta/default.cm` | 
|  | # [START declare_subpackages] | 
|  | fuchsia_test_package("subpackage-examples") { | 
|  | test_components = [ ":subpackage-examples-component" ] | 
|  | subpackages = [ | 
|  | "//examples/components/routing/rust/echo_client", | 
|  | ":echo_client_with_subpackaged_server", | 
|  | "//src/lib/fuchsia-component-test/realm_builder_server:pkg", | 
|  | ] | 
|  | renameable_subpackages = [ | 
|  | { | 
|  | name = "my-echo-server" | 
|  | package = "//examples/components/routing/rust/echo_server" | 
|  | }, | 
|  | ] | 
|  | } | 
|  | # [END declare_subpackages] |