| # 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_binary.gni") |
| import("//build/testing/run_target_test_and_host_script.gni") |
| |
| # Create a test wrapper that connects to ViewProvider implemented by example apps |
| rustc_binary("bin") { |
| name = "ui_app_instrumentor" |
| testonly = true |
| edition = "2018" |
| source_root = "src/ui_app_instrumentor.rs" |
| sources = [ "src/ui_app_instrumentor.rs" ] |
| deps = [ |
| "//sdk/fidl/fuchsia.session.scene:fuchsia.session.scene_rust", |
| "//sdk/fidl/fuchsia.ui.app:fuchsia.ui.app_rust", |
| "//src/lib/fuchsia", |
| "//src/lib/fuchsia-async", |
| "//src/lib/fuchsia-component", |
| "//src/lib/ui/fuchsia-scenic", |
| "//src/testing/system-validation:system_validation_lib", |
| "//third_party/rust_crates:argh", |
| "//third_party/rust_crates:tracing", |
| ] |
| } |
| |
| fuchsia_test_component("flatland_view_provider_system_validation_component") { |
| component_name = "flatland_view_provider_system_validation" |
| manifest = "tests/meta/flatland_view_provider_system_validation.cml" |
| deps = [ ":bin" ] |
| test_type = "system_validation" |
| } |
| |
| fuchsia_test_component("simplest_sysmem_system_validation_component") { |
| component_name = "simplest_sysmem_system_validation" |
| manifest = "tests/meta/simplest_sysmem_system_validation.cml" |
| deps = [ ":bin" ] |
| test_type = "system_validation" |
| } |
| |
| fuchsia_test_component("spinning_square_system_validation_component") { |
| component_name = "spinning_square_system_validation" |
| manifest = "tests/meta/spinning_square_system_validation.cml" |
| deps = [ ":bin" ] |
| test_type = "system_validation" |
| } |
| |
| # To run tests: |
| # fx test simplest_sysmem_system_validation |
| # fx test spinning_square_system_validation |
| # fx test flatland_view_provider_system_validation --ffx-output-directory /path/to/output/dir |
| fuchsia_test_package("system_validation_test_pkg") { |
| package_name = "system_validation" |
| test_components = [ |
| ":simplest_sysmem_system_validation_component", |
| ":flatland_view_provider_system_validation_component", |
| ":spinning_square_system_validation_component", |
| ] |
| deps = [ |
| "//src/lib/ui/carnelian:spinning-square-rs_v2", |
| |
| # TODO: use the copy in //src/ui/benchmark once https://fxrev.dev/728308 is submitted. |
| "//src/ui/examples/flatland-view-provider:flatland-view-provider", |
| "//src/ui/examples/simplest_sysmem:simplest_sysmem_component", |
| ] |
| } |
| |
| # fx set workstation_eng_paused.x64 --release --with-base //sdk/bundles:tools \ |
| # --with-base //src/testing/system-validation:tests \ |
| # --with-host //src/testing/system-validation/ui:flatland_view_provider_with_host_script |
| # |
| # fx test --e2e flatland_view_provider_with_host_script |
| if (is_host && target_cpu == "x64" && !is_asan) { |
| run_target_test_and_host_script("flatland_view_provider_with_host_script") { |
| test_url = "fuchsia-pkg://fuchsia.com/system_validation#meta/flatland_view_provider_system_validation.cm" |
| test_package = "//src/testing/system-validation/ui:system_validation_test_pkg(${target_toolchain})" |
| host_script = "//src/performance/trace2json:bin" |
| host_script_args = [ |
| "--input-file=" + "{test_artifact_dir}/custom-0/trace.fxt", |
| "--output-file=" + "{test_artifact_dir}/custom-0/trace.json", |
| ] |
| environments = [ emu_env ] |
| } |
| } else { |
| group("flatland_view_provider_with_host_script") { |
| } |
| } |