Merge topic 'document-test-layout'
378f229
Tests: document where to put tests
This commit is contained in:
commit
ae61602385
|
@ -0,0 +1,34 @@
|
||||||
|
If you think about adding a new testcase then here is a small checklist you
|
||||||
|
can run through to find a proper place for it. Go through the list from the
|
||||||
|
beginning and stop once you find something that matches your tests needs,
|
||||||
|
i.e. if you will test a module and only need the configure mode use the
|
||||||
|
instructions from section 2, not 3.
|
||||||
|
|
||||||
|
1. Your testcase can run in CMake script mode, i.e. "cmake -P something"
|
||||||
|
|
||||||
|
Put your test in Tests/CMakeTests/ directory as a .cmake.in file. It will be
|
||||||
|
put into the test binary directory by configure_file(... @ONLY) and run from
|
||||||
|
there. Use the AddCMakeTest() macro in Tests/CMakeTests/CMakeLists.txt to add
|
||||||
|
your test to the test runs.
|
||||||
|
|
||||||
|
2. Your test needs CMake to run in configure mode, but will not build anything
|
||||||
|
|
||||||
|
This includes tests that will build something using try_compile() and friends,
|
||||||
|
but nothing that expects add_executable(), add_library(), or add_test() to run.
|
||||||
|
|
||||||
|
If this matches your test you should put it into the Tests/CMakeOnly/ directory.
|
||||||
|
Create a subdirectory named like your test and write the CMakeLists.txt you
|
||||||
|
need into that subdirectory. Use the add_CMakeOnly_test() macro from
|
||||||
|
Tests/CMakeOnly/CMakeLists.txt to add your test to the test runs.
|
||||||
|
|
||||||
|
3. If you are testing something from the Modules directory
|
||||||
|
|
||||||
|
Put your test in the Tests/Modules/ directory. Create a subdirectory there
|
||||||
|
named after your test. Use the ADD_TEST_MACRO macro from Tests/CMakeLists.txt
|
||||||
|
to add your test to the test run. If you have put your stuff in
|
||||||
|
Tests/Modules/Foo then you call it using ADD_TEST_MACRO(Module.Foo Foo).
|
||||||
|
|
||||||
|
4. You are doing other stuff.
|
||||||
|
|
||||||
|
Find a good place ;) In doubt mail to cmake-developers@cmake.org and ask for
|
||||||
|
advise.
|
Loading…
Reference in New Issue