Browse Source

Adds CTest infrastructure

CapXilinx 12 years ago
parent
commit
4286d59e0a

+ 1 - 0
source/CMakeLists.txt

@@ -65,6 +65,7 @@ endif(OpENer_TRACES)
 #######################################
 set( OpENer_TESTS OFF CACHE BOOL "Enable tests to be built" )
 if( OpENer_TESTS )
+  enable_testing()
   enable_language( CXX )
   set( CPPUTEST_HOME "" CACHE PATH "Path to CppUTest directory" )
   INCLUDE( ${OpENer_BUILDSUPPORT_DIR}/OpENer_Tests.cmake )

+ 17 - 2
source/tests/CMakeLists.txt

@@ -2,11 +2,26 @@
 # Add test subdirectories             #
 #######################################
 
+#######################################
+# Add test includes                   #
+#######################################
 add_test_includes()
 
+
+###################################################
+# Copy custom test output file to binary location #
+###################################################
+configure_file( CTestCustom.cmake ${PROJECT_BINARY_DIR}/CTestCustom.cmake )
+
 add_subdirectory( utils )
-add_executable( OpENer_Tests main.cpp )
+add_executable( OpENer_Tests OpENerTests.cpp )
 
 set( CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} ${CPPUTEST_HOME}/lib )
 
-target_link_libraries( OpENer_Tests CppUTest CppUTestExt UtilsTest Utils )
+target_link_libraries( OpENer_Tests CppUTest CppUTestExt )
+target_link_libraries( OpENer_Tests UtilsTest Utils )
+
+########################################
+# Adds test to CTest environment       #
+########################################
+add_test(OpENer_Tests ${EXECUTABLE_OUTPUT_PATH}/OpENer_Tests)

+ 1 - 0
source/tests/CTestCustom.cmake

@@ -0,0 +1 @@
+set( CTEST_CUSTOM_POST_TEST ${CTEST_CUSTOM_POST_TEST} "cat Testing/Temporary/LastTest.log" )

+ 1 - 4
source/tests/main.cpp → source/tests/OpENerTests.cpp

@@ -1,7 +1,4 @@
-#include "CppUTest/CommandLineTestRunner.h"
-
-IMPORT_TEST_GROUP(RandomClass);
-IMPORT_TEST_GROUP(XorShiftRandom);
+#include "OpENerTests.h"
 
 int main(int argc, char** argv)
 {

+ 4 - 0
source/tests/OpENerTests.h

@@ -0,0 +1,4 @@
+#include "CppUTest/CommandLineTestRunner.h"
+
+IMPORT_TEST_GROUP(RandomClass);
+IMPORT_TEST_GROUP(XorShiftRandom);