summaryrefslogtreecommitdiff
path: root/share/cmake-3.18/Help/prop_test/REQUIRED_FILES.rst
diff options
context:
space:
mode:
Diffstat (limited to 'share/cmake-3.18/Help/prop_test/REQUIRED_FILES.rst')
-rw-r--r--share/cmake-3.18/Help/prop_test/REQUIRED_FILES.rst38
1 files changed, 38 insertions, 0 deletions
diff --git a/share/cmake-3.18/Help/prop_test/REQUIRED_FILES.rst b/share/cmake-3.18/Help/prop_test/REQUIRED_FILES.rst
new file mode 100644
index 0000000..baf209c
--- /dev/null
+++ b/share/cmake-3.18/Help/prop_test/REQUIRED_FILES.rst
@@ -0,0 +1,38 @@
+REQUIRED_FILES
+--------------
+
+List of files required to run the test. The filenames are relative to the
+test :prop_test:`WORKING_DIRECTORY` unless an absolute path is specified.
+
+If set to a list of files, the test will not be run unless all of the
+files exist.
+
+Examples
+~~~~~~~~
+
+Suppose that ``test.txt`` is created by test ``baseTest`` and ``none.txt``
+does not exist:
+
+.. code-block:: cmake
+
+ add_test(NAME baseTest ...) # Assumed to create test.txt
+ add_test(NAME fileTest ...)
+
+ # The following ensures that if baseTest is successful, test.txt will
+ # have been created before fileTest is run
+ set_tests_properties(fileTest PROPERTIES
+ DEPENDS baseTest
+ REQUIRED_FILES test.txt
+ )
+
+ add_test(NAME notRunTest ...)
+
+ # The following makes notRunTest depend on two files. Nothing creates
+ # the none.txt file, so notRunTest will fail with status "Not Run".
+ set_tests_properties(notRunTest PROPERTIES
+ REQUIRED_FILES "test.txt;none.txt"
+ )
+
+The above example demonstrates how ``REQUIRED_FILES`` works, but it is not the
+most robust way to implement test ordering with failure detection. For that,
+test fixtures are a better alternative (see :prop_test:`FIXTURES_REQUIRED`).