| # 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/bind/bind.gni") |
| import("//build/components.gni") |
| import("//build/drivers.gni") |
| import("//build/fidl/fidl.gni") |
| import("//build/test.gni") |
| |
| driver_bind_rules("test-power-integration-board-bind") { |
| rules = "test-power-integration.bind" |
| deps = [ |
| "//sdk/fidl/fuchsia.hardware.platform.bus:fuchsia.hardware.platform.bus_bindlib", |
| "//src/devices/bind/fuchsia.test.platform", |
| ] |
| } |
| |
| fuchsia_driver("test-power-integration-board-driver") { |
| output_name = "power-integration-board" |
| sources = [ "test-power-integration-board.cc" ] |
| deps = [ |
| ":test-power-integration-board-bind", |
| "//sdk/fidl/fuchsia.hardware.platform.bus:fuchsia.hardware.platform.bus_cpp", |
| "//sdk/lib/driver/component/cpp:cpp", |
| "//sdk/lib/driver/logging/cpp:cpp", |
| "//src/devices/bind/fuchsia:fuchsia_cpp", |
| "//src/devices/bind/fuchsia.test.platform:fuchsia.test.platform_cpp", |
| "//src/devices/lib/driver:driver_runtime", |
| "//zircon/system/ulib/fbl", |
| ] |
| } |
| |
| fuchsia_driver_component("test-power-integration-board") { |
| deps = [ ":test-power-integration-board-driver" ] |
| info = "test-power-integration-board-info.json" |
| manifest = "meta/test-power-board.cml" |
| } |
| |
| driver_bind_rules("test-power-parent-bind") { |
| rules = "test-power-parent.bind" |
| deps = [ "//src/devices/bind/fuchsia.test.platform" ] |
| } |
| |
| fuchsia_driver("test-power-parent-driver") { |
| output_name = "test-power-parent" |
| sources = [ "test-power-parent-device.cc" ] |
| deps = [ |
| ":test-power-parent-bind", |
| "//sdk/fidl/fuchsia.component.decl:fuchsia.component.decl_cpp", |
| "//sdk/fidl/fuchsia.hardware.platform.device:fuchsia.hardware.platform.device_cpp", |
| "//sdk/fidl/fuchsia.hardware.power:fuchsia.hardware.power_bindlib_cpp", |
| "//sdk/fidl/fuchsia.hardware.power:fuchsia.hardware.power_cpp", |
| "//sdk/fidl/fuchsia.power.broker:fuchsia.power.broker_cpp", |
| "//sdk/lib/driver/component/cpp:cpp", |
| "//sdk/lib/driver/logging/cpp:cpp", |
| "//sdk/lib/driver/power/cpp", |
| "//sdk/lib/sys/service/cpp", |
| "//src/devices/bind/fuchsia:fuchsia_cpp", |
| "//src/devices/bind/fuchsia.test.platform:fuchsia.test.platform_cpp", |
| "//src/devices/lib/driver:driver_runtime", |
| "//zircon/system/ulib/async:async-cpp", |
| ] |
| } |
| |
| driver_bind_rules("test-power-child-bind") { |
| rules = "test-power-child.bind" |
| deps = [ "//src/devices/bind/fuchsia.test.platform" ] |
| } |
| |
| fuchsia_driver("test-power-child-driver") { |
| output_name = "test-power-child" |
| sources = [ "test-power-child-device.cc" ] |
| deps = [ |
| ":test-power-child-bind", |
| "//sdk/fidl/fuchsia.hardware.platform.device:fuchsia.hardware.platform.device_cpp", |
| "//sdk/fidl/fuchsia.hardware.power:fuchsia.hardware.power_cpp", |
| "//sdk/fidl/fuchsia.power.broker:fuchsia.power.broker_cpp", |
| "//sdk/lib/driver/component/cpp:cpp", |
| "//sdk/lib/driver/logging/cpp:cpp", |
| "//sdk/lib/driver/power/cpp", |
| "//src/devices/lib/driver:driver_runtime", |
| ] |
| } |
| |
| fuchsia_driver_component("test-power-child") { |
| component_name = "test-power-child" |
| deps = [ ":test-power-child-driver" ] |
| info = "test-power-child-info.json" |
| manifest = "meta/test-power-child.cml" |
| } |
| |
| fuchsia_driver_component("test-power-parent") { |
| component_name = "test-power-parent" |
| deps = [ ":test-power-parent-driver" ] |
| info = "test-power-parent-info.json" |
| manifest = "meta/test-power-parent.cml" |
| } |
| |
| fidl("fuchsia.test.drivers.power") { |
| testonly = true |
| sources = [ "power_test.fidl" ] |
| } |
| |
| executable("mock-power-broker-bin") { |
| sources = [ "mock-power-broker.cc" ] |
| testonly = true |
| output_name = "mock-power-broker" |
| deps = [ |
| ":fuchsia.test.drivers.power_cpp", |
| "//sdk/fidl/fuchsia.power.broker:fuchsia.power.broker_cpp", |
| "//sdk/lib/driver/component/cpp:cpp", |
| "//sdk/lib/driver/logging/cpp:cpp", |
| "//sdk/lib/sys/cpp:cpp", |
| "//sdk/lib/syslog/cpp:cpp", |
| "//zircon/system/ulib/async-loop:async-loop-cpp", |
| "//zircon/system/ulib/async-loop:async-loop-default", |
| ] |
| } |
| |
| fuchsia_component("mock-power-broker") { |
| testonly = true |
| manifest = "meta/mock-power-broker.cml" |
| deps = [ ":mock-power-broker-bin" ] |
| } |
| |
| test("power-integration-test-test") { |
| sources = [ "test-power-integration.cc" ] |
| deps = [ |
| ":fuchsia.test.drivers.power_cpp", |
| "//sdk/fidl/fuchsia.driver.test:fuchsia.driver.test_cpp", |
| "//sdk/fidl/fuchsia.hardware.platform.bus:fuchsia.hardware.platform.bus_cpp", |
| "//sdk/fidl/fuchsia.io:fuchsia.io_cpp", |
| "//sdk/fidl/fuchsia.power.broker:fuchsia.power.broker_cpp", |
| "//sdk/lib/device-watcher/cpp", |
| "//sdk/lib/driver/logging/cpp:cpp", |
| "//sdk/lib/driver_test_realm/realm_builder/cpp", |
| "//sdk/lib/sys/component/cpp/testing:cpp", |
| "//src/devices/lib/driver:driver_runtime", |
| "//src/lib/fxl/test:gtest_main", |
| "//src/lib/testing/loop_fixture", |
| "//zircon/system/ulib/async-loop:async-loop-cpp", |
| ] |
| } |
| |
| fuchsia_unittest_package("power-integration-tests-package") { |
| package_name = "power-integration-tests" |
| deps = [ |
| ":mock-power-broker", |
| ":power-integration-test-test", |
| ":test-power-child", |
| ":test-power-integration-board", |
| ":test-power-parent", |
| "//src/devices/bus/drivers/platform:platform-bus", |
| ] |
| } |