# Copyright 2019 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.
#
# WARNING: This file was machine-generated from previous json files and
# will eventually be deleted.

# DO NOT ADD TO THIS GROUP.
# DO NOT ADD TO THIS FILE.
# All new tests and test groups should be located in their appropriate area
# under //src and roll up to //src:tests. This group must only shrink.
group("all") {
  testonly = true
  public_deps = [
    ":scenic",
    ":zircon",
    "//build/tools/json_merge:json_merge_test($host_toolchain)",
    "//examples/intl/tz_version_parrot:tests",
    "//garnet/bin/catapult_converter:catapult_converter_tests($host_toolchain)",
    "//garnet/bin/chrealm/integration_tests:chrealm_integrationtests",
    "//garnet/bin/chrealm/integration_tests:chrealm_test_get_message",
    "//garnet/bin/cpuperf/print/tests:cpuperf_raw_printer_test($host_toolchain)",
    "//garnet/bin/cpuperf/tests:cpuperf_tests",
    "//garnet/bin/cpuperf_provider:cpuperf_provider_tests",
    "//garnet/bin/cpuperf_provider:cpuperf_provider_tests",
    "//garnet/bin/glob",
    "//garnet/bin/http:http_service_tests",
    "//garnet/bin/http/tests/manual/mwget",
    "//garnet/bin/insntrace/tests",
    "//garnet/bin/ktrace_provider:ktrace_provider_tests",
    "//garnet/bin/log_listener:log_listener_tests",
    "//garnet/bin/network_time:network_time_tests",
    "//garnet/bin/network_time/test:system_time_updater_test",
    "//garnet/bin/odu:odu_tests",
    "//garnet/bin/odu:odu_tests($host_toolchain)",
    "//garnet/bin/perfcompare:tests",
    "//garnet/bin/power_manager:power_manager_tests",
    "//garnet/bin/power_manager/rkf45:rkf45_tests",
    "//garnet/bin/run/test:run_test_exiter",
    "//garnet/bin/run/test:run_tests",
    "//garnet/bin/run_test_component:tests",
    "//garnet/bin/sched:tests",
    "//garnet/bin/scpi:scpi_server_tests",
    "//garnet/bin/setui:setui_service_tests",
    "//garnet/bin/setui_client:setui_client_interface_test",
    "//garnet/bin/setui_client:setui_client_tests",
    "//garnet/bin/sl4f:tests",
    "//garnet/bin/sshd-host:sshd-host-tests",
    "//garnet/bin/stash_ctl:stash_ctl_tests",
    "//garnet/bin/sysmem_connector:sysmem_connector_test",
    "//garnet/bin/sysmgr",
    "//garnet/bin/sysmgr/integration_tests",
    "//garnet/bin/sysmgr/test:sysmgr_tests",
    "//garnet/bin/terminal:tests",
    "//garnet/bin/timezone/test:timezone_tests",
    "//garnet/bin/trace/tests:trace_tests",
    "//garnet/bin/trace2json:trace2json_tests($host_toolchain)",
    "//garnet/bin/trace_manager/tests:trace_manager_tests",
    "//garnet/bin/trace_stress",
    "//garnet/bin/traceutil:zedmon_test($host_toolchain)",
    "//garnet/bin/vsock_service:vsock_service-tests",
    "//garnet/bin/wayland:wayland_tests",
    "//garnet/examples/intl/manager:tests",
    "//garnet/examples/intl/wisdom:tests",
    "//garnet/go/src/benchmarking:go_benchmarking_tests",
    "//garnet/go/src/device_settings:device_settings_gotests",
    "//garnet/go/src/far:go_far_tests",
    "//garnet/go/src/go-tuf:go_tuf_host_tests($host_toolchain)",
    "//garnet/go/src/go-tuf:go_tuf_tests",
    "//garnet/go/src/inspect:go_inspect_tests",
    "//garnet/go/src/merkle:go_merkle_tests",
    "//garnet/go/src/sse:sse_test($host_toolchain)",
    "//garnet/go/src/thinfs:go_thinfs_tests",
    "//garnet/lib/debugger_utils:tests",
    "//garnet/lib/perfmon:tests",
    "//garnet/lib/process:process_unittests",
    "//garnet/lib/profiler/tests:profiler_tests",
    "//garnet/lib/rust/cm_fidl_translator:cm_fidl_translator_tests",
    "//garnet/lib/rust/cm_fidl_validator:cm_fidl_validator_tests",
    "//garnet/lib/rust/cm_json:cm_json_tests",
    "//garnet/lib/rust/cm_rust:cm_rust_tests",
    "//garnet/lib/rust/cm_types:cm_types_tests",
    "//garnet/lib/rust/connectivity-testing:connectivity-testing-tests",
    "//garnet/lib/rust/escaped-cstring:escaped-cstring-tests",
    "//garnet/lib/rust/ethernet:ethernet-tests",
    "//garnet/lib/rust/fidl_fuchsia_hardware_ethernet_ext:fidl_fuchsia_hardware_ethernet_ext_tests",
    "//garnet/lib/rust/fidl_fuchsia_net_ext:fidl_fuchsia_net_ext_tests",
    "//garnet/lib/rust/fidl_fuchsia_net_stack_ext:fidl_fuchsia_net_stack_ext_tests",
    "//garnet/lib/rust/fidl_fuchsia_netstack_ext:fidl_fuchsia_netstack_ext_tests",
    "//garnet/lib/rust/files_async:files_async_tests",
    "//garnet/lib/rust/httpdate-hyper:httpdate-hyper-tests",
    "//garnet/lib/rust/io_util:io_util_tests",
    "//garnet/lib/rust/netfilter:netfilter_tests",
    "//garnet/lib/rust/sysconfig-client:sysconfig-client-test",
    "//garnet/lib/rust/webpki-roots-fuchsia:webpki-roots-fuchsia_tests",
    "//garnet/lib/trace_converters:trace_converter_tests",
    "//garnet/public/lib/fostr:tests_package",
    "//garnet/public/lib/inspect_deprecated/health/tests:inspect_health_unittests",
    "//garnet/public/lib/inspect_deprecated/integration:libinspect_integration_tests",
    "//garnet/public/lib/inspect_deprecated/query/tests:inspect_query_unittests",
    "//garnet/public/lib/inspect_deprecated/tests:inspect_unittests",
    "//garnet/public/lib/syslog/cpp:tests",
    "//garnet/public/lib/syslog/go/src/syslog:syslog_gotests",
    "//garnet/public/rust:rust-crates-tests",
    "//garnet/public/rust/fuchsia-bootfs:fuchsia-bootfs-tests",
    "//garnet/public/rust/fuchsia-hyper:fuchsia-hyper-tests",
    "//garnet/tests/acts_tests",
    "//garnet/tests/fdio_spawn:fdio_spawn_tests",
    "//sdk/lib/fuzzing/cpp:fuzz_input_unittests($host_toolchain)",
    "//sdk/lib/fuzzing/cpp:fuzzing_traits_tests",
    "//sdk/lib/inspect/contrib/cpp:tests",
    "//sdk/lib/inspect/service/cpp/tests:inspect_service_cpp_tests",
    "//sdk/lib/svc:svc_tests",
    "//sdk/lib/sys/cpp/testing/examples:component_context_provider_example_test",
    "//sdk/lib/sys/cpp/testing/examples:component_context_provider_example_test",
    "//sdk/lib/sys/cpp/testing/examples/test_with_environment:test_with_environment_example_test",
    "//sdk/lib/sys/cpp/tests:component_cpp_tests",
    "//sdk/lib/sys/inspect/cpp/tests:sys_inspect_cpp_tests",
    "//sdk/lib/sys/service/cpp:sys_service_tests",
    "//sdk/lib/syslog/cpp:logging-cpp-tests",
    "//sdk/lib/syslog/cpp:logging_cpp_unittests($host_toolchain)",
    "//sdk/lib/ui/scenic/cpp/tests:scenic_cpp_tests",
    "//sdk/lib/vfs/cpp:vfs_cpp_tests",
    "//sdk/lib/virtualization:virtualization_lib_tests",
    "//sdk/testing/sl4f/client:tests",
    "//src/cobalt/bin:cobalt_tests",
    "//src/connectivity/bluetooth:tests",
    "//src/connectivity/network/netstack:tests",
    "//src/connectivity/network/testing/netemul:tests",
    "//src/connectivity/telephony:tests",
    "//src/connectivity/telephony/lib/qmi-protocol:tests",
    "//src/connectivity/wlan/drivers/third_party/atheros/ath10k:ath10k_test",
    "//src/developer/debug/debug_agent:debug_agent_tests",
    "//src/developer/debug/zxdb:zxdb_tests($host_toolchain)",
    "//src/developer/memory/metrics/tests",
    "//src/developer/memory/monitor/tests",
    "//src/developer/system_monitor/bin/dockyard_host/tests:dockyard_host_test($host_toolchain)",
    "//src/developer/system_monitor/bin/harvester:system_monitor_harvester_tests",
    "//src/developer/system_monitor/lib:system_monitor_tests($host_toolchain)",
    "//src/fonts:tests",
    "//src/graphics:tests",
    "//src/graphics/tests:vulkan-tests",
    "//src/graphics/tests/benchmark:vulkan-benchmark",
    "//src/graphics/tests/vkvalidation:test-vk-validation",
    "//src/lib/containers/cpp:containers_cpp_tests",
    "//src/lib/containers/cpp:containers_cpp_unittests($host_toolchain)",
    "//src/lib/fsl:fsl_tests",
    "//src/lib/fuchsia-async:fuchsia-async-tests",
    "//src/lib/fuchsia-component/component-launching-test:component-launching-tests",
    "//src/lib/fuchsia-component/isolated_component_test:fuchsia_component_test_inner",
    "//src/lib/fuchsia-component/isolated_component_test:fuchsia_component_test_middle",
    "//src/lib/fuchsia-component/isolated_component_test:fuchsia_component_test_middle_sibling",
    "//src/lib/fuchsia-component/isolated_component_test:fuchsia_component_test_outer",
    "//src/lib/fxl:fxl_tests",
    "//src/lib/fxl:fxl_unittests($host_toolchain)",
    "//src/lib/inspect/rust:tests",
    "//src/lib/intl:tests",
    "//src/lib/pkg_url:pkg_url_unittests",
    "//src/lib/ui/base_view:base_view_unittests",
    "//src/lib/url:url_tests",
    "//src/lib/uuid:uuid_tests",
    "//src/lib/vulkan:loader_and_validation_tests",
    "//src/lib/zircon/rust:fuchsia-zircon-tests",
    "//src/power:tests",
    "//src/sys/appmgr",
    "//src/sys/appmgr:appmgr_scheme_config",
    "//src/sys/appmgr/integration_tests/sandbox/features/global-data:has_global_data",
    "//src/sys/appmgr/integration_tests/sandbox/features/global-data:no_global_data",
    "//src/sys/appmgr/integration_tests/sandbox/features/global-data:restricted_global_data",
    "//src/sys/device_settings:device_settings_manager",
    "//src/ui/a11y/bundles:tests",
    "//src/ui/bin/default_hardware_ime:default_hardware_ime",
    "//src/ui/bin/default_hardware_ime:default_hardware_ime_tests",
    "//src/ui/bin/ime:tests",
    "//src/ui/bin/shortcut:tests",
    "//src/ui/examples/escher/test:escher_examples_test($host_toolchain)",
    "//src/ui/lib/escher:escher_tests",
    "//src/ui/lib/escher/test:escher_renderer_tests($host_toolchain)",
    "//src/ui/lib/escher/test:escher_unittests($host_toolchain)",
    "//src/ui/testing/text:text_test_suite",
    "//src/ui/testing/text:text_test_suite_tests",
    "//src/ui/tests/e2e_input_tests",
    "//src/ui/tools/tiles:tiles_tests",
    "//src/virtualization/bin/guest_manager:guest_manager_tests",
    "//src/virtualization/bin/vmm:vmm_tests",
    "//src/virtualization/bin/vmm/device:virtio_magma_mock_system",
    "//src/virtualization/lib/grpc:grpc_vsock_tests",
    "//src/virtualization/lib/guest_interaction:tests",
    "//src/virtualization/lib/vsh:vsh_tests",
    "//src/virtualization/packages/biscotti_guest/linux_runner:linux_runner_tests",
    "//src/virtualization/tests:guest_integration_tests",
    "//src/virtualization/tests:guest_unit_tests",
    "//third_party/asio:asio_unittests",
    "//third_party/boringssl:boringssl_fuzzers",
    "//third_party/boringssl:boringssl_tests",
    "//third_party/go:go_stdlib_tests",
    "//third_party/libc-tests:nacl-libc-tests",
    "//tools/whereiscl:whereiscl_test($host_toolchain)",
  ]
  if (target_cpu == "arm64") {
    public_deps += [ "//garnet/bin/thermd:thermd_tests_package" ]
  }
}

# WARNING: Known to topaz.
group("scenic") {
  testonly = true
  public_deps = [
    "//garnet/bin/ui/benchmarks/image_grid_cpp",
    "//garnet/bin/ui/benchmarks/transparency_benchmark",
    "//garnet/packages/examples:scenic",
    "//garnet/packages/prod:scenic",
    "//src/ui/scenic:tests",
  ]
}

group("zircon") {
  testonly = true
  public_deps = [
    "//garnet/tests/zircon:zircon_fuzzers",
    "//garnet/tests/zircon:zircon_tests",
    "//src/devices/tests/libdriver-integration-test:libdriver-integration-test",
  ]
}
