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.stt-unittests
+}
+
+test_main() {
+ echo "test_main start"
+ launch_app org.tizen.stt-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}
%post
/sbin/ldconfig
%defattr(-,root,root,-)
%{TZ_SYS_RO_PACKAGES}/org.tizen.stt-unittests.xml
%{TZ_SYS_RO_APP}/org.tizen.stt-unittests/bin/stt-unittests
+%{_bindir}/tizen-unittests/%{name}/run-unittest.sh
INCLUDE_DIRECTORIES(${CMAKE_BINARY_DIR}/common)
AUX_SOURCE_DIRECTORY(src SOURCES)
-AUX_SOURCE_DIRECTORY(${CMAKE_CURRENT_SOURCE_DIR}/../client STT_CLIENT_SOURCES)
-AUX_SOURCE_DIRECTORY(${CMAKE_CURRENT_SOURCE_DIR}/../common STT_COMMON_SOURCES)
ADD_DEFINITIONS("-DFULLVER=\"${FULLVER}\"")
ADD_EXECUTABLE(${UNITTEST_STT}
- ${STT_COMMON_SOURCES}
- ${STT_CLIENT_SOURCES}
${SOURCES}
)
+
+TARGET_LINK_LIBRARIES(${UNITTEST_STT} stt -ldl ${pkgs_LDFLAGS})
TARGET_LINK_LIBRARIES(${UNITTEST_STT} ${GTEST_LIBRARIES} ${pkgs_LDFLAGS} ${EXTRA_LDFLAGS})
SET_TARGET_PROPERTIES(${UNITTEST_STT} 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;
}
+++ /dev/null
-/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <gtest/gtest.h>
-#include <stt.h>
-
-#include "cynara_mock.h"
-#include "system_info_mock.h"
-
-namespace {
-
-class STTDeniedTest : public testing::Test {
- public:
- virtual void SetUp() {
- /* start of TC */
- cynara_check_set_result(CYNARA_API_ACCESS_DENIED);
- }
- virtual void TearDown() {
- /* end of TC */
- cynara_check_set_result(CYNARA_API_ACCESS_ALLOWED);
- }
-};
-
-TEST_F(STTDeniedTest, utc_stt_create_denied)
-{
- int ret = STT_ERROR_NONE;
-
- stt_h stt = NULL;
- ret = stt_create(&stt);
- EXPECT_EQ(ret, STT_ERROR_PERMISSION_DENIED);
-}
-
-} // namespace
}
}
-TEST_F(STTTest, utc_stt_create_out_of_memory)
-{
- int ret = STT_ERROR_NONE;
-
- stt_mock_calloc_set_up(sizeof(stt_client_s), 0);
-
- stt_h stt = NULL;
- ret = stt_create(&stt);
- EXPECT_EQ(ret, STT_ERROR_OUT_OF_MEMORY);
-
- stt_mock_calloc_set_up(sizeof(stt_client_s), sizeof(stt_client_s));
-}
-
} // namespace