| # 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. |
| |
| import("//build/package.gni") |
| import("//build/test/test_package.gni") |
| import("//build/testing/environments.gni") |
| import("//src/graphics/lib/magma/gnbuild/magma.gni") |
| |
| group("tests") { |
| testonly = true |
| public_deps = [ |
| ":magma-abi-conformance-tests", |
| ":magma-abi-conformance-tests-arm", |
| ":magma-abi-conformance-tests-vsi", |
| ":magma_info_test", |
| ":magma_nonhardware_tests", |
| "codegen", |
| "icd_strip", |
| ] |
| |
| # Add driver dependencies: |
| public_deps += [ |
| "//garnet/packages/prod:vulkan", |
| "//src/graphics/drivers/msd-img-rgx/tests/integration:msd-img-rgx-no-hardware-integration-tests", |
| "//src/graphics/drivers/msd-img-rgx/tests/integration:msd_img_rgx_integration_tests", |
| "//src/graphics/drivers/msd-img-rgx/tests/unit_tests:msd_img_rgx_nonhardware_tests", |
| "//src/graphics/drivers/msd-vsi-vip/tests/integration", |
| "//src/graphics/drivers/msd-vsi-vip/tests/unit_tests:msd-vsi-vip-nonhardware-tests", |
| "//src/graphics/lib/magma/gnbuild/magma-arm-mali:msd-arm-mali-integration-tests", |
| "//src/graphics/lib/magma/gnbuild/magma-arm-mali:msd_arm_mali_nonhardware_tests", |
| ] |
| if (target_cpu == "x64") { |
| public_deps += [ |
| "//src/graphics/lib/magma/gnbuild/magma-intel-gen:magma_intel_gen_integration_tests", |
| "//src/graphics/lib/magma/gnbuild/magma-intel-gen:magma_intel_gen_nonhardware_tests", |
| ] |
| } |
| |
| # Ensure the test MSDs are built even when not deployed |
| public_deps += [ |
| "//src/graphics/drivers/msd-arm-mali:msd_arm_test", |
| "//src/graphics/drivers/msd-img-rgx/no_hardware:msd_img_rgx_no_hardware", |
| "//src/graphics/drivers/msd-intel-gen:msd_intel_test", |
| "//src/graphics/drivers/msd-vsi-vip:msd_vsi_test", |
| ] |
| } |
| |
| # This group must only be referenced from a *_system_image_deps arg, since it contains drivers that |
| # go into the system image. |
| group("test-drivers") { |
| testonly = true |
| deps = [ |
| "//src/graphics/lib/magma/gnbuild/magma-arm-mali:test-driver", |
| "//src/graphics/lib/magma/gnbuild/magma-vsi-vip:test-driver", |
| ] |
| } |
| |
| # Tests that require a working libvulkan to run. |
| group("vulkan-tests") { |
| testonly = true |
| public_deps = [ |
| # We also need run-test-component to run these tests. |
| "//garnet/packages/testing:run_test_component", |
| "//src/graphics/tests:vulkan-tests", |
| ] |
| } |
| |
| # Packages needed for L0 from //doc/the-book/magma/contributing.md |
| group("l0") { |
| testonly = true |
| deps = [ |
| ":tests", |
| ":vulkan-tests", |
| ] |
| } |
| |
| # Packages needed for L1 |
| group("l1") { |
| testonly = true |
| deps = [ |
| ":l0", |
| "//garnet/packages/prod:scenic", |
| "//src/graphics/examples:vkcube-on-fb", |
| "//src/graphics/examples:vkcube-on-scenic", |
| "//src/graphics/lib/magma/src/tools", |
| "//src/lib/vulkan/tests:image-pipe-swapchain-tests", |
| ] |
| } |
| |
| test_package("magma_nonhardware_tests") { |
| deps = [ "unit_tests" ] |
| |
| tests = [ |
| { |
| name = "magma_unit_tests" |
| }, |
| ] |
| } |
| |
| # Runs on any GPU if the only device present; if multiple |
| # GPUs are present the vendor must be specified. |
| test_package("magma-abi-conformance-tests") { |
| deps = [ "integration" ] |
| |
| tests = [ |
| { |
| name = "magma_abi_conformance_tests" |
| manifest = "meta/magma-abi-conformance-tests.cmx" |
| environments = magma_hardware_envs - [ arm_gpu_envs ] |
| }, |
| ] |
| } |
| |
| # Runs only on ARM devices |
| test_package("magma-abi-conformance-tests-arm") { |
| deps = [ "integration" ] |
| |
| tests = [ |
| { |
| name = "magma_abi_conformance_tests" |
| manifest = "meta/magma-abi-conformance-tests-arm.cmx" |
| environments = arm_gpu_envs |
| }, |
| ] |
| } |
| |
| # Runs only on VSI devices |
| test_package("magma-abi-conformance-tests-vsi") { |
| deps = [ "integration" ] |
| |
| tests = [ |
| { |
| name = "magma_abi_conformance_tests" |
| manifest = "meta/magma-abi-conformance-tests-vsi.cmx" |
| |
| environments = [ sherlock_env ] |
| }, |
| ] |
| } |
| |
| # Run magma_info as a test to make sure it doesn't crash. |
| test_package("magma_info_test") { |
| deps = [ "//src/graphics/lib/magma/src/tools:magma_info" ] |
| |
| tests = [ |
| { |
| name = "magma_info" |
| dest = "magma_info_test" |
| environments = magma_hardware_envs |
| }, |
| ] |
| } |