diff options
author | David Cole <david.cole@kitware.com> | 2009-10-06 17:27:13 (GMT) |
---|---|---|
committer | David Cole <david.cole@kitware.com> | 2009-10-06 17:27:13 (GMT) |
commit | d8efcfc787b08e52c28611347e4c60cddde00aa2 (patch) | |
tree | cc25588d7d05a26dc8e07eeed9ba841512f49eb5 /Tests | |
parent | 444e581860fe80dc013613bd6d967db1dbed4e18 (diff) | |
download | CMake-d8efcfc787b08e52c28611347e4c60cddde00aa2.zip CMake-d8efcfc787b08e52c28611347e4c60cddde00aa2.tar.gz CMake-d8efcfc787b08e52c28611347e4c60cddde00aa2.tar.bz2 |
Increase coverage. Add test of class cmakewizard. (cmake -i 'mode')
Diffstat (limited to 'Tests')
-rw-r--r-- | Tests/CMakeLists.txt | 5 | ||||
-rw-r--r-- | Tests/CMakeWizardTest.cmake | 52 |
2 files changed, 57 insertions, 0 deletions
diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt index e87fd8c..28ee36e 100644 --- a/Tests/CMakeLists.txt +++ b/Tests/CMakeLists.txt @@ -1312,6 +1312,11 @@ ${CMake_BINARY_DIR}/bin/cmake -DVERSION=CVS -P ${CMake_SOURCE_DIR}/Utilities/Rel ) ENDIF(NOT EXISTS "${CMAKE_BINARY_DIR}/CMakeLists.txt") + ADD_TEST(CMakeWizardTest ${CMAKE_COMMAND} + -D build_dir:STRING=${CMAKE_CURRENT_BINARY_DIR}/CMakeWizardTest + -D source_dir:STRING=${CMAKE_CURRENT_SOURCE_DIR}/Tutorial/Step3 + -D CMAKE_CTEST_COMMAND:STRING=${CMAKE_CTEST_COMMAND} + -P ${CMAKE_CURRENT_SOURCE_DIR}/CMakeWizardTest.cmake) ENDIF(BUILD_TESTING) SUBDIRS(CMakeTests) diff --git a/Tests/CMakeWizardTest.cmake b/Tests/CMakeWizardTest.cmake new file mode 100644 index 0000000..bcae8af --- /dev/null +++ b/Tests/CMakeWizardTest.cmake @@ -0,0 +1,52 @@ +message("CTEST_FULL_OUTPUT (Avoid ctest truncation of output)") + +message(STATUS "build_dir='${build_dir}'") + +message(STATUS "source_dir='${source_dir}'") + + +execute_process(COMMAND ${CMAKE_COMMAND} -E + remove_directory ${build_dir} + TIMEOUT 5) + +execute_process(COMMAND ${CMAKE_COMMAND} -E + make_directory ${build_dir} + TIMEOUT 5) + +execute_process(COMMAND ${CMAKE_COMMAND} -E + copy_directory ${source_dir} ${build_dir}/src + TIMEOUT 5) + +execute_process(COMMAND ${CMAKE_COMMAND} -E + make_directory ${build_dir}/build + TIMEOUT 5) + +# This is enough to answer 32 questions with "the default answer is ok"... +# +file(WRITE ${build_dir}/input.txt + "\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n") + + +message(STATUS "running wizard mode (cmake -i)...") + +execute_process(COMMAND ${CMAKE_COMMAND} -i ../src + INPUT_FILE ${build_dir}/input.txt + WORKING_DIRECTORY ${build_dir}/build + TIMEOUT 5 + ) + + +message(STATUS "building...") + +execute_process(COMMAND ${CMAKE_COMMAND} --build . + WORKING_DIRECTORY ${build_dir}/build + TIMEOUT 5 + ) + + +message(STATUS "testing...") + +execute_process(COMMAND ${CMAKE_CTEST_COMMAND} + WORKING_DIRECTORY ${build_dir}/build + TIMEOUT 5 + ) |