blob: eebf36fe89f864a98134d3fe8386d0f80b8b4a74 [file] [log] [blame]
# Copyright 2024 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/test.gni")
group("tests") {
testonly = true
deps = []
# TODO(https://fxbug.dev/42167791): Failed test disabled on coverage.
# Please fix the failure and remove the condition below.
if (!is_coverage) {
deps += [
":driver-host-runner-tests",
":driver-manager-tests",
":driver-runner-tests",
]
}
}
source_set("driver_manager_test_base") {
testonly = true
sources = [
"driver_manager_test_base.cc",
"driver_manager_test_base.h",
]
public_deps = [
"//src/devices/bin/driver_manager:driver_runner",
"//src/lib/fxl/test:gtest_main",
"//src/lib/testing/loop_fixture",
"//zircon/system/ulib/zircon-internal",
]
}
source_set("driver_runner_test_fixture") {
testonly = true
sources = [
"driver_runner_test_fixture.cc",
"driver_runner_test_fixture.h",
]
public_deps = [
"//sdk/lib/inspect/testing/cpp",
"//src/devices/bin/driver_manager:driver_runner",
"//src/devices/bind/fuchsia.platform:fuchsia.platform_cpp",
"//src/lib/fxl/test:gtest_main",
"//src/lib/testing/loop_fixture",
]
}
executable("driver_runner_test") {
testonly = true
sources = [ "driver_runner_test.cc" ]
deps = [ ":driver_runner_test_fixture" ]
}
executable("driver_runner_death_test") {
testonly = true
sources = [ "driver_runner_death_test.cc" ]
deps = [
":driver_runner_test_fixture",
"//sdk/fidl/fuchsia.component:fuchsia.component_cpp_testing",
"//sdk/fidl/fuchsia.component.decl:fuchsia.component.decl_cpp_testing",
"//sdk/fidl/fuchsia.driver.framework:fuchsia.driver.framework_cpp_testing",
"//sdk/fidl/fuchsia.driver.host:fuchsia.driver.host_cpp_testing",
"//sdk/fidl/fuchsia.io:fuchsia.io_cpp_testing",
"//sdk/lib/inspect/testing/cpp",
"//sdk/lib/sys/cpp/testing:unit",
"//src/devices/bin/driver_manager:driver_runner",
"//src/devices/bind/fuchsia.platform:fuchsia.platform_cpp",
"//src/lib/fxl/test:gtest_main",
"//src/lib/testing/loop_fixture",
"//zircon/system/ulib/async-loop:async-loop-cpp",
"//zircon/system/ulib/async-loop:async-loop-default",
]
}
fuchsia_component("driver_runner_death_test_component") {
testonly = true
manifest = "meta/driver_runner_death_test.cml"
component_name = "driver_runner_death_test"
deps = [ ":driver_runner_death_test" ]
}
fuchsia_unittest_component("driver-runner-test") {
deps = [ ":driver_runner_test" ]
}
executable("bind_manager_test") {
testonly = true
sources = [
"bind_manager_test.cc",
"bind_manager_test_base.cc",
"bind_manager_test_base.h",
"multibind_test.cc",
]
deps = [
":driver_manager_test_base",
"//sdk/fidl/fuchsia.driver.framework:fuchsia.driver.framework_cpp",
"//sdk/fidl/fuchsia.driver.index:fuchsia.driver.index_cpp",
"//sdk/lib/driver/component/cpp:cpp",
"//src/devices/bind/fuchsia:fuchsia_cpp",
"//src/lib/testing/loop_fixture",
]
}
fuchsia_unittest_component("bind-manager-test") {
deps = [ ":bind_manager_test" ]
}
executable("composite_node_spec_v2_test") {
testonly = true
sources = [ "composite_node_spec_v2_test.cc" ]
deps = [ ":driver_manager_test_base" ]
}
fuchsia_unittest_component("node-test") {
deps = [ ":node_test" ]
}
executable("node_test") {
testonly = true
sources = [ "node_test.cc" ]
deps = [
":driver_manager_test_base",
"//sdk/fidl/fuchsia.component:fuchsia.component_cpp",
"//sdk/lib/async_patterns/testing/cpp",
"//src/devices/bind/fuchsia.platform:fuchsia.platform_cpp",
]
}
fuchsia_unittest_component("composite-node-spec-v2-test") {
deps = [ ":composite_node_spec_v2_test" ]
}
executable("node_removal_tracker_test") {
testonly = true
sources = [ "node_removal_tracker_test.cc" ]
deps = [
"//src/devices/bin/driver_manager:driver_runner",
"//src/lib/fxl/test:gtest_main",
"//src/lib/testing/loop_fixture",
"//zircon/system/ulib/zircon-internal",
]
}
fuchsia_unittest_component("node-removal-tracker-test") {
deps = [ ":node_removal_tracker_test" ]
}
fuchsia_unittest_component("node-shutdown-test") {
deps = [ ":node_shutdown_test" ]
}
executable("node_shutdown_test") {
testonly = true
sources = [ "node_shutdown_test.cc" ]
deps = [
":driver_manager_test_base",
"//sdk/fidl/fuchsia.component:fuchsia.component_cpp",
]
}
fuchsia_test_package("driver-runner-tests") {
test_specs = {
log_settings = {
max_severity = "ERROR"
}
}
test_components = [
":driver_runner_death_test_component",
":bind-manager-test",
":composite-node-spec-v2-test",
":driver-runner-test",
":node-removal-tracker-test",
":node-shutdown-test",
":node-test",
]
}
test("driver_manager_devfs_test") {
sources = [ "devfs_test.cc" ]
deps = [
"//sdk/fidl/fuchsia.io:fuchsia.io_cpp",
"//sdk/lib/component/outgoing/cpp",
"//sdk/lib/fdio",
"//src/devices/bin/driver_manager/devfs:devfs",
"//src/storage/lib/vfs/cpp:test_support",
"//zircon/system/ulib/fbl",
"//zircon/system/ulib/sync:sync-cpp",
"//zircon/system/ulib/zxtest",
]
}
fuchsia_unittest_component("driver-manager-devfs-test") {
deps = [ ":driver_manager_devfs_test" ]
}
# This is a separate test binary because this test fixture uses gtest, not zxtest
test("driver_host_loader_service_test") {
sources = [ "driver_host_loader_service_test.cc" ]
deps = [
"//src/devices/bin/driver_manager:driver_host_loader_service",
"//src/lib/loader_service:loader_service_test_fixture",
]
}
fuchsia_unittest_component("driver-host-loader-service-test") {
manifest = "meta/driver-host-loader-service-test.cml"
deps = [ ":driver_host_loader_service_test" ]
test_type = "system"
}
test("driver_host_runner_test") {
sources = [ "driver_host_runner_test.cc" ]
deps = [
":driver_runner_test_fixture",
"//src/devices/bin/driver_loader:driver_loader",
"//src/devices/bin/driver_manager:driver_host_runner",
"//src/lib/fxl/test:gtest_main",
"//src/lib/testing/loop_fixture",
"//zircon/system/ulib/async-loop:async-loop-cpp",
"//zircon/system/ulib/async-loop:async-loop-default",
]
}
fuchsia_unittest_component("driver-host-runner-test") {
manifest = "meta/driver-host-runner-test.cml"
deps = [ ":driver_host_runner_test" ]
test_type = "system"
}
test("composite_node_spec_manager_test") {
sources = [ "composite_node_spec_manager_test.cc" ]
deps = [
"//sdk/fidl/fuchsia.driver.framework:fuchsia.driver.framework_cpp",
"//sdk/lib/driver/component/cpp:cpp",
"//sdk/lib/fdio",
"//src/devices/bin/driver_manager:driver_runner",
"//src/devices/bin/driver_manager/composite_node_spec:lib",
"//zircon/system/ulib/zxtest",
]
}
fuchsia_unittest_component("composite-node-spec-manager-test") {
deps = [ ":composite_node_spec_manager_test" ]
}
fuchsia_test_package("driver-manager-tests") {
test_specs = {
log_settings = {
max_severity = "ERROR"
}
}
test_components = [
":composite-node-spec-manager-test",
":driver-host-loader-service-test",
":driver-manager-devfs-test",
]
}
fuchsia_test_package("driver-host-runner-tests") {
test_components = [ ":driver-host-runner-test" ]
deps = [ "//src/devices/bin/driver_host2:component" ]
# TODO(https://fxbug.dev/341966687): the driver host runner will log an error
# due to the loader library not yet been implemented.
test_specs = {
log_settings = {
max_severity = "ERROR"
}
}
}