--- /dev/null
+CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
+#PROJECT(privacy-manager-test)
+
+SET(CMAKE_INSTALL_PREFIX /usr)
+SET(PREFIX ${CMAKE_INSTALL_PREFIX})
+SET(EXEC_PREFIX "\${prefix}")
+SET(LIBDIR "\${prefix}/lib")
+SET(INCLUDEDIR "\${prefix}/include")
+SET(VERSION 0.0)
+
+SET(VERSION_MAJOR 0)
+SET(VERSION "${VERSION_MAJOR}.0.1")
+
+INCLUDE(FindPkgConfig)
+pkg_check_modules(pkgs REQUIRED dlog)
+
+FOREACH(flag ${pkgs_CFLAGS})
+ SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
+ENDFOREACH(flag)
+
+SET(CMAKE_C_FLAGS_PROFILING " -g -pg")
+SET(CMAKE_CXX_FLAGS_PROFILING " -std=c++0x -g -pg")
+SET(CMAKE_C_FLAGS_DEBUG " -g")
+SET(CMAKE_CXX_FLAGS_DEBUG " -std=c++0x -g")
+SET(CMAKE_C_FLAGS_RELEASE " -g")
+SET(CMAKE_CXX_FLAGS_RELEASE " -std=c++0x -g")
+SET(CMAKE_C_FLAGS_CCOV " -g --coverage")
+SET(CMAKE_CXX_FLAGS_CCOV " -std=c++0x -g --coverage")
+
+SET(test_src_dir "${CMAKE_SOURCE_DIR}/test/")
+SET(test_include_dir "${CMAKE_SOURCE_DIR}/test/")
+SET(client_include_dir "${CMAKE_SOURCE_DIR}/client/inc/")
+SET(common_include_dir "${CMAKE_SOURCE_DIR}/common/inc/")
+
+## Additional flag
+ADD_DEFINITIONS("-fvisibility=hidden")
+ADD_DEFINITIONS("-Wall -Werror")
+ADD_DEFINITIONS("-DDLOG_ERROR_ENABLED")
+
+###################################################################################################
+## for privacy-manager-test (executable)
+INCLUDE_DIRECTORIES(${pkgs_INCLUDE_DIRS} ${test_include_dir} ${client_include_dir} ${common_include_dir})
+SET(PRIVACY_MANAGER_TEST_SOURCES
+ ${test_src_dir}/TestMain.cpp
+ )
+
+SET(PRIVACY_MANAGER_TEST_LDFLAGS " -module -avoid-version -L../client")
+SET(PRIVACY_MANAGER_TEST_CFLAGS " ${CFLAGS} -fPIC ")
+#SET(PRIVACY_MANAGER_TEST_LIBADD " ")
+
+ADD_EXECUTABLE(privacy-manager-test ${PRIVACY_MANAGER_TEST_SOURCES})
+ADD_DEPENDENCIES(privacy-manager-test privacy-manager-client)
+
+TARGET_LINK_LIBRARIES(privacy-manager-test ${pkgs_LDFLAGS} ${pkgs_LIBRARIES} privacy-manager-client)
+SET_TARGET_PROPERTIES(privacy-manager-test PROPERTIES COMPILE_FLAGS "${PRIVACY_MANAGER_TEST_CFLAGS}")
+#SET_TARGET_PROPERTIES(privacy-manager-test PROPERTIES SOVERSION ${VERSION_MAJOR})
+#SET_TARGET_PROPERTIES(privacy-manager-test PROPERTIES VERSION ${VERSION})
+###################################################################################################
+
+INSTALL(TARGETS privacy-manager-test DESTINATION ../bin COMPONENT RuntimeLibraries)
+#INSTALL(FILES ${PRIVACY_MANAGER_TEST_HEADERS} DESTINATION ../include)
\ No newline at end of file
--- /dev/null
+\r
+\r
+#include <iostream>\r
+#include <SocketClient.h>\r
+#include <PrivacyManagerClient.h>\r
+#include <PrivacyChecker.h>\r
+#include <glib.h>\r
+#include <privacy_manager_client.h>\r
+\r
+bool __privacy_manager_client_privacy_info_cb(privacy_info_client_s* privacy_info, void* user_data)\r
+{\r
+ std::cout << "-----result : " << *(int*) user_data << std::endl;\r
+\r
+ char* name, *id, *desc;\r
+ bool enabled;\r
+ int res;\r
+ res = privacy_info_client_get_privacy_id(privacy_info, &id);\r
+ std::cout << " id: " << id << " result:" << res << std::endl;\r
+\r
+ res = privacy_info_client_get_privacy_display_name(privacy_info, &name);\r
+ std::cout << " name: " << name << " result:" << res << std::endl;\r
+\r
+ res = privacy_info_client_get_privacy_description(privacy_info, &desc);\r
+ std::cout << " desc: " << desc << " result:" << res << std::endl;\r
+\r
+ res = privacy_info_client_is_enabled(privacy_info, &enabled);\r
+ std::cout << " enabled: " << enabled << " result:" << res << std::endl;\r
+\r
+ return true;\r
+}\r
+\r
+bool __privacy_manager_client_privacy_packages_cb(const char *package_id, void* user_data)\r
+{\r
+ int i = *(int*)user_data;\r
+ std::cout << "__privacy_manager_client_privacy_packages_cb: userdata: " << i++ << " : " << package_id <<std::endl;\r
+\r
+ int res = privacy_manager_client_foreach_get_privacy_info(package_id, __privacy_manager_client_privacy_info_cb, user_data);\r
+ std::cout << "__privacy_manager_client_privacy_packages_cb: result:" << res <<std::endl;\r
+\r
+ return true;\r
+}\r
+\r
+int check_addAppPackagePrivacyInfo(void)\r
+{\r
+ int res;\r
+ PrivacyManagerClient* pInst = PrivacyManagerClient::getInstance();\r
+\r
+ std::cout << "-- precondition - removeAppPackagePrivacyInfo --" << std::endl;\r
+ res = pInst->removeAppPackagePrivacyInfo("appid2");\r
+ if (res != 0)\r
+ {\r
+ std::cout << "-- precondition - removeAppPackagePrivacyInfo: FAILED : " << res << " --" << std::endl;\r
+ //return -1;\r
+ }\r
+\r
+ std::cout << "-- addAppPackagePrivacyInfo --" << std::endl;\r
+ std::list < std::string> list3;\r
+ list3.push_back (std::string("http://tizen.org/privilege/contextmanager.privacy11"));\r
+ list3.push_back (std::string("http://tizen.org/privilege/contextmanager.privacydd"));\r
+ list3.push_back (std::string("http://tizen.org/privilege/messaging.writ1e"));\r
+ res = pInst->addAppPackagePrivacyInfo("appid2", list3 );\r
+ if (res != 0)\r
+ {\r
+ std::cout << "-- addAppPackagePrivacyInfo: FAILED : " << res << " --" << std::endl;\r
+ return -1;\r
+ }\r
+ return 0;\r
+}\r
+\r
+int tc_capi(void)\r
+{\r
+ //int i = 111;\r
+ int res;\r
+\r
+ //const char *abc[3] = {"abc","def", NULL};\r
+\r
+ char** abc = (char**)calloc(10,sizeof (char*));\r
+ abc[0] = (char*) calloc(128,sizeof(char));\r
+ abc[1] = (char*) calloc(128,sizeof(char));\r
+ abc[2] = (char*) calloc(128,sizeof(char));\r
+ abc[3] = (char*) calloc(128,sizeof(char));\r
+ abc[4] = (char*) calloc(128,sizeof(char));\r
+ abc[5] = (char*) calloc(128,sizeof(char));;\r
+\r
+ std::cout<<"111"<<std::endl;\r
+ memcpy(abc[0], "http://tizen.org/privilege/bluetooth.admin", 128);\r
+ memcpy(abc[1], "http://tizen.org/privilege/bluetooth.gap", 128);\r
+ memcpy(abc[2], "http://tizen.org/privilege/bluetoothmanager", 128);\r
+ memcpy(abc[3], "http://tizen.org/privilege/contact.read", 128);\r
+ memcpy(abc[4], "http://tizen.org/privilege/messaging.readr", 128);\r
+\r
+ res = privacy_manager_client_uninstall_privacy("appid1");\r
+\r
+ res = privacy_manager_client_install_privacy("appid1", (const char**)abc);\r
+ std::cout<< " privacy_manager_client_install_privacy result : "<<res <<std::endl;\r
+ int i = 111;\r
+ res = privacy_manager_client_foreach_privacy_packages(__privacy_manager_client_privacy_packages_cb , &i);\r
+ std::cout<< " privacy_manager_client_get_privacy_packages result : "<<res <<std::endl;\r
+\r
+ res = privacy_manager_client_set_package_privacy("appid1", "http://tizen.org/privacy/bluetooth", false);\r
+ std::cout<< " privacy_manager_client_set_package_privacy result : "<<res <<std::endl;\r
+\r
+ res = privacy_manager_client_foreach_get_privacy_info("appid1", __privacy_manager_client_privacy_info_cb, &i);\r
+ std::cout << "result " << " : " << res <<std::endl;\r
+\r
+ \r
+ res = privacy_manager_client_set_package_privacy("appid1", "http://tizen.org/privacy/bluetooth", true);\r
+ std::cout<< " privacy_manager_client_set_package_privacy result : "<<res <<std::endl;\r
+\r
+ res = privacy_manager_client_foreach_get_privacy_info("appid1", __privacy_manager_client_privacy_info_cb, &i);\r
+ std::cout << "result " << " : " << res <<std::endl;\r
+\r
+ return res;\r
+}\r
+#include <unistd.h>\r
+int tc_check(void)\r
+{\r
+ int res;\r
+ PrivacyManagerClient* pInst = PrivacyManagerClient::getInstance();\r
+\r
+ std::cout << "-- precondition - removeAppPackagePrivacyInfo --" << std::endl;\r
+ res = pInst->removeAppPackagePrivacyInfo("appid2");\r
+ if (res != 0)\r
+ {\r
+ std::cout << "-- precondition - removeAppPackagePrivacyInfo: FAILED : " << res << " --" << std::endl;\r
+ //return -1;\r
+ }\r
+\r
+ std::cout << "-- addAppPackagePrivacyInfo --" << std::endl;\r
+ std::list < std::string> list3;\r
+ list3.push_back (std::string("http://tizen.org/privilege/bluetooth.admin"));\r
+ list3.push_back (std::string("http://tizen.org/privilege/contact.read"));\r
+ list3.push_back (std::string("http://tizen.org/privilege/messaging.read"));\r
+ res = pInst->addAppPackagePrivacyInfo("appid2", list3 );\r
+ if (res != 0)\r
+ {\r
+ std::cout << "-- addAppPackagePrivacyInfo: FAILED : " << res << " --" << std::endl;\r
+ return -1;\r
+ }\r
+\r
+ res = PrivacyChecker::checkWithPrivilege ("appid2", "http://tizen.org/privilege/bluetooth.admin");\r
+ std::cout << "result : " << res << std::endl;\r
+\r
+ sleep(1);\r
+ pInst->setPrivacySetting("appid2", "http://tizen.org/privacy/bluetooth", true );\r
+ sleep(1);\r
+\r
+ res = PrivacyChecker::checkWithPrivilege ("appid2", "http://tizen.org/privilege/bluetooth.admin");\r
+ std::cout << "result : " << res << std::endl;\r
+\r
+ std::cout << "-- postcondition - removeAppPackagePrivacyInfo --" << std::endl;\r
+ res = pInst->removeAppPackagePrivacyInfo("appid2");\r
+ if (res != 0)\r
+ {\r
+ std::cout << "-- postcondition - removeAppPackagePrivacyInfo: FAILED : " << res << " --" << std::endl;\r
+ //return -1;\r
+ }\r
+ return 0;\r
+}\r
+\r
+int main (int argc, char* argv[])\r
+{\r
+\r
+\r
+ int res;\r
+\r
+// res = check_addAppPackagePrivacyInfo();\r
+\r
+// std::cout << res << std::endl;\r
+\r
+ //res = tc_capi();\r
+ //std::cout << res << std::endl; \r
+\r
+ res = tc_check();\r
+ std::cout << res <<std::endl;\r
+// int i = 111;\r
+/*\r
+ const char *abc[3] = {"abc","def",NULL};\r
+\r
+\r
+ abc[0] = (char*) calloc(100,sizeof(char));\r
+ memcpy (abc[1], "priv1", 4);\r
+ abc[1] = (char*) calloc(100,sizeof(char));\r
+ memcpy (abc[1], "priv2", 4);\r
+ abc[2] = (char*) calloc(100,sizeof(char));\r
+ memcpy (abc[1], "priv3", 4);\r
+ abc[3] = NULL;\r
+\r
+ res = privacy_manager_client_install_privacy("dddd", abc);\r
+ std::cout<< " privacy_manager_client_install_privacy result : "<<res <<std::endl;\r
+\r
+ res = privacy_manager_client_foreach_privacy_packages(__privacy_manager_client_privacy_packages_cb , &i);\r
+ std::cout<< " privacy_manager_client_get_privacy_packages result : "<<res <<std::endl;\r
+\r
+ res = privacy_manager_client_set_package_privacy("appid1", "privacy1", false);\r
+ std::cout<< " privacy_manager_client_set_package_privacy result : "<<res <<std::endl;\r
+\r
+ res = privacy_manager_client_foreach_get_privacy_info("appid1", __privacy_manager_client_privacy_info_cb, &i);\r
+ std::cout << "result " << " : " << res <<std::endl;\r
+\r
+ \r
+ res = privacy_manager_client_set_package_privacy("appid1", "privacy11", true);\r
+ std::cout<< " privacy_manager_client_set_package_privacy result : "<<res <<std::endl;\r
+\r
+ res = privacy_manager_client_foreach_get_privacy_info("appid1", __privacy_manager_client_privacy_info_cb, &i);\r
+ std::cout << "result " << " : " << res <<std::endl;\r
+ int res;\r
+\r
+ PrivacyChecker::initialize("appid1");\r
+ PrivacyManager* pInst = PrivacyManager::getInstance();\r
+\r
+ std::cout << "-- getPrivacyAppPackages --" << std::endl;\r
+ std::list < std::string > list;\r
+ res = pInst->getPrivacyAppPackages(list);\r
+ if (res != 0)\r
+ {\r
+ std::cout << "-- getPrivacyAppPackages: FAILED : " << res << " --" << std::endl;\r
+ return -1;\r
+ }\r
+ std::list < std::string > ::iterator iter = list.begin();\r
+ std::cout <<"list" <<"\n";\r
+ for (; iter != list.end(); ++iter)\r
+ {\r
+ std::cout << (*iter) <<"\n";\r
+ }\r
+ \r
+ std::cout << "-- setPrivacySetting --" << std::endl;\r
+ res = pInst->setPrivacySetting("appid1", "privacy1", true);\r
+ if (res != 0)\r
+ {\r
+ std::cout << "-- setPrivacySetting: FAILED : " << res << " --" << std::endl;\r
+ return -1;\r
+ }\r
+ \r
+ std::cout << "-- getAppPackagePrivacyInfo --" << std::endl;\r
+ std::list < std::pair <std::string, bool > > list2;\r
+ res = pInst->getAppPackagePrivacyInfo("appid1",list2 );\r
+ if (res != 0)\r
+ {\r
+ std::cout << "-- getAppPackagePrivacyInfo: FAILED : " << res << " --" << std::endl;\r
+ return -1;\r
+ }\r
+ \r
+ for (std::list < std::pair <std::string, bool > >::const_iterator iter = list2.begin(); iter != list2.end(); ++iter)\r
+ {\r
+ std::cout << iter->first << " : " << iter->second << std::endl;\r
+ }\r
+\r
+ std::cout << "-- removeAppPackagePrivacyInfo --" << std::endl;\r
+ res = pInst->removeAppPackagePrivacyInfo("appid2");\r
+ if (res != 0)\r
+ {\r
+ std::cout << "-- removeAppPackagePrivacyInfo: FAILED : " << res << " --" << std::endl;\r
+ //return -1;\r
+ }\r
+ \r
+ std::cout << "-- addAppPackagePrivacyInfo --" << std::endl;\r
+ std::list < std::string> list3;\r
+ list3.push_back (std::string("privacy1"));\r
+ list3.push_back (std::string("privacy4"));\r
+ list3.push_back (std::string("privacy5"));\r
+ res = pInst->addAppPackagePrivacyInfo("appid2", list3 );\r
+ if (res != 0)\r
+ {\r
+ std::cout << "-- addAppPackagePrivacyInfo: FAILED : " << res << " --" << std::endl;\r
+ return -1;\r
+ }\r
+ \r
+ std::cout << "-- removeAppPackagePrivacyInfo --" << std::endl;\r
+ pInst->removeAppPackagePrivacyInfo("appid2");\r
+ if (res != 0)\r
+ {\r
+ std::cout << "-- removeAppPackagePrivacyInfo: FAILED : " << res << " --" << std::endl;\r
+ return -1;\r
+ }\r
+\r
+ \r
+ std::cout <<"result of <appid1, privacy1>: " << PrivacyChecker::check("privacy1") << std::endl;\r
+ std::cout <<"result of <appid1, privacy2>: " << PrivacyChecker::check("privacy2") << std::endl;\r
+ std::cout <<"result of <appid1, privacy10>: " << PrivacyChecker::check("privacy10") << std::endl;\r
+ \r
+ \r
+ \r
+ std::cout << "-- setUserPrompted -- " << false <<std::endl;\r
+ res = pInst->setUserPrompted("appid1", false);\r
+ if (res != 0)\r
+ {\r
+ std::cout << "-- setUserPrompted: FAILED : " << res << " --" << std::endl;\r
+// return -1;\r
+ }\r
+ bool isPrompted;\r
+ res = pInst->isUserPrompted("appid1", isPrompted);\r
+ if (res != 0)\r
+ {\r
+ std::cout << "-- isUserPrompted: FAILED : " << res << " --" << std::endl;\r
+ return -1;\r
+ }\r
+ std::cout <<"prompted? appid1 : " << isPrompted << std::endl;\r
+\r
+ std::cout << "-- setUserPrompted -- " << !isPrompted <<std::endl;\r
+ res = pInst->setUserPrompted("appid1", !isPrompted);\r
+ if (res != 0)\r
+ {\r
+ std::cout << "-- setUserPrompted: FAILED : " << res << " --" << std::endl;\r
+// return -1;\r
+ }\r
+\r
+ res = pInst->isUserPrompted("appid1", isPrompted);\r
+ std::cout <<"prompted? appid1 : " << isPrompted << std::endl;\r
+ if (res != 0)\r
+ {\r
+ std::cout << "-- setUserPrompted: FAILED : " << res << " --" << std::endl;\r
+// return -1;\r
+ }\r
+\r
+ std::cout << "-- addAppPackagePrivacyInfo --" << std::endl;\r
+ std::list < std::string> list5;\r
+ list5.push_back (std::string("privacy1"));\r
+ list5.push_back (std::string("privacy4"));\r
+ list5.push_back (std::string("privacy5"));\r
+ res = pInst->addAppPackagePrivacyInfo("appid11", list5 );\r
+ if (res != 0)\r
+ {\r
+ std::cout << "-- addAppPackagePrivacyInfo: FAILED : " << res << " --" << std::endl;\r
+ return -1;\r
+ }\r
+ std::cout << "-- removeAppPackagePrivacyInfo --" << std::endl;\r
+ pInst->removeAppPackagePrivacyInfo("appid11");\r
+ if (res != 0)\r
+ {\r
+ std::cout << "-- removeAppPackagePrivacyInfo: FAILED : " << res << " --" << std::endl;\r
+ return -1;\r
+ }*/\r
+ return 0;\r
+}
\ No newline at end of file