BASIS  r3148
CTestCustom.cmake
Go to the documentation of this file.
00001 ##############################################################################
00002 # @file  CTestCustom.cmake
00003 # @brief Custom testing configuration.
00004 #
00005 # @note The CTestCustom.cmake file is automatically generated by BASIS from
00006 #       the file CTestCustom.cmake.in which is part of the
00007 #       BASIS package.
00008 #
00009 # The custom CTest variables which can be set in this CTest configuration file
00010 # are documented on the
00011 # <a href="http://www.vtk.org/Wiki/CMake_Testing_With_CTest#Customizing_CTest">
00012 # Wiki of the VTK project</a>.
00013 #
00014 # Copyright (c) 2011, 2012 University of Pennsylvania. All rights reserved.<br />
00015 # See https://www.cbica.upenn.edu/sbia/software/license.html or COPYING file.
00016 #
00017 # Contact: SBIA Group <sbia-software at uphs.upenn.edu>
00018 #
00019 # @ingroup BasisSettings
00020 ##############################################################################
00021 
00022 # ============================================================================
00023 # disable verification of self-signed CA certificates
00024 # ============================================================================
00025 
00026 ## @brief cURL options for dashboad submissions.
00027 #
00028 # The following cURL options disable the verification of the CA certificate.
00029 # This is required when self-signed certificates are used which cannot be verified.
00030 #
00031 # The drop method is set in the CTest configuration file CTestConfig.cmake.
00032 #
00033 # Note: By default, CTest does not support HTTPS as submission method.
00034 #       In order to enable it, CTest (and hence CMake) has to be build
00035 #       manually with the option CMAKE_USE_OPENSSL enabled.
00036 if (CTEST_DROP_METHOD STREQUAL "https")
00037   set (
00038     CTEST_CURL_OPTIONS
00039       "CURLOPT_SSL_VERIFYPEER_OFF"
00040       "CURLOPT_SSL_VERIFYHOST_OFF"
00041   )
00042 endif ()
00043 
00044 # ============================================================================
00045 # custom CTest settings
00046 # ============================================================================
00047 
00048 # ----------------------------------------------------------------------------
00049 # warnings
00050 # ----------------------------------------------------------------------------
00051 
00052 ## @brief Match expressions for warning messages.
00053 set (
00054   CTEST_CUSTOM_WARNING_MATCH
00055     ${CTEST_CUSTOM_WARNING_MATCH} # keep current warning matches
00056     "[0-9][0-9]*: WARNING "       # add match expressions on separate lines
00057     "[0-9][0-9]*: Warning "
00058     "[0-9][0-9]*: warning "
00059 )
00060 
00061 ## @brief Match expressions for ignored warning messages.
00062 set (
00063   CTEST_CUSTOM_WARNING_EXCEPTION
00064     ${CTEST_CUSTOM_WARNING_EXCEPTION} # keep current warning exceptions
00065 #   "Example-1.0"                     # add exception expressions on separate lines
00066 )
00067 
00068 # specify maximum number of warnings to display
00069 #set (CTEST_CUSTOM_MAXIMUM_NUMBER_OF_WARNINGS "100")
00070 
00071 # ----------------------------------------------------------------------------
00072 # errors
00073 # ----------------------------------------------------------------------------
00074 
00075 ## @brief Match expressions for error messages.
00076 set (
00077   CTEST_CUSTOM_ERROR_MATCH
00078     ${CTEST_CUSTOM_ERROR_MATCH} # keep current error matches
00079     "[0-9][0-9]*: ERROR "       # add match expressions on separate lines
00080     "[0-9][0-9]*: Error "
00081     "[0-9][0-9]*: error "
00082     "No tests were found!!!"    # CTest error if their are no tests
00083 )
00084 
00085 ## @brief Match expressions for ignored error messages.
00086 set (
00087   CTEST_CUSTOM_ERROR_EXCEPTION
00088     ${CTEST_CUSTOM_ERROR_EXCEPTION} # keep current error exceptions
00089 #   "ExampleExec-1.0"               # add exception expressions on separate lines
00090 )
00091 
00092 # specify maximum number of errors to display
00093 #set (CTEST_CUSTOM_MAXIMUM_NUMBER_OF_ERRORS "100")
00094 
00095 # ----------------------------------------------------------------------------
00096 # test
00097 # ----------------------------------------------------------------------------
00098 
00099 ## @brief Specify tests which should be ignored during the test stage.
00100 set (
00101   CTEST_CUSTOM_TESTS_IGNORE
00102     ${CTEST_CUSTOM_TESTS_IGNORE}
00103     ""
00104 )
00105 
00106 ## @brief Specify command to execute before execution of any test during test stage.
00107 set (
00108   CTEST_CUSTOM_PRE_TEST
00109     ${CTEST_CUSTOM_PRE_TEST}
00110     ""
00111 )
00112 
00113 ## @brief Specify command to execute at the end of the test stage.
00114 set (
00115   CTEST_CUSTOM_POST_TEST
00116     ${CTEST_CUSTOM_POST_TEST}
00117     ""
00118 )
00119 
00120 # ----------------------------------------------------------------------------
00121 # coverage
00122 # ----------------------------------------------------------------------------
00123 
00124 
00125 # get relative paths for use in globbing expression
00126 #
00127 # Note that all public include files are copied to the build tree and thus
00128 # consider only the once in the build tree, not the once in the source tree.
00129 file (RELATIVE_PATH MODULES_DIR "/sbia/home/schuha/projects/basis" "/sbia/home/schuha/projects/basis/modules")
00130 file (RELATIVE_PATH CODE_DIR    "/sbia/home/schuha/projects/basis" "/sbia/home/schuha/projects/basis/src")
00131 file (RELATIVE_PATH INCLUDE_DIR "/sbia/home/schuha/sandbox/build/basis" "/sbia/home/schuha/sandbox/build/basis/include")
00132 
00133 ## @brief Exclude certain files from coverage analysis.
00134 set (
00135   CTEST_CUSTOM_COVERAGE_EXCLUDE
00136     ${CTEST_CUSTOM_COVERAGE_EXCLUDE} # keep current exclude expressions
00137     "/CMakeFiles/CMakeTmp/"          # exclude try_compile sources
00138     "./test/.*"                      # exclude test implementations
00139     "./modules/.*/test/.*"           # exclude test implementations of modules
00140     # add further exclude expressions here
00141     "/gtest/"                        # tested by Google
00142     "/gmock/"                        # tested by Google
00143     "test.cxx"                       # tested by Google
00144     "test_main.cxx"                  # tested by Google
00145     "/except.h"                      # only macro definitions
00146 )
00147 
00148 ## @brief Specify additional files which should be considered for coverage report.
00149 #
00150 # Note that the expressions here are globbing expression as interpreted
00151 # by CMake's file(GLOB) command, not regular expressions.
00152 set (CTEST_EXTRA_COVERAGE_GLOB ${CTEST_EXTRA_COVERAGE_GLOB})
00153 foreach (E IN ITEMS .c .cc .cpp .cxx .h .hh .hpp .hxx .txx .inl .inc)
00154   list (APPEND CTEST_EXTRA_COVERAGE_GLOB
00155     "${CODE_DIR}/*${E}"
00156   )
00157 endforeach ()
00158 foreach (E IN ITEMS .h .hh .hpp .hxx .txx .inl .inc)
00159   list (APPEND CTEST_EXTRA_COVERAGE_GLOB
00160     "${INCLUDE_DIR}/*${E}"
00161   )
00162 endforeach ()
00163 foreach (M IN LISTS "")
00164   foreach (E IN ITEMS .h .hh .hpp .hxx .txx .inl .inc)
00165     list (APPEND CTEST_EXTRA_COVERAGE_GLOB
00166       "${MODULES_DIR}/${M}/${INCLUDE_DIR}/*${E}"
00167     )
00168   endforeach ()
00169 endforeach ()
00170 
00171 # ----------------------------------------------------------------------------
00172 # memory check
00173 # ----------------------------------------------------------------------------
00174 
00175 ## @brief Specify tests which should be ignored during the memory check stage.
00176 set (
00177   CTEST_CUSTOM_MEMCHECK_IGNORE
00178     ""
00179 )
00180 
00181 ## @brief Specify command to execute before execution of any test during memory check stage.
00182 set (
00183   CTEST_CUSTOM_PRE_MEMCHECK
00184     ""
00185 )
00186 
00187 ## @brief Specify command to execute at the end of the memory check stage.
00188 set (
00189   CTEST_CUSTOM_POST_MEMCHECK
00190     ""
00191 )
00192 
00193 # ----------------------------------------------------------------------------
00194 # output
00195 # ----------------------------------------------------------------------------
00196 
00197 ## @brief Adjust output size limit of failed tests in number of characters/bytes.
00198 #
00199 # Note: In order to have CTest ignore these limits and not truncate the test
00200 #       output, the string "CTEST_FULL_OUTPUT" has to be output by the test
00201 #       (e.g., as first line of the test output to stdout).
00202 #
00203 # See:  http://public.kitware.com/pipermail/cdash/2009-November/000589.html
00204 set (CTEST_CUSTOM_MAXIMUM_FAILED_TEST_OUTPUT_SIZE "1048576")
00205 
00206 ## @brief Adjust output size limit of failed tests in number of characters/bytes.
00207 #
00208 # Note: In order to have CTest ignore these limits and not truncate the test
00209 #       output, the string "CTEST_FULL_OUTPUT" has to be output by the test
00210 #       (e.g., as first line of the test output to stdout).
00211 #
00212 # See:  http://public.kitware.com/pipermail/cdash/2009-November/000589.html
00213 set (CTEST_CUSTOM_MAXIMUM_PASSED_TEST_OUTPUT_SIZE "102400")