mirror of
https://github.com/google/googletest.git
synced 2025-01-15 09:15:48 +08:00
create different python based tests for single and multi configuration build generators
This commit is contained in:
parent
47ad2993b6
commit
9ba7946bde
@ -237,20 +237,32 @@ endfunction()
|
|||||||
# test/name.py. It does nothing if Python is not installed.
|
# test/name.py. It does nothing if Python is not installed.
|
||||||
function(py_test name)
|
function(py_test name)
|
||||||
if (PYTHONINTERP_FOUND)
|
if (PYTHONINTERP_FOUND)
|
||||||
# ${CMAKE_BINARY_DIR} is known at configuration time, so we can
|
|
||||||
# directly bind it from cmake. ${CTEST_CONFIGURATION_TYPE} is known
|
|
||||||
# only at ctest runtime (by calling ctest -c <Configuration>), so
|
|
||||||
# we have to escape $ to delay variable substitution here.
|
|
||||||
if (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 3.1)
|
if (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 3.1)
|
||||||
|
if (CMAKE_CONFIGURATION_TYPES)
|
||||||
|
# Multi-configuration build generators as for Visual Studio save
|
||||||
|
# output in a subdirectory of CMAKE_CURRENT_BINARY_DIR (Debug,
|
||||||
|
# Release etc.), so we have to provide it here.
|
||||||
add_test(
|
add_test(
|
||||||
NAME ${name}
|
NAME ${name}
|
||||||
COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/test/${name}.py
|
COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/test/${name}.py
|
||||||
--build_dir=${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION>)
|
--build_dir=${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>)
|
||||||
|
else (CMAKE_CONFIGURATION_TYPES)
|
||||||
|
# Single-configuration build generators like Makefile generators
|
||||||
|
# don't have subdirs below CMAKE_CURRENT_BINARY_DIR.
|
||||||
|
add_test(
|
||||||
|
NAME ${name}
|
||||||
|
COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/test/${name}.py
|
||||||
|
--build_dir=${CMAKE_CURRENT_BINARY_DIR})
|
||||||
|
endif (CMAKE_CONFIGURATION_TYPES)
|
||||||
else (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 3.1)
|
else (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 3.1)
|
||||||
|
# ${CMAKE_CURRENT_BINARY_DIR} is known at configuration time, so we can
|
||||||
|
# directly bind it from cmake. ${CTEST_CONFIGURATION_TYPE} is known
|
||||||
|
# only at ctest runtime (by calling ctest -c <Configuration>), so
|
||||||
|
# we have to escape $ to delay variable substitution here.
|
||||||
add_test(
|
add_test(
|
||||||
${name}
|
${name}
|
||||||
${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/test/${name}.py
|
${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/test/${name}.py
|
||||||
--build_dir=${CMAKE_CURRENT_BINARY_DIR}/\${CTEST_CONFIGURATION_TYPE})
|
--build_dir=${CMAKE_CURRENT_BINARY_DIR}/\${CTEST_CONFIGURATION_TYPE})
|
||||||
endif (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 3.1)
|
endif (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 3.1)
|
||||||
endif()
|
endif(PYTHONINTERP_FOUND)
|
||||||
endfunction()
|
endfunction()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user