Imre Kis | 2be8593 | 2021-11-12 17:07:17 +0100 | [diff] [blame] | 1 | #------------------------------------------------------------------------------- |
Gabor Ambrus | 859cfb3 | 2023-08-15 14:12:26 +0200 | [diff] [blame] | 2 | # Copyright (c) 2023, Arm Limited and Contributors. All rights reserved. |
Imre Kis | 2be8593 | 2021-11-12 17:07:17 +0100 | [diff] [blame] | 3 | # |
| 4 | # SPDX-License-Identifier: BSD-3-Clause |
| 5 | # |
| 6 | #------------------------------------------------------------------------------- |
Balint Dobszay | 047aea8 | 2022-05-16 14:20:53 +0200 | [diff] [blame] | 7 | cmake_minimum_required(VERSION 3.18 FATAL_ERROR) |
Gabor Ambrus | 859cfb3 | 2023-08-15 14:12:26 +0200 | [diff] [blame] | 8 | include(../../deployment.cmake REQUIRED) |
Imre Kis | 2be8593 | 2021-11-12 17:07:17 +0100 | [diff] [blame] | 9 | |
Gabor Ambrus | 859cfb3 | 2023-08-15 14:12:26 +0200 | [diff] [blame] | 10 | include(${TS_ROOT}/environments/linux-pc/env.cmake) |
| 11 | project(trusted-services LANGUAGES CXX C) |
Imre Kis | 2be8593 | 2021-11-12 17:07:17 +0100 | [diff] [blame] | 12 | |
| 13 | # Preparing firmware-test-build by including it |
| 14 | include(${TS_ROOT}/external/firmware_test_builder/FirmwareTestBuilder.cmake) |
| 15 | |
| 16 | include(CTest) |
| 17 | include(UnitTest) |
| 18 | |
| 19 | set(COVERAGE FALSE CACHE BOOL "Enable code coverage measurement") |
| 20 | set(UNIT_TEST_PROJECT_PATH ${TS_ROOT} CACHE PATH "Path of the project directory") |
| 21 | set(CMAKE_CXX_STANDARD 11) |
| 22 | |
| 23 | unit_test_init_cpputest() |
| 24 | |
| 25 | if (COVERAGE) |
| 26 | include(Coverage) |
| 27 | |
| 28 | set(COVERAGE_FILE "coverage.info") |
Gabor Ambrus | 859cfb3 | 2023-08-15 14:12:26 +0200 | [diff] [blame] | 29 | set(UNIT_TESTS_COVERAGE_FILE "unit-tests-coverage.info" CACHE PATH "Path of coverage info file") |
| 30 | set(UNIT_TESTS_COVERAGE_REPORT_DIR "${CMAKE_CURRENT_BINARY_DIR}/unit-tests-coverage-report" CACHE PATH "Directory of coverage report") |
Imre Kis | 2be8593 | 2021-11-12 17:07:17 +0100 | [diff] [blame] | 31 | |
| 32 | # Collecting coverage |
| 33 | coverage_generate( |
Gabor Ambrus | 859cfb3 | 2023-08-15 14:12:26 +0200 | [diff] [blame] | 34 | NAME "unit test" |
Imre Kis | 2be8593 | 2021-11-12 17:07:17 +0100 | [diff] [blame] | 35 | SOURCE_DIR ${TS_ROOT} |
| 36 | BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR} |
| 37 | OUTPUT_FILE ${COVERAGE_FILE} |
| 38 | ) |
| 39 | |
| 40 | # Filtering project file coverage |
| 41 | coverage_filter( |
| 42 | INPUT_FILE ${COVERAGE_FILE} |
Gabor Ambrus | 859cfb3 | 2023-08-15 14:12:26 +0200 | [diff] [blame] | 43 | OUTPUT_FILE ${UNIT_TESTS_COVERAGE_FILE} |
Imre Kis | 2be8593 | 2021-11-12 17:07:17 +0100 | [diff] [blame] | 44 | INCLUDE_DIRECTORY ${UNIT_TEST_PROJECT_PATH}/components |
| 45 | ) |
| 46 | |
| 47 | # Coverage report |
| 48 | coverage_generate_report( |
Gabor Ambrus | 859cfb3 | 2023-08-15 14:12:26 +0200 | [diff] [blame] | 49 | INPUT_FILE ${UNIT_TESTS_COVERAGE_FILE} |
| 50 | OUTPUT_DIRECTORY ${UNIT_TESTS_COVERAGE_REPORT_DIR} |
Imre Kis | 2be8593 | 2021-11-12 17:07:17 +0100 | [diff] [blame] | 51 | ) |
| 52 | endif() |
Imre Kis | b272481 | 2021-11-12 17:02:24 +0100 | [diff] [blame] | 53 | |
Gabor Ambrus | 859cfb3 | 2023-08-15 14:12:26 +0200 | [diff] [blame] | 54 | # Including test suite descriptions |
| 55 | include(${TS_ROOT}/components/messaging/ffa/libsp/tests.cmake) |
Imre Kis | b272481 | 2021-11-12 17:02:24 +0100 | [diff] [blame] | 56 | include(${TS_ROOT}/components/rpc/common/tests.cmake) |
Imre Kis | 5090ae8 | 2021-11-12 17:06:51 +0100 | [diff] [blame] | 57 | include(${TS_ROOT}/components/rpc/mm_communicate/endpoint/sp/tests.cmake) |
Julian Hall | 98656d5 | 2022-05-05 11:09:21 +0100 | [diff] [blame] | 58 | include(${TS_ROOT}/components/service/uefi/smm_variable/frontend/mm_communicate/tests.cmake) |