@@ -59,8 +59,8 @@ list(APPEND UNITTEST_LIBRARIES GTest::GTest GTest::Main
5959 ${UNITTEST_HEADERS}
6060 ${BIOGEARS_CORE_UNITTEST_HEADERS}
6161 ${BIOGEARS_CORE_UNITTEST_SOURCES}
62- ${BIOGEARS_COMMON_UNITTEST_HEADERS}
63- ${BIOGEARS_COMMON_UNITTEST_SOURCES}
62+ ${BIOGEARS_COMMON_UNITTEST_HEADERS}
63+ ${BIOGEARS_COMMON_UNITTEST_SOURCES}
6464 ${BIOGEARS_CMDLINE_UNITTEST_HEADERS}
6565 ${BIOGEARS_CMDLINE_UNITTEST_SOURCES}
6666 ${BIOGEARS_CIRCUIT_UNITTEST_HEADERS}
@@ -73,39 +73,46 @@ list(APPEND UNITTEST_LIBRARIES GTest::GTest GTest::Main
7373 # import unit test from Project/cmake/unit.cmake
7474 ##################################################################V#############
7575 function ( setup_unittest )
76- cmake_parse_arguments ( "_l"
77- ""
78- "GROUP"
79- "TESTS"
80- ${ARGN}
81- )
82-
83- if (UNITTEST_${_l_GROUP} )
84- foreach ( test_name IN LISTS _l_TESTS )
85- option (UNITTEST_${_l_GROUP} _${test_name} "Enable test_core_angles" ON )
86- mark_as_advanced (UNITTEST_${_l_GROUP} _${test_name} )
87- if ( NOT UNITTEST_${_l_GROUP} _${test_name} )
88- add_compile_definitions ( DISABLE_BIOGEARS_${test_name} _TEST )
89- endif ()
90- endforeach ()
91- endif ()
76+ cmake_parse_arguments ( "_l"
77+ ""
78+ "GROUP;PREFIX"
79+ "TESTS"
80+ ${ARGN}
81+ )
82+ if (UNITTEST_${_l_GROUP} )
83+ foreach ( filepath IN LISTS _l_TESTS )
84+ string (REGEX REPLACE ".*\\ /test_${_l_PREFIX} _(.*).cpp" "\\ 1" test_name ${filepath} )
85+ option (UNITTEST_${_l_GROUP} _${test_name} "Enable ${_l_GROUP} _${test_name} " ON )
86+ mark_as_advanced (UNITTEST_${_l_GROUP} _${test_name} )
87+ if ( NOT UNITTEST_${_l_GROUP} _${test_name} )
88+ set_property ( SOURCE ${filepath}
89+ PROPERTY
90+ COMPILE_DEFINITIONS DISABLE_BIOGEARS_${test_name} _TEST )
91+ endif ()
92+ endforeach ()
93+ endif ()
9294 endfunction ()
9395
9496 set (COMMON_TEST_LIST ${BIOGEARS_COMMON_UNITTEST_SOURCES} )
95- list (TRANSFORM COMMON_TEST_LIST REPLACE ".*\\ /test_common_(.*).cpp" "\\ 1" )
96- setup_unittest( GROUP biogears-common
97+ # list(TRANSFORM COMMON_TEST_LIST REPLACE ".*\\/test_common_(.*).cpp" "\\1")
98+ setup_unittest( GROUP biogears-common PREFIX common
9799 TESTS
98100 ${COMMON_TEST_LIST} )
99101 set (CORE_TEST_LIST ${BIOGEARS_CORE_UNITTEST_SOURCES} )
100- list (TRANSFORM CORE_TEST_LIST REPLACE ".*\\ /test_core_(.*).cpp" "\\ 1" )
101- setup_unittest( GROUP biogears-core
102+ # list(TRANSFORM CORE_TEST_LIST REPLACE ".*\\/test_core_(.*).cpp" "\\1")
103+ setup_unittest( GROUP biogears-core PREFIX core
102104 TESTS
103105 ${CORE_TEST_LIST} )
104106 set (CMDLINE_TEST_LIST ${BIOGEARS_CMDLINE_UNITTEST_SOURCES} )
105- list (TRANSFORM CMDLINE_TEST_LIST REPLACE ".*\\ /test_cmdline_(.*).cpp" "\\ 1" )
106- setup_unittest( GROUP biogears-cmd
107+ # list(TRANSFORM CMDLINE_TEST_LIST REPLACE ".*\\/test_cmdline_(.*).cpp" "\\1")
108+ setup_unittest( GROUP biogears-cmd PREFIX cmd
107109 TESTS
108110 ${CMDLINE_TEST_LIST} )
111+ set (CIRCUIT_TEST_LIST ${BIOGEARS_CIRCUIT_UNITTEST_SOURCES} )
112+ # list(TRANSFORM CIRCUIT_TEST_LIST REPLACE ".*\\/test_circuit_(.*).cpp" "\\1")
113+ setup_unittest( GROUP biogears-circuit PREFIX circuit
114+ TESTS
115+ ${CIRCUIT_TEST_LIST} )
109116
110117 set_target_properties (unittest PROPERTIES
111118 DEBUG_POSTFIX ${CMAKE_DEBUG_POSTFIX}
@@ -123,15 +130,11 @@ list(APPEND UNITTEST_LIBRARIES GTest::GTest GTest::Main
123130 )
124131
125132 if (WIN32 )
126- target_compile_options (unittest
127- PRIVATE "-D_CRT_SECURE_NO_WARNINGS "
133+ target_compile_definitions (unittest
134+ PRIVATE "_CRT_SECURE_NO_WARNINGS "
128135 )
129136 endif ()
130137
131- if (${PROJECT_NAME} _BUILD_STATIC)
132- add_definitions ("-D${PROJECT_NAME} _BUILT_AS_STATIC" )
133- endif ()
134-
135138 target_link_libraries (unittest
136139 ${UNITTEST_LIBRARIES}
137140 ${bio_LIBRARIES}
0 commit comments