diff options
author | Brad King <brad.king@kitware.com> | 2016-05-04 14:08:40 (GMT) |
---|---|---|
committer | CMake Topic Stage <kwrobot@kitware.com> | 2016-05-04 14:08:40 (GMT) |
commit | cc4626430742fce1f5ea1bcecb1b961ca37513f3 (patch) | |
tree | 717eefc255ed98951756763ab6c8ab12eefcf9ec | |
parent | ac714a3839586c06ad0376071c733ba21bb1a8b4 (diff) | |
parent | eccfc0d185526b746b722ed3d3d1302515698c9e (diff) | |
download | CMake-cc4626430742fce1f5ea1bcecb1b961ca37513f3.zip CMake-cc4626430742fce1f5ea1bcecb1b961ca37513f3.tar.gz CMake-cc4626430742fce1f5ea1bcecb1b961ca37513f3.tar.bz2 |
Merge topic 'test-CROSSCOMPILING_EMULATOR'
eccfc0d1 Tests: Improve source file name in RunCMake.CrosscompilingEmulator
8de77811 Tests: Cover genex behavior in CROSSCOMPILING_EMULATOR test case
-rw-r--r-- | Tests/RunCMake/CrosscompilingEmulator/AddTest-check.cmake | 24 | ||||
-rw-r--r-- | Tests/RunCMake/CrosscompilingEmulator/AddTest.cmake | 14 | ||||
-rw-r--r-- | Tests/RunCMake/CrosscompilingEmulator/AddTest/CMakeLists.txt | 5 | ||||
-rw-r--r-- | Tests/RunCMake/CrosscompilingEmulator/CrosscompilingEmulatorProperty.cmake | 4 | ||||
-rw-r--r-- | Tests/RunCMake/CrosscompilingEmulator/TryRun.cmake | 4 | ||||
-rw-r--r-- | Tests/RunCMake/CrosscompilingEmulator/simple_src_exiterror.cxx (renamed from Tests/RunCMake/CrosscompilingEmulator/simple_src.cxx) | 0 |
6 files changed, 42 insertions, 9 deletions
diff --git a/Tests/RunCMake/CrosscompilingEmulator/AddTest-check.cmake b/Tests/RunCMake/CrosscompilingEmulator/AddTest-check.cmake index 0aae06c..588b77b 100644 --- a/Tests/RunCMake/CrosscompilingEmulator/AddTest-check.cmake +++ b/Tests/RunCMake/CrosscompilingEmulator/AddTest-check.cmake @@ -4,9 +4,25 @@ if(EXISTS "${testfile}") else() message(FATAL_ERROR "Could not find expected CTestTestfile.cmake.") endif() -if(testfile_contents MATCHES "add_test[(]DoesNotUseEmulator ^(pseudo_emulator)+$") - message(SEND_ERROR "Used emulator when it should not be used.") + +set(error_details "There is a problem with generated test file: ${testfile}") + +if(testfile_contents MATCHES "add_test[(]DoesNotUseEmulator [^\n]+pseudo_emulator[^\n]+\n") + message(SEND_ERROR "Used emulator when it should not be used. ${error_details}") endif() -if(NOT testfile_contents MATCHES "add_test[(]UsesEmulator .+pseudo_emulator.+$") - message(SEND_ERROR "Did not use emulator when it should be used.") + +if(NOT testfile_contents MATCHES "add_test[(]UsesEmulator [^\n]+pseudo_emulator[^\n]+\n") + message(SEND_ERROR "Did not use emulator when it should be used. ${error_details}") +endif() + +if(testfile_contents MATCHES "add_test[(]DoesNotUseEmulatorWithGenex [^\n]+pseudo_emulator[^\n]+\n") + message(SEND_ERROR "Used emulator when it should not be used. ${error_details}") +endif() + +if(NOT testfile_contents MATCHES "add_test[(]UsesEmulatorWithExecTargetFromSubdirAddedWithoutGenex [^\n]+pseudo_emulator[^\n]+\n") + message(SEND_ERROR "Did not use emulator when it should be used. ${error_details}") +endif() + +if(testfile_contents MATCHES "add_test[(]DoesNotUseEmulatorWithExecTargetFromSubdirAddedWithGenex [^\n]+pseudo_emulator[^\n]+\n") + message(SEND_ERROR "Used emulator when it should not be used. ${error_details}") endif() diff --git a/Tests/RunCMake/CrosscompilingEmulator/AddTest.cmake b/Tests/RunCMake/CrosscompilingEmulator/AddTest.cmake index 41850f2..23e2e8d 100644 --- a/Tests/RunCMake/CrosscompilingEmulator/AddTest.cmake +++ b/Tests/RunCMake/CrosscompilingEmulator/AddTest.cmake @@ -3,6 +3,18 @@ enable_testing() add_test(NAME DoesNotUseEmulator COMMAND ${CMAKE_COMMAND} -E echo "Hi") -add_executable(generated_exe simple_src.cxx) +add_executable(generated_exe simple_src_exiterror.cxx) + add_test(NAME UsesEmulator COMMAND generated_exe) + +add_test(NAME DoesNotUseEmulatorWithGenex + COMMAND $<TARGET_FILE:generated_exe>) + +add_subdirectory(AddTest) + +add_test(NAME UsesEmulatorWithExecTargetFromSubdirAddedWithoutGenex + COMMAND generated_exe_in_subdir_added_to_test_without_genex) + +add_test(NAME DoesNotUseEmulatorWithExecTargetFromSubdirAddedWithGenex + COMMAND $<TARGET_FILE:generated_exe_in_subdir_added_to_test_with_genex>) diff --git a/Tests/RunCMake/CrosscompilingEmulator/AddTest/CMakeLists.txt b/Tests/RunCMake/CrosscompilingEmulator/AddTest/CMakeLists.txt new file mode 100644 index 0000000..025b54c --- /dev/null +++ b/Tests/RunCMake/CrosscompilingEmulator/AddTest/CMakeLists.txt @@ -0,0 +1,5 @@ +add_executable(generated_exe_in_subdir_added_to_test_without_genex + ${CMAKE_CURRENT_SOURCE_DIR}/../simple_src_exiterror.cxx) + +add_executable(generated_exe_in_subdir_added_to_test_with_genex + ${CMAKE_CURRENT_SOURCE_DIR}/../simple_src_exiterror.cxx) diff --git a/Tests/RunCMake/CrosscompilingEmulator/CrosscompilingEmulatorProperty.cmake b/Tests/RunCMake/CrosscompilingEmulator/CrosscompilingEmulatorProperty.cmake index 22d537c..1aeb510 100644 --- a/Tests/RunCMake/CrosscompilingEmulator/CrosscompilingEmulatorProperty.cmake +++ b/Tests/RunCMake/CrosscompilingEmulator/CrosscompilingEmulatorProperty.cmake @@ -3,7 +3,7 @@ # -DCMAKE_CROSSCOMPILING_EMULATOR=/path/to/pseudo_emulator is passed to this # test -add_executable(target_with_emulator simple_src.cxx) +add_executable(target_with_emulator simple_src_exiterror.cxx) get_property(emulator TARGET target_with_emulator PROPERTY CROSSCOMPILING_EMULATOR) if(NOT "${emulator}" MATCHES "pseudo_emulator") @@ -20,7 +20,7 @@ if(NOT "${emulator}" MATCHES "another_emulator") endif() unset(CMAKE_CROSSCOMPILING_EMULATOR CACHE) -add_executable(target_without_emulator simple_src.cxx) +add_executable(target_without_emulator simple_src_exiterror.cxx) get_property(emulator TARGET target_without_emulator PROPERTY CROSSCOMPILING_EMULATOR) if(NOT "${emulator}" STREQUAL "") diff --git a/Tests/RunCMake/CrosscompilingEmulator/TryRun.cmake b/Tests/RunCMake/CrosscompilingEmulator/TryRun.cmake index 4851cc7..af3712c 100644 --- a/Tests/RunCMake/CrosscompilingEmulator/TryRun.cmake +++ b/Tests/RunCMake/CrosscompilingEmulator/TryRun.cmake @@ -2,7 +2,7 @@ set(CMAKE_CROSSCOMPILING 1) try_run(run_result compile_result ${CMAKE_CURRENT_BINARY_DIR} - ${CMAKE_CURRENT_SOURCE_DIR}/simple_src.cxx + ${CMAKE_CURRENT_SOURCE_DIR}/simple_src_exiterror.cxx RUN_OUTPUT_VARIABLE run_output) message(STATUS "run_output: ${run_output}") @@ -13,6 +13,6 @@ set(CMAKE_CROSSCOMPILING_EMULATOR ${CMAKE_CROSSCOMPILING_EMULATOR} "multi arg") try_run(run_result compile_result ${CMAKE_CURRENT_BINARY_DIR} - ${CMAKE_CURRENT_SOURCE_DIR}/simple_src.cxx + ${CMAKE_CURRENT_SOURCE_DIR}/simple_src_exiterror.cxx RUN_OUTPUT_VARIABLE run_output) message(STATUS "Emulator with arguments run_output: ${run_output}") diff --git a/Tests/RunCMake/CrosscompilingEmulator/simple_src.cxx b/Tests/RunCMake/CrosscompilingEmulator/simple_src_exiterror.cxx index e5e94f2..e5e94f2 100644 --- a/Tests/RunCMake/CrosscompilingEmulator/simple_src.cxx +++ b/Tests/RunCMake/CrosscompilingEmulator/simple_src_exiterror.cxx |