Add tests for uncovered bits of the math and cmake_minimum_required cmake functions.

This commit is contained in:
David Cole 2009-10-05 16:50:21 -04:00
parent f7cfd5c99f
commit b3611f70ae
5 changed files with 87 additions and 0 deletions

View File

@ -23,6 +23,8 @@ AddCMakeTest(SeparateArguments "")
AddCMakeTest(ImplicitLinkInfo "")
AddCMakeTest(ModuleNotices "")
AddCMakeTest(String "")
AddCMakeTest(Math "")
AddCMakeTest(CMakeMinimumRequired "")
SET(GetPrerequisites_PreArgs
"-DCTEST_CONFIGURATION_TYPE:STRING=\\\${CTEST_CONFIGURATION_TYPE}"

View File

@ -0,0 +1,18 @@
# Execute each test listed in:
#
set(scriptname "@CMAKE_CURRENT_SOURCE_DIR@/CMakeMinimumRequiredTestScript.cmake")
set(number_of_tests_expected 8)
include("@CMAKE_CURRENT_SOURCE_DIR@/ExecuteScriptTests.cmake")
execute_all_script_tests(${scriptname} number_of_tests_executed)
# And verify that number_of_tests_executed is at least as many as we know
# about as of this writing...
#
message(STATUS "scriptname='${scriptname}'")
message(STATUS "number_of_tests_executed='${number_of_tests_executed}'")
message(STATUS "number_of_tests_expected='${number_of_tests_expected}'")
if(number_of_tests_executed LESS number_of_tests_expected)
message(FATAL_ERROR "error: some test cases were skipped")
endif()

View File

@ -0,0 +1,31 @@
message(STATUS "testname='${testname}'")
if(testname STREQUAL empty) # pass
cmake_minimum_required()
elseif(testname STREQUAL bogus) # fail
cmake_minimum_required(BOGUS)
elseif(testname STREQUAL no_version) # fail
cmake_minimum_required(VERSION)
elseif(testname STREQUAL no_version_before_fatal_error) # fail
cmake_minimum_required(VERSION FATAL_ERROR)
elseif(testname STREQUAL bad_version) # fail
cmake_minimum_required(VERSION 2.blah.blah)
elseif(testname STREQUAL worse_version) # fail
cmake_minimum_required(VERSION blah.blah.blah)
elseif(testname STREQUAL future_version) # fail
math(EXPR major "${CMAKE_MAJOR_VERSION} + 1")
cmake_minimum_required(VERSION ${major}.2.1)
elseif(testname STREQUAL unknown_arg) # fail
cmake_minimum_required(VERSION ${CMAKE_MAJOR_VERSION}.0.0 SILLY)
else() # fail
message(FATAL_ERROR "testname='${testname}' - error: no such test in '${CMAKE_CURRENT_LIST_FILE}'")
endif()

View File

@ -0,0 +1,18 @@
# Execute each test listed in:
#
set(scriptname "@CMAKE_CURRENT_SOURCE_DIR@/MathTestScript.cmake")
set(number_of_tests_expected 4)
include("@CMAKE_CURRENT_SOURCE_DIR@/ExecuteScriptTests.cmake")
execute_all_script_tests(${scriptname} number_of_tests_executed)
# And verify that number_of_tests_executed is at least as many as we know
# about as of this writing...
#
message(STATUS "scriptname='${scriptname}'")
message(STATUS "number_of_tests_executed='${number_of_tests_executed}'")
message(STATUS "number_of_tests_expected='${number_of_tests_expected}'")
if(number_of_tests_executed LESS number_of_tests_expected)
message(FATAL_ERROR "error: some test cases were skipped")
endif()

View File

@ -0,0 +1,18 @@
message(STATUS "testname='${testname}'")
if(testname STREQUAL empty) # fail
math()
elseif(testname STREQUAL bogus) # fail
math(BOGUS)
elseif(testname STREQUAL not_enough_args) # fail
math(EXPR x)
elseif(testname STREQUAL cannot_parse) # fail
math(EXPR x "1 + 2 +")
else() # fail
message(FATAL_ERROR "testname='${testname}' - error: no such test in '${CMAKE_CURRENT_LIST_FILE}'")
endif()