]> https://gitweb.dealii.org/ - dealii-svn.git/commitdiff
Finalize run_test.cmake, cleanup some other parts, Update TODO
authormaier <maier@0785d39b-7218-0410-832d-ea1e28bc413d>
Thu, 26 Sep 2013 14:28:48 +0000 (14:28 +0000)
committermaier <maier@0785d39b-7218-0410-832d-ea1e28bc413d>
Thu, 26 Sep 2013 14:28:48 +0000 (14:28 +0000)
git-svn-id: https://svn.dealii.org/branches/branch_port_the_testsuite@30954 0785d39b-7218-0410-832d-ea1e28bc413d

tests/TODO
tests/cmake/scripts/run_test.cmake
tests/cmake/setup_testsuite.cmake
tests/run_testsuite.cmake

index 86be6e6cb31fc01f9836d26b7f18271ad4ca6fd6..a84bb97d84e5bd5292301d15d8d7cffc35d7f1ce 100644 (file)
@@ -55,16 +55,6 @@ Issues:
    Depending on the version of boost, a version number in the serialization
    output changes and all tests just under serialization/ just fail
 
- - Write a ctest configuration file (I'll do this sometime this week)
-
- - and setup a cdash test server 
-
  - Mesh converter tests?
 
  - Benchmark should be extra, am I right?
-
- - What about the files in
-
-   ./base/data_out_base_dx
-   ./base/data_out_base_povray?
-
index 870e7411606d00ab87f8f95d14d5e15ca0fc9a78..4a27a36ee671dc7d9641077848530eb04caf0059 100644 (file)
@@ -34,27 +34,8 @@ IF("${_result_code}" STREQUAL "0")
 
   MESSAGE("Test ${TEST}: PASSED")
   MESSAGE("===============================   OUTPUT BEGIN  ===============================")
-  #
   # Do not output everything, just that we are successful:
-  #
-  IF(TRGT MATCHES "\\.diff$") # ordinary test:
-    MESSAGE("${TEST}: BUILD successful.")
-    MESSAGE("${TEST}: RUN successful.")
-    MESSAGE("${TEST}: DIFF successful.")
-    MESSAGE("${TEST}: PASSED.")
-  ELSEIF(TRGT MATCHES "\\.run$") # build_test for steps:
-    MESSAGE("${TEST}: CONFIGURE successful.")
-    MESSAGE("${TEST}: BUILD successful.")
-    MESSAGE("${TEST}: RUN successful.")
-    MESSAGE("${TEST}: PASSED.")
-  ELSEIF(TRGT MATCHES "\\.build$") # build_test for steps:
-    MESSAGE("${TEST}: CONFIGURE successful.")
-    MESSAGE("${TEST}: BUILD successful.")
-    MESSAGE("${TEST}: PASSED.")
-  ELSE() # all-headers test:
-    MESSAGE("${TEST}: BUILD successful.")
-    MESSAGE("${TEST}: PASSED.")
-  ENDIF()
+  MESSAGE("${TEST}: PASSED.")
   MESSAGE("===============================    OUTPUT END   ===============================")
 
 ELSE()
index 53d56a5e3152bf391bf61ecfd69e95687e4a5fc7..7a5b87fc0cd9a69948d9e90be5ba5ab729096fd1 100644 (file)
@@ -108,4 +108,3 @@ SET_IF_EMPTY(TEST_TIME_LIMIT 600)
 #
 
 ENABLE_TESTING()
-
index cc03cf838a1c7db91b38458bd0bd7103619130ac..468722a1fbeb489a8f40d1c896e79f775ecdc577 100644 (file)
 ########################################################################
 
 #
-# This is the test script for running the testsuite.
+# This is the ctest script for running and submitting build and regression
+# tests.
 #
 # Invoke it in a _build directory_ (or designated build directory) via:
 #
 #   ctest -S <...>/run_testsuite.cmake
 #
-# The following configuration variables can be overriden with
+# The following configuration variables can be overwritten with
 #
 #   ctest -D<variable>=<value> [...]
 #
 #       be used, otherwise "Unix Makefiles".
 #
 #   TRACK
-#     - TODO (defaults to "Experimental")
+#     - The track the test should be submitted to. Defaults to
+#       "Experimental". Possible values are:
+#
+#       "Experimental"     - all tests that are not specifically "build" or
+#                            "regression" tests should go into this track
+#
+#       "Build Tests"      - Build tests that configure and build in a
+#                            clean directory and run the build tests
+#                            "build_tests/*"
+#
+#       "Regression Tests" - Reserved for the Regression tester
 #
 #   CONFIG_FILE
 #     - A configuration file (see ../deal.II/docs/development/Config.sample)
@@ -87,8 +98,12 @@ IF("${TRACK}" STREQUAL "")
 ENDIF()
 
 IF( NOT "${TRACK}" STREQUAL "Experimental"
-    AND NOT "${TRACK}" STREQUAL "Build Tests" )
-  MESSAGE(FATAL_ERROR "TODO: Unknown TRACK \"${TRACK}\"")
+    AND NOT "${TRACK}" STREQUAL "Build Tests"
+    AND NOT "${TRACK}" STREQUAL "Regression Tests" )
+  MESSAGE(FATAL_ERROR "
+Unknown TRACK \"${TRACK}\" - see the manual for valid values.
+"
+    )
 ENDIF()
 
 MESSAGE("-- TRACK:                  ${TRACK}")
@@ -195,6 +210,15 @@ SET(CTEST_SITE "${_hostname}")
 
 MESSAGE("-- CTEST_SITE:             ${CTEST_SITE}")
 
+IF( "${TRACK}" STREQUAL "Regression Tests"
+    AND NOT CTEST_SITE MATCHES "foobar" )
+  MESSAGE(FATAL_ERROR "
+I'm sorry ${CTEST_SITE}, I'm afraid I can't do that.
+The TRACK \"Regression Tests\" is not for you.
+"
+    )
+ENDIF()
+
 #
 # Assemble configuration options, we need it now:
 #
@@ -361,7 +385,10 @@ IF("${_res}" STREQUAL "0")
       OUTPUT_QUIET RESULT_VARIABLE _res
       )
     IF(NOT "${_res}" STREQUAL "0")
-      MESSAGE(FATAL_ERROR "\"setup_test\" target exited with an error. Bailing out.")
+      MESSAGE(FATAL_ERROR "
+\"setup_test\" target exited with an error. Bailing out.
+"
+        )
     ENDIF()
 
     CTEST_TEST()
@@ -375,7 +402,10 @@ ENDIF()
 FILE(STRINGS ${CTEST_BINARY_DIRECTORY}/Testing/TAG _tag LIMIT_COUNT 1)
 SET(_path "${CTEST_BINARY_DIRECTORY}/Testing/${_tag}")
 IF(NOT EXISTS ${_path})
-  MESSAGE(FATAL_ERROR "Unable to determine test submission files from TAG. Bailing out.")
+  MESSAGE(FATAL_ERROR "
+Unable to determine test submission files from TAG. Bailing out.
+"
+    )
 ENDIF()
 FILE(GLOB _xml_files ${_path}/*.xml)
 EXECUTE_PROCESS(COMMAND sed -i -e
@@ -384,7 +414,10 @@ EXECUTE_PROCESS(COMMAND sed -i -e
   OUTPUT_QUIET RESULT_VARIABLE  _res
   )
 IF(NOT "${_res}" STREQUAL "0")
-  MESSAGE(FATAL_ERROR "\"sed\" failed. Bailing out.")
+  MESSAGE(FATAL_ERROR "
+\"sed\" failed. Bailing out.
+"
+    )
 ENDIF()
 
 IF(NOT "${_svn_WC_REVISION}" STREQUAL "")
@@ -405,4 +438,14 @@ ENDIF()
 # And finally submit:
 #
 
-CTEST_SUBMIT()
+CTEST_SUBMIT(RETRY_COUNT 2 RETRY_DELAY 30 RETURN_VALUE _res)
+IF("${_res}" STREQUAL "0")
+  MESSAGE("-- Test submission successful.")
+ELSE()
+  MESSAGE(FATAL_ERROR "
+Test submission failed.
+"
+    )
+ENDIF()
+
+# .oO( This script is freaky 451 lines long... )

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.