blob: 50d7bcc6d38af115e4f27c1308ec23037c24856e [file] [log] [blame]
# Copyright 2016 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/dist/resource.gni")
import("//build/testing/cc_test_executable.gni")
import("//src/graphics/lib/magma/gnbuild/magma.gni")
resource("test_firmware") {
sources = [ "test_firmware.txt" ]
outputs = [ "lib/firmware/test_firmware.txt" ]
}
cc_test_executable("unit_tests") {
testonly = true
output_name = "magma_unit_tests"
sources = []
deps = [
":magma_platform_tests",
":magma_util_tests",
"//src/graphics/magma/lib/magma/test_util:logger_init_helper",
"//src/lib/fxl/test:gtest_main",
"//third_party/googletest:gtest",
"//zircon/system/ulib/trace",
"//zircon/system/ulib/trace-vthread",
]
}
source_set("magma_util_tests") {
testonly = true
sources = [
"test_address_space.cc",
"test_address_space_allocator.cc",
"test_macros.cc",
"test_mapped_batch.cc",
"test_register_io.cc",
"test_ringbuffer.cc",
"test_status.cc",
]
deps = [
"//sdk/lib/fdio",
"//src/graphics/magma/lib/magma/platform:buffer",
"//src/graphics/magma/lib/magma/platform:semaphore",
"//src/graphics/magma/lib/magma/util:short_macros",
"//src/graphics/magma/lib/magma_service/mock:address_space",
"//src/graphics/magma/lib/magma_service/mock:bus_mapper",
"//src/graphics/magma/lib/magma_service/mock:mmio",
"//src/graphics/magma/lib/magma_service/util:address_space",
"//src/graphics/magma/lib/magma_service/util:allocator",
"//src/graphics/magma/lib/magma_service/util:mapped_batch",
"//src/graphics/magma/lib/magma_service/util:registers",
"//src/graphics/magma/lib/magma_service/util:ringbuffer",
"//third_party/googletest:gtest",
]
if (is_fuchsia) {
deps += [
"//sdk/fidl/fuchsia.gpu.magma:fuchsia.gpu.magma_cpp",
"//src/graphics/magma/lib/magma/platform/zircon:status",
"//zircon/system/ulib/zx",
]
}
}
source_set("magma_platform_tests") {
testonly = true
sources = [
"test_platform_buffer.cc",
"test_platform_event.cc",
"test_platform_handle.cc",
"test_platform_logger.cc",
"test_platform_mmio.cc",
"test_platform_port.cc",
"test_platform_semaphore.cc",
"test_platform_sysmem_connection.cc",
"test_platform_thread.cc",
"test_platform_trace.cc",
]
deps = [
"//sdk/fidl/fuchsia.sysmem:fuchsia.sysmem_cpp",
"//sdk/fidl/fuchsia.sysmem2:fuchsia.sysmem2_cpp",
"//sdk/lib/fdio",
"//src/graphics/magma/lib/magma/platform:connection_client",
"//src/graphics/magma/lib/magma/platform:event",
"//src/graphics/magma/lib/magma/platform:handle",
"//src/graphics/magma/lib/magma/platform:logger",
"//src/graphics/magma/lib/magma/platform:logger_provider_header",
"//src/graphics/magma/lib/magma/platform:port",
"//src/graphics/magma/lib/magma/platform:semaphore",
"//src/graphics/magma/lib/magma/platform:sysmem_connection",
"//src/graphics/magma/lib/magma/platform:thread",
"//src/graphics/magma/lib/magma/platform:trace",
"//src/graphics/magma/lib/magma/platform:trace_provider",
"//src/graphics/magma/lib/magma/platform:trace_provider_with_fdio",
"//src/graphics/magma/lib/magma/util:short_macros",
"//src/graphics/magma/lib/magma_service/mock:mmio",
"//third_party/googletest:gtest",
"//zircon/system/ulib/zx",
]
}
source_set("platform_bus_mapper_cases") {
testonly = true
sources = [ "test_platform_bus_mapper_cases.h" ]
}
# Requires hardware
source_set("magma_platform_device_tests") {
testonly = true
sources = [
"test_platform_bus_mapper.cc",
"test_platform_device.cc",
]
deps = [
":platform_bus_mapper_cases",
"//src/graphics/magma/lib/magma/platform:bus_mapper",
"//src/graphics/magma/lib/magma/platform:thread",
"//src/graphics/magma/lib/magma/util:short_macros",
"//src/graphics/magma/lib/magma_service/test_util:platform_device_helper",
"//third_party/googletest:gtest",
]
}
# Requires hardware
source_set("magma_platform_pci_device_tests") {
testonly = true
sources = [
"test_platform_bus_mapper_pci.cc",
"test_platform_pci_device.cc",
]
deps = [
":platform_bus_mapper_cases",
"//src/graphics/magma/lib/magma/platform:bus_mapper",
"//src/graphics/magma/lib/magma/platform:thread",
"//src/graphics/magma/lib/magma/util:short_macros",
"//src/graphics/magma/lib/magma_service/test_util:platform_pci_device_helper",
"//third_party/googletest:gtest",
]
}