aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRodney Dawes <rodney.dawes@canonical.com>2017-02-07 13:31:18 -0500
committerRodney Dawes <rodney.dawes@canonical.com>2017-02-07 13:31:18 -0500
commit703381ce12b79211c64a8ded04222d277f25cb6e (patch)
tree1efdf525b921d858c46699601a8d8b937f06e545
parent907fc24ba24962c0f30a9efe955dd5cb916c5492 (diff)
downloadayatana-indicator-display-703381ce12b79211c64a8ded04222d277f25cb6e.tar.gz
ayatana-indicator-display-703381ce12b79211c64a8ded04222d277f25cb6e.tar.bz2
ayatana-indicator-display-703381ce12b79211c64a8ded04222d277f25cb6e.zip
Make coverage reporting work.
-rw-r--r--CMakeLists.txt27
-rw-r--r--debian/control1
-rw-r--r--tests/CMakeLists.txt5
-rw-r--r--tests/integration/CMakeLists.txt6
-rw-r--r--tests/unit/CMakeLists.txt7
5 files changed, 31 insertions, 15 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 77e2cbf..7e4431a 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -13,9 +13,6 @@ add_definitions(
set(SERVICE_LIB ${PACKAGE})
set(SERVICE_EXEC "${PACKAGE}-service")
-option(enable_tests "Build the package's automatic tests." ON)
-option(enable_coverage "Generate code coverage reports." ON)
-
##
## GNU standard paths
##
@@ -69,20 +66,20 @@ endif()
add_compile_options(-std=c++14 -fPIC -g)
+add_subdirectory(src)
+add_subdirectory(data)
+add_subdirectory(po)
+
##
## Testing & Coverage
##
-if(${enable_tests})
- enable_testing()
- if(${enable_coverage})
- find_package(CoverageReport)
- endif()
-endif()
+enable_testing()
+add_subdirectory(tests)
+find_package(CoverageReport)
+ENABLE_COVERAGE_REPORT(
+ TARGETS ${SERVICE_LIB} ${SERVICE_EXEC}
+ TESTS ${COVERAGE_TEST_TARGETS}
+ FILTER /usr/include ${CMAKE_BINARY_DIR}/*
+)
-add_subdirectory(src)
-add_subdirectory(data)
-add_subdirectory(po)
-if (${enable_tests})
- add_subdirectory(tests)
-endif ()
diff --git a/debian/control b/debian/control
index 6deae40..92377d1 100644
--- a/debian/control
+++ b/debian/control
@@ -10,6 +10,7 @@ Build-Depends: cmake,
libgudev-1.0-dev,
libproperties-cpp-dev,
# for coverage reports
+ gcovr,
lcov,
# for tests
qt5-default,
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
index 7be2acd..d5fb909 100644
--- a/tests/CMakeLists.txt
+++ b/tests/CMakeLists.txt
@@ -33,3 +33,8 @@ add_test(cppcheck cppcheck --enable=all -USCHEMA_DIR --error-exitcode=2 --inline
add_subdirectory(integration)
add_subdirectory(unit)
add_subdirectory(utils)
+
+set(COVERAGE_TEST_TARGETS
+ ${COVERAGE_TEST_TARGETS}
+ PARENT_SCOPE
+)
diff --git a/tests/integration/CMakeLists.txt b/tests/integration/CMakeLists.txt
index 9ec6688..42d710e 100644
--- a/tests/integration/CMakeLists.txt
+++ b/tests/integration/CMakeLists.txt
@@ -16,9 +16,15 @@ set(TEST_LINK_LIBRARIES
function(add_qt_test_by_name name)
set(TEST_NAME ${name})
+ set(COVERAGE_TEST_TARGETS ${COVERAGE_TEST_TARGETS} ${TEST_NAME} PARENT_SCOPE)
add_executable (${TEST_NAME} ${TEST_NAME}.cpp)
add_test(${TEST_NAME} ${TEST_NAME})
set_property(TEST ${TEST_NAME} APPEND PROPERTY ENVIRONMENT ${CTEST_ENVIRONMENT})
target_link_libraries(${TEST_NAME} ${SERVICE_LINK_LIBRARIES} ${QT_LINK_LIBRARIES} ${TEST_LINK_LIBRARIES} ${THREAD_LINK_LIBRARIES})
endfunction()
add_qt_test_by_name(usb-manager-test)
+
+set(COVERAGE_TEST_TARGETS
+ ${COVERAGE_TEST_TARGETS}
+ PARENT_SCOPE
+)
diff --git a/tests/unit/CMakeLists.txt b/tests/unit/CMakeLists.txt
index 9d8cad2..87fab3a 100644
--- a/tests/unit/CMakeLists.txt
+++ b/tests/unit/CMakeLists.txt
@@ -20,6 +20,7 @@ add_definitions(
function(add_test_by_name name)
set(TEST_NAME ${name})
+ set(COVERAGE_TEST_TARGETS ${COVERAGE_TEST_TARGETS} ${TEST_NAME} PARENT_SCOPE)
add_executable (${TEST_NAME} ${TEST_NAME}.cpp)
add_test(${TEST_NAME} ${TEST_NAME})
set_property(TEST ${TEST_NAME} APPEND PROPERTY ENVIRONMENT ${CTEST_ENVIRONMENT})
@@ -30,6 +31,7 @@ add_test_by_name(rotation-lock-test)
function(add_qt_test_by_name name)
set(TEST_NAME ${name})
+ set(COVERAGE_TEST_TARGETS ${COVERAGE_TEST_TARGETS} ${TEST_NAME} PARENT_SCOPE)
add_executable (${TEST_NAME} ${TEST_NAME}.cpp)
add_test(${TEST_NAME} ${TEST_NAME})
set_property(TEST ${TEST_NAME} APPEND PROPERTY ENVIRONMENT ${CTEST_ENVIRONMENT})
@@ -37,3 +39,8 @@ function(add_qt_test_by_name name)
endfunction()
add_qt_test_by_name(greeter-test)
add_qt_test_by_name(usb-snap-test)
+
+set(COVERAGE_TEST_TARGETS
+ ${COVERAGE_TEST_TARGETS}
+ PARENT_SCOPE
+)