diff options
author | Brad King <brad.king@kitware.com> | 2016-03-22 20:09:28 (GMT) |
---|---|---|
committer | CMake Topic Stage <kwrobot@kitware.com> | 2016-03-22 20:09:28 (GMT) |
commit | 6201c1a6ce4326585bc2c4354119a59134e0be11 (patch) | |
tree | 981e78bbb7bb2e3fc5bd8fc7ab37830e11b37519 /Help | |
parent | 208524b822f7f6ccbe0414452cd9b050263565bc (diff) | |
parent | de7afd2996b9e2055716c2f10a8e64d3fc793efa (diff) | |
download | CMake-6201c1a6ce4326585bc2c4354119a59134e0be11.zip CMake-6201c1a6ce4326585bc2c4354119a59134e0be11.tar.gz CMake-6201c1a6ce4326585bc2c4354119a59134e0be11.tar.bz2 |
Merge topic 'timeout_after_match'
de7afd29 Help: Add notes for topic 'timeout_after_match'
993e48d0 CTest: Optionally use a secondary test timeout after matching output
Diffstat (limited to 'Help')
-rw-r--r-- | Help/manual/cmake-properties.7.rst | 1 | ||||
-rw-r--r-- | Help/prop_test/TIMEOUT_AFTER_MATCH.rst | 37 | ||||
-rw-r--r-- | Help/release/dev/timeout_after_match.rst | 6 |
3 files changed, 44 insertions, 0 deletions
diff --git a/Help/manual/cmake-properties.7.rst b/Help/manual/cmake-properties.7.rst index fbde4eb..578f85a 100644 --- a/Help/manual/cmake-properties.7.rst +++ b/Help/manual/cmake-properties.7.rst @@ -304,6 +304,7 @@ Properties on Tests /prop_test/RUN_SERIAL /prop_test/SKIP_RETURN_CODE /prop_test/TIMEOUT + /prop_test/TIMEOUT_AFTER_MATCH /prop_test/WILL_FAIL /prop_test/WORKING_DIRECTORY diff --git a/Help/prop_test/TIMEOUT_AFTER_MATCH.rst b/Help/prop_test/TIMEOUT_AFTER_MATCH.rst new file mode 100644 index 0000000..a191a9c --- /dev/null +++ b/Help/prop_test/TIMEOUT_AFTER_MATCH.rst @@ -0,0 +1,37 @@ +TIMEOUT_AFTER_MATCH +------------------- + +Change a test's timeout duration after a matching line is encountered +in its output. + +Usage +^^^^^ + +.. code-block:: cmake + + add_test(mytest ...) + set_property(TEST mytest PROPERTY TIMEOUT_AFTER_MATCH "${seconds}" "${regex}") + +Description +^^^^^^^^^^^ + +Allow a test ``seconds`` to complete after ``regex`` is encountered in +its output. + +When the test outputs a line that matches ``regex`` its start time is +reset to the current time and its timeout duration is changed to +``seconds``. Prior to this, the timeout duration is determined by the +:prop_test:`TIMEOUT` property or the :variable:`CTEST_TEST_TIMEOUT` +variable if either of these are set. + +:prop_test:`TIMEOUT_AFTER_MATCH` is useful for avoiding spurious +timeouts when your test must wait for some system resource to become +available before it can execute. Set :prop_test:`TIMEOUT` to a longer +duration that accounts for resource acquisition and use +:prop_test:`TIMEOUT_AFTER_MATCH` to control how long the actual test +is allowed to run. + +If the required resource can be controlled by CTest you should use +:prop_test:`RESOURCE_LOCK` instead of :prop_test:`TIMEOUT_AFTER_MATCH`. +This property should be used when only the test itself can determine +when its required resources are available. diff --git a/Help/release/dev/timeout_after_match.rst b/Help/release/dev/timeout_after_match.rst new file mode 100644 index 0000000..83f316d --- /dev/null +++ b/Help/release/dev/timeout_after_match.rst @@ -0,0 +1,6 @@ +timeout_after_match +------------------- + +* CTest learned to optionally enforce a secondary timeout after matching + certain output from a test. See the :prop_test:`TIMEOUT_AFTER_MATCH` test + property. |