export FFLAGS="$FFLAGS -DTIZEN_DEBUG_ENABLE"
%if 0%{?gcov:1}
-export CFLAGS="$CFLAGS -fprofile-arcs -ftest-coverage"
-export CXXFLAGS="$CXXFLAGS -fprofile-arcs -ftest-coverage"
+export CFLAGS="$CFLAGS -fprofile-arcs -ftest-coverage -DTIZEN_TEST_GCOV"
+export CXXFLAGS="$CXXFLAGS -fprofile-arcs -ftest-coverage -DTIZEN_TEST_GCOV"
export FFLAGS="$FFLAGS -fprofile-arcs -ftest-coverage"
export LDFLAGS="$LDFLAGS -lgcov"
%endif
find . -name '*.gcno' -exec cp --parents '{}' "$gcno_obj_dir" ';'
%endif
+cat << EOF > run-unittest.sh
+#!/bin/sh
+setup() {
+ echo "setup start"
+ touch /opt/share/askuser_disable
+ mount -o remount,rw /
+ tpk-backend --preload -y org.tizen.tts-unittests
+}
+
+test_main() {
+ echo "test_main start"
+ launch_app org.tizen.tts-unittests
+}
+
+teardown() {
+ echo "teardown start"
+}
+
+main() {
+ setup
+ test_main
+ teardown
+}
+
+main "\$*"
+EOF
+
+mkdir -p %{buildroot}%{_bindir}/tizen-unittests/%{name}
+install -m 0755 run-unittest.sh %{buildroot}%{_bindir}/tizen-unittests/%{name}
+
%check
%if "%{_ctest_enable}" == "true"
ctest -V --output-on-failure %{?_smp_mflags}
%{TZ_SYS_RO_PACKAGES}/org.tizen.tts-unittests.xml
%{TZ_SYS_RO_APP}/org.tizen.tts-unittests/res/test_pcm.dat
%{TZ_SYS_RO_APP}/org.tizen.tts-unittests/bin/tts-unittests
+%{_bindir}/tizen-unittests/%{name}/run-unittest.sh
INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/../include)
AUX_SOURCE_DIRECTORY(src SOURCES)
-AUX_SOURCE_DIRECTORY(${CMAKE_CURRENT_SOURCE_DIR}/../client TTS_CLIENT_SOURCES)
-AUX_SOURCE_DIRECTORY(${CMAKE_CURRENT_SOURCE_DIR}/../common TTS_COMMON_SOURCES)
ADD_DEFINITIONS("-DFULLVER=\"${FULLVER}\"")
ADD_EXECUTABLE(${UNITTEST_TTS}
- ${TTS_COMMON_SOURCES}
- ${TTS_CLIENT_SOURCES}
${SOURCES}
)
+
+TARGET_LINK_LIBRARIES(${UNITTEST_TTS} tts -ldl ${pkgs_LDFLAGS})
TARGET_LINK_LIBRARIES(${UNITTEST_TTS} ${GTEST_LIBRARIES} ${pkgs_LDFLAGS} ${EXTRA_LDFLAGS})
SET_TARGET_PROPERTIES(${UNITTEST_TTS} PROPERTIES
COMPILE_FLAGS "-fPIE"
#include <gtest/gtest.h>
#include <gmock/gmock.h>
+
+#ifdef TIZEN_TEST_GCOV
+extern "C" void __gcov_flush(void);
+#endif
+
int main(int argc, char** argv) {
+#ifdef TIZEN_TEST_GCOV
+ setenv("GCOV_PREFIX", "/tmp", 1);
+#endif
+
testing::InitGoogleTest(&argc, argv);
- return RUN_ALL_TESTS();
+ auto testResults = RUN_ALL_TESTS();
+
+#ifdef TIZEN_TEST_GCOV
+ __gcov_flush();
+#endif
+
+ return testResults;
}