mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-09 07:11:05 -06:00
Tests/RunCMake: Add script to auto-generate RunCMake test suite stub
This commit is contained in:
10
Tests/RunCMake/AddRunCMakeTest.cmake
Normal file
10
Tests/RunCMake/AddRunCMakeTest.cmake
Normal file
@@ -0,0 +1,10 @@
|
||||
if(NOT DEFINED RunCMake_TEST_SUITE)
|
||||
message("Usage: ${CMAKE_COMMAND} -DRunCMake_TEST_SUITE=<test name> -P Tests/RunCMake/AddRunCMakeTestSuite.cmake")
|
||||
else()
|
||||
include("Source/CMakeVersion.cmake")
|
||||
set(RunCMake_TEST_DIR "Tests/RunCMake/${RunCMake_TEST_SUITE}")
|
||||
file(MAKE_DIRECTORY "${RunCMake_TEST_DIR}")
|
||||
file(WRITE "${RunCMake_TEST_DIR}/CMakeLists.txt" "cmake_minimum_required(VERSION ${CMake_VERSION_MAJOR}.${CMake_VERSION_MINOR})\nproject(\${RunCMake_TEST} NONE)\ninclude(\${RunCMake_TEST}.cmake)\n")
|
||||
file(WRITE "${RunCMake_TEST_DIR}/RunCMakeTest.cmake" "include(RunCMake)\n\n# Write your test cases below, like so:\n#\n# run_cmake(TestCaseName)\n")
|
||||
file(APPEND "Tests/RunCMake/CMakeLists.txt" "add_RunCMake_test(${RunCMake_TEST_SUITE})\n")
|
||||
endif()
|
||||
@@ -82,3 +82,10 @@ match the regular expression are not run. For example::
|
||||
|
||||
This will only run subtests in ``RunCMake.Example`` that start with
|
||||
``example``.
|
||||
|
||||
To speed up the process of creating a new ``RunCMake`` test, you can run a
|
||||
script that will automatically perform steps 1 through 4 for you::
|
||||
|
||||
cmake -DRunCMake_TEST_SUITE=<test suite name> -P Tests/RunCMake/AddRunCMakeTestSuite.cmake
|
||||
|
||||
Be sure to run this from the top-level CMake source directory.
|
||||
|
||||
Reference in New Issue
Block a user