diff options
author | Andreas Stöckel <astoecke@techfak.uni-bielefeld.de> | 2014-03-04 15:16:06 +0000 |
---|---|---|
committer | andreas <andreas@daaaf23c-2e50-4459-9457-1e69db5a47bf> | 2014-03-04 15:16:06 +0000 |
commit | df938ff92ea02f26c594c610234754101138f646 (patch) | |
tree | 44627288bdbb469344eeb81c46657da7888c8650 /CMakeLists.txt | |
parent | c543117ff43c63a053ea786ed606398ac4687494 (diff) |
added unit test framework
git-svn-id: file:///var/local/svn/basicwriter@14 daaaf23c-2e50-4459-9457-1e69db5a47bf
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r-- | CMakeLists.txt | 58 |
1 files changed, 49 insertions, 9 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index da91330..f4cceee 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -4,17 +4,57 @@ CMAKE_MINIMUM_REQUIRED(VERSION 2.8.9) SET(CMAKE_AUTOMOC ON) FIND_PACKAGE(Qt5Widgets REQUIRED) -INCLUDE_DIRECTORIES(src/) - # Enable C++11 and all warnings SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -pedantic -std=c++11") -ADD_EXECUTABLE(basicwriter - src/main.cpp - src/gui/notepad.cpp - src/gui/components/UIPaneFrame.cpp -# src/gui/components/UIGrid.cpp -# src/gui/components/GridTree.cpp +# Option for enabling testing. Turn on with 'cmake -Dtest=ON'. +OPTION(test "Build all tests." OFF) # Makes boolean 'test' available. + +# Unit test handling +if(test) + # Compile gtest + add_subdirectory(lib/gtest-1.7.0) + + # Enable testing and declare some variables used for compiling the test cases + enable_testing() + set(GTEST_INCLUDE_DIR ${gtest_SOURCE_DIR}/include ${gtest_SOURCE_DIR}) + set(GTEST_LIBRARIES gtest gtest_main) +endif() + +INCLUDE_DIRECTORIES(src/) + +ADD_LIBRARY(ousia_core + src/model/GraphNode +) + +ADD_EXECUTABLE(ousia + src/main +) + +TARGET_LINK_LIBRARIES(ousia + ousia_core ) -QT5_USE_MODULES(basicwriter Widgets) +QT5_USE_MODULES(ousia Widgets) + +if(test) + # Include the gtest include files and the src directory + INCLUDE_DIRECTORIES( + ${GTEST_INCLUDE_DIR} + src/ + ) + + # Add all unit test files + ADD_EXECUTABLE(ousia_test + test/model/GraphNode + ) + + TARGET_LINK_LIBRARIES(ousia_test + ${GTEST_LIBRARIES} + ousia_core + ) + + # Register the unit test + ADD_TEST(ousia_test ousia_test) +endif() + |