| # 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") |
| |
| fidl("test.virtualkeyboard") { |
| testonly = true |
| sources = [ "input_position_listener.test.fidl" ] |
| public_deps = [ "//zircon/vdso/zx" ] |
| enable_hlcpp = true |
| } |
| |
| executable("virtual-keyboard-test-bin") { |
| testonly = true |
| sources = [ "virtual-keyboard-test.cc" ] |
| output_name = "virtual-keyboard-test" |
| deps = [ |
| ":test.virtualkeyboard_hlcpp", |
| "//sdk/fidl/fuchsia.accessibility.semantics:fuchsia.accessibility.semantics_hlcpp", |
| "//sdk/fidl/fuchsia.buildinfo:fuchsia.buildinfo_hlcpp", |
| "//sdk/fidl/fuchsia.fonts:fuchsia.fonts_hlcpp", |
| "//sdk/fidl/fuchsia.input.injection:fuchsia.input.injection_hlcpp", |
| "//sdk/fidl/fuchsia.input.virtualkeyboard:fuchsia.input.virtualkeyboard_hlcpp", |
| "//sdk/fidl/fuchsia.intl:fuchsia.intl_hlcpp", |
| "//sdk/fidl/fuchsia.io:fuchsia.io_hlcpp", |
| "//sdk/fidl/fuchsia.kernel:fuchsia.kernel_hlcpp", |
| "//sdk/fidl/fuchsia.memorypressure:fuchsia.memorypressure_hlcpp", |
| "//sdk/fidl/fuchsia.metrics:fuchsia.metrics_hlcpp", |
| "//sdk/fidl/fuchsia.posix.socket:fuchsia.posix.socket_hlcpp", |
| "//sdk/fidl/fuchsia.process:fuchsia.process_hlcpp", |
| "//sdk/fidl/fuchsia.scheduler:fuchsia.scheduler_hlcpp", |
| "//sdk/fidl/fuchsia.tracing.provider:fuchsia.tracing.provider_hlcpp", |
| "//sdk/fidl/fuchsia.ui.app:fuchsia.ui.app_hlcpp", |
| "//sdk/fidl/fuchsia.ui.input:fuchsia.ui.input_hlcpp", |
| "//sdk/fidl/fuchsia.ui.scenic:fuchsia.ui.scenic_hlcpp", |
| "//sdk/fidl/fuchsia.web:fuchsia.web_hlcpp", |
| "//sdk/lib/fdio", |
| "//sdk/lib/fit", |
| "//sdk/lib/sys/component/cpp/testing:cpp", |
| "//sdk/lib/sys/cpp", |
| "//sdk/lib/ui/scenic/cpp", |
| "//src/lib/fostr/fidl/fuchsia.ui.gfx", |
| "//src/lib/fostr/fidl/fuchsia.ui.input", |
| "//src/lib/fxl", |
| "//src/lib/fxl/test:gtest_main", |
| "//src/lib/testing/loop_fixture", |
| "//src/ui/input/testing/fake_input_report_device", |
| "//src/ui/testing/ui_test_manager", |
| "//third_party/googletest:gtest", |
| "//zircon/system/ulib/async-loop:async-loop-cpp", |
| "//zircon/system/ulib/async-loop:async-loop-default", |
| "//zircon/system/ulib/zx", |
| ] |
| } |
| |
| fuchsia_test_component("virtual-keyboard-test-component") { |
| restricted_features = [ "allow_non_hermetic_packages" ] |
| manifest = "meta/virtual-keyboard-test.cml" |
| deps = [ |
| ":virtual-keyboard-test-bin", |
| "//src/chromium/web_engine/meta/shards/test:launch_context_provider", |
| ] |
| test_type = "system" |
| } |
| |
| fuchsia_test_package("virtual-keyboard-test") { |
| test_components = [ ":virtual-keyboard-test-component" ] |
| deps = [ |
| "//src/cobalt/bin/testing/mock_cobalt", |
| "//src/connectivity/network:netstack-for-tests", |
| "//src/developer/build_info/testing:fake-build-info-component", |
| "//src/developer/memory/monitor:component", |
| "//src/fonts:font_provider_hermetic_for_test", |
| "//src/fonts:font_provider_hermetic_for_test_config_values", |
| "//src/testing/fidl/intl_property_manager:intl_property_manager_component", |
| "//src/ui/tests/integration_input_tests/virtual-keyboard/web-virtual-keyboard-client:component", |
| ] |
| test_specs = { |
| log_settings = { |
| # Do not fail the test if a message with level ERROR is logged. Several |
| # components will log ERROR if they miss a non-essential FIDL API in the |
| # sandbox, which would make the test fail if it weren't for this. |
| max_severity = "ERROR" |
| } |
| environments = [ |
| { |
| dimensions = { |
| # Ensure the device has Vulkan. |
| device_type = "AEMU" |
| } |
| }, |
| ] |
| } |
| } |
| |
| group("tests") { |
| testonly = true |
| deps = [ |
| ":virtual-keyboard-test", |
| |
| # The deps below are necessary on minimal product configs. |
| # TODO(https://fxbug.dev/42070261): These should be provided by the Product |
| # configurations on which these tests run rather than as deps. |
| # TODO(https://fxbug.dev/42070261): Should these be deps of the individual test |
| # targets above? |
| "//src/chromium:web_context_provider_for_test", |
| "//src/graphics/bin/vulkan_loader", |
| ] |
| } |
| |
| # A variant which excludes `web_engine`, so that it can be built on products which |
| # include `web_engine` in `base`. |
| group("tests-product-webengine") { |
| testonly = true |
| deps = [ |
| ":virtual-keyboard-test", |
| "//src/graphics/bin/vulkan_loader", |
| ] |
| } |