summaryrefslogtreecommitdiff
path: root/share/cmake-3.6/Help/prop_test/TIMEOUT_AFTER_MATCH.rst
diff options
context:
space:
mode:
Diffstat (limited to 'share/cmake-3.6/Help/prop_test/TIMEOUT_AFTER_MATCH.rst')
-rwxr-xr-xshare/cmake-3.6/Help/prop_test/TIMEOUT_AFTER_MATCH.rst37
1 files changed, 37 insertions, 0 deletions
diff --git a/share/cmake-3.6/Help/prop_test/TIMEOUT_AFTER_MATCH.rst b/share/cmake-3.6/Help/prop_test/TIMEOUT_AFTER_MATCH.rst
new file mode 100755
index 0000000..a191a9c
--- /dev/null
+++ b/share/cmake-3.6/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.