blob: 575d241d8fc71acc15704ce6eba918d2b32e5d5f [file] [log] [blame] [edit]
# Copyright 2023 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 = [ ":devicetree-manager-test-package" ]
}
source_set("devicetree") {
deps = [
"//sdk/fidl/fuchsia.boot:fuchsia.boot_cpp",
"//sdk/lib/driver/component/cpp:cpp",
"//sdk/lib/driver/legacy-bind-constants",
"//src/devices/bind/fuchsia.devicetree:fuchsia.devicetree_cpp",
"//src/devices/bind/fuchsia.platform:fuchsia.platform_cpp",
]
public_deps = [
"//sdk/fidl/fuchsia.driver.framework:fuchsia.driver.framework_cpp",
"//sdk/fidl/fuchsia.hardware.platform.bus:fuchsia.hardware.platform.bus_cpp_driver",
"//sdk/lib/zbi-format",
"//zircon/kernel/lib/devicetree",
"//zircon/system/ulib/zx",
]
sources = [
"manager.cc",
"node.cc",
"visitors/bind-property.cc",
]
}
test("devicetree-manager-test") {
deps = [
":devicetree",
"//sdk/lib/driver/legacy-bind-constants",
"//sdk/lib/driver/logging/cpp",
"//sdk/lib/driver/runtime/testing/loop_fixture:gtest",
"//src/devices/bin/driver_runtime",
"//src/devices/bind/fuchsia.devicetree:fuchsia.devicetree_cpp",
"//src/devices/bind/fuchsia.platform:fuchsia.platform_cpp",
"//src/lib/fxl/test:gtest_main",
]
sources = [ "manager-test.cc" ]
}
action("create-simple-dtb") {
script = "test-data/create-dtb.sh"
inputs = [
"//prebuilt/third_party/dtc/${host_platform}/dtc",
"test-data/simple.dts",
]
outputs = [ "$target_out_dir/simple.dtb" ]
args = rebase_path(inputs + outputs, root_build_dir)
}
resource("simple-dtb") {
sources = get_target_outputs(":create-simple-dtb")
outputs = [ "test-data/{{source_file_part}}" ]
deps = [ ":create-simple-dtb" ]
}
fuchsia_unittest_component("devicetree-manager-test-component") {
component_name = "devicetree-manager-test"
deps = [
":devicetree-manager-test",
":simple-dtb",
]
}
fuchsia_test_package("devicetree-manager-test-package") {
test_components = [ ":devicetree-manager-test-component" ]
package_name = "devicetree-manager-test"
}