From: Inkyun Kil Date: Mon, 1 Apr 2024 07:55:45 +0000 (+0900) Subject: Fix build issue for unittest X-Git-Tag: accepted/tizen/unified/20240404.021335~1 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=b43d6ee7b4e72ada3b95778555871d10668c5147;p=platform%2Fcore%2Fapi%2Fapp-manager.git Fix build issue for unittest - Exact solution not found for mocking 'cynara_initialize' and 'cynara_finish' - Issues arize when creating them. -- terminate called after throwing an instance of 'std::invalid_argument' what(): The test does not provide mock of "10CynaraMock" Change-Id: I5ff1311bc22bf57c915bc6b3bb5b405147219947 Signed-off-by: Inkyun Kil --- diff --git a/packaging/capi-appfw-app-manager.spec b/packaging/capi-appfw-app-manager.spec index bbfdb46..849d208 100644 --- a/packaging/capi-appfw-app-manager.spec +++ b/packaging/capi-appfw-app-manager.spec @@ -70,7 +70,7 @@ MAJORVER=`echo %{version} | awk 'BEGIN {FS="."}{print $1}'` %check export LD_LIBRARY_PATH="../../src" -#ctest --verbose %{?_smp_mflags} +ctest --verbose %{?_smp_mflags} %if 0%{?gcov:1} lcov -c --ignore-errors mismatch,graph,unused --no-external -q -d . -o app-manager.info genhtml app-manager.info -o app-manager.out diff --git a/tests/app-manager_unittests/app_info_tests.cc b/tests/app-manager_unittests/app_info_tests.cc index 1237344..191a93f 100644 --- a/tests/app-manager_unittests/app_info_tests.cc +++ b/tests/app-manager_unittests/app_info_tests.cc @@ -61,6 +61,15 @@ class Mocks : public ::testing::NiceMock, public ::testing::NiceMock, public ::testing::NiceMock {}; +extern "C" int cynara_initialize(cynara** pp_cynara, + const cynara_configuration* p_conf) { + return CYNARA_API_SUCCESS; +} + +extern "C" int cynara_finish(cynara* p_cynara) { + return CYNARA_API_SUCCESS; +} + int fake_aul_app_get_appid_bypid(int pid, char* appid, int len) { snprintf(appid, len, "%s", kAppId); return AUL_R_OK; @@ -623,20 +632,12 @@ TEST_F(AppInfoTest, app_info_clone_N) { } TEST_F(AppInfoTest, app_info_foreach_category_P) { - EXPECT_CALL(GetMock(), cynara_initialize(_, _)) - .WillOnce( - Invoke([&](cynara** pp_cynara, const cynara_configuration* p_conf) { - *pp_cynara = reinterpret_cast(&dummy); - return CYNARA_API_SUCCESS; - })); EXPECT_CALL(GetMock(), cynara_check(_, _, _, _, _)) .WillOnce(Invoke( [&](cynara* p_cynara, const char* client, const char* client_session, const char* user, const char* privilege) { return CYNARA_API_ACCESS_ALLOWED; })); - EXPECT_CALL(GetMock(), cynara_finish(_)) - .WillOnce(Invoke([&](cynara* p_cynara) { return CYNARA_API_SUCCESS; })); EXPECT_CALL(GetMock(), pkgmgrinfo_appinfo_foreach_category(_, _, _)) .WillOnce(Invoke([&](pkgmgrinfo_appinfo_h handle, diff --git a/tests/app-manager_unittests/mock/cynara_mock.cc b/tests/app-manager_unittests/mock/cynara_mock.cc index 032aa5f..a7e3e02 100644 --- a/tests/app-manager_unittests/mock/cynara_mock.cc +++ b/tests/app-manager_unittests/mock/cynara_mock.cc @@ -19,18 +19,9 @@ #include "app-manager_unittests/mock/mock_hook.hh" #include "app-manager_unittests/mock/test_fixture.hh" -extern "C" int cynara_initialize(cynara** pp_cynara, - const cynara_configuration* p_conf) { - return MOCK_HOOK_P2(CynaraMock, cynara_initialize, pp_cynara, p_conf); -} - extern "C" int cynara_check(cynara* p_cynara, const char* client, const char* client_session, const char* user, const char* privilege) { return MOCK_HOOK_P5(CynaraMock, cynara_check, p_cynara, client, client_session, user, privilege); } - -extern "C" int cynara_finish(cynara* p_cynara) { - return MOCK_HOOK_P1(CynaraMock, cynara_finish, p_cynara); -} diff --git a/tests/app-manager_unittests/mock/cynara_mock.hh b/tests/app-manager_unittests/mock/cynara_mock.hh index fa9883a..ebf6f0f 100644 --- a/tests/app-manager_unittests/mock/cynara_mock.hh +++ b/tests/app-manager_unittests/mock/cynara_mock.hh @@ -27,10 +27,8 @@ class CynaraMock : public virtual ModuleMock { public: virtual ~CynaraMock() {} - MOCK_METHOD2(cynara_initialize, int(cynara**, const cynara_configuration*)); MOCK_METHOD5(cynara_check, int(cynara*, const char*, const char*, const char*, const char*)); - MOCK_METHOD1(cynara_finish, int(cynara*)); }; #endif // APP_MANAGER_UNITTESTS_MOCK_CYNARA_MOCK_HH_