From: Junkyeong Kim Date: Wed, 19 Aug 2020 04:18:51 +0000 (+0900) Subject: add gcov option for checking code coverage X-Git-Tag: accepted/tizen/unified/20200820.213435~28 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=ed872441095643fd6754fa33a2ee5393dbd669e7;p=platform%2Fcore%2Fuifw%2Flibds.git add gcov option for checking code coverage Change-Id: Id3eebafe701c46bb08ec11949c00a79ee0330640 Signed-off-by: Junkyeong Kim --- diff --git a/packaging/libds.spec b/packaging/libds.spec index 488d26c..81ef44d 100644 --- a/packaging/libds.spec +++ b/packaging/libds.spec @@ -1,3 +1,5 @@ +%define USE_GCOV 0 + Name: libds Version: 0.0.1 Release: 0 @@ -65,6 +67,10 @@ Test module for testing libtbm APIs cp %{SOURCE1001} . %build +%if "%{USE_GCOV}" == "1" +CXXFLAGS+=" -fprofile-arcs -ftest-coverage -DTIZEN_TEST_GCOV" +LDFLAGS+=" -lgcov" +%endif meson setup \ --prefix /usr \ --libdir %{_libdir} \ diff --git a/tests/libds-tests.cpp b/tests/libds-tests.cpp index 6ac27a3..4a9ed5a 100644 --- a/tests/libds-tests.cpp +++ b/tests/libds-tests.cpp @@ -29,6 +29,10 @@ int main(int argc, char **argv) { auto AllTestSuccess = false; +#ifdef TIZEN_TEST_GCOV + setenv("GCOV_PREFIX", "/tmp", 1); +#endif + try { ::testing::InitGoogleMock(&argc, argv); ::testing::FLAGS_gtest_death_test_style = "fast"; @@ -45,5 +49,8 @@ int main(int argc, char **argv) std::cout << "\n"; } +#ifdef TIZEN_TEST_GCOV + __gcov_flush(); +#endif return AllTestSuccess; } diff --git a/tests/libds-tests.h b/tests/libds-tests.h index dfb2119..312a732 100644 --- a/tests/libds-tests.h +++ b/tests/libds-tests.h @@ -39,6 +39,10 @@ #include "libds-mock.h" +#ifdef TIZEN_TEST_GCOV +extern "C" void __gcov_flush(void); +#endif + using ::testing::TestWithParam; using ::testing::Bool; using ::testing::Values;