ENH: Add test of macro
This commit is contained in:
parent
9a7dec33a3
commit
c34696021d
@ -400,6 +400,16 @@ IF(BUILD_TESTING)
|
||||
--build-two-config
|
||||
--test-command conly)
|
||||
|
||||
ADD_TEST(MacroTest ${CMAKE_CTEST_COMMAND}
|
||||
--build-and-test
|
||||
"${CMake_SOURCE_DIR}/Tests/MacroTest"
|
||||
"${CMake_BINARY_DIR}/Tests/MacroTest"
|
||||
--build-generator ${CMAKE_GENERATOR}
|
||||
--build-project littleMacroTest
|
||||
--build-makeprogram ${MAKEPROGRAM}
|
||||
--build-two-config
|
||||
--test-command miniMacroTest)
|
||||
|
||||
SET(SimpleInstallInstallDir
|
||||
"${CMake_BINARY_DIR}/Tests/SimpleInstall/InstallDirectory")
|
||||
ADD_TEST(SimpleInstall ${CMAKE_CTEST_COMMAND}
|
||||
|
48
Tests/MacroTest/CMakeLists.txt
Normal file
48
Tests/MacroTest/CMakeLists.txt
Normal file
@ -0,0 +1,48 @@
|
||||
# a simple C only test case
|
||||
PROJECT (littleMacroTest C)
|
||||
|
||||
MACRO(FAILED testname)
|
||||
MESSAGE(SEND_ERROR "${testname} failed ${ARGN}")
|
||||
ENDMACRO(FAILED)
|
||||
|
||||
MACRO(PASS testname)
|
||||
MESSAGE("${testname} passed ${ARGN}")
|
||||
ENDMACRO(PASS)
|
||||
|
||||
# test ARGC
|
||||
MACRO(weird_name)
|
||||
IF("${ARGC}" EQUAL "3")
|
||||
PASS("ARGC")
|
||||
ELSE("${ARGC}" EQUAL "3")
|
||||
FAILED("ARGC" "Got: ${ARGC}")
|
||||
ENDIF("${ARGC}" EQUAL "3")
|
||||
ENDMACRO(weird_name)
|
||||
WeIrD_nAmE(a1 a2 a3)
|
||||
|
||||
# test ARGN
|
||||
MACRO(test_argn_macro argument)
|
||||
IF("${ARGN}" EQUAL "3")
|
||||
PASS("ARGN")
|
||||
ELSE("${ARGN}" EQUAL "3")
|
||||
FAILED("ARGN" "Got: ${ARGN}")
|
||||
ENDIF("${ARGN}" EQUAL "3")
|
||||
ENDMACRO(test_argn_macro)
|
||||
Test_Argn_Macro(ignored 3)
|
||||
|
||||
# case test
|
||||
MACRO(strange_macro m)
|
||||
SET("${m}" strange_macro)
|
||||
ENDMACRO(strange_macro m)
|
||||
STRANGE_MACRO(var)
|
||||
set(second_var "second_var")
|
||||
IF("${var}" EQUAL "strange_macro" AND "${second_var}" EQUAL "second_var")
|
||||
PASS("Case Test" "(${var} ${second_var})")
|
||||
ELSE("${var}" EQUAL "strange_macro" AND "${second_var}" EQUAL "second_var")
|
||||
FAILED("Case test" "(${var} ${second_var})")
|
||||
ENDIF("${var}" EQUAL "strange_macro" AND "${second_var}" EQUAL "second_var")
|
||||
|
||||
# test backing up command
|
||||
MACRO(ADD_EXECUTABLE exec)
|
||||
_ADD_EXECUTABLE("mini${exec}" ${ARGN})
|
||||
ENDMACRO(ADD_EXECUTABLE)
|
||||
ADD_EXECUTABLE(MacroTest macroTest.c)
|
7
Tests/MacroTest/macroTest.c
Normal file
7
Tests/MacroTest/macroTest.c
Normal file
@ -0,0 +1,7 @@
|
||||
#include <stdio.h>
|
||||
|
||||
int main(int argc, char* argv[])
|
||||
{
|
||||
printf("Running command: %s with %d arguments\n", argv[0], argc);
|
||||
return 0;
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user