diff options
author | Brad King <brad.king@kitware.com> | 2013-03-12 22:07:52 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2013-03-12 22:09:22 (GMT) |
commit | 4e5cb375901293e8fedb5d8e44d1481e3f6799d6 (patch) | |
tree | ca3ce460d02cb27aec0334dfbb7bbc4702e6865e /Tests/RunCMake/build_command/ErrorsCommon.cmake | |
parent | 153242601e22d6f06e1f14dc55d70c2a42b2ec5f (diff) | |
download | CMake-4e5cb375901293e8fedb5d8e44d1481e3f6799d6.zip CMake-4e5cb375901293e8fedb5d8e44d1481e3f6799d6.tar.gz CMake-4e5cb375901293e8fedb5d8e44d1481e3f6799d6.tar.bz2 |
Refactor RunCMake.build_command test to allow more cases
Move the ErrorsOFF/ON common logic from CMakeLists.txt into an
ErrorsCommon file to allow other test cases to be added that do not use
the Errors test logic.
Diffstat (limited to 'Tests/RunCMake/build_command/ErrorsCommon.cmake')
-rw-r--r-- | Tests/RunCMake/build_command/ErrorsCommon.cmake | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/Tests/RunCMake/build_command/ErrorsCommon.cmake b/Tests/RunCMake/build_command/ErrorsCommon.cmake new file mode 100644 index 0000000..d224539 --- /dev/null +++ b/Tests/RunCMake/build_command/ErrorsCommon.cmake @@ -0,0 +1,55 @@ +# This CMakeLists file is *sometimes expected* to result in a configure error. +# +# expect this to succeed: +# ../bin/Release/cmake -G Xcode +# ../../CMake/Tests/CMakeCommands/build_command +# +# expect this to fail: +# ../bin/Release/cmake -DTEST_ERROR_CONDITIONS:BOOL=ON -G Xcode +# ../../CMake/Tests/CMakeCommands/build_command +# +# This project exists merely to test the CMake command 'build_command'... +# ...even purposefully calling it with known-bad argument lists to cover +# error handling code. +# + +set(cmd "initial") + +message("0. begin") + +if(TEST_ERROR_CONDITIONS) + # Test with no arguments (an error): + build_command() + message("1. cmd='${cmd}'") + + # Test with unknown arguments (also an error): + build_command(cmd BOGUS STUFF) + message("2. cmd='${cmd}'") + + build_command(cmd STUFF BOGUS) + message("3. cmd='${cmd}'") +else() + message("(skipping cases 1, 2 and 3 because TEST_ERROR_CONDITIONS is OFF)") +endif() + +# Test the one arg signature with none of the optional KEYWORD arguments: +build_command(cmd) +message("4. cmd='${cmd}'") + +# Test the two-arg legacy signature: +build_command(legacy_cmd ${CMAKE_BUILD_TOOL}) +message("5. legacy_cmd='${legacy_cmd}'") +message(" CMAKE_BUILD_TOOL='${CMAKE_BUILD_TOOL}'") + +# Test the optional KEYWORDs: +build_command(cmd CONFIGURATION hoohaaConfig) +message("6. cmd='${cmd}'") + +build_command(cmd PROJECT_NAME hoohaaProject) +message("7. cmd='${cmd}'") + +build_command(cmd TARGET hoohaaTarget) +message("8. cmd='${cmd}'") + +set(cmd "final") +message("9. cmd='${cmd}'") |