From b0b6a7d7f4de63fba2ba91a98cecec1bd57d03f1 Mon Sep 17 00:00:00 2001 From: Johannes Stoelp Date: Sun, 29 Oct 2023 23:05:04 +0100 Subject: test: add first lt_bus tests --- CMakeLists.txt | 27 ++++++++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index cb5d232..348393e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.0) +cmake_minimum_required(VERSION 3.14) project(systemc_utils CXX) set (CMAKE_PREFIX_PATH $ENV{SYSTEMC_HOME}) @@ -13,3 +13,28 @@ foreach (X IN ITEMS event sc_export sc_export2 minimal_socket browse lt_bus) target_compile_options(${X} PRIVATE -Wall -Wextra) target_link_libraries(${X} SystemC::systemc) endforeach() + +# -- TESTING ------------------------------------------------------------------- + +# Fetch googletest. +# https://google.github.io/googletest/quickstart-cmake.html#set-up-a-project +include(FetchContent) +FetchContent_Declare( + googletest URL https://github.com/google/googletest/archive/03597a01ee50ed33e9dfd640b249b4be3799d395.zip +) +set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) +FetchContent_MakeAvailable(googletest) + +# Generate CTestTestfile.cmake. +enable_testing() +# Include gtest_discover_tests macro. +include(GoogleTest) + +foreach(T IN ITEMS lt_bus) + set(TGT test-${T}) + add_executable(${TGT} test/${T}.cc) + target_include_directories(${TGT} PRIVATE src) + target_compile_options(${TGT} PRIVATE -Wall -Wextra) + target_link_libraries(${TGT} GTest::gmock_main SystemC::systemc) + gtest_discover_tests(${TGT}) +endforeach() -- cgit v1.2.3