Teach ADD_TEST_MACRO about test namespaces
We teach ADD_TEST_MACRO to transform names of the form "Namespace.Name" to the directory "Namespace/Name" and the project name "Name". This will allow new tests to be better organized.
This commit is contained in:
parent
23c28adbf9
commit
6c9f678098
|
@ -1,16 +1,18 @@
|
||||||
# a macro for tests that have a simple format where the name matches the
|
# a macro for tests that have a simple format where the name matches the
|
||||||
# directory and project
|
# directory and project
|
||||||
MACRO(ADD_TEST_MACRO NAME COMMAND)
|
MACRO(ADD_TEST_MACRO NAME COMMAND)
|
||||||
|
STRING(REPLACE "." "/" dir "${NAME}")
|
||||||
|
STRING(REGEX REPLACE "[^.]*\\." "" proj "${NAME}")
|
||||||
ADD_TEST(${NAME} ${CMAKE_CTEST_COMMAND}
|
ADD_TEST(${NAME} ${CMAKE_CTEST_COMMAND}
|
||||||
--build-and-test
|
--build-and-test
|
||||||
"${CMake_SOURCE_DIR}/Tests/${NAME}"
|
"${CMake_SOURCE_DIR}/Tests/${dir}"
|
||||||
"${CMake_BINARY_DIR}/Tests/${NAME}"
|
"${CMake_BINARY_DIR}/Tests/${dir}"
|
||||||
--build-two-config
|
--build-two-config
|
||||||
--build-generator ${CMAKE_TEST_GENERATOR}
|
--build-generator ${CMAKE_TEST_GENERATOR}
|
||||||
--build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
|
--build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
|
||||||
--build-project ${NAME}
|
--build-project ${proj}
|
||||||
--test-command ${COMMAND})
|
--test-command ${COMMAND})
|
||||||
LIST(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/${NAME}")
|
LIST(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/${dir}")
|
||||||
ENDMACRO(ADD_TEST_MACRO)
|
ENDMACRO(ADD_TEST_MACRO)
|
||||||
|
|
||||||
# Fake a user home directory to avoid polluting the real one.
|
# Fake a user home directory to avoid polluting the real one.
|
||||||
|
|
Loading…
Reference in New Issue