From 91d912044e2b34734deeeadc2a80a560a583e4de Mon Sep 17 00:00:00 2001 From: Sehong Na Date: Sat, 31 May 2014 12:58:06 +0900 Subject: [PATCH 1/2] Initialize Tizen 2.3 --- CMakeLists.txt | 65 + LICENSE | 204 + TC/build.sh | 21 + TC/com.samsung.testapp.xml | 54 + TC/execute.sh | 19 + TC/tet_code | 12 + TC/tet_scen | 7 + TC/tetbuild.cfg | 2 + TC/tetclean.cfg | 2 + TC/tetexec.cfg | 1 + TC/unit/Makefile | 105 + TC/unit/tc_gen.sh | 28 + TC/unit/tslist | 83 + ..._pkgmgr_parser_check_manifest_validation_func.c | 83 + ...cationFW_pkgmgr_parser_get_manifest_file_func.c | 83 + ...r_parser_parse_manifest_for_installation_func.c | 83 + ...parser_parse_manifest_for_uninstallation_func.c | 83 + ...pkgmgr_parser_parse_manifest_for_upgrade_func.c | 83 + ...ionFW_pkgmgrinfo_appinfo_destroy_appinfo_func.c | 89 + ...ionFW_pkgmgrinfo_appinfo_filter_add_bool_func.c | 118 + ...tionFW_pkgmgrinfo_appinfo_filter_add_int_func.c | 103 + ...nFW_pkgmgrinfo_appinfo_filter_add_string_func.c | 118 + ...cationFW_pkgmgrinfo_appinfo_filter_count_func.c | 144 + ...ationFW_pkgmgrinfo_appinfo_filter_create_func.c | 86 + ...tionFW_pkgmgrinfo_appinfo_filter_destroy_func.c | 90 + ...kgmgrinfo_appinfo_filter_foreach_appinfo_func.c | 148 + ...FW_pkgmgrinfo_appinfo_foreach_appcontrol_func.c | 124 + ...onFW_pkgmgrinfo_appinfo_foreach_category_func.c | 124 + ...plicationFW_pkgmgrinfo_appinfo_get_appid_func.c | 120 + ...icationFW_pkgmgrinfo_appinfo_get_appinfo_func.c | 105 + ...icationFW_pkgmgrinfo_appinfo_get_apptype_func.c | 120 + ...ationFW_pkgmgrinfo_appinfo_get_component_func.c | 120 + ...pplicationFW_pkgmgrinfo_appinfo_get_exec_func.c | 120 + ...FW_pkgmgrinfo_appinfo_get_hwacceleration_func.c | 120 + ...pplicationFW_pkgmgrinfo_appinfo_get_icon_func.c | 120 + ...FW_pkgmgrinfo_appinfo_get_installed_list_func.c | 89 + ...plicationFW_pkgmgrinfo_appinfo_get_label_func.c | 120 + ...pplicationFW_pkgmgrinfo_appinfo_get_list_func.c | 175 + ...pplicationFW_pkgmgrinfo_appinfo_get_mime_func.c | 124 + ...ationFW_pkgmgrinfo_appinfo_get_operation_func.c | 124 + ...icationFW_pkgmgrinfo_appinfo_get_pkgname_func.c | 120 + ...ApplicationFW_pkgmgrinfo_appinfo_get_uri_func.c | 124 + ...tionFW_pkgmgrinfo_appinfo_is_autorestart_func.c | 120 + ...icationFW_pkgmgrinfo_appinfo_is_multiple_func.c | 120 + ...cationFW_pkgmgrinfo_appinfo_is_nodisplay_func.c | 120 + ...plicationFW_pkgmgrinfo_appinfo_is_onboot_func.c | 120 + ...ationFW_pkgmgrinfo_appinfo_is_taskmanage_func.c | 120 + ...FW_pkgmgrinfo_create_certinfo_set_handle_func.c | 85 + ...pplicationFW_pkgmgrinfo_create_pkgdbinfo_func.c | 104 + ...ApplicationFW_pkgmgrinfo_delete_certinfo_func.c | 84 + ...W_pkgmgrinfo_destroy_certinfo_set_handle_func.c | 90 + ...plicationFW_pkgmgrinfo_destroy_pkgdbinfo_func.c | 90 + ...ionFW_pkgmgrinfo_pkginfo_create_certinfo_func.c | 85 + ...onFW_pkgmgrinfo_pkginfo_destroy_certinfo_func.c | 90 + ...ionFW_pkgmgrinfo_pkginfo_destroy_pkginfo_func.c | 89 + ...ionFW_pkgmgrinfo_pkginfo_filter_add_bool_func.c | 118 + ...tionFW_pkgmgrinfo_pkginfo_filter_add_int_func.c | 118 + ...nFW_pkgmgrinfo_pkginfo_filter_add_string_func.c | 118 + ...cationFW_pkgmgrinfo_pkginfo_filter_count_func.c | 144 + ...ationFW_pkgmgrinfo_pkginfo_filter_create_func.c | 86 + ...tionFW_pkgmgrinfo_pkginfo_filter_destroy_func.c | 90 + ...kgmgrinfo_pkginfo_filter_foreach_pkginfo_func.c | 148 + ...onFW_pkgmgrinfo_pkginfo_get_author_email_func.c | 120 + ...ionFW_pkgmgrinfo_pkginfo_get_author_href_func.c | 120 + ...ionFW_pkgmgrinfo_pkginfo_get_author_name_func.c | 120 + ...tionFW_pkgmgrinfo_pkginfo_get_cert_value_func.c | 131 + ...ionFW_pkgmgrinfo_pkginfo_get_description_func.c | 120 + ...pplicationFW_pkgmgrinfo_pkginfo_get_icon_func.c | 120 + ..._pkgmgrinfo_pkginfo_get_install_location_func.c | 120 + ...pkgmgrinfo_pkginfo_get_installed_storage_func.c | 120 + ...FW_pkgmgrinfo_pkginfo_get_installed_time_func.c | 120 + ...plicationFW_pkgmgrinfo_pkginfo_get_label_func.c | 120 + ...pplicationFW_pkgmgrinfo_pkginfo_get_list_func.c | 89 + ...onFW_pkgmgrinfo_pkginfo_get_package_size_func.c | 120 + ...icationFW_pkgmgrinfo_pkginfo_get_pkginfo_func.c | 105 + ...icationFW_pkgmgrinfo_pkginfo_get_pkgname_func.c | 120 + ...pplicationFW_pkgmgrinfo_pkginfo_get_type_func.c | 120 + ...icationFW_pkgmgrinfo_pkginfo_get_version_func.c | 120 + ...ationFW_pkgmgrinfo_pkginfo_is_accessible_func.c | 120 + ...licationFW_pkgmgrinfo_pkginfo_is_preload_func.c | 120 + ...icationFW_pkgmgrinfo_pkginfo_is_readonly_func.c | 120 + ...cationFW_pkgmgrinfo_pkginfo_is_removable_func.c | 120 + ...ationFW_pkgmgrinfo_pkginfo_load_certinfo_func.c | 92 + ...c_ApplicationFW_pkgmgrinfo_save_certinfo_func.c | 92 + ..._ApplicationFW_pkgmgrinfo_save_pkgdbinfo_func.c | 92 + ...ionFW_pkgmgrinfo_set_author_to_pkgdbinfo_func.c | 94 + ..._ApplicationFW_pkgmgrinfo_set_cert_value_func.c | 119 + ..._pkgmgrinfo_set_description_to_pkgdbinfo_func.c | 118 + ...ationFW_pkgmgrinfo_set_icon_to_pkgdbinfo_func.c | 118 + ...grinfo_set_install_location_to_pkgdbinfo_func.c | 118 + ...tionFW_pkgmgrinfo_set_label_to_pkgdbinfo_func.c | 118 + ...onFW_pkgmgrinfo_set_preload_to_pkgdbinfo_func.c | 118 + ...FW_pkgmgrinfo_set_removable_to_pkgdbinfo_func.c | 118 + ...ationFW_pkgmgrinfo_set_size_to_pkgdbinfo_func.c | 123 + ...ationFW_pkgmgrinfo_set_type_to_pkgdbinfo_func.c | 118 + ...onFW_pkgmgrinfo_set_version_to_pkgdbinfo_func.c | 118 + TC/unit/utc_MODULE_API_func.c.in | 76 + debian/changelog | 8 + debian/compat | 1 + debian/control | 27 + debian/copyright | 16 + debian/dirs | 2 + debian/pkgmgr-info-dev.install.in | 2 + debian/pkgmgr-info.install.in | 1 + debian/rules | 126 + images/SLP_pkgmgr_info.png | Bin 0 -> 35822 bytes images/SLP_pkgmgr_parser.png | Bin 0 -> 32840 bytes include/SLP_pkgmgr_info_PG.h | 301 + include/pkgmgr-info-debug.h | 117 + include/pkgmgr-info-internal.h | 144 + include/pkgmgr-info.h | 5947 ++++++++++++++++++++ include/pkgmgrinfo_private.h | 87 + packaging/pkgmgr-info.spec | 111 + parser/CMakeLists.txt | 80 + parser/build.sh | 30 + parser/manifest.xsd.in | 297 + parser/pkgmgr-parser.pc.in | 16 + parser/pkgmgr_parser.c | 4413 +++++++++++++++ parser/pkgmgr_parser.h | 956 ++++ parser/pkgmgr_parser_db.c | 3217 +++++++++++ parser/pkgmgr_parser_db.h | 145 + parser/pkgmgr_parser_internal.h | 35 + parser/pkgmgr_parser_plugin.c | 1028 ++++ parser/pkgmgr_parser_plugin.h | 53 + parser/pkgmgr_parser_plugin_list.txt.in | 19 + parser/pkgmgr_parser_signature.c | 1026 ++++ parser/pkgmgr_parser_signature.h | 144 + parser/preload_list.txt.in | 87 + parser/xml.xsd.in | 5 + parser_path.conf.in | 6 + pkgmgr-info.manifest.in | 11 + pkgmgr-info.pc.in | 12 + pkgmgr-parser.manifest.in | 13 + src/pkgmgr-info-internal.c | 223 + src/pkgmgrinfo_appinfo.c | 4485 +++++++++++++++ src/pkgmgrinfo_certinfo.c | 666 +++ src/pkgmgrinfo_client.c | 183 + src/pkgmgrinfo_db.c | 499 ++ src/pkgmgrinfo_pkginfo.c | 2412 ++++++++ src/pkgmgrinfo_private.c | 271 + 140 files changed, 37221 insertions(+) create mode 100755 CMakeLists.txt create mode 100644 LICENSE create mode 100755 TC/build.sh create mode 100755 TC/com.samsung.testapp.xml create mode 100755 TC/execute.sh create mode 100755 TC/tet_code create mode 100755 TC/tet_scen create mode 100755 TC/tetbuild.cfg create mode 100755 TC/tetclean.cfg create mode 100755 TC/tetexec.cfg create mode 100755 TC/unit/Makefile create mode 100755 TC/unit/tc_gen.sh create mode 100755 TC/unit/tslist create mode 100755 TC/unit/utc_ApplicationFW_pkgmgr_parser_check_manifest_validation_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgr_parser_get_manifest_file_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_installation_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_uninstallation_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_upgrade_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_destroy_appinfo_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_bool_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_int_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_string_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_count_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_create_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_destroy_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_foreach_appinfo_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_foreach_appcontrol_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_foreach_category_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_appid_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_appinfo_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_apptype_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_component_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_exec_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_hwacceleration_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_icon_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_installed_list_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_label_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_list_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_mime_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_operation_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_pkgname_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_uri_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_is_autorestart_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_is_multiple_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_is_nodisplay_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_is_onboot_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_is_taskmanage_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_create_certinfo_set_handle_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_create_pkgdbinfo_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_delete_certinfo_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_destroy_certinfo_set_handle_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_destroy_pkgdbinfo_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_create_certinfo_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_destroy_certinfo_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_destroy_pkginfo_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_bool_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_int_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_string_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_count_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_create_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_destroy_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_foreach_pkginfo_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_email_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_href_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_name_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_cert_value_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_description_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_icon_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_install_location_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_installed_storage_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_installed_time_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_label_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_list_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_package_size_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_pkginfo_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_pkgname_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_type_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_version_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_is_accessible_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_is_preload_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_is_readonly_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_is_removable_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_load_certinfo_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_save_certinfo_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_save_pkgdbinfo_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_set_author_to_pkgdbinfo_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_set_cert_value_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_set_description_to_pkgdbinfo_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_set_icon_to_pkgdbinfo_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_set_install_location_to_pkgdbinfo_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_set_label_to_pkgdbinfo_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_set_preload_to_pkgdbinfo_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_set_removable_to_pkgdbinfo_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_set_size_to_pkgdbinfo_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_set_type_to_pkgdbinfo_func.c create mode 100755 TC/unit/utc_ApplicationFW_pkgmgrinfo_set_version_to_pkgdbinfo_func.c create mode 100755 TC/unit/utc_MODULE_API_func.c.in create mode 100755 debian/changelog create mode 100755 debian/compat create mode 100755 debian/control create mode 100755 debian/copyright create mode 100755 debian/dirs create mode 100755 debian/pkgmgr-info-dev.install.in create mode 100755 debian/pkgmgr-info.install.in create mode 100755 debian/rules create mode 100755 images/SLP_pkgmgr_info.png create mode 100755 images/SLP_pkgmgr_parser.png create mode 100755 include/SLP_pkgmgr_info_PG.h create mode 100644 include/pkgmgr-info-debug.h create mode 100755 include/pkgmgr-info-internal.h create mode 100755 include/pkgmgr-info.h create mode 100644 include/pkgmgrinfo_private.h create mode 100755 packaging/pkgmgr-info.spec create mode 100755 parser/CMakeLists.txt create mode 100755 parser/build.sh create mode 100755 parser/manifest.xsd.in create mode 100755 parser/pkgmgr-parser.pc.in create mode 100755 parser/pkgmgr_parser.c create mode 100755 parser/pkgmgr_parser.h create mode 100755 parser/pkgmgr_parser_db.c create mode 100755 parser/pkgmgr_parser_db.h create mode 100755 parser/pkgmgr_parser_internal.h create mode 100644 parser/pkgmgr_parser_plugin.c create mode 100644 parser/pkgmgr_parser_plugin.h create mode 100644 parser/pkgmgr_parser_plugin_list.txt.in create mode 100644 parser/pkgmgr_parser_signature.c create mode 100644 parser/pkgmgr_parser_signature.h create mode 100755 parser/preload_list.txt.in create mode 100755 parser/xml.xsd.in create mode 100755 parser_path.conf.in create mode 100644 pkgmgr-info.manifest.in create mode 100755 pkgmgr-info.pc.in create mode 100755 pkgmgr-parser.manifest.in create mode 100755 src/pkgmgr-info-internal.c create mode 100644 src/pkgmgrinfo_appinfo.c create mode 100644 src/pkgmgrinfo_certinfo.c create mode 100644 src/pkgmgrinfo_client.c create mode 100644 src/pkgmgrinfo_db.c create mode 100644 src/pkgmgrinfo_pkginfo.c create mode 100644 src/pkgmgrinfo_private.c diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100755 index 0000000..b848832 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,65 @@ +CMAKE_MINIMUM_REQUIRED(VERSION 2.6) +#SET(CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS true) + +PROJECT(pkgmgr-info C) + +SET(VERSION 0.0.17) +SET(VERSION_MAJOR 0) + +SET(PREFIX ${CMAKE_INSTALL_PREFIX}) +SET(EXEC_PREFIX "\${prefix}") +SET(INCLUDEDIR "\${prefix}/include") + +set(CMAKE_SKIP_BUILD_RPATH true) + +### Local include directories +INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include ${CMAKE_SOURCE_DIR}/src ${CMAKE_SOURCE_DIR}/parser) + +### Required packages +INCLUDE(FindPkgConfig) +pkg_check_modules(pkgs REQUIRED glib-2.0 dlog vconf sqlite3 db-util libxml-2.0 dbus-1 dbus-glib-1) + +FOREACH(flag ${pkgs_CFLAGS}) + SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}") +ENDFOREACH(flag) + + +pkg_check_modules(libpkgs REQUIRED glib-2.0 dlog vconf sqlite3 db-util libxml-2.0 dbus-1 dbus-glib-1) + +FOREACH(flag ${libpkgs_CFLAGS}) + SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}") +ENDFOREACH(flag) + + +set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}") + +## About debug +SET(debug_type "-DPM_CONSOLE_USE") # for debug - use console window + +## Additional flag +SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fvisibility=hidden") +SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -g -Wall") +SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}") + +################## ## build comm libraries +add_subdirectory(parser) + +## build pkgmgr-info library +add_library(pkgmgr-info SHARED src/pkgmgrinfo_client.c src/pkgmgrinfo_db.c src/pkgmgrinfo_certinfo.c + src/pkgmgrinfo_appinfo.c src/pkgmgrinfo_pkginfo.c + src/pkgmgrinfo_private.c src/pkgmgr-info-internal.c) + + +SET_TARGET_PROPERTIES(pkgmgr-info PROPERTIES SOVERSION ${VERSION_MAJOR}) +SET_TARGET_PROPERTIES(pkgmgr-info PROPERTIES VERSION ${VERSION}) +TARGET_LINK_LIBRARIES(pkgmgr-info pkgmgr_parser ${libpkgs_LDFLAGS}) + +CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/pkgmgr-info.pc.in ${CMAKE_BINARY_DIR}/pkgmgr-info.pc @ONLY) +configure_file(parser_path.conf.in parser_path.conf @ONLY) +configure_file(pkgmgr-info.manifest.in pkgmgr-info.manifest @ONLY) +configure_file(pkgmgr-parser.manifest.in pkgmgr-parser.manifest @ONLY) + +INSTALL(TARGETS pkgmgr-info DESTINATION ${LIB_INSTALL_DIR} COMPONENT RuntimeLibraries) +INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/pkgmgr-info.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig) +INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/include/pkgmgr-info.h DESTINATION include) +INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/parser_path.conf DESTINATION ${PREFIX}/etc/package-manager/) diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..9c13a9b --- /dev/null +++ b/LICENSE @@ -0,0 +1,204 @@ +Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + 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. + diff --git a/TC/build.sh b/TC/build.sh new file mode 100755 index 0000000..bcdb10e --- /dev/null +++ b/TC/build.sh @@ -0,0 +1,21 @@ +#!/bin/sh +export TET_INSTALL_HOST_PATH=/dts_fw/TETware +export TET_INSTALL_TARGET_PATH=/dts_fw/TETware +export TET_INSTALL_PATH=$TET_INSTALL_HOST_PATH # local tetware path +export TET_TARGET_PATH=$TET_INSTALL_PATH/tetware-target +export PATH=$TET_TARGET_PATH/bin:$PATH +export LD_LIBRARY_PATH=$TET_TARGET_PATH/lib/tet3:$LD_LIBRARY_PATH +export TET_ROOT=$TET_TARGET_PATH + +export TET_SUITE_ROOT=`pwd` +FILE_NAME_EXTENSION=`date +%s` + +RESULT_DIR=results +HTML_RESULT=$RESULT_DIR/build-tar-result-$FILE_NAME_EXTENSION.html +JOURNAL_RESULT=$RESULT_DIR/build-tar-result-$FILE_NAME_EXTENSION.journal + +mkdir -p $RESULT_DIR + +tcc -c -p ./ +tcc -b -j $JOURNAL_RESULT -p ./ +grw -c 3 -f chtml -o $HTML_RESULT $JOURNAL_RESULT diff --git a/TC/com.samsung.testapp.xml b/TC/com.samsung.testapp.xml new file mode 100755 index 0000000..3864c6c --- /dev/null +++ b/TC/com.samsung.testapp.xml @@ -0,0 +1,54 @@ + + + + Shobhit Srivastava + Test App Global Description + + com.samsung.uitestapp.png + com.samsung.uitestapp.png in English US + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.samsung.svctestapp.jpg + com.samsung.svctestapp.jpg in Korean + + + + + + + + + + + + + + diff --git a/TC/execute.sh b/TC/execute.sh new file mode 100755 index 0000000..e2c742e --- /dev/null +++ b/TC/execute.sh @@ -0,0 +1,19 @@ +#!/bin/sh +export TET_INSTALL_PATH=/mnt/nfs/TETware +export TET_TARGET_PATH=$TET_INSTALL_PATH/tetware-target +export PATH=$TET_TARGET_PATH/bin:$PATH +export LD_LIBRARY_PATH=$TET_TARGET_PATH/lib/tet3:$LD_LIBRARY_PATH + +export TET_ROOT=$TET_TARGET_PATH + +export TET_SUITE_ROOT=`pwd` +FILE_NAME_EXTENSION=`date +%s` + +RESULT_DIR=results +HTML_RESULT=$RESULT_DIR/exec-tar-result-$FILE_NAME_EXTENSION.html +JOURNAL_RESULT=$RESULT_DIR/exec-tar-result-$FILE_NAME_EXTENSION.journal + +mkdir -p $RESULT_DIR + +tcc -e -j $JOURNAL_RESULT -p ./ +grw -c 3 -f chtml -o $HTML_RESULT $JOURNAL_RESULT diff --git a/TC/tet_code b/TC/tet_code new file mode 100755 index 0000000..a2cf6c1 --- /dev/null +++ b/TC/tet_code @@ -0,0 +1,12 @@ +# TET reserved codes +0 "PASS" +1 "FAIL" +2 "UNRESOLVED" +3 "NOTINUSE" +4 "UNSUPPORTED" +5 "UNTESTED" +6 "UNINITIATED" +7 "NORESULT" + +# Test suite additional codes +33 "INSPECT" diff --git a/TC/tet_scen b/TC/tet_scen new file mode 100755 index 0000000..43cbc9b --- /dev/null +++ b/TC/tet_scen @@ -0,0 +1,7 @@ +all + ^TEST +##### Scenarios for TEST ##### + +# Test scenario +TEST + :include:/unit/tslist diff --git a/TC/tetbuild.cfg b/TC/tetbuild.cfg new file mode 100755 index 0000000..a584acd --- /dev/null +++ b/TC/tetbuild.cfg @@ -0,0 +1,2 @@ +TET_OUTPUT_CAPTURE=False +TET_BUILD_TOOL=make diff --git a/TC/tetclean.cfg b/TC/tetclean.cfg new file mode 100755 index 0000000..c66eda4 --- /dev/null +++ b/TC/tetclean.cfg @@ -0,0 +1,2 @@ +TET_OUTPUT_CAPTURE=False +TET_CLEAN_TOOL=make clean diff --git a/TC/tetexec.cfg b/TC/tetexec.cfg new file mode 100755 index 0000000..0d9d39a --- /dev/null +++ b/TC/tetexec.cfg @@ -0,0 +1 @@ +TET_OUTPUT_CAPTURE=False diff --git a/TC/unit/Makefile b/TC/unit/Makefile new file mode 100755 index 0000000..144c4e4 --- /dev/null +++ b/TC/unit/Makefile @@ -0,0 +1,105 @@ +CC ?= gcc + +TARGETS = utc_ApplicationFW_pkgmgrinfo_create_certinfo_set_handle_func \ + utc_ApplicationFW_pkgmgrinfo_delete_certinfo_func \ + utc_ApplicationFW_pkgmgrinfo_destroy_certinfo_set_handle_func \ + utc_ApplicationFW_pkgmgrinfo_save_certinfo_func \ + utc_ApplicationFW_pkgmgrinfo_set_cert_value_func \ + utc_ApplicationFW_pkgmgrinfo_pkginfo_create_certinfo_func \ + utc_ApplicationFW_pkgmgrinfo_pkginfo_destroy_certinfo_func \ + utc_ApplicationFW_pkgmgrinfo_pkginfo_destroy_pkginfo_func \ + utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_email_func \ + utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_href_func \ + utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_name_func \ + utc_ApplicationFW_pkgmgrinfo_pkginfo_get_cert_value_func \ + utc_ApplicationFW_pkgmgrinfo_pkginfo_get_description_func \ + utc_ApplicationFW_pkgmgrinfo_pkginfo_get_icon_func \ + utc_ApplicationFW_pkgmgrinfo_pkginfo_get_installed_storage_func \ + utc_ApplicationFW_pkgmgrinfo_pkginfo_get_install_location_func \ + utc_ApplicationFW_pkgmgrinfo_pkginfo_get_label_func \ + utc_ApplicationFW_pkgmgrinfo_pkginfo_get_list_func \ + utc_ApplicationFW_pkgmgrinfo_pkginfo_get_package_size_func \ + utc_ApplicationFW_pkgmgrinfo_pkginfo_get_installed_time_func \ + utc_ApplicationFW_pkgmgrinfo_pkginfo_get_pkginfo_func \ + utc_ApplicationFW_pkgmgrinfo_pkginfo_get_pkgname_func \ + utc_ApplicationFW_pkgmgrinfo_pkginfo_get_type_func \ + utc_ApplicationFW_pkgmgrinfo_pkginfo_get_version_func \ + utc_ApplicationFW_pkgmgrinfo_pkginfo_is_accessible_func \ + utc_ApplicationFW_pkgmgrinfo_pkginfo_is_preload_func \ + utc_ApplicationFW_pkgmgrinfo_pkginfo_is_readonly_func \ + utc_ApplicationFW_pkgmgrinfo_pkginfo_is_removable_func \ + utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_bool_func \ + utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_int_func \ + utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_string_func \ + utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_count_func \ + utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_create_func \ + utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_destroy_func \ + utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_foreach_pkginfo_func \ + utc_ApplicationFW_pkgmgrinfo_pkginfo_load_certinfo_func \ + utc_ApplicationFW_pkgmgrinfo_appinfo_destroy_appinfo_func \ + utc_ApplicationFW_pkgmgrinfo_appinfo_get_appid_func \ + utc_ApplicationFW_pkgmgrinfo_appinfo_get_pkgname_func \ + utc_ApplicationFW_pkgmgrinfo_appinfo_get_appinfo_func \ + utc_ApplicationFW_pkgmgrinfo_appinfo_get_apptype_func \ + utc_ApplicationFW_pkgmgrinfo_appinfo_get_component_func \ + utc_ApplicationFW_pkgmgrinfo_appinfo_get_exec_func \ + utc_ApplicationFW_pkgmgrinfo_appinfo_get_icon_func \ + utc_ApplicationFW_pkgmgrinfo_appinfo_get_label_func \ + utc_ApplicationFW_pkgmgrinfo_appinfo_get_list_func \ + utc_ApplicationFW_pkgmgrinfo_appinfo_get_installed_list_func \ + utc_ApplicationFW_pkgmgrinfo_appinfo_is_autorestart_func \ + utc_ApplicationFW_pkgmgrinfo_appinfo_get_hwacceleration_func \ + utc_ApplicationFW_pkgmgrinfo_appinfo_is_multiple_func \ + utc_ApplicationFW_pkgmgrinfo_appinfo_is_nodisplay_func \ + utc_ApplicationFW_pkgmgrinfo_appinfo_is_onboot_func \ + utc_ApplicationFW_pkgmgrinfo_appinfo_is_taskmanage_func \ + utc_ApplicationFW_pkgmgrinfo_appinfo_foreach_category_func \ + utc_ApplicationFW_pkgmgrinfo_appinfo_foreach_appcontrol_func \ + utc_ApplicationFW_pkgmgrinfo_appinfo_get_uri_func \ + utc_ApplicationFW_pkgmgrinfo_appinfo_get_mime_func \ + utc_ApplicationFW_pkgmgrinfo_appinfo_get_operation_func \ + utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_bool_func \ + utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_int_func \ + utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_string_func \ + utc_ApplicationFW_pkgmgrinfo_appinfo_filter_count_func \ + utc_ApplicationFW_pkgmgrinfo_appinfo_filter_create_func \ + utc_ApplicationFW_pkgmgrinfo_appinfo_filter_destroy_func \ + utc_ApplicationFW_pkgmgrinfo_appinfo_filter_foreach_appinfo_func \ + utc_ApplicationFW_pkgmgrinfo_create_pkgdbinfo_func \ + utc_ApplicationFW_pkgmgrinfo_destroy_pkgdbinfo_func \ + utc_ApplicationFW_pkgmgrinfo_save_pkgdbinfo_func \ + utc_ApplicationFW_pkgmgrinfo_set_author_to_pkgdbinfo_func \ + utc_ApplicationFW_pkgmgrinfo_set_description_to_pkgdbinfo_func \ + utc_ApplicationFW_pkgmgrinfo_set_icon_to_pkgdbinfo_func \ + utc_ApplicationFW_pkgmgrinfo_set_install_location_to_pkgdbinfo_func \ + utc_ApplicationFW_pkgmgrinfo_set_label_to_pkgdbinfo_func \ + utc_ApplicationFW_pkgmgrinfo_set_preload_to_pkgdbinfo_func \ + utc_ApplicationFW_pkgmgrinfo_set_removable_to_pkgdbinfo_func \ + utc_ApplicationFW_pkgmgrinfo_set_size_to_pkgdbinfo_func \ + utc_ApplicationFW_pkgmgrinfo_set_type_to_pkgdbinfo_func \ + utc_ApplicationFW_pkgmgrinfo_set_version_to_pkgdbinfo_func \ + utc_ApplicationFW_pkgmgr_parser_check_manifest_validation_func \ + utc_ApplicationFW_pkgmgr_parser_get_manifest_file_func \ + utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_installation_func \ + utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_uninstallation_func \ + utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_upgrade_func + +PKGS = glib-2.0 dlog pkgmgr-info pkgmgr-parser + +LDFLAGS = `pkg-config --libs $(PKGS)` +LDFLAGS += $(TET_ROOT)/lib/tet3/tcm_s.o +LDFLAGS += -L$(TET_ROOT)/lib/tet3 -ltcm_s +LDFLAGS += -L$(TET_ROOT)/lib/tet3 -lapi_s +LDFLAGS += -L/usr/lib -lpthread + +CFLAGS = -I. `pkg-config --cflags $(PKGS)` +CFLAGS += -I$(TET_ROOT)/inc/tet3 +CFLAGS += -Wall + +all: $(TARGETS) + +$(TARGETS): %: %.c + $(CC) -o $@ $< $(CFLAGS) $(LDFLAGS) + +clean: + rm -f $(TARGETS) diff --git a/TC/unit/tc_gen.sh b/TC/unit/tc_gen.sh new file mode 100755 index 0000000..54f482d --- /dev/null +++ b/TC/unit/tc_gen.sh @@ -0,0 +1,28 @@ +#!/bin/sh + +TMPSTR=$0 +SCRIPT=${TMPSTR##*/} + +if [ $# -lt 2 ]; then + echo "Usage) $SCRIPT module_name api_name" + exit 1 +fi + +MODULE=$1 +API=$2 +TEMPLATE=utc_MODULE_API_func.c.in +TESTCASE=utc_${MODULE}_${API}_func + +sed -e ' + s^@API@^'"$API"'^g + s^@MODULE@^'"$MODULE"'^g + ' $TEMPLATE > $TESTCASE.c + +if [ ! -e "$TESTCASE.c" ]; then + echo "Failed" + exit 1 +fi +echo "Testcase file is $TESTCASE.c" +echo "Done" +echo "please put \"$TESTCASE\" as Target in Makefile" +echo "please put \"/unit/$TESTCASE\" in tslist" diff --git a/TC/unit/tslist b/TC/unit/tslist new file mode 100755 index 0000000..5caa08f --- /dev/null +++ b/TC/unit/tslist @@ -0,0 +1,83 @@ +/unit/utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_installation_func +/unit/utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_upgrade_func +/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_destroy_appinfo_func +/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_appid_func +/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_pkgname_func +/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_appinfo_func +/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_apptype_func +/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_component_func +/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_exec_func +/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_icon_func +/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_label_func +/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_list_func +/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_installed_list_func +/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_is_autorestart_func +/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_hwacceleration_func +/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_is_multiple_func +/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_is_nodisplay_func +/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_is_onboot_func +/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_is_taskmanage_func +/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_foreach_category_func +/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_foreach_appcontrol_func +/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_uri_func +/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_mime_func +/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_operation_func +/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_bool_func +/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_int_func +/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_string_func +/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_count_func +/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_create_func +/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_destroy_func +/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_foreach_appinfo_func +/unit/utc_ApplicationFW_pkgmgrinfo_create_certinfo_set_handle_func +/unit/utc_ApplicationFW_pkgmgrinfo_set_cert_value_func +/unit/utc_ApplicationFW_pkgmgrinfo_save_certinfo_func +/unit/utc_ApplicationFW_pkgmgrinfo_destroy_certinfo_set_handle_func +/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_create_certinfo_func +/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_load_certinfo_func +/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_cert_value_func +/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_destroy_certinfo_func +/unit/utc_ApplicationFW_pkgmgrinfo_delete_certinfo_func +/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_destroy_pkginfo_func +/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_email_func +/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_href_func +/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_name_func +/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_description_func +/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_icon_func +/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_installed_storage_func +/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_install_location_func +/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_label_func +/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_list_func +/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_package_size_func +/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_installed_time_func +/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_pkginfo_func +/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_pkgname_func +/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_type_func +/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_version_func +/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_is_accessible_func +/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_is_preload_func +/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_is_readonly_func +/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_is_removable_func +/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_bool_func +/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_int_func +/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_string_func +/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_count_func +/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_create_func +/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_destroy_func +/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_foreach_pkginfo_func +/unit/utc_ApplicationFW_pkgmgrinfo_create_pkgdbinfo_func +/unit/utc_ApplicationFW_pkgmgrinfo_set_author_to_pkgdbinfo_func +/unit/utc_ApplicationFW_pkgmgrinfo_set_description_to_pkgdbinfo_func +/unit/utc_ApplicationFW_pkgmgrinfo_set_icon_to_pkgdbinfo_func +/unit/utc_ApplicationFW_pkgmgrinfo_set_install_location_to_pkgdbinfo_func +/unit/utc_ApplicationFW_pkgmgrinfo_set_label_to_pkgdbinfo_func +/unit/utc_ApplicationFW_pkgmgrinfo_set_preload_to_pkgdbinfo_func +/unit/utc_ApplicationFW_pkgmgrinfo_set_removable_to_pkgdbinfo_func +/unit/utc_ApplicationFW_pkgmgrinfo_set_size_to_pkgdbinfo_func +/unit/utc_ApplicationFW_pkgmgrinfo_set_type_to_pkgdbinfo_func +/unit/utc_ApplicationFW_pkgmgrinfo_set_version_to_pkgdbinfo_func +/unit/utc_ApplicationFW_pkgmgrinfo_save_pkgdbinfo_func +/unit/utc_ApplicationFW_pkgmgrinfo_destroy_pkgdbinfo_func +/unit/utc_ApplicationFW_pkgmgr_parser_check_manifest_validation_func +/unit/utc_ApplicationFW_pkgmgr_parser_get_manifest_file_func +/unit/utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_uninstallation_func diff --git a/TC/unit/utc_ApplicationFW_pkgmgr_parser_check_manifest_validation_func.c b/TC/unit/utc_ApplicationFW_pkgmgr_parser_check_manifest_validation_func.c new file mode 100755 index 0000000..89c743e --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgr_parser_check_manifest_validation_func.c @@ -0,0 +1,83 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgr_parser_check_manifest_validation_func_01(void); +static void utc_ApplicationFW_pkgmgr_parser_check_manifest_validation_func_02(void); + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgr_parser_check_manifest_validation_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgr_parser_check_manifest_validation_func_02, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgr_parser_check_manifest_validation() + */ +static void utc_ApplicationFW_pkgmgr_parser_check_manifest_validation_func_01(void) +{ + int r = -1; + r = pkgmgr_parser_check_manifest_validation("/usr/share/packages/com.samsung.calculator.xml"); + if (r < 0) { + tet_infoline + ("pkgmgr_parser_check_manifest_validation() failed in positive test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgr_parser_check_manifest_validation() + */ +static void utc_ApplicationFW_pkgmgr_parser_check_manifest_validation_func_02(void) +{ + int r = -1; + r = pkgmgr_parser_check_manifest_validation(NULL); + if (r == 0) { + tet_infoline + ("pkgmgr_parser_check_manifest_validation() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgr_parser_get_manifest_file_func.c b/TC/unit/utc_ApplicationFW_pkgmgr_parser_get_manifest_file_func.c new file mode 100755 index 0000000..3a346cd --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgr_parser_get_manifest_file_func.c @@ -0,0 +1,83 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgr_parser_get_manifest_file_func_01(void); +static void utc_ApplicationFW_pkgmgr_parser_get_manifest_file_func_02(void); + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgr_parser_get_manifest_file_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgr_parser_get_manifest_file_func_02, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgr_parser_get_manifest_file() + */ +static void utc_ApplicationFW_pkgmgr_parser_get_manifest_file_func_01(void) +{ + char *manifest = NULL; + manifest = pkgmgr_parser_get_manifest_file("com.samsung.calculator"); + if (manifest == NULL) { + tet_infoline + ("pkgmgr_parser_get_manifest_file() failed in positive test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgr_parser_get_manifest_file() + */ +static void utc_ApplicationFW_pkgmgr_parser_get_manifest_file_func_02(void) +{ + char *manifest = NULL; + manifest = pkgmgr_parser_get_manifest_file(NULL); + if (manifest != NULL) { + tet_infoline + ("pkgmgr_parser_get_manifest_file() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} \ No newline at end of file diff --git a/TC/unit/utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_installation_func.c b/TC/unit/utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_installation_func.c new file mode 100755 index 0000000..9f0bdb2 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_installation_func.c @@ -0,0 +1,83 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_installation_func_01(void); +static void utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_installation_func_02(void); + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_installation_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_installation_func_02, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgr_parser_parse_manifest_for_installation() + */ +static void utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_installation_func_01(void) +{ + int r = -1; + r = pkgmgr_parser_parse_manifest_for_installation("/mnt/nfs/pkgmgr-info/TC/com.samsung.testapp.xml", NULL); + if (r < 0) { + tet_infoline + ("pkgmgr_parser_parse_manifest_for_installation() failed in positive test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgr_parser_parse_manifest_for_installation() + */ +static void utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_installation_func_02(void) +{ + int r = -1; + r = pkgmgr_parser_parse_manifest_for_installation(NULL, NULL); + if (r == 0) { + tet_infoline + ("pkgmgr_parser_parse_manifest_for_installation() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_uninstallation_func.c b/TC/unit/utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_uninstallation_func.c new file mode 100755 index 0000000..e190f5d --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_uninstallation_func.c @@ -0,0 +1,83 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_uninstallation_func_01(void); +static void utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_uninstallation_func_02(void); + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_uninstallation_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_uninstallation_func_02, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgr_parser_parse_manifest_for_uninstallation() + */ +static void utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_uninstallation_func_01(void) +{ + int r = -1; + r = pkgmgr_parser_parse_manifest_for_uninstallation("/mnt/nfs/pkgmgr-info/TC/com.samsung.testapp.xml", NULL); + if (r < 0) { + tet_infoline + ("pkgmgr_parser_parse_manifest_for_uninstallation() failed in positive test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgr_parser_parse_manifest_for_uninstallation() + */ +static void utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_uninstallation_func_02(void) +{ + int r = -1; + r = pkgmgr_parser_parse_manifest_for_uninstallation(NULL, NULL); + if (r == 0) { + tet_infoline + ("pkgmgr_parser_parse_manifest_for_uninstallation() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_upgrade_func.c b/TC/unit/utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_upgrade_func.c new file mode 100755 index 0000000..3b8eda4 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_upgrade_func.c @@ -0,0 +1,83 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_upgrade_func_01(void); +static void utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_upgrade_func_02(void); + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_upgrade_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_upgrade_func_02, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgr_parser_parse_manifest_for_upgrade() + */ +static void utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_upgrade_func_01(void) +{ + int r = -1; + r = pkgmgr_parser_parse_manifest_for_upgrade("/mnt/nfs/pkgmgr-info/TC/com.samsung.testapp.xml", NULL); + if (r < 0) { + tet_infoline + ("pkgmgr_parser_parse_manifest_for_upgrade() failed in positive test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgr_parser_parse_manifest_for_upgrade() + */ +static void utc_ApplicationFW_pkgmgr_parser_parse_manifest_for_upgrade_func_02(void) +{ + int r = -1; + r = pkgmgr_parser_parse_manifest_for_upgrade(NULL, NULL); + if (r == 0) { + tet_infoline + ("pkgmgr_parser_parse_manifest_for_upgrade() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_destroy_appinfo_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_destroy_appinfo_func.c new file mode 100755 index 0000000..c02d48d --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_destroy_appinfo_func.c @@ -0,0 +1,89 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_appinfo_destroy_appinfo_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_destroy_appinfo_func_02(void); + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_appinfo_destroy_appinfo_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_destroy_appinfo_func_02, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_appinfo_destroy_appinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_destroy_appinfo_func_01(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_destroy_appinfo(handle); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_destroy_appinfo() failed in positive test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_destroy_appinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_destroy_appinfo_func_02(void) +{ + int r = 0; + r = pkgmgrinfo_appinfo_destroy_appinfo(NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_destroy_appinfo() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_bool_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_bool_func.c new file mode 100755 index 0000000..b8896a6 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_bool_func.c @@ -0,0 +1,118 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_bool_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_bool_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_bool_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_bool_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_bool_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_bool_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_appinfo_filter_add_bool() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_bool_func_01(void) +{ + int r = 0; + pkgmgrinfo_appinfo_filter_h handle; + r = pkgmgrinfo_appinfo_filter_create(&handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_filter_add_bool(handle, PMINFO_APPINFO_PROP_APP_NODISPLAY, 1); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_filter_add_bool() failed in positive test case"); + pkgmgrinfo_appinfo_filter_destroy(handle); + tet_result(TET_FAIL); + return; + } + pkgmgrinfo_appinfo_filter_destroy(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_filter_add_bool() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_bool_func_02(void) +{ + int r = 0; + r = pkgmgrinfo_appinfo_filter_add_bool(NULL, PMINFO_APPINFO_PROP_APP_NODISPLAY, 1); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_filter_add_bool() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_filter_add_bool() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_bool_func_03(void) +{ + int r = 0; + pkgmgrinfo_appinfo_filter_h handle; + r = pkgmgrinfo_appinfo_filter_create(&handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_filter_add_bool(handle, NULL, 1); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_filter_add_bool() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_appinfo_filter_destroy(handle); + return; + } + pkgmgrinfo_appinfo_filter_destroy(handle); + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_int_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_int_func.c new file mode 100755 index 0000000..428967c --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_int_func.c @@ -0,0 +1,103 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_int_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_int_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_int_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_int_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_int_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_int_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_appinfo_filter_add_int() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_int_func_01(void) +{ + /*Currently No Integer property for App*/ + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_filter_add_int() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_int_func_02(void) +{ + int r = 0; + r = pkgmgrinfo_appinfo_filter_add_int(NULL, PMINFO_APPINFO_PROP_APP_MULTIPLE, 1); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_filter_add_int() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_filter_add_int() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_int_func_03(void) +{ + int r = 0; + pkgmgrinfo_appinfo_filter_h handle; + r = pkgmgrinfo_appinfo_filter_create(&handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_filter_add_int(handle, NULL, 1); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_filter_add_int() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_appinfo_filter_destroy(handle); + return; + } + pkgmgrinfo_appinfo_filter_destroy(handle); + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_string_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_string_func.c new file mode 100755 index 0000000..87ea465 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_string_func.c @@ -0,0 +1,118 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_string_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_string_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_string_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_string_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_string_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_string_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_appinfo_filter_add_string() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_string_func_01(void) +{ + int r = 0; + pkgmgrinfo_appinfo_filter_h handle; + r = pkgmgrinfo_appinfo_filter_create(&handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_filter_add_string(handle, PMINFO_APPINFO_PROP_APP_URI, "http"); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_filter_add_string() failed in positive test case"); + pkgmgrinfo_appinfo_filter_destroy(handle); + tet_result(TET_FAIL); + return; + } + pkgmgrinfo_appinfo_filter_destroy(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_filter_add_string() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_string_func_02(void) +{ + int r = 0; + r = pkgmgrinfo_appinfo_filter_add_string(NULL, PMINFO_APPINFO_PROP_APP_URI, "http"); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_filter_add_string() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_filter_add_string() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_add_string_func_03(void) +{ + int r = 0; + pkgmgrinfo_appinfo_filter_h handle; + r = pkgmgrinfo_appinfo_filter_create(&handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_filter_add_string(handle, NULL, "http"); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_filter_add_string() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_appinfo_filter_destroy(handle); + return; + } + pkgmgrinfo_appinfo_filter_destroy(handle); + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_count_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_count_func.c new file mode 100755 index 0000000..6fa58d6 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_count_func.c @@ -0,0 +1,144 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_count_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_count_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_count_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_appinfo_filter_count_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_filter_count_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_filter_count_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_appinfo_filter_count() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_count_func_01(void) +{ + int r = 0; + int count = 0; + pkgmgrinfo_appinfo_filter_h handle; + r = pkgmgrinfo_appinfo_filter_create(&handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_filter_add_bool(handle, PMINFO_APPINFO_PROP_APP_NODISPLAY, 1); + if (r != PMINFO_R_OK) { + pkgmgrinfo_appinfo_filter_destroy(handle); + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_filter_add_string(handle, PMINFO_APPINFO_PROP_APP_URI, "http"); + if (r != PMINFO_R_OK) { + pkgmgrinfo_appinfo_filter_destroy(handle); + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_filter_count(handle, &count); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_filter_count() failed in positive test case"); + pkgmgrinfo_appinfo_filter_destroy(handle); + tet_result(TET_FAIL); + return; + } + pkgmgrinfo_appinfo_filter_destroy(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_filter_count() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_count_func_02(void) +{ + int r = 0; + int count = 0; + r = pkgmgrinfo_appinfo_filter_count(NULL, &count); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_filter_count() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_filter_count() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_count_func_03(void) +{ + int r = 0; + pkgmgrinfo_appinfo_filter_h handle; + r = pkgmgrinfo_appinfo_filter_create(&handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_filter_add_bool(handle, PMINFO_APPINFO_PROP_APP_NODISPLAY, 1); + if (r != PMINFO_R_OK) { + pkgmgrinfo_appinfo_filter_destroy(handle); + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_filter_add_string(handle, PMINFO_APPINFO_PROP_APP_URI, "http"); + if (r != PMINFO_R_OK) { + pkgmgrinfo_appinfo_filter_destroy(handle); + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_filter_count(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_filter_count() failed in negative test case"); + pkgmgrinfo_appinfo_filter_destroy(handle); + tet_result(TET_FAIL); + return; + } + pkgmgrinfo_appinfo_filter_destroy(handle); + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_create_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_create_func.c new file mode 100755 index 0000000..a744932 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_create_func.c @@ -0,0 +1,86 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_create_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_create_func_02(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_appinfo_filter_create_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_filter_create_func_02, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_appinfo_filter_create() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_create_func_01(void) +{ + int r = 0; + pkgmgrinfo_appinfo_filter_h handle; + r = pkgmgrinfo_appinfo_filter_create(&handle); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_filter_create() failed in positive test case"); + tet_result(TET_FAIL); + return; + } + pkgmgrinfo_appinfo_filter_destroy(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_filter_create() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_create_func_02(void) +{ + int r = 0; + r = pkgmgrinfo_appinfo_filter_create(NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_filter_create() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_destroy_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_destroy_func.c new file mode 100755 index 0000000..0d56b43 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_destroy_func.c @@ -0,0 +1,90 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_destroy_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_destroy_func_02(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_appinfo_filter_destroy_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_filter_destroy_func_02, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_appinfo_filter_destroy() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_destroy_func_01(void) +{ + int r = 0; + pkgmgrinfo_appinfo_filter_h handle; + r = pkgmgrinfo_appinfo_filter_create(&handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_filter_destroy(handle); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_filter_destroy() failed in positive test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_filter_destroy() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_destroy_func_02(void) +{ + int r = 0; + r = pkgmgrinfo_appinfo_filter_destroy(NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_filter_destroy() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_foreach_appinfo_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_foreach_appinfo_func.c new file mode 100755 index 0000000..70674ef --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_filter_foreach_appinfo_func.c @@ -0,0 +1,148 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_foreach_appinfo_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_foreach_appinfo_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_foreach_appinfo_func_03(void); +static int __filtered_app_list_cb(const pkgmgrinfo_appinfo_h handle, void *user_data); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_appinfo_filter_foreach_appinfo_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_filter_foreach_appinfo_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_filter_foreach_appinfo_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +static int __filtered_app_list_cb(const pkgmgrinfo_appinfo_h handle, void *user_data) +{ + return 0; +} + +/** + * @brief Positive test case of pkgmgrinfo_appinfo_filter_foreach_appinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_foreach_appinfo_func_01(void) +{ + int r = 0; + pkgmgrinfo_appinfo_filter_h handle; + r = pkgmgrinfo_appinfo_filter_create(&handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_filter_add_bool(handle, PMINFO_APPINFO_PROP_APP_NODISPLAY, 1); + if (r != PMINFO_R_OK) { + pkgmgrinfo_appinfo_filter_destroy(handle); + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_filter_add_string(handle, PMINFO_APPINFO_PROP_APP_URI, "http"); + if (r != PMINFO_R_OK) { + pkgmgrinfo_appinfo_filter_destroy(handle); + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_filter_foreach_appinfo(handle, __filtered_app_list_cb, NULL); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_filter_foreach_appinfo() failed in positive test case"); + pkgmgrinfo_appinfo_filter_destroy(handle); + tet_result(TET_FAIL); + return; + } + pkgmgrinfo_appinfo_filter_destroy(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_filter_foreach_appinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_foreach_appinfo_func_02(void) +{ + int r = 0; + r = pkgmgrinfo_appinfo_filter_foreach_appinfo(NULL, __filtered_app_list_cb, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_filter_foreach_appinfo() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_filter_foreach_appinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_filter_foreach_appinfo_func_03(void) +{ + int r = 0; + pkgmgrinfo_appinfo_filter_h handle; + r = pkgmgrinfo_appinfo_filter_create(&handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_filter_add_bool(handle, PMINFO_APPINFO_PROP_APP_NODISPLAY, 1); + if (r != PMINFO_R_OK) { + pkgmgrinfo_appinfo_filter_destroy(handle); + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_filter_add_string(handle, PMINFO_APPINFO_PROP_APP_URI, "http"); + if (r != PMINFO_R_OK) { + pkgmgrinfo_appinfo_filter_destroy(handle); + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_filter_foreach_appinfo(handle, NULL, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_filter_foreach_appinfo() failed in negative test case"); + pkgmgrinfo_appinfo_filter_destroy(handle); + tet_result(TET_FAIL); + return; + } + pkgmgrinfo_appinfo_filter_destroy(handle); + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_foreach_appcontrol_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_foreach_appcontrol_func.c new file mode 100755 index 0000000..54ef636 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_foreach_appcontrol_func.c @@ -0,0 +1,124 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_appinfo_foreach_appcontrol_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_foreach_appcontrol_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_foreach_appcontrol_func_03(void); +static int __appcontrol_list_cb(pkgmgrinfo_appcontrol_h handle, void *user_data); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_appinfo_foreach_appcontrol_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_foreach_appcontrol_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_foreach_appcontrol_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +static int __appcontrol_list_cb(pkgmgrinfo_appcontrol_h handle, void *user_data) +{ + return 0; +} + +/** + * @brief Positive test case of pkgmgrinfo_appinfo_foreach_appcontrol() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_foreach_appcontrol_func_01(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.uitestapp", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_foreach_appcontrol(handle, __appcontrol_list_cb, NULL); + if (r != PMINFO_R_OK) { + pkgmgrinfo_appinfo_destroy_appinfo(handle); + tet_infoline + ("pkgmgrinfo_appinfo_foreach_appcontrol() failed in positive test case"); + tet_result(TET_FAIL); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_foreach_appcontrol() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_foreach_appcontrol_func_02(void) +{ + int r = 0; + r = pkgmgrinfo_appinfo_foreach_appcontrol(NULL, __appcontrol_list_cb, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_foreach_appcontrol() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_foreach_appcontrol() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_foreach_appcontrol_func_03(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.uitestapp", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_foreach_appcontrol(handle, NULL, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_foreach_appcontrol() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_appinfo_destroy_appinfo(handle); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_foreach_category_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_foreach_category_func.c new file mode 100755 index 0000000..24e670a --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_foreach_category_func.c @@ -0,0 +1,124 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_appinfo_foreach_category_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_foreach_category_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_foreach_category_func_03(void); +static int __category_list_cb(const char *name, void *user_data); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_appinfo_foreach_category_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_foreach_category_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_foreach_category_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +static int __category_list_cb(const char *name, void *user_data) +{ + return 0; +} + +/** + * @brief Positive test case of pkgmgrinfo_appinfo_foreach_category() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_foreach_category_func_01(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_foreach_category(handle, __category_list_cb, NULL); + if (r != PMINFO_R_OK) { + pkgmgrinfo_appinfo_destroy_appinfo(handle); + tet_infoline + ("pkgmgrinfo_appinfo_foreach_category() failed in positive test case"); + tet_result(TET_FAIL); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_foreach_category() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_foreach_category_func_02(void) +{ + int r = 0; + r = pkgmgrinfo_appinfo_foreach_category(NULL, __category_list_cb, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_foreach_category() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_foreach_category() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_foreach_category_func_03(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_foreach_category(handle, NULL, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_foreach_category() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_appinfo_destroy_appinfo(handle); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_appid_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_appid_func.c new file mode 100755 index 0000000..c6a5602 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_appid_func.c @@ -0,0 +1,120 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_appid_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_appid_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_appid_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_appid_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_appid_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_appid_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_appinfo_get_appid() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_appid_func_01(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + char *appid = NULL; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_get_appid(handle, &appid); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_get_appid() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_appinfo_destroy_appinfo(handle); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_get_appid() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_appid_func_02(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_get_appid(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_get_appid() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_appinfo_destroy_appinfo(handle); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_get_appid() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_appid_func_03(void) +{ + int r = 0; + char *appid = NULL; + r = pkgmgrinfo_appinfo_get_appid(NULL, &appid); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_get_appid() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_appinfo_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_appinfo_func.c new file mode 100755 index 0000000..f966979 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_appinfo_func.c @@ -0,0 +1,105 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_appinfo_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_appinfo_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_appinfo_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_appinfo_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_appinfo_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_appinfo_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_appinfo_get_appinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_appinfo_func_01(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_get_appinfo() failed in positive test case"); + tet_result(TET_FAIL); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_get_appinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_appinfo_func_02(void) +{ + int r = 0; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.calculator", NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_get_appinfo() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_get_appinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_appinfo_func_03(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + r = pkgmgrinfo_appinfo_get_appinfo(NULL, &handle); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_get_appinfo() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_apptype_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_apptype_func.c new file mode 100755 index 0000000..87ed070 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_apptype_func.c @@ -0,0 +1,120 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_apptype_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_apptype_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_apptype_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_apptype_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_apptype_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_apptype_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_appinfo_get_apptype() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_apptype_func_01(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + char *apptype = NULL; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_get_apptype(handle, &apptype); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_get_apptype() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_appinfo_destroy_appinfo(handle); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_get_apptype() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_apptype_func_02(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_get_apptype(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_get_apptype() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_appinfo_destroy_appinfo(handle); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_get_apptype() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_apptype_func_03(void) +{ + int r = 0; + char *apptype = NULL; + r = pkgmgrinfo_appinfo_get_apptype(NULL, &apptype); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_get_apptype() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_component_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_component_func.c new file mode 100755 index 0000000..efb439c --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_component_func.c @@ -0,0 +1,120 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_component_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_component_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_component_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_component_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_component_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_component_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_appinfo_get_component() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_component_func_01(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + pkgmgrinfo_app_component component; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_get_component(handle, &component); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_get_component() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_appinfo_destroy_appinfo(handle); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_get_component() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_component_func_02(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_get_component(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_get_component() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_appinfo_destroy_appinfo(handle); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_get_component() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_component_func_03(void) +{ + int r = 0; + pkgmgrinfo_app_component component; + r = pkgmgrinfo_appinfo_get_component(NULL, &component); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_get_component() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_exec_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_exec_func.c new file mode 100755 index 0000000..03132da --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_exec_func.c @@ -0,0 +1,120 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_exec_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_exec_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_exec_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_exec_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_exec_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_exec_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_appinfo_get_exec() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_exec_func_01(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + char *exec = NULL; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_get_exec(handle, &exec); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_get_exec() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_appinfo_destroy_appinfo(handle); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_get_exec() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_exec_func_02(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_get_exec(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_get_exec() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_appinfo_destroy_appinfo(handle); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_get_exec() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_exec_func_03(void) +{ + int r = 0; + char *exec = NULL; + r = pkgmgrinfo_appinfo_get_exec(NULL, &exec); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_get_exec() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_hwacceleration_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_hwacceleration_func.c new file mode 100755 index 0000000..0e2234a --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_hwacceleration_func.c @@ -0,0 +1,120 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_hwacceleration_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_hwacceleration_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_hwacceleration_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_hwacceleration_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_hwacceleration_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_hwacceleration_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_appinfo_get_hwacceleration() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_hwacceleration_func_01(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + bool hwacceleration = 0; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_get_hwacceleration(handle, &hwacceleration); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_get_hwacceleration() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_appinfo_destroy_appinfo(handle); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_get_hwacceleration() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_hwacceleration_func_02(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_get_hwacceleration(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_get_hwacceleration() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_appinfo_destroy_appinfo(handle); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_get_hwacceleration() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_hwacceleration_func_03(void) +{ + int r = 0; + bool hwacceleration = 0; + r = pkgmgrinfo_appinfo_get_hwacceleration(NULL, &hwacceleration); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_get_hwacceleration() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_icon_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_icon_func.c new file mode 100755 index 0000000..6359f9e --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_icon_func.c @@ -0,0 +1,120 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_icon_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_icon_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_icon_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_icon_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_icon_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_icon_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_appinfo_get_icon() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_icon_func_01(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + char *icon = NULL; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_get_icon(handle, &icon); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_get_icon() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_appinfo_destroy_appinfo(handle); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_get_icon() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_icon_func_02(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_get_icon(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_get_icon() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_appinfo_destroy_appinfo(handle); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_get_icon() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_icon_func_03(void) +{ + int r = 0; + char *icon = NULL; + r = pkgmgrinfo_appinfo_get_icon(NULL, &icon); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_get_icon() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_installed_list_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_installed_list_func.c new file mode 100755 index 0000000..970e9c1 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_installed_list_func.c @@ -0,0 +1,89 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_installed_list_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_installed_list_func_02(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_installed_list_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_installed_list_func_02, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +static int app_func(const pkgmgrinfo_appinfo_h handle, void *user_data) +{ + return 0; +} + +/** + * @brief Positive test case of pkgmgrinfo_appinfo_get_installed_list() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_installed_list_func_01(void) +{ + int r = 0; + r = pkgmgrinfo_appinfo_get_installed_list(app_func, NULL); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_get_installed_list() failed in positive test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_get_installed_list() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_installed_list_func_02(void) +{ + int r = 0; + r = pkgmgrinfo_appinfo_get_installed_list(NULL, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_get_installed_list() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_label_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_label_func.c new file mode 100755 index 0000000..2c31aa5 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_label_func.c @@ -0,0 +1,120 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_label_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_label_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_label_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_label_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_label_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_label_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_appinfo_get_label() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_label_func_01(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + char *label = NULL; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_get_label(handle, &label); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_get_label() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_appinfo_destroy_appinfo(handle); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_get_label() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_label_func_02(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_get_label(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_get_label() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_appinfo_destroy_appinfo(handle); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_get_label() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_label_func_03(void) +{ + int r = 0; + char *label = NULL; + r = pkgmgrinfo_appinfo_get_label(NULL, &label); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_get_label() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_list_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_list_func.c new file mode 100755 index 0000000..11f2080 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_list_func.c @@ -0,0 +1,175 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_list_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_list_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_list_func_03(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_list_func_04(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_list_func_05(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_list_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_list_func_02, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_list_func_03, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_list_func_04, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_list_func_05, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +static int app_func(const pkgmgrinfo_appinfo_h handle, void *user_data) +{ + return 0; +} + +/** + * @brief Positive test case of pkgmgrinfo_appinfo_get_list() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_list_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_get_list(handle, PMINFO_UI_APP, app_func, NULL); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_get_list() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Positive test case of pkgmgrinfo_appinfo_get_list() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_list_func_02(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_get_list(handle, PMINFO_SVC_APP, app_func, NULL); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_get_list() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_get_list() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_list_func_03(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_get_list(handle, PMINFO_UI_APP, NULL, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_get_list() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_get_list() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_list_func_04(void) +{ + int r = 0; + r = pkgmgrinfo_appinfo_get_list(NULL, PMINFO_SVC_APP, app_func, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_get_list() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_get_list() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_list_func_05(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_get_list(handle, -5, app_func, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_get_list() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_mime_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_mime_func.c new file mode 100755 index 0000000..50a5899 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_mime_func.c @@ -0,0 +1,124 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_mime_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_mime_func_02(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_mime_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_mime_func_02, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +static int __appcontrol_list_cb1(pkgmgrinfo_appcontrol_h handle, void *user_data) +{ + int mc = 0; + int ret = 0; + char **mime; + ret = pkgmgrinfo_appinfo_get_mime(handle, &mc, &mime); + if (ret == PMINFO_R_OK) { + tet_result(TET_PASS); + return -1; + } + else { + tet_result(TET_FAIL); + return -1; + } +} + +static int __appcontrol_list_cb2(pkgmgrinfo_appcontrol_h handle, void *user_data) +{ + int ret = 0; + ret = pkgmgrinfo_appinfo_get_mime(handle, NULL, NULL); + if (ret == PMINFO_R_OK) { + tet_result(TET_FAIL); + return -1; + } + else { + tet_result(TET_PASS); + return -1; + } +} + +/** + * @brief Positive test case of pkgmgrinfo_appinfo_get_mime() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_mime_func_01(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.uitestapp", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_foreach_appcontrol(handle, __appcontrol_list_cb1, NULL); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + pkgmgrinfo_appinfo_destroy_appinfo(handle); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_get_mime() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_mime_func_02(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.uitestapp", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_foreach_appcontrol(handle, __appcontrol_list_cb2, NULL); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + pkgmgrinfo_appinfo_destroy_appinfo(handle); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_operation_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_operation_func.c new file mode 100755 index 0000000..2ba152b --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_operation_func.c @@ -0,0 +1,124 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_operation_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_operation_func_02(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_operation_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_operation_func_02, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +static int __appcontrol_list_cb1(pkgmgrinfo_appcontrol_h handle, void *user_data) +{ + int oc = 0; + int ret = 0; + char **operation; + ret = pkgmgrinfo_appinfo_get_operation(handle, &oc, &operation); + if (ret == PMINFO_R_OK) { + tet_result(TET_PASS); + return -1; + } + else { + tet_result(TET_FAIL); + return -1; + } +} + +static int __appcontrol_list_cb2(pkgmgrinfo_appcontrol_h handle, void *user_data) +{ + int ret = 0; + ret = pkgmgrinfo_appinfo_get_operation(handle, NULL, NULL); + if (ret == PMINFO_R_OK) { + tet_result(TET_FAIL); + return -1; + } + else { + tet_result(TET_PASS); + return -1; + } +} + +/** + * @brief Positive test case of pkgmgrinfo_appinfo_get_operation() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_operation_func_01(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.uitestapp", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_foreach_appcontrol(handle, __appcontrol_list_cb1, NULL); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + pkgmgrinfo_appinfo_destroy_appinfo(handle); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_get_operation() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_operation_func_02(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.uitestapp", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_foreach_appcontrol(handle, __appcontrol_list_cb2, NULL); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + pkgmgrinfo_appinfo_destroy_appinfo(handle); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_pkgname_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_pkgname_func.c new file mode 100755 index 0000000..5deb63d --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_pkgname_func.c @@ -0,0 +1,120 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_pkgname_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_pkgname_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_pkgname_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_pkgname_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_pkgname_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_pkgname_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_appinfo_get_pkgname() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_pkgname_func_01(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + char *pkgname = NULL; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_get_pkgname(handle, &pkgname); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_get_pkgname() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_appinfo_destroy_appinfo(handle); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_get_pkgname() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_pkgname_func_02(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_get_pkgname(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_get_pkgname() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_appinfo_destroy_appinfo(handle); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_get_pkgname() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_pkgname_func_03(void) +{ + int r = 0; + char *pkgname = NULL; + r = pkgmgrinfo_appinfo_get_pkgname(NULL, &pkgname); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_get_pkgname() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_uri_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_uri_func.c new file mode 100755 index 0000000..65d491e --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_get_uri_func.c @@ -0,0 +1,124 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_uri_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_uri_func_02(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_uri_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_get_uri_func_02, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +static int __appcontrol_list_cb1(pkgmgrinfo_appcontrol_h handle, void *user_data) +{ + int uc = 0; + int ret = 0; + char **uri; + ret = pkgmgrinfo_appinfo_get_uri(handle, &uc, &uri); + if (ret == PMINFO_R_OK) { + tet_result(TET_PASS); + return -1; + } + else { + tet_result(TET_FAIL); + return -1; + } +} + +static int __appcontrol_list_cb2(pkgmgrinfo_appcontrol_h handle, void *user_data) +{ + int ret = 0; + ret = pkgmgrinfo_appinfo_get_uri(handle, NULL, NULL); + if (ret == PMINFO_R_OK) { + tet_result(TET_FAIL); + return -1; + } + else { + tet_result(TET_PASS); + return -1; + } +} + +/** + * @brief Positive test case of pkgmgrinfo_appinfo_get_uri() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_uri_func_01(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.uitestapp", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_foreach_appcontrol(handle, __appcontrol_list_cb1, NULL); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + pkgmgrinfo_appinfo_destroy_appinfo(handle); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_get_uri() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_get_uri_func_02(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.uitestapp", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_foreach_appcontrol(handle, __appcontrol_list_cb2, NULL); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + pkgmgrinfo_appinfo_destroy_appinfo(handle); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_is_autorestart_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_is_autorestart_func.c new file mode 100755 index 0000000..9e30e90 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_is_autorestart_func.c @@ -0,0 +1,120 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_appinfo_is_autorestart_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_is_autorestart_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_is_autorestart_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_appinfo_is_autorestart_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_is_autorestart_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_is_autorestart_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_appinfo_is_autorestart() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_is_autorestart_func_01(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + bool autorestart = 0; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_is_autorestart(handle, &autorestart); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_is_autorestart() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_appinfo_destroy_appinfo(handle); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_is_autorestart() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_is_autorestart_func_02(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_is_autorestart(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_is_autorestart() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_appinfo_destroy_appinfo(handle); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_is_autorestart() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_is_autorestart_func_03(void) +{ + int r = 0; + bool autorestart = 0; + r = pkgmgrinfo_appinfo_is_autorestart(NULL, &autorestart); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_is_autorestart() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_is_multiple_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_is_multiple_func.c new file mode 100755 index 0000000..2187eab --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_is_multiple_func.c @@ -0,0 +1,120 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_appinfo_is_multiple_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_is_multiple_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_is_multiple_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_appinfo_is_multiple_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_is_multiple_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_is_multiple_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_appinfo_is_multiple() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_is_multiple_func_01(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + bool multiple = 0; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_is_multiple(handle, &multiple); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_is_multiple() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_appinfo_destroy_appinfo(handle); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_is_multiple() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_is_multiple_func_02(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_is_multiple(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_is_multiple() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_appinfo_destroy_appinfo(handle); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_is_multiple() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_is_multiple_func_03(void) +{ + int r = 0; + bool multiple = 0; + r = pkgmgrinfo_appinfo_is_multiple(NULL, &multiple); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_is_multiple() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_is_nodisplay_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_is_nodisplay_func.c new file mode 100755 index 0000000..8d53b82 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_is_nodisplay_func.c @@ -0,0 +1,120 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_appinfo_is_nodisplay_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_is_nodisplay_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_is_nodisplay_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_appinfo_is_nodisplay_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_is_nodisplay_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_is_nodisplay_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_appinfo_is_nodisplay() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_is_nodisplay_func_01(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + bool nodisplay = 0; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_is_nodisplay(handle, &nodisplay); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_is_nodisplay() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_appinfo_destroy_appinfo(handle); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_is_nodisplay() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_is_nodisplay_func_02(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_is_nodisplay(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_is_nodisplay() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_appinfo_destroy_appinfo(handle); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_is_nodisplay() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_is_nodisplay_func_03(void) +{ + int r = 0; + bool nodisplay = 0; + r = pkgmgrinfo_appinfo_is_nodisplay(NULL, &nodisplay); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_is_nodisplay() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_is_onboot_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_is_onboot_func.c new file mode 100755 index 0000000..4a6ef6f --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_is_onboot_func.c @@ -0,0 +1,120 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_appinfo_is_onboot_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_is_onboot_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_is_onboot_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_appinfo_is_onboot_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_is_onboot_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_is_onboot_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_appinfo_is_onboot() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_is_onboot_func_01(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + bool onboot = 0; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_is_onboot(handle, &onboot); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_is_onboot() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_appinfo_destroy_appinfo(handle); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_is_onboot() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_is_onboot_func_02(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_is_onboot(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_is_onboot() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_appinfo_destroy_appinfo(handle); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_is_onboot() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_is_onboot_func_03(void) +{ + int r = 0; + bool onboot = 0; + r = pkgmgrinfo_appinfo_is_onboot(NULL, &onboot); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_is_onboot() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_is_taskmanage_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_is_taskmanage_func.c new file mode 100755 index 0000000..2e80ce1 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_appinfo_is_taskmanage_func.c @@ -0,0 +1,120 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_appinfo_is_taskmanage_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_is_taskmanage_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_appinfo_is_taskmanage_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_appinfo_is_taskmanage_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_is_taskmanage_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_appinfo_is_taskmanage_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_appinfo_is_taskmanage() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_is_taskmanage_func_01(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + bool taskmanage = 0; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_is_taskmanage(handle, &taskmanage); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_is_taskmanage() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_appinfo_destroy_appinfo(handle); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_is_taskmanage() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_is_taskmanage_func_02(void) +{ + int r = 0; + pkgmgrinfo_appinfo_h handle; + r = pkgmgrinfo_appinfo_get_appinfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_appinfo_is_taskmanage(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_is_taskmanage() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_appinfo_destroy_appinfo(handle); + return; + } + pkgmgrinfo_appinfo_destroy_appinfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_appinfo_is_taskmanage() + */ +static void utc_ApplicationFW_pkgmgrinfo_appinfo_is_taskmanage_func_03(void) +{ + int r = 0; + bool taskmanage = 0; + r = pkgmgrinfo_appinfo_is_taskmanage(NULL, &taskmanage); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_appinfo_is_taskmanage() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_create_certinfo_set_handle_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_create_certinfo_set_handle_func.c new file mode 100755 index 0000000..2d69d63 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_create_certinfo_set_handle_func.c @@ -0,0 +1,85 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_create_certinfo_set_handle_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_create_certinfo_set_handle_func_02(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_create_certinfo_set_handle_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_create_certinfo_set_handle_func_02, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_create_certinfo_set_handle() + */ +static void utc_ApplicationFW_pkgmgrinfo_create_certinfo_set_handle_func_01(void) +{ + int r = 0; + pkgmgrinfo_instcertinfo_h handle; + r = pkgmgrinfo_create_certinfo_set_handle(&handle); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_create_certinfo_set_handle() failed in positive test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_create_certinfo_set_handle() + */ +static void utc_ApplicationFW_pkgmgrinfo_create_certinfo_set_handle_func_02(void) +{ + int r = 0; + r = pkgmgrinfo_create_certinfo_set_handle(NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_create_certinfo_set_handle() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_create_pkgdbinfo_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_create_pkgdbinfo_func.c new file mode 100755 index 0000000..592ba6b --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_create_pkgdbinfo_func.c @@ -0,0 +1,104 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_create_pkgdbinfo_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_create_pkgdbinfo_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_create_pkgdbinfo_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_create_pkgdbinfo_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_create_pkgdbinfo_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_create_pkgdbinfo_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_create_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_create_pkgdbinfo_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkgdbinfo_h handle; + r = pkgmgrinfo_create_pkgdbinfo("com.samsung.test", &handle); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_create_pkgdbinfo() failed in positive test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_create_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_create_pkgdbinfo_func_02(void) +{ + int r = 0; + r = pkgmgrinfo_create_pkgdbinfo("com.samsung.test", NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_create_pkgdbinfo() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_create_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_create_pkgdbinfo_func_03(void) +{ + int r = 0; + pkgmgrinfo_pkgdbinfo_h handle; + r = pkgmgrinfo_create_pkgdbinfo(NULL, &handle); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_create_pkgdbinfo() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_delete_certinfo_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_delete_certinfo_func.c new file mode 100755 index 0000000..1519def --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_delete_certinfo_func.c @@ -0,0 +1,84 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_delete_certinfo_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_delete_certinfo_func_02(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_delete_certinfo_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_delete_certinfo_func_02, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_delete_certinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_delete_certinfo_func_01(void) +{ + int r = 0; + r = pkgmgrinfo_delete_certinfo("com.samsung.hello"); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_delete_certinfo() failed in positive test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_delete_certinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_delete_certinfo_func_02(void) +{ + int r = 0; + r = pkgmgrinfo_delete_certinfo(NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_delete_certinfo() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_destroy_certinfo_set_handle_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_destroy_certinfo_set_handle_func.c new file mode 100755 index 0000000..6b1da4c --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_destroy_certinfo_set_handle_func.c @@ -0,0 +1,90 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_destroy_certinfo_set_handle_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_destroy_certinfo_set_handle_func_02(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_destroy_certinfo_set_handle_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_destroy_certinfo_set_handle_func_02, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_destroy_certinfo_set_handle() + */ +static void utc_ApplicationFW_pkgmgrinfo_destroy_certinfo_set_handle_func_01(void) +{ + int r = 0; + pkgmgrinfo_instcertinfo_h handle; + r = pkgmgrinfo_create_certinfo_set_handle(&handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_destroy_certinfo_set_handle(handle); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_destroy_certinfo_set_handle() failed in positive test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_destroy_certinfo_set_handle() + */ +static void utc_ApplicationFW_pkgmgrinfo_destroy_certinfo_set_handle_func_02(void) +{ + int r = 0; + r = pkgmgrinfo_destroy_certinfo_set_handle(NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_destroy_certinfo_set_handle() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_destroy_pkgdbinfo_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_destroy_pkgdbinfo_func.c new file mode 100755 index 0000000..fbc9189 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_destroy_pkgdbinfo_func.c @@ -0,0 +1,90 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_destroy_pkgdbinfo_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_destroy_pkgdbinfo_func_02(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_destroy_pkgdbinfo_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_destroy_pkgdbinfo_func_02, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_destroy_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_destroy_pkgdbinfo_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkgdbinfo_h handle; + r = pkgmgrinfo_create_pkgdbinfo("com.samsung.test", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_destroy_pkgdbinfo(handle); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_destroy_pkgdbinfo() failed in positive test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_destroy_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_destroy_pkgdbinfo_func_02(void) +{ + int r = 0; + r = pkgmgrinfo_destroy_pkgdbinfo(NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_destroy_pkgdbinfo() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_create_certinfo_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_create_certinfo_func.c new file mode 100755 index 0000000..cbe91e4 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_create_certinfo_func.c @@ -0,0 +1,85 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_create_certinfo_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_create_certinfo_func_02(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_pkginfo_create_certinfo_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_create_certinfo_func_02, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_pkginfo_create_certinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_create_certinfo_func_01(void) +{ + int r = 0; + pkgmgrinfo_certinfo_h handle; + r = pkgmgrinfo_pkginfo_create_certinfo(&handle); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_create_certinfo() failed in positive test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_create_certinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_create_certinfo_func_02(void) +{ + int r = 0; + r = pkgmgrinfo_pkginfo_create_certinfo(NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_create_certinfo() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_destroy_certinfo_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_destroy_certinfo_func.c new file mode 100755 index 0000000..f029227 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_destroy_certinfo_func.c @@ -0,0 +1,90 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_destroy_certinfo_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_destroy_certinfo_func_02(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_pkginfo_destroy_certinfo_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_destroy_certinfo_func_02, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_pkginfo_destroy_certinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_destroy_certinfo_func_01(void) +{ + int r = 0; + pkgmgrinfo_certinfo_h handle; + r = pkgmgrinfo_pkginfo_create_certinfo(&handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_destroy_certinfo(handle); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_destroy_certinfo() failed in positive test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_destroy_certinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_destroy_certinfo_func_02(void) +{ + int r = 0; + r = pkgmgrinfo_pkginfo_destroy_certinfo(NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_destroy_certinfo() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_destroy_pkginfo_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_destroy_pkginfo_func.c new file mode 100755 index 0000000..ce8d643 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_destroy_pkginfo_func.c @@ -0,0 +1,89 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_destroy_pkginfo_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_destroy_pkginfo_func_02(void); + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_pkginfo_destroy_pkginfo_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_destroy_pkginfo_func_02, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_pkginfo_destroy_pkginfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_destroy_pkginfo_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_destroy_pkginfo() failed in positive test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_destroy_pkginfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_destroy_pkginfo_func_02(void) +{ + int r = 0; + r = pkgmgrinfo_pkginfo_destroy_pkginfo(NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_destroy_pkginfo() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_bool_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_bool_func.c new file mode 100755 index 0000000..58dae0e --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_bool_func.c @@ -0,0 +1,118 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_bool_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_bool_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_bool_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_bool_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_bool_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_bool_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_pkginfo_filter_add_bool() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_bool_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_filter_h handle; + r = pkgmgrinfo_pkginfo_filter_create(&handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_filter_add_bool(handle, PMINFO_PKGINFO_PROP_PACKAGE_REMOVABLE, 1); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_filter_add_bool() failed in positive test case"); + pkgmgrinfo_pkginfo_filter_destroy(handle); + tet_result(TET_FAIL); + return; + } + pkgmgrinfo_pkginfo_filter_destroy(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_filter_add_bool() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_bool_func_02(void) +{ + int r = 0; + r = pkgmgrinfo_pkginfo_filter_add_bool(NULL, PMINFO_PKGINFO_PROP_PACKAGE_REMOVABLE, 1); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_filter_add_bool() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_filter_add_bool() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_bool_func_03(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_filter_h handle; + r = pkgmgrinfo_pkginfo_filter_create(&handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_filter_add_bool(handle, NULL, 1); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_filter_add_bool() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_filter_destroy(handle); + return; + } + pkgmgrinfo_pkginfo_filter_destroy(handle); + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_int_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_int_func.c new file mode 100755 index 0000000..af27d93 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_int_func.c @@ -0,0 +1,118 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_int_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_int_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_int_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_int_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_int_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_int_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_pkginfo_filter_add_int() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_int_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_filter_h handle; + r = pkgmgrinfo_pkginfo_filter_create(&handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_filter_add_int(handle, PMINFO_PKGINFO_PROP_PACKAGE_SIZE, 10); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_filter_add_int() failed in positive test case"); + pkgmgrinfo_pkginfo_filter_destroy(handle); + tet_result(TET_FAIL); + return; + } + pkgmgrinfo_pkginfo_filter_destroy(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_filter_add_int() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_int_func_02(void) +{ + int r = 0; + r = pkgmgrinfo_pkginfo_filter_add_int(NULL, PMINFO_PKGINFO_PROP_PACKAGE_SIZE, 10); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_filter_add_int() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_filter_add_int() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_int_func_03(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_filter_h handle; + r = pkgmgrinfo_pkginfo_filter_create(&handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_filter_add_int(handle, NULL, 10); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_filter_add_int() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_filter_destroy(handle); + return; + } + pkgmgrinfo_pkginfo_filter_destroy(handle); + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_string_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_string_func.c new file mode 100755 index 0000000..bdbcd85 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_string_func.c @@ -0,0 +1,118 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_string_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_string_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_string_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_string_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_string_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_string_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_pkginfo_filter_add_string() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_string_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_filter_h handle; + r = pkgmgrinfo_pkginfo_filter_create(&handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_filter_add_string(handle, PMINFO_PKGINFO_PROP_PACKAGE_TYPE, "rpm"); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_filter_add_string() failed in positive test case"); + pkgmgrinfo_pkginfo_filter_destroy(handle); + tet_result(TET_FAIL); + return; + } + pkgmgrinfo_pkginfo_filter_destroy(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_filter_add_string() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_string_func_02(void) +{ + int r = 0; + r = pkgmgrinfo_pkginfo_filter_add_string(NULL, PMINFO_PKGINFO_PROP_PACKAGE_TYPE, "rpm"); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_filter_add_string() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_filter_add_string() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_add_string_func_03(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_filter_h handle; + r = pkgmgrinfo_pkginfo_filter_create(&handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_filter_add_string(handle, NULL, "rpm"); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_filter_add_string() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_filter_destroy(handle); + return; + } + pkgmgrinfo_pkginfo_filter_destroy(handle); + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_count_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_count_func.c new file mode 100755 index 0000000..4098bde --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_count_func.c @@ -0,0 +1,144 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_count_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_count_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_count_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_count_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_count_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_count_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_pkginfo_filter_count() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_count_func_01(void) +{ + int r = 0; + int count = 0; + pkgmgrinfo_pkginfo_filter_h handle; + r = pkgmgrinfo_pkginfo_filter_create(&handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_filter_add_bool(handle, PMINFO_PKGINFO_PROP_PACKAGE_REMOVABLE, 1); + if (r != PMINFO_R_OK) { + pkgmgrinfo_pkginfo_filter_destroy(handle); + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_filter_add_string(handle, PMINFO_PKGINFO_PROP_PACKAGE_TYPE, "rpm"); + if (r != PMINFO_R_OK) { + pkgmgrinfo_pkginfo_filter_destroy(handle); + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_filter_count(handle, &count); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_filter_count() failed in positive test case"); + pkgmgrinfo_pkginfo_filter_destroy(handle); + tet_result(TET_FAIL); + return; + } + pkgmgrinfo_pkginfo_filter_destroy(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_filter_count() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_count_func_02(void) +{ + int r = 0; + int count = 0; + r = pkgmgrinfo_pkginfo_filter_count(NULL, &count); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_filter_count() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_filter_count() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_count_func_03(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_filter_h handle; + r = pkgmgrinfo_pkginfo_filter_create(&handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_filter_add_bool(handle, PMINFO_PKGINFO_PROP_PACKAGE_REMOVABLE, 1); + if (r != PMINFO_R_OK) { + pkgmgrinfo_pkginfo_filter_destroy(handle); + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_filter_add_string(handle, PMINFO_PKGINFO_PROP_PACKAGE_TYPE, "rpm"); + if (r != PMINFO_R_OK) { + pkgmgrinfo_pkginfo_filter_destroy(handle); + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_filter_count(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_filter_count() failed in negative test case"); + pkgmgrinfo_pkginfo_filter_destroy(handle); + tet_result(TET_FAIL); + return; + } + pkgmgrinfo_pkginfo_filter_destroy(handle); + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_create_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_create_func.c new file mode 100755 index 0000000..96c57c6 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_create_func.c @@ -0,0 +1,86 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_create_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_create_func_02(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_create_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_create_func_02, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_pkginfo_filter_create() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_create_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_filter_h handle; + r = pkgmgrinfo_pkginfo_filter_create(&handle); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_filter_create() failed in positive test case"); + tet_result(TET_FAIL); + return; + } + pkgmgrinfo_pkginfo_filter_destroy(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_filter_create() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_create_func_02(void) +{ + int r = 0; + r = pkgmgrinfo_pkginfo_filter_create(NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_filter_create() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_destroy_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_destroy_func.c new file mode 100755 index 0000000..7b3d2a7 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_destroy_func.c @@ -0,0 +1,90 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_destroy_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_destroy_func_02(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_destroy_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_destroy_func_02, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_pkginfo_filter_destroy() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_destroy_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_filter_h handle; + r = pkgmgrinfo_pkginfo_filter_create(&handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_filter_destroy(handle); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_filter_destroy() failed in positive test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_filter_destroy() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_destroy_func_02(void) +{ + int r = 0; + r = pkgmgrinfo_pkginfo_filter_destroy(NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_filter_destroy() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_foreach_pkginfo_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_foreach_pkginfo_func.c new file mode 100755 index 0000000..55299cd --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_foreach_pkginfo_func.c @@ -0,0 +1,148 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_foreach_pkginfo_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_foreach_pkginfo_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_foreach_pkginfo_func_03(void); +static int __filtered_pkg_list_cb(const pkgmgrinfo_pkginfo_h handle, void *user_data); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_foreach_pkginfo_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_foreach_pkginfo_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_foreach_pkginfo_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +static int __filtered_pkg_list_cb(const pkgmgrinfo_pkginfo_h handle, void *user_data) +{ + return 0; +} + +/** + * @brief Positive test case of pkgmgrinfo_pkginfo_filter_foreach_pkginfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_foreach_pkginfo_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_filter_h handle; + r = pkgmgrinfo_pkginfo_filter_create(&handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_filter_add_bool(handle, PMINFO_PKGINFO_PROP_PACKAGE_REMOVABLE, 1); + if (r != PMINFO_R_OK) { + pkgmgrinfo_pkginfo_filter_destroy(handle); + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_filter_add_string(handle, PMINFO_PKGINFO_PROP_PACKAGE_TYPE, "rpm"); + if (r != PMINFO_R_OK) { + pkgmgrinfo_pkginfo_filter_destroy(handle); + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_filter_foreach_pkginfo(handle, __filtered_pkg_list_cb, NULL); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_filter_foreach_pkginfo() failed in positive test case"); + pkgmgrinfo_pkginfo_filter_destroy(handle); + tet_result(TET_FAIL); + return; + } + pkgmgrinfo_pkginfo_filter_destroy(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_filter_foreach_pkginfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_foreach_pkginfo_func_02(void) +{ + int r = 0; + r = pkgmgrinfo_pkginfo_filter_foreach_pkginfo(NULL, __filtered_pkg_list_cb, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_filter_foreach_pkginfo() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_filter_foreach_pkginfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_filter_foreach_pkginfo_func_03(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_filter_h handle; + r = pkgmgrinfo_pkginfo_filter_create(&handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_filter_add_bool(handle, PMINFO_PKGINFO_PROP_PACKAGE_REMOVABLE, 1); + if (r != PMINFO_R_OK) { + pkgmgrinfo_pkginfo_filter_destroy(handle); + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_filter_add_string(handle, PMINFO_PKGINFO_PROP_PACKAGE_TYPE, "rpm"); + if (r != PMINFO_R_OK) { + pkgmgrinfo_pkginfo_filter_destroy(handle); + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_filter_foreach_pkginfo(handle, NULL, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_filter_foreach_pkginfo() failed in negative test case"); + pkgmgrinfo_pkginfo_filter_destroy(handle); + tet_result(TET_FAIL); + return; + } + pkgmgrinfo_pkginfo_filter_destroy(handle); + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_email_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_email_func.c new file mode 100755 index 0000000..fa13753 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_email_func.c @@ -0,0 +1,120 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_email_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_email_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_email_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_email_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_email_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_email_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_pkginfo_get_author_email() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_email_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + char *author_email = NULL; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_get_author_email(handle, &author_email); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_author_email() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_get_author_email() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_email_func_02(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_get_author_email(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_author_email() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_get_author_email() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_email_func_03(void) +{ + int r = 0; + char *author_email = NULL; + r = pkgmgrinfo_pkginfo_get_author_email(NULL, &author_email); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_author_email() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_href_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_href_func.c new file mode 100755 index 0000000..00a4451 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_href_func.c @@ -0,0 +1,120 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_href_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_href_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_href_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_href_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_href_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_href_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_pkginfo_get_author_href() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_href_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + char *author_href = NULL; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_get_author_href(handle, &author_href); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_author_href() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_get_author_href() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_href_func_02(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_get_author_href(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_author_href() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_get_author_href() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_href_func_03(void) +{ + int r = 0; + char *author_href = NULL; + r = pkgmgrinfo_pkginfo_get_author_href(NULL, &author_href); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_author_href() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_name_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_name_func.c new file mode 100755 index 0000000..4e58217 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_name_func.c @@ -0,0 +1,120 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_name_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_name_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_name_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_name_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_name_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_name_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_pkginfo_get_author_name() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_name_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + char *author_name = NULL; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_get_author_name(handle, &author_name); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_author_name() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_get_author_name() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_name_func_02(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_get_author_name(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_author_name() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_get_author_name() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_author_name_func_03(void) +{ + int r = 0; + char *author_name = NULL; + r = pkgmgrinfo_pkginfo_get_author_name(NULL, &author_name); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_author_name() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_cert_value_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_cert_value_func.c new file mode 100755 index 0000000..638e804 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_cert_value_func.c @@ -0,0 +1,131 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_cert_value_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_cert_value_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_cert_value_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_cert_value_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_cert_value_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_cert_value_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_pkginfo_get_cert_value() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_cert_value_func_01(void) +{ + int r = 0; + char *auth_root = NULL; + pkgmgrinfo_certinfo_h handle; + r = pkgmgrinfo_pkginfo_create_certinfo(&handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_load_certinfo("com.samsung.hello", handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_get_cert_value(handle, PMINFO_AUTHOR_ROOT_CERT, &auth_root); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_cert_value() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_certinfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_certinfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_get_cert_value() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_cert_value_func_02(void) +{ + int r = 0; + char *auth_root = NULL; + r = pkgmgrinfo_pkginfo_get_cert_value(NULL, PMINFO_AUTHOR_ROOT_CERT, &auth_root); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_cert_value() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_get_cert_value() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_cert_value_func_03(void) +{ + int r = 0; + char *auth_root = NULL; + pkgmgrinfo_certinfo_h handle; + r = pkgmgrinfo_pkginfo_create_certinfo(&handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_load_certinfo("com.samsung.hello", handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_get_cert_value(handle, 50, &auth_root); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_cert_value() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_certinfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_certinfo(handle); + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_description_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_description_func.c new file mode 100755 index 0000000..09fafd4 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_description_func.c @@ -0,0 +1,120 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_description_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_description_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_description_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_description_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_description_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_description_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_pkginfo_get_description() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_description_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + char *description = NULL; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_get_description(handle, &description); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_description() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_get_description() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_description_func_02(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_get_description(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_description() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_get_description() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_description_func_03(void) +{ + int r = 0; + char *description = NULL; + r = pkgmgrinfo_pkginfo_get_description(NULL, &description); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_description() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_icon_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_icon_func.c new file mode 100755 index 0000000..78088f0 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_icon_func.c @@ -0,0 +1,120 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_icon_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_icon_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_icon_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_icon_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_icon_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_icon_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_pkginfo_get_icon() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_icon_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + char *icon = NULL; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_get_icon(handle, &icon); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_icon() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_get_icon() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_icon_func_02(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_get_icon(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgr_pkginfo_get_icon() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_get_icon() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_icon_func_03(void) +{ + int r = 0; + char *icon = NULL; + r = pkgmgrinfo_pkginfo_get_icon(NULL, &icon); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_icon() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_install_location_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_install_location_func.c new file mode 100755 index 0000000..da52459 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_install_location_func.c @@ -0,0 +1,120 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_install_location_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_install_location_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_install_location_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_install_location_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_install_location_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_install_location_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_pkginfo_get_install_location() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_install_location_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + pkgmgrinfo_install_location install_location = 0; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_get_install_location(handle, &install_location); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_install_location() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_get_install_location() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_install_location_func_02(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_get_install_location(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_install_location() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_get_install_location() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_install_location_func_03(void) +{ + int r = 0; + pkgmgrinfo_install_location install_location = 0; + r = pkgmgrinfo_pkginfo_get_install_location(NULL, &install_location); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_install_location() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_installed_storage_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_installed_storage_func.c new file mode 100755 index 0000000..10c8805 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_installed_storage_func.c @@ -0,0 +1,120 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_installed_storage_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_installed_storage_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_installed_storage_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_installed_storage_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_installed_storage_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_installed_storage_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_pkginfo_get_installed_storage() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_installed_storage_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + pkgmgrinfo_installed_storage installed_storage; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_get_installed_storage(handle, &installed_storage); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_installed_storage() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_get_installed_storage() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_installed_storage_func_02(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_get_installed_storage(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_installed_storage() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_get_installed_storage() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_installed_storage_func_03(void) +{ + int r = 0; + pkgmgrinfo_installed_storage installed_storage; + r = pkgmgrinfo_pkginfo_get_installed_storage(NULL, &installed_storage); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_installed_storage() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_installed_time_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_installed_time_func.c new file mode 100755 index 0000000..b0926ab --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_installed_time_func.c @@ -0,0 +1,120 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_installed_time_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_installed_time_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_installed_time_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_installed_time_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_installed_time_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_installed_time_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_pkginfo_get_installed_time() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_installed_time_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + int installed_time = -1; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_get_installed_time(handle, &installed_time); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_installed_time() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_get_installed_time() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_installed_time_func_02(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_get_installed_time(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_installed_time() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_get_installed_time() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_installed_time_func_03(void) +{ + int r = 0; + int installed_time = -1; + r = pkgmgrinfo_pkginfo_get_installed_time(NULL, &installed_time); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_installed_time() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_label_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_label_func.c new file mode 100755 index 0000000..a7f0509 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_label_func.c @@ -0,0 +1,120 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_label_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_label_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_label_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_label_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_label_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_label_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_pkginfo_get_label() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_label_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + char *label = NULL; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_get_label(handle, &label); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_label() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_get_label() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_label_func_02(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_get_label(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_label() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_get_label() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_label_func_03(void) +{ + int r = 0; + char *label = NULL; + r = pkgmgrinfo_pkginfo_get_label(NULL, &label); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_label() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_list_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_list_func.c new file mode 100755 index 0000000..ba60bef --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_list_func.c @@ -0,0 +1,89 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_list_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_list_func_02(void); +static int __pkg_list_cb(const pkgmgrinfo_pkginfo_h handle, void *user_data); + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_list_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_list_func_02, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +static int __pkg_list_cb(const pkgmgrinfo_pkginfo_h handle, void *user_data) +{ + return 0; +} + +/** + * @brief Positive test case of pkgmgrinfo_pkginfo_get_list() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_list_func_01(void) +{ + int r = 0; + r = pkgmgrinfo_pkginfo_get_list(__pkg_list_cb, NULL); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_list() failed in positive test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_get_list() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_list_func_02(void) +{ + int r = 0; + r = pkgmgrinfo_pkginfo_get_list(NULL, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_list() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_package_size_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_package_size_func.c new file mode 100755 index 0000000..4ba3ab9 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_package_size_func.c @@ -0,0 +1,120 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_package_size_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_package_size_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_package_size_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_package_size_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_package_size_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_package_size_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_pkginfo_get_package_size() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_package_size_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + int package_size = -1; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_get_package_size(handle, &package_size); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_package_size() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_get_package_size() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_package_size_func_02(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_get_package_size(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_package_size() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_get_package_size() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_package_size_func_03(void) +{ + int r = 0; + int package_size = -1; + r = pkgmgrinfo_pkginfo_get_package_size(NULL, &package_size); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_package_size() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_pkginfo_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_pkginfo_func.c new file mode 100755 index 0000000..afc50e0 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_pkginfo_func.c @@ -0,0 +1,105 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_pkginfo_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_pkginfo_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_pkginfo_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_pkginfo_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_pkginfo_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_pkginfo_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_pkginfo_get_pkginfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_pkginfo_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_pkginfo() failed in positive test case"); + tet_result(TET_FAIL); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_get_pkginfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_pkginfo_func_02(void) +{ + int r = 0; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_pkginfo() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_get_pkginfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_pkginfo_func_03(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + r = pkgmgrinfo_pkginfo_get_pkginfo(NULL, &handle); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_pkginfo() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_pkgname_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_pkgname_func.c new file mode 100755 index 0000000..b36a3b5 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_pkgname_func.c @@ -0,0 +1,120 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_pkgname_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_pkgname_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_pkgname_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_pkgname_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_pkgname_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_pkgname_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_pkginfo_get_pkgname() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_pkgname_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + char *pkgname = NULL; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_get_pkgname(handle, &pkgname); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_pkgname() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_get_pkgname() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_pkgname_func_02(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_get_pkgname(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_pkgname() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_get_pkgname() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_pkgname_func_03(void) +{ + int r = 0; + char *pkgname = NULL; + r = pkgmgrinfo_pkginfo_get_pkgname(NULL, &pkgname); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_pkgname() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_type_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_type_func.c new file mode 100755 index 0000000..830ee9d --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_type_func.c @@ -0,0 +1,120 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_type_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_type_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_type_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_type_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_type_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_type_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_pkginfo_get_type() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_type_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + char *type = NULL; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_get_type(handle, &type); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_type() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_get_type() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_type_func_02(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_get_type(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_type() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_get_type() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_type_func_03(void) +{ + int r = 0; + char *type = NULL; + r = pkgmgrinfo_pkginfo_get_type(NULL, &type); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_type() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_version_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_version_func.c new file mode 100755 index 0000000..4fcd362 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_get_version_func.c @@ -0,0 +1,120 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_version_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_version_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_version_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_version_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_version_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_get_version_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_pkginfo_get_version() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_version_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + char *version = NULL; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_get_version(handle, &version); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_version() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_get_version() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_version_func_02(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_get_version(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_version() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_get_version() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_get_version_func_03(void) +{ + int r = 0; + char *version = NULL; + r = pkgmgrinfo_pkginfo_get_version(NULL, &version); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_get_version() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_is_accessible_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_is_accessible_func.c new file mode 100755 index 0000000..c6c94cf --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_is_accessible_func.c @@ -0,0 +1,120 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_is_accessible_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_is_accessible_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_is_accessible_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_pkginfo_is_accessible_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_is_accessible_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_is_accessible_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_pkginfo_is_accessible() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_is_accessible_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + bool accessible = 0; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_is_accessible(handle, &accessible); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_is_accessible() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_is_accessible() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_is_accessible_func_02(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_is_accessible(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_is_accessible() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_is_accessible() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_is_accessible_func_03(void) +{ + int r = 0; + bool accessible = 0; + r = pkgmgrinfo_pkginfo_is_accessible(NULL, &accessible); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_is_accessible() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_is_preload_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_is_preload_func.c new file mode 100755 index 0000000..c7608f0 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_is_preload_func.c @@ -0,0 +1,120 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_is_preload_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_is_preload_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_is_preload_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_pkginfo_is_preload_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_is_preload_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_is_preload_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_pkginfo_is_preload() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_is_preload_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + bool preload = 0; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_is_preload(handle, &preload); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_is_preload() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_is_preload() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_is_preload_func_02(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_is_preload(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_is_preload() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_is_preload() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_is_preload_func_03(void) +{ + int r = 0; + bool preload = 0; + r = pkgmgrinfo_pkginfo_is_preload(NULL, &preload); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_is_preload() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_is_readonly_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_is_readonly_func.c new file mode 100755 index 0000000..53dae9a --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_is_readonly_func.c @@ -0,0 +1,120 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_is_readonly_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_is_readonly_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_is_readonly_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_pkginfo_is_readonly_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_is_readonly_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_is_readonly_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_pkginfo_is_readonly() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_is_readonly_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + bool readonly = 0; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_is_readonly(handle, &readonly); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_is_readonly() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_is_readonly() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_is_readonly_func_02(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_is_readonly(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_is_readonly() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_is_readonly() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_is_readonly_func_03(void) +{ + int r = 0; + bool readonly = 0; + r = pkgmgrinfo_pkginfo_is_readonly(NULL, &readonly); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_is_readonly() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_is_removable_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_is_removable_func.c new file mode 100755 index 0000000..f44f827 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_is_removable_func.c @@ -0,0 +1,120 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_is_removable_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_is_removable_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_is_removable_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_pkginfo_is_removable_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_is_removable_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_is_removable_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_pkginfo_is_removable() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_is_removable_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + bool removable = 0; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_is_removable(handle, &removable); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_is_removable() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_is_removable() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_is_removable_func_02(void) +{ + int r = 0; + pkgmgrinfo_pkginfo_h handle; + r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_is_removable(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_is_removable() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_is_removable() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_is_removable_func_03(void) +{ + int r = 0; + bool removable = 0; + r = pkgmgrinfo_pkginfo_is_removable(NULL, &removable); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_is_removable() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_load_certinfo_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_load_certinfo_func.c new file mode 100755 index 0000000..8d16727 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_pkginfo_load_certinfo_func.c @@ -0,0 +1,92 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_load_certinfo_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_load_certinfo_func_02(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_pkginfo_load_certinfo_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_pkginfo_load_certinfo_func_02, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_pkginfo_load_certinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_load_certinfo_func_01(void) +{ + int r = 0; + pkgmgrinfo_certinfo_h handle; + r = pkgmgrinfo_pkginfo_create_certinfo(&handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_pkginfo_load_certinfo("com.samsung.hello", handle); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_load_certinfo() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_pkginfo_destroy_certinfo(handle); + return; + } + pkgmgrinfo_pkginfo_destroy_certinfo(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_pkginfo_load_certinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_pkginfo_load_certinfo_func_02(void) +{ + int r = 0; + r = pkgmgrinfo_pkginfo_load_certinfo("com.samsung.hello", NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_pkginfo_load_certinfo() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_save_certinfo_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_save_certinfo_func.c new file mode 100755 index 0000000..9e01152 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_save_certinfo_func.c @@ -0,0 +1,92 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_save_certinfo_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_save_certinfo_func_02(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_save_certinfo_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_save_certinfo_func_02, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_save_certinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_save_certinfo_func_01(void) +{ + int r = 0; + pkgmgrinfo_instcertinfo_h handle; + r = pkgmgrinfo_create_certinfo_set_handle(&handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_save_certinfo("com.samsung.hello", handle); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_save_certinfo() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_destroy_certinfo_set_handle(handle); + return; + } + pkgmgrinfo_destroy_certinfo_set_handle(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_save_certinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_save_certinfo_func_02(void) +{ + int r = 0; + r = pkgmgrinfo_save_certinfo("com.samsung.hello", NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_save_certinfo() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_save_pkgdbinfo_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_save_pkgdbinfo_func.c new file mode 100755 index 0000000..4604d9e --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_save_pkgdbinfo_func.c @@ -0,0 +1,92 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_save_pkgdbinfo_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_save_pkgdbinfo_func_02(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_save_pkgdbinfo_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_save_pkgdbinfo_func_02, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_save_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_save_pkgdbinfo_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkgdbinfo_h handle; + r = pkgmgrinfo_create_pkgdbinfo("com.samsung.test", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_save_pkgdbinfo(handle); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_save_pkgdbinfo() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_destroy_pkgdbinfo(handle); + return; + } + tet_result(TET_PASS); + pkgmgrinfo_destroy_pkgdbinfo(handle); +} + +/** + * @brief Negative test case of pkgmgrinfo_save_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_save_pkgdbinfo_func_02(void) +{ + int r = 0; + r = pkgmgrinfo_save_pkgdbinfo(NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_save_pkgdbinfo() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_set_author_to_pkgdbinfo_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_set_author_to_pkgdbinfo_func.c new file mode 100755 index 0000000..2e6d964 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_set_author_to_pkgdbinfo_func.c @@ -0,0 +1,94 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_set_author_to_pkgdbinfo_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_set_author_to_pkgdbinfo_func_02(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_set_author_to_pkgdbinfo_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_set_author_to_pkgdbinfo_func_02, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_set_author_to_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_set_author_to_pkgdbinfo_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkgdbinfo_h handle; + r = pkgmgrinfo_create_pkgdbinfo("com.samsung.test", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_set_author_to_pkgdbinfo(handle, "John", "john@samsung.com", + "www.samsung.com", "en-us"); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_set_author_to_pkgdbinfo() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_destroy_pkgdbinfo(handle); + return; + } + tet_result(TET_PASS); + pkgmgrinfo_destroy_pkgdbinfo(handle); +} + +/** + * @brief Negative test case of pkgmgrinfo_set_author_to_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_set_author_to_pkgdbinfo_func_02(void) +{ + int r = 0; + r = pkgmgrinfo_set_author_to_pkgdbinfo(NULL, "John", "john@samsung.com", + "www.samsung.com", "en-us"); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_set_author_to_pkgdbinfo() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_set_cert_value_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_set_cert_value_func.c new file mode 100755 index 0000000..49d9711 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_set_cert_value_func.c @@ -0,0 +1,119 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_set_cert_value_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_set_cert_value_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_set_cert_value_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_set_cert_value_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_set_cert_value_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_set_cert_value_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_set_cert_value() + */ +static void utc_ApplicationFW_pkgmgrinfo_set_cert_value_func_01(void) +{ + int r = 0; + pkgmgrinfo_instcertinfo_h handle; + r = pkgmgrinfo_create_certinfo_set_handle(&handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_set_cert_value(handle, PMINFO_SET_AUTHOR_ROOT_CERT, "author root cert"); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_set_cert_value() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_destroy_certinfo_set_handle(handle); + return; + } + pkgmgrinfo_destroy_certinfo_set_handle(handle); + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_set_cert_value() + */ +static void utc_ApplicationFW_pkgmgrinfo_set_cert_value_func_02(void) +{ + int r = 0; + r = pkgmgrinfo_set_cert_value(NULL, PMINFO_SET_AUTHOR_ROOT_CERT, "author root cert"); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_set_cert_value() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of pkgmgrinfo_set_cert_value() + */ +static void utc_ApplicationFW_pkgmgrinfo_set_cert_value_func_03(void) +{ + int r = 0; + pkgmgrinfo_instcertinfo_h handle; + r = pkgmgrinfo_create_certinfo_set_handle(&handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_set_cert_value(handle, 50, "author root cert"); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_set_cert_value() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_destroy_certinfo_set_handle(handle); + return; + } + pkgmgrinfo_destroy_certinfo_set_handle(handle); + tet_result(TET_PASS); +} + diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_set_description_to_pkgdbinfo_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_set_description_to_pkgdbinfo_func.c new file mode 100755 index 0000000..8cfa047 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_set_description_to_pkgdbinfo_func.c @@ -0,0 +1,118 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_set_description_to_pkgdbinfo_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_set_description_to_pkgdbinfo_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_set_description_to_pkgdbinfo_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_set_description_to_pkgdbinfo_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_set_description_to_pkgdbinfo_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_set_description_to_pkgdbinfo_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_set_description_to_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_set_description_to_pkgdbinfo_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkgdbinfo_h handle; + r = pkgmgrinfo_create_pkgdbinfo("com.samsung.test", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_set_description_to_pkgdbinfo(handle, "sample test app", "en-us"); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_set_description_to_pkgdbinfo() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_destroy_pkgdbinfo(handle); + return; + } + tet_result(TET_PASS); + pkgmgrinfo_destroy_pkgdbinfo(handle); +} + +/** + * @brief Negative test case of pkgmgrinfo_set_description_to_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_set_description_to_pkgdbinfo_func_02(void) +{ + int r = 0; + pkgmgrinfo_pkgdbinfo_h handle; + r = pkgmgrinfo_create_pkgdbinfo("com.samsung.test", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_set_description_to_pkgdbinfo(handle, NULL, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_set_description_to_pkgdbinfo() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_destroy_pkgdbinfo(handle); + return; + } + tet_result(TET_PASS); + pkgmgrinfo_destroy_pkgdbinfo(handle); +} + +/** + * @brief Negative test case of pkgmgrinfo_set_description_to_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_set_description_to_pkgdbinfo_func_03(void) +{ + int r = 0; + r = pkgmgrinfo_set_description_to_pkgdbinfo(NULL, "sample test app", "en-us"); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_set_description_to_pkgdbinfo() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_set_icon_to_pkgdbinfo_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_set_icon_to_pkgdbinfo_func.c new file mode 100755 index 0000000..a662c5d --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_set_icon_to_pkgdbinfo_func.c @@ -0,0 +1,118 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_set_icon_to_pkgdbinfo_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_set_icon_to_pkgdbinfo_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_set_icon_to_pkgdbinfo_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_set_icon_to_pkgdbinfo_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_set_icon_to_pkgdbinfo_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_set_icon_to_pkgdbinfo_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_set_icon_to_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_set_icon_to_pkgdbinfo_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkgdbinfo_h handle; + r = pkgmgrinfo_create_pkgdbinfo("com.samsung.test", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_set_icon_to_pkgdbinfo(handle, "com.samsung.test.png", "en-us"); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_set_icon_to_pkgdbinfo() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_destroy_pkgdbinfo(handle); + return; + } + tet_result(TET_PASS); + pkgmgrinfo_destroy_pkgdbinfo(handle); +} + +/** + * @brief Negative test case of pkgmgrinfo_set_icon_to_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_set_icon_to_pkgdbinfo_func_02(void) +{ + int r = 0; + pkgmgrinfo_pkgdbinfo_h handle; + r = pkgmgrinfo_create_pkgdbinfo("com.samsung.test", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_set_icon_to_pkgdbinfo(handle, NULL, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_set_icon_to_pkgdbinfo() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_destroy_pkgdbinfo(handle); + return; + } + tet_result(TET_PASS); + pkgmgrinfo_destroy_pkgdbinfo(handle); +} + +/** + * @brief Negative test case of pkgmgrinfo_set_icon_to_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_set_icon_to_pkgdbinfo_func_03(void) +{ + int r = 0; + r = pkgmgrinfo_set_icon_to_pkgdbinfo(NULL, "com.samsung.test.png", "en-us"); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_set_icon_to_pkgdbinfo() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_set_install_location_to_pkgdbinfo_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_set_install_location_to_pkgdbinfo_func.c new file mode 100755 index 0000000..a2ee6c7 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_set_install_location_to_pkgdbinfo_func.c @@ -0,0 +1,118 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_set_install_location_to_pkgdbinfo_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_set_install_location_to_pkgdbinfo_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_set_install_location_to_pkgdbinfo_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_set_install_location_to_pkgdbinfo_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_set_install_location_to_pkgdbinfo_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_set_install_location_to_pkgdbinfo_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_set_install_location_to_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_set_install_location_to_pkgdbinfo_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkgdbinfo_h handle; + r = pkgmgrinfo_create_pkgdbinfo("com.samsung.test", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_set_install_location_to_pkgdbinfo(handle, INSTALL_EXTERNAL); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_set_install_location_to_pkgdbinfo() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_destroy_pkgdbinfo(handle); + return; + } + tet_result(TET_PASS); + pkgmgrinfo_destroy_pkgdbinfo(handle); +} + +/** + * @brief Negative test case of pkgmgrinfo_set_install_location_to_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_set_install_location_to_pkgdbinfo_func_02(void) +{ + int r = 0; + pkgmgrinfo_pkgdbinfo_h handle; + r = pkgmgrinfo_create_pkgdbinfo("com.samsung.test", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_set_install_location_to_pkgdbinfo(handle, -10); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_set_install_location_to_pkgdbinfo() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_destroy_pkgdbinfo(handle); + return; + } + tet_result(TET_PASS); + pkgmgrinfo_destroy_pkgdbinfo(handle); +} + +/** + * @brief Negative test case of pkgmgrinfo_set_install_location_to_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_set_install_location_to_pkgdbinfo_func_03(void) +{ + int r = 0; + r = pkgmgrinfo_set_install_location_to_pkgdbinfo(NULL, INSTALL_INTERNAL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_set_install_location_to_pkgdbinfo() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_set_label_to_pkgdbinfo_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_set_label_to_pkgdbinfo_func.c new file mode 100755 index 0000000..fd01ce1 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_set_label_to_pkgdbinfo_func.c @@ -0,0 +1,118 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_set_label_to_pkgdbinfo_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_set_label_to_pkgdbinfo_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_set_label_to_pkgdbinfo_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_set_label_to_pkgdbinfo_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_set_label_to_pkgdbinfo_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_set_label_to_pkgdbinfo_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_set_label_to_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_set_label_to_pkgdbinfo_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkgdbinfo_h handle; + r = pkgmgrinfo_create_pkgdbinfo("com.samsung.test", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_set_label_to_pkgdbinfo(handle, "test", "en-us"); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_set_label_to_pkgdbinfo() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_destroy_pkgdbinfo(handle); + return; + } + tet_result(TET_PASS); + pkgmgrinfo_destroy_pkgdbinfo(handle); +} + +/** + * @brief Negative test case of pkgmgrinfo_set_label_to_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_set_label_to_pkgdbinfo_func_02(void) +{ + int r = 0; + pkgmgrinfo_pkgdbinfo_h handle; + r = pkgmgrinfo_create_pkgdbinfo("com.samsung.test", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_set_label_to_pkgdbinfo(handle, NULL, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_set_label_to_pkgdbinfo() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_destroy_pkgdbinfo(handle); + return; + } + tet_result(TET_PASS); + pkgmgrinfo_destroy_pkgdbinfo(handle); +} + +/** + * @brief Negative test case of pkgmgrinfo_set_label_to_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_set_label_to_pkgdbinfo_func_03(void) +{ + int r = 0; + r = pkgmgrinfo_set_label_to_pkgdbinfo(NULL, "test", "en-us"); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_set_label_to_pkgdbinfo() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_set_preload_to_pkgdbinfo_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_set_preload_to_pkgdbinfo_func.c new file mode 100755 index 0000000..808eb40 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_set_preload_to_pkgdbinfo_func.c @@ -0,0 +1,118 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_set_preload_to_pkgdbinfo_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_set_preload_to_pkgdbinfo_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_set_preload_to_pkgdbinfo_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_set_preload_to_pkgdbinfo_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_set_preload_to_pkgdbinfo_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_set_preload_to_pkgdbinfo_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_set_preload_to_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_set_preload_to_pkgdbinfo_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkgdbinfo_h handle; + r = pkgmgrinfo_create_pkgdbinfo("com.samsung.test", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_set_preload_to_pkgdbinfo(handle, 0); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_set_preload_to_pkgdbinfo() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_destroy_pkgdbinfo(handle); + return; + } + tet_result(TET_PASS); + pkgmgrinfo_destroy_pkgdbinfo(handle); +} + +/** + * @brief Negative test case of pkgmgrinfo_set_preload_to_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_set_preload_to_pkgdbinfo_func_02(void) +{ + int r = 0; + pkgmgrinfo_pkgdbinfo_h handle; + r = pkgmgrinfo_create_pkgdbinfo("com.samsung.test", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_set_preload_to_pkgdbinfo(handle, -10); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_set_preload_to_pkgdbinfo() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_destroy_pkgdbinfo(handle); + return; + } + tet_result(TET_PASS); + pkgmgrinfo_destroy_pkgdbinfo(handle); +} + +/** + * @brief Negative test case of pkgmgrinfo_set_preload_to_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_set_preload_to_pkgdbinfo_func_03(void) +{ + int r = 0; + r = pkgmgrinfo_set_preload_to_pkgdbinfo(NULL, 0); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_set_preload_to_pkgdbinfo() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_set_removable_to_pkgdbinfo_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_set_removable_to_pkgdbinfo_func.c new file mode 100755 index 0000000..2348d1a --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_set_removable_to_pkgdbinfo_func.c @@ -0,0 +1,118 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_set_removable_to_pkgdbinfo_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_set_removable_to_pkgdbinfo_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_set_removable_to_pkgdbinfo_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_set_removable_to_pkgdbinfo_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_set_removable_to_pkgdbinfo_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_set_removable_to_pkgdbinfo_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_set_removable_to_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_set_removable_to_pkgdbinfo_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkgdbinfo_h handle; + r = pkgmgrinfo_create_pkgdbinfo("com.samsung.test", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_set_removable_to_pkgdbinfo(handle, 1); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_set_removable_to_pkgdbinfo() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_destroy_pkgdbinfo(handle); + return; + } + tet_result(TET_PASS); + pkgmgrinfo_destroy_pkgdbinfo(handle); +} + +/** + * @brief Negative test case of pkgmgrinfo_set_removable_to_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_set_removable_to_pkgdbinfo_func_02(void) +{ + int r = 0; + pkgmgrinfo_pkgdbinfo_h handle; + r = pkgmgrinfo_create_pkgdbinfo("com.samsung.test", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_set_removable_to_pkgdbinfo(handle, -10); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_set_removable_to_pkgdbinfo() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_destroy_pkgdbinfo(handle); + return; + } + tet_result(TET_PASS); + pkgmgrinfo_destroy_pkgdbinfo(handle); +} + +/** + * @brief Negative test case of pkgmgrinfo_set_removable_to_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_set_removable_to_pkgdbinfo_func_03(void) +{ + int r = 0; + r = pkgmgrinfo_set_removable_to_pkgdbinfo(NULL, 1); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_set_removable_to_pkgdbinfo() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_set_size_to_pkgdbinfo_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_set_size_to_pkgdbinfo_func.c new file mode 100755 index 0000000..9e885bc --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_set_size_to_pkgdbinfo_func.c @@ -0,0 +1,123 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_set_size_to_pkgdbinfo_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_set_size_to_pkgdbinfo_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_set_size_to_pkgdbinfo_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_set_size_to_pkgdbinfo_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_set_size_to_pkgdbinfo_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_set_size_to_pkgdbinfo_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_set_size_to_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_set_size_to_pkgdbinfo_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkgdbinfo_h handle; + r = pkgmgrinfo_create_pkgdbinfo("com.samsung.test", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_set_install_location_to_pkgdbinfo(handle, INSTALL_EXTERNAL); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_set_size_to_pkgdbinfo(handle, "10"); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_set_size_to_pkgdbinfo() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_destroy_pkgdbinfo(handle); + return; + } + tet_result(TET_PASS); + pkgmgrinfo_destroy_pkgdbinfo(handle); +} + +/** + * @brief Negative test case of pkgmgrinfo_set_size_to_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_set_size_to_pkgdbinfo_func_02(void) +{ + int r = 0; + pkgmgrinfo_pkgdbinfo_h handle; + r = pkgmgrinfo_create_pkgdbinfo("com.samsung.test", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_set_size_to_pkgdbinfo(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_set_size_to_pkgdbinfo() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_destroy_pkgdbinfo(handle); + return; + } + tet_result(TET_PASS); + pkgmgrinfo_destroy_pkgdbinfo(handle); +} + +/** + * @brief Negative test case of pkgmgrinfo_set_size_to_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_set_size_to_pkgdbinfo_func_03(void) +{ + int r = 0; + r = pkgmgrinfo_set_size_to_pkgdbinfo(NULL, "10"); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_set_size_to_pkgdbinfo() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_set_type_to_pkgdbinfo_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_set_type_to_pkgdbinfo_func.c new file mode 100755 index 0000000..d54c9c0 --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_set_type_to_pkgdbinfo_func.c @@ -0,0 +1,118 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_set_type_to_pkgdbinfo_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_set_type_to_pkgdbinfo_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_set_type_to_pkgdbinfo_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_set_type_to_pkgdbinfo_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_set_type_to_pkgdbinfo_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_set_type_to_pkgdbinfo_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_set_type_to_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_set_type_to_pkgdbinfo_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkgdbinfo_h handle; + r = pkgmgrinfo_create_pkgdbinfo("com.samsung.test", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_set_type_to_pkgdbinfo(handle, "rpm"); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_set_type_to_pkgdbinfo() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_destroy_pkgdbinfo(handle); + return; + } + tet_result(TET_PASS); + pkgmgrinfo_destroy_pkgdbinfo(handle); +} + +/** + * @brief Negative test case of pkgmgrinfo_set_type_to_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_set_type_to_pkgdbinfo_func_02(void) +{ + int r = 0; + pkgmgrinfo_pkgdbinfo_h handle; + r = pkgmgrinfo_create_pkgdbinfo("com.samsung.test", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_set_type_to_pkgdbinfo(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_set_type_to_pkgdbinfo() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_destroy_pkgdbinfo(handle); + return; + } + tet_result(TET_PASS); + pkgmgrinfo_destroy_pkgdbinfo(handle); +} + +/** + * @brief Negative test case of pkgmgrinfo_set_type_to_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_set_type_to_pkgdbinfo_func_03(void) +{ + int r = 0; + r = pkgmgrinfo_set_type_to_pkgdbinfo(NULL, "rpm"); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_set_type_to_pkgdbinfo() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_ApplicationFW_pkgmgrinfo_set_version_to_pkgdbinfo_func.c b/TC/unit/utc_ApplicationFW_pkgmgrinfo_set_version_to_pkgdbinfo_func.c new file mode 100755 index 0000000..293f06e --- /dev/null +++ b/TC/unit/utc_ApplicationFW_pkgmgrinfo_set_version_to_pkgdbinfo_func.c @@ -0,0 +1,118 @@ +/* + * slp-pkgmgr + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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 +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup) (void) = startup; +void (*tet_cleanup) (void) = cleanup; + +static void utc_ApplicationFW_pkgmgrinfo_set_version_to_pkgdbinfo_func_01(void); +static void utc_ApplicationFW_pkgmgrinfo_set_version_to_pkgdbinfo_func_02(void); +static void utc_ApplicationFW_pkgmgrinfo_set_version_to_pkgdbinfo_func_03(void); + + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + {utc_ApplicationFW_pkgmgrinfo_set_version_to_pkgdbinfo_func_01, POSITIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_set_version_to_pkgdbinfo_func_02, NEGATIVE_TC_IDX}, + {utc_ApplicationFW_pkgmgrinfo_set_version_to_pkgdbinfo_func_03, NEGATIVE_TC_IDX}, + {NULL, 0}, +}; + +static void startup(void) +{ +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of pkgmgrinfo_set_version_to_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_set_version_to_pkgdbinfo_func_01(void) +{ + int r = 0; + pkgmgrinfo_pkgdbinfo_h handle; + r = pkgmgrinfo_create_pkgdbinfo("com.samsung.test", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_set_version_to_pkgdbinfo(handle, "0.0.1"); + if (r != PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_set_version_to_pkgdbinfo() failed in positive test case"); + tet_result(TET_FAIL); + pkgmgrinfo_destroy_pkgdbinfo(handle); + return; + } + tet_result(TET_PASS); + pkgmgrinfo_destroy_pkgdbinfo(handle); +} + +/** + * @brief Negative test case of pkgmgrinfo_set_version_to_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_set_version_to_pkgdbinfo_func_02(void) +{ + int r = 0; + pkgmgrinfo_pkgdbinfo_h handle; + r = pkgmgrinfo_create_pkgdbinfo("com.samsung.test", &handle); + if (r != PMINFO_R_OK) { + tet_result(TET_UNINITIATED); + return; + } + r = pkgmgrinfo_set_version_to_pkgdbinfo(handle, NULL); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_set_version_to_pkgdbinfo() failed in negative test case"); + tet_result(TET_FAIL); + pkgmgrinfo_destroy_pkgdbinfo(handle); + return; + } + tet_result(TET_PASS); + pkgmgrinfo_destroy_pkgdbinfo(handle); +} + +/** + * @brief Negative test case of pkgmgrinfo_set_version_to_pkgdbinfo() + */ +static void utc_ApplicationFW_pkgmgrinfo_set_version_to_pkgdbinfo_func_03(void) +{ + int r = 0; + r = pkgmgrinfo_set_version_to_pkgdbinfo(NULL, "0.0.1"); + if (r == PMINFO_R_OK) { + tet_infoline + ("pkgmgrinfo_set_version_to_pkgdbinfo() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/TC/unit/utc_MODULE_API_func.c.in b/TC/unit/utc_MODULE_API_func.c.in new file mode 100755 index 0000000..2899c28 --- /dev/null +++ b/TC/unit/utc_MODULE_API_func.c.in @@ -0,0 +1,76 @@ +#include + +static void startup(void); +static void cleanup(void); + +void (*tet_startup)(void) = startup; +void (*tet_cleanup)(void) = cleanup; + +static void utc_@MODULE@_@API@_func_01(void); +static void utc_@MODULE@_@API@_func_02(void); + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + { utc_@MODULE@_@API@_func_01, POSITIVE_TC_IDX }, + { utc_@MODULE@_@API@_func_02, NEGATIVE_TC_IDX }, +}; + +static void startup(void) +{ + int r; +/* + char *err; + r = initailze...; + if (r) { + err = "Error message......."; + tet_infoline(err); + tet_delete(POSITIVE_TC_IDX, err); + tet_delete(NEGATIVE_TC_IDX, err); + } +*/ + +} + +static void cleanup(void) +{ +} + +/** + * @brief Positive test case of @API@() + */ +static void utc_@MODULE@_@API@_func_01(void) +{ + int r = 0; + +/* + r = @API@(...); +*/ + if (r) { + tet_infoline("@API@() failed in positive test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} + +/** + * @brief Negative test case of ug_init @API@() + */ +static void utc_@MODULE@_@API@_func_02(void) +{ + int r = 0; + +/* + r = @API@(...); +*/ + if (!r) { + tet_infoline("@API@() failed in negative test case"); + tet_result(TET_FAIL); + return; + } + tet_result(TET_PASS); +} diff --git a/debian/changelog b/debian/changelog new file mode 100755 index 0000000..ef8ebf6 --- /dev/null +++ b/debian/changelog @@ -0,0 +1,8 @@ +pkgmgr-info (0.2.1) unstable; urgency=low + + * Initial release + * Git: slp/pkgs/a/pkgmgr-info + * Tag: pkgmgr-info_0.2.1 + + -- Jaeho Lee Thu, 24 May 2012 12:04:51 +0530 + diff --git a/debian/compat b/debian/compat new file mode 100755 index 0000000..7ed6ff8 --- /dev/null +++ b/debian/compat @@ -0,0 +1 @@ +5 diff --git a/debian/control b/debian/control new file mode 100755 index 0000000..60bd677 --- /dev/null +++ b/debian/control @@ -0,0 +1,27 @@ +Source: pkgmgr-info +Section: devel +Priority: extra +Maintainer: Garima Shrivastava , Jaeho Lee +Build-Depends: debhelper (>= 5),libssl-dev, libslp-setting-dev, libslp-db-util-dev +Standards-Version: 3.7.2 + +Package: pkgmgr-info +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends} +Description: + +Package: pkgmgr-info-dev +Architecture: any +Depends: app2sd (= ${Source-Version}) +Description: App2sd dev package + +Package: pkgmgr-info-doc +Architecture: all +Description: + +Package: pkgmgr-info-dbg +Section: debug +Architecture: any +Depends: pkgmgr-info (= ${Source-Version}) +Description: pkgmgr-info dbg package + diff --git a/debian/copyright b/debian/copyright new file mode 100755 index 0000000..37b94ac --- /dev/null +++ b/debian/copyright @@ -0,0 +1,16 @@ +/* + * Copyright (c) 2012 - 2013 Samsung Electronics Co., Ltd. All rights reserved. + * + * 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. + * + */ diff --git a/debian/dirs b/debian/dirs new file mode 100755 index 0000000..ca882bb --- /dev/null +++ b/debian/dirs @@ -0,0 +1,2 @@ +usr/bin +usr/sbin diff --git a/debian/pkgmgr-info-dev.install.in b/debian/pkgmgr-info-dev.install.in new file mode 100755 index 0000000..7920b49 --- /dev/null +++ b/debian/pkgmgr-info-dev.install.in @@ -0,0 +1,2 @@ +@PREFIX@/include/pkgmgr-info.h +@PREFIX@/lib/pkgconfig/*.pc diff --git a/debian/pkgmgr-info.install.in b/debian/pkgmgr-info.install.in new file mode 100755 index 0000000..bf766f0 --- /dev/null +++ b/debian/pkgmgr-info.install.in @@ -0,0 +1 @@ +@PREFIX@/lib/*.so* diff --git a/debian/rules b/debian/rules new file mode 100755 index 0000000..f902937 --- /dev/null +++ b/debian/rules @@ -0,0 +1,126 @@ +#!/usr/bin/make -f +# -*- makefile -*- +# Sample debian/rules that uses debhelper. +# This file was originally written by Joey Hess and Craig Small. +# As a special exception, when this file is copied by dh-make into a +# dh-make output file, you may use that output file without restriction. +# This special exception was added by Craig Small in version 0.37 of dh-make. + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + + +# These are used for cross-compiling and for saving the configure script +# from having to guess our platform (since we know it already) +DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) +DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) +DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH) +DEB_HOST_ARCH_OS ?= $(shell dpkg-architecture -qDEB_HOST_GNU_OS) + +CFLAGS ?= -Wall -g +LDFLAGS ?= +PREFIX ?= /usr +DATADIR ?= /opt + +ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) + CFLAGS += -O0 +else + CFLAGS += -O2 +endif + +# architecture is not arm +ifneq (, $(findstring arm, $(DEB_HOST_ARCH))) + # do something here +else + # do something here for arm +endif + +CFLAGS += -fvisibility=hidden -fPIC +LDFLAGS += -Wl,--rpath=$(PREFIX)/lib -Wl,--as-needed + +CMAKE_TMP_DIR = $(CURDIR)/cmake_tmp + +config.status: + +configure: configure-stamp + +configure-stamp: + dh_testdir + mkdir -p $(CMAKE_TMP_DIR); + export LD_LIBRARY_PATH=$(LD_LIBRARY_PATH):$(CMAKE_TMP_DIR) && cd $(CMAKE_TMP_DIR); CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" LDFLAGS="$(LDFLAGS)" cmake .. -DCMAKE_INSTALL_PREFIX=$(PREFIX) + touch configure-stamp + +build: build-stamp + +build-stamp: configure-stamp + dh_testdir + # Add here commands to compile the package. + cd $(CMAKE_TMP_DIR) && $(MAKE) all + + for f in `find $(CURDIR)/debian/ -name "*.in"`; do \ + cat $$f > $${f%.in}; \ + sed -i -e "s#@PREFIX@#$(PREFIX)#g" $${f%.in}; \ + sed -i -e "s#@DATADIR@#$(DATADIR)#g" $${f%.in}; \ + done + + touch $@ + +clean: + dh_testdir + dh_testroot + rm -f *-stamp + + rm -rf $(CMAKE_TMP_DIR) + + for f in `find $(CURDIR)/debian/ -name "*.in"`; do \ + rm -f $${f%.in}; \ + done + + dh_clean + +install: build + dh_testdir + dh_testroot + dh_clean -k + dh_installdirs + + # Add here commands to install the package into debian/ncurses. + cd $(CMAKE_TMP_DIR) && $(MAKE) DESTDIR=$(CURDIR)/debian/tmp install + +# Build architecture-independent files here. +binary-indep: build install +# We have nothing to do by default. + +# Build architecture-dependent files here. +binary-arch: build install + dh_testdir + dh_testroot + dh_installchangelogs +# dh_installdocs + dh_installexamples + dh_install --list-missing --sourcedir=debian/tmp +# dh_installmenu +# dh_installdebconf +# dh_installlogrotate +# dh_installemacsen +# dh_installpam +# dh_installmime +# dh_python +# dh_installinit +# dh_installcron +# dh_installinfo + dh_installman + dh_link + dh_strip --dbg-package=app2sd-dbg + dh_compress + dh_fixperms +# dh_perl + dh_makeshlibs + dh_installdeb + dh_shlibdeps + dh_gencontrol + dh_md5sums + dh_builddeb + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary install diff --git a/images/SLP_pkgmgr_info.png b/images/SLP_pkgmgr_info.png new file mode 100755 index 0000000000000000000000000000000000000000..604c6e3f459098b6c0224cb6cd624df26741db06 GIT binary patch literal 35822 zcmce-V|1lWum(D@orx#5ZQGb66Wg{q@s4fVwryJzb7DKWd%kndTKDh$bN5>B+Hb$= z?&|KUda9lVD9TG9z~aDu`}Pe%N>cRaw{IYYz=IDO5_mwMfsjlg=A*a)WAOy7}Xi z!<@zp6B1>E*i<|DgY-wI10@p8EfZ1xpG5GmLF6Q(H#^#G{*z~KH1ceau|!sp*wTOF z5*-N?r^KbsANKzSQeWbqunVT=^DX}qwuHDKT0F^9wQa_K!&XZI&PueVWM-kn_TNa5 zkO1q7^HOV(15N?pIHCYseqP#uDx*@@L$pXy&g~I(s_KENyc|?6)1=(Q#GkiblgTf&KjJ}whpJ|N{u*bRchnWSdcUpv*bX2s3WBU zaf5*ngzM{T|BMV=d_GT7D0!=koRabSpo3Hnm%odWDfC&1Y($bwM#GU1Kq@=kmz~ga&U5wX?k(kp(46*!{$z%kH!)6(j zOsBP1)w0z;Bk)BFHI_)Fy!U*w-|BH!OiDsPK;V3}^<$&iCSip*<0hY(FD)m+8smTo z5N5!t&JJ~aA{lbb$H!Oa{o=@KvyNV&R`ZEO)m2UpAtdV|+4=T(G0CGQlu%5NJ!5li$wJ@^UW{YJm1t^HRL+HqL`ElSW3xH_nq z6q|Rs7c;n^-?V1+v(DZ4Ss4qeBFsdKy98jUBLpqX;0^qWd&8%>}2k;8PTQmOcb06&#$Y=%ur>4d5(I%q|T zBla9lySfaNzy8T=UM{)#8kTsWa*2F=Y*-z&o`pgpLp_&*j+AA*ilx(P4(p2pV}a5@yykK|h;{kX?jnPVR8#gl<1i#7M7m%3PBrfA(8H3Z za({%tZ!m#E!TxakdzxMx@mD;hg(Ex+OkZCh6qyCpT{bcCvKSiKhD6&-R-mUbok)^a zi>;0Z;zs^ti1kyMa!KK4Wengz)LMNx`UlVT`->9*D#4QGt^r<5otIv_l~LF0f=wft z7}s!c|4)aT%zS=ixV8pTO&$E6=k0+Muh*mOcpe+s$9^*hxHB)Q*I6Cqfr)wzaBU2_DgbnUDA8oq6{Hk;o%nS$ z6QY}1{&+j!OelI`G@H)E;`3}g2g|O|?P^bqSf|?%|Fo?>gu~fQlsNL`s9W=v_g9Et}1&f#|!|V3q>L2jx6Xl}52F2U^T7Qm?N|LAO8*hG4Xb4s}^&U$q zDNc%MncQGHB@9$sWJ>deBQI5LPRG)>g=-1N$+Q~8Fizu%RFulak)(q_r7+&cty`iI z?b7gLanSSOFWJmg28ROb^8M)o*)C)GIqQyOQIzwf!g0OXhDOeiG-q_nA`l8GxtPWhcl=(m zO3b6N&eu|a6wH_Z^Vz6OLn%UO8d9k#$40lwGHH=e*YCqcL*Pystni#vG#*VV*h7jJ z0v0{i9ogwf>0s>2nny|_%Sgi-sflb{Vu66kh`{A^9wLL?CLX7lSjsXqbEd#_7!%}3 zz<#G!W*U>}p`g1OMG|Pdh{#-!NF6?o!1$pI4kL31>y7aP0x6)T8_Z^;Z35FJ566>= zV4@P979AG_CqNRxXeNq^^TU2`Po4dAVvXB1@K^+uPNF7btAN9#9~H_j=CULr1$DaO zN`I5Ar`7Wqj+;#c1Kp5eHt-=OWg8J~Fmayysj3x*c}B8U#%;l@q6-)dbkZg@jfXy- zn*2er$TwM&iKXI2MR3OwH!FDr%QAgM@>{*brlQWJ)Dq*dc=dMYGFF;7Qi%ri<4{h2>M0s(GZ13jC0>bx zPCVn&UO}h;Tn<}FCk!^i^m0k+OsKs~09PC(UFcy#Vk)}D4bLHajg|-ey!9hBGdqV? z`P+BhMfcL+kDC#KQl)~B%$9r&1uhEpThcmOrxnLLFZ8+8i60sXjfIF=5+wRo|Jv7t zFJpLH*$R3cS(+F#b#JAzn@Bn%30Osl!)uGuT|wp ziE8Ol173I$4-W+WPG*Uuh%+;GJ7ERxkx60ZBi-&#l(=Fm`qI;*8Q|I4?WYh9E#hgb)JOL=5dT0+v5? zyND}L^PNFgdwP4e&mZ67$VnKll}h<^zKFy%e1{jVYl%}IsCjYWFlb}J3sL1vv}*?I zTf55~_J`x`m%I@U^IHh{z)#a8oCxKj# zqYTH`Lt_EVd`Ci)Jwn+OyC%w{gCU`WC#OG1P_l@#q|nO)96sF-3v}8RP?ezxAFNLf z-^|uBjfjcjc24rAg!IxzIo2P)b z`gk(oBUO+8cD5s|f(pg=)cy78wOFmAbwngI%PI*<(pSsh9J8LQ=_iIHu-xErXL?#+ zE$if*O!zBvWe*V(sO3^@3O9jRC2lLyWFk4qxZQ9F_EbZ?+uP%GwAadcgM97|KV7*D zrXE4o8Nux1oCTF)g-f+uMQXeZ`fIh$=oTW7neyH6twUd9v0uGM9_ROV-Hzs#%m4=@DgL{xVn zQgxz3vcAj(jkYl^QIzAEWEap*DtLHAlM7`lGvDymnP!#iICy|Ra2K}b7GD97fD?T$ zFgt3~3PG5eV3mYp!h2rV!r&<3B(6rw(eL0jpN6Cz@OF|(NQnvMQ9Y68DoPhtSP)Ol zfr=_;v#7}VB|0_8tDthLv3|6=hoaFu>L_}sjq;sdX$e;=YOV7M2nI%xc(DO_$FcEB zW?J)$qgzHtV45l``5o0^XR0ek<7gg?st*zzqvdCKlBc4AXsK<>`o08GnWjwDYf9NJ zM;9y<5H5Nu4JVX#wWVV8nQArEp z%!xVU1N%QUxW*&@^w<9MLcTl8L-Uvmdd%Z#pfS=ZpD5v(U&OO{$8{O#Z|L_vN$jICHHexoUcO_)FDn1O9>R2Gs{5nNt17!ljODfYy=V*Iytc;VVZNC&v^eY!Bi`f{$8om!JZF@93G$D;wGa9 zT~v7y7A!#}w=C}gq8QPGt-&PmfA8Rfu9x+Bs;~PXT0Ns^3YGb}oi~vM!v7=3Y{}Pi3rr5V{ zp8+302RbiY(hB5;JeQkoBw!n-iH*?aGwp>#dMma*zeS{Xb(u_IQM6%Z8?AEsVN%1z&*b4xC{D2Z#HmJ{p=*>ZVp9)O!1WC?^lVFSewS< zdLFhr5K3W9)_#wL0(4HO%GGM{jrg;KNc0(?)nz67IF<|MVp!_#_Ec$8`4H}wFNU{X zNaD8E?*H=pU9Xt0S7Licf2!d#;IAPiEaM4{V8~rR^~<5Shh;s?oxkZ~@%RE4scvYT z&+EY19K!px5)CWblftSyJ@HjfV7JIZvD}=~GrYqzSido1o5oZDntMZsC9RSTvi=!>?XZQ}i2sE138{OeIA>Mw)3wB8u(uG&bm4 zX$QSsor$^$SkcftUBusV$U!epW6J~~3mw`1IJ%GNxmQ@QbZ%5ZU50SDjig(s*Ljk4 zd$+*wztD|)HuLw zTZWbjRX#RT(ml7w&lS%wr#+3nJ`6v@phdRPu;YC0xnHK(L=ES_Gvo97TED*&3nz#ZQ??vEK?}K5f2q8#^ShA96l32%@>REqV;=T z5e^9%Zj#U)?jdQ%9(`+{6sYl&0m}}Kj4C0(>Dr>QRXJl?$mfsBl!CVpxz3Kb*;>){ znnHg2GnA@e7KRHt6oJXn?s|cOPM2mHNg%ML?zeMKGXaZu%h6AK z*y?wY$YiyyVl-a}817HXFiafc6QVLw0V>_=eqlZ6KqXo%Lufd)?a$i~s+R3Z?x(@3hMV=h`-Scn zpfo6UiQ2MSKhdP4BlO-TRPumN^$-A-U1$iqDE}}lf`OG(3QqGv-0XWDUfXVum8P+w z`98n+Y_@sG9oP@o3P2ew=jbr`3^+I#*V|!CWZ-MurU+l+VIS0mmXrvhsWZFbc~0g0 z_D-A6+vf;WVmZXdLt)4l%9DRKc(v}-WoFsB`XsA9=TFULkbx(p$j$<<62Zh506#+d zfG7CmMQO3q5vrNa+4-aie=8QzvW`Yy{yRI*bn^J7!s~mBHPB-djnQ?aNvjw#sj+jK zjm+bLb#kw(wHeb_cCuZt#p$-o%3q^4V3@Waf781@e#V#SG*JUaZu^86C4e{}h0m5g6vW_xftxXZXZH&?&4*u4#Q z`*_QI{>%=K(-Zc%nN9?xPRZd|TCDEK{+s1uX*6hC(5`Hx3)SHCLiO~nE479uR%akD zqsJxT{pm|WSzlj@BD0wRxN${PIomi%5mu`OWvLP!1;4o(=HZ5XUo=~U|Ln2*(OJ;P z28Y4Zr4Fap1l)or2LO^4%pi}dzvg8C+9?1o0~wEYIuxb=wK0Dgle>M@*^vc1{C+6=`dA@3i@2xMz4Vdd4vcUOB z$J}Ru!nI0fN38|u-<4{B=EGL+dPK1q+rh9BYlSjcO%IjqcKH&I$L=-qCk}RPQ%^FwW%EI z$BqPekc_?ekUML+7TS{K(onS)Wao@s-&*#-Y#rPP2~pyT)12!8}=&#s*t-f#lWF@U9J2_MZn8`jJ`OBdI(O3Ii-! z7W<{O)HZ1=6W5d4%c{zFQNkKDUmdY`DI*<|?1gvocG* zniYjNb1{Cn4dS1a;!b8pLodiiSMvh!Pqa1IcNmi_njAK^+IQ_{i?s3Ut)!RQ@5(YH zUTMpF8$Jc>-aM;;+9F9k0L=%sE-HW3MOUB$Rkv!r@cx#b#jfXEkSZ|L8;-F&WSuach2_27YIy8uP87+ zXG-sP^=~f1mALK5jSd2;h8ZrXaU@k$boDrHjYy38LWVb^Mh53x3e59(hiz^yMqhgA+7f6)5;T)eJ)3FbVulYMn6 zeHOzJPl->8a?yIiUb-vcSk8QkH-W$Sh}fm`%_MSj#TwPr$h=`2$CS5|MR|PT*`UDH z2vffTncEt)=@x9@TxQU#) z@3AYKNnL8Cvp#Wqie}!?9BMtqG~VQGo%NUT-LI~d+tTJrt?3*dPIybxg zoKyx`i=5~Vad0lj8jCNHDpfNa>?bPM}pnuAjpqq)q7UCfWjwmVGd4n_uE_M^!hJ6^b+ zn*j3>|1F=$IAzm`x76zFO}oksANu^AeXA7g&}qKpk(Ea}CU$(%LqN`algRM+kCDSC znv!O0AHTOL^=8|MI`c#B1noZE;YOyws2)?haMGa=C*6e|p@o=>M%vYAb+`PmI` z%Q#*PoADz^H3S@{v>QfS+z~xizz}gc_>?(RAq1r+<1LXw=T(UacwPr;t0?ko>xe_MIv5kVqdH`vd0#cbDmnU zdeU{&y^H!gI8Jbq$V8Jf8wEF3i^nn7V4I95v%nrn8Z|!qT*{av#M(*;w;LUd>QL-y zUchG$KTzBT#8D}`N?{pomDzf;xcG@?S0`mgwNV5{ozcAEB5WPQ7f0N_ z-3kb>rGHFw*$WXi__3FF+ofNz3o~F}xtbewu2e_urk5ngZZS3^nOir0T3Ly5E&YMT zaf9ISQR}E>I_QO~qcQV$&_+Ip#dbal!GDG3

<_9s(xwL*zUz1mP1$LYez3QancjwzC>RTy#RQFBHH7Jxx-&oSjqrdaac0&p zxQD-gZv~=OwtrwLQNxsNYig1NVXQS2%r(wvzI@D{>xyT^kdIy&vadXQ4GSAhgfxk7 z{Zu`K+biZrh;$W^TP7^VxeSi%2!QFS$e4LH;rr7iD}{9!b+`Ban6t&c{(y?}W1&ey zeAw|y{9sNG=tuL0q6at4uqzze#x!(5>feqMov^sWKk~887Ph*RI@jZX!t40H-dj{8 zmB5ALf(i)vr7!Tw9Ak?=A4B;Oz1tYrgCOv19sv|K?wF zJ@B?Pm^sO)LZ^vH!PVjP!91U2^V{aDGcfT*D~!!qo-&o6EL-4yIOJvEdMDF<1o3X@ zG$Tc+=aj;HJ0GJu`!FlNlc7A|NcP_NXbOhU+~Z9w{3NngTx?wy$es%W*n& zY~l?&UG|+zEGPkltFm0u_)Xpq2qweRC2f90^ z!cd|^&Tb%6t_$KlJ~ODD+IXO}UZjXpo&W9HK9u|UkIQiUgNPDg#4dN@`TdGC4U$~s zS``s$jru}hTt1UymWt?K+4FiwsL^)&N&b?BTp`<1Hj8P3(=7&)R+-z+JcG&P*4Sux z(MR_Z&SWil7brxQ*-NJReeLc|e@sloaV_npnO zYRl$)vr~n(gVI)Z&7l0M_b4g9b8L7|Rf~j`kZg3lXaYfis=24m@*x`9?SZZ$8K-+! zS)V4QiV0M13HNClpS4&ajd;C-G{4fUMIN^Uv6HbXho^mj(kQ`G>7Jdn<>u|2^Fqn@-$f( z_&%HbW}iXp3xa7xB*;NUt26(WwKA^s1|1 z=36mNtjzW=#m#_+KIPKq-4&$SjH6y}kAEaj5QXZYOPj6WY1{-Z73@ENHa}&<;&5BW z0Euwq>%Kd7Okdq@Iy~qxQD?5Nd@!LcdKqVbdH}-9SY@`7@&a>?*YkEn+htj7NfkZZQESYM&og^!D{)>4|iqjVDv*=#OLemdt$`L`Zga zf(}9-R_Y5JcJrT47ml7gR%F-G$SW@Ae znul4vwc(3YT0^rSOWRP&z*uW>NuA3a2W9X7BJ>FWH;}&WUixkheh&NFCPBPU&fG^N zqFd;n^Ozwf>8wTnzJ@KfMbhWf-{D~p1w7Se4J&^jZ&g)Kf}#=(?I&gXC)4+w zNBl6H!|{B}vua8|E1KeSw412R!Ar95@1mjgA>TltkeLOU8b&+ zxoj#4b`&PUA2`0V1O_pP0|Kk(%Tc~w1{K`kdx-VMo69ON1auG@mdwjaJ?GWZcMdHFVf#7Qk5Eo-9 z&`i3O)aoEhUp6j<12zuG;_1&9GsJYsibn?lvZ*4mS;(bKYJVLL2l}+8=YiZ7kH^Gl zr3?)US((gLS68>X9)JV+SOG{ls-lNazM-KF6vBhm@T@fgylt3pH8`tHPu~z{E}&Kl zBjL>H7~>td5M?ASZhwt@95dw4)W>YU9@$x^U#BsSu?-F_E%dXIEWJ%XyDd;PPSE7f zn^pwusYM2c<2r9*$r z#XoAuRIdMMe#`vB8%yLE%UFUwN+_JPK%c_iMfIHJaVwd^#hVUrXOT&QY;!E9WCkq# zXvdEdbQIkI@y+gm04g`(iDJ2%n=en2?d-NyN?|-M+&)8zP>yS}ZQti2s|SPEVphH9A#+n$4?lZnjk0w>1al7!HgftKqjJ{bu&z62Q<16_`i57R@(~7 z{L6!k!$=iVw^s*II;&O4D}v^ZA0PKl4$Q*J=^ujD`TUFV*U=P-4B)ZDJ;<|Z)C4x+ulYuOQ5Wo;!p zK&5()!%0F5F0UjiiTGU;S_!c#F0vIC^It5@z}(`e=%Z4IdS%DK}{iWImut&lraB~IC>)? zi1zcHsqqaJpWhp64id9XH5i)w@m%a1ONU)<7VFMf0tHHZxd+-^cU^+1ITIVG1CSi~ zGc(UA61UCCZMQ#|$!r?W7cIvqY=QHe6qqFai5g%Br|Pu33uH?DWle|gN)Z_wrlV<6mfICAPOwmzavHN+%IQW8;3kbl4EjBfVG zZb@%Gp7a)MA?C=;4ug{!^G|-VfdZoamt#?X+y<2~s+<=PH-|;6T{~x#VB&wNU8sTW8C15r8VNmH!p)P`qp{*PK>Z||xer;r5qKB?VwR4zvhk=;Eu#X3!^ zGd7i!LX$7(rb%Pi5#;d6L<%lcWA9MOL-n3n%j76H+P}Xg$vAG*C%N=&|^ZXyf*mcqC^K+)o;=#O7 zA?Krqhj2rQr?K=A@C`7g%Bd3+5@fJH9{0EgP1gjZ3d4*QcO0AS+HP}39d9A+p68Q5 zt}C^0C6@{-J1U$4?#x^{e|0!pS^pCx`y4_tjKjsAkOjNcsub9S@myOx11RfvD2SKc z&n&nxOz=Oq;6lJP6VRK^7|ic(KO`#okEe?TB5wWg=vhZ)hZ<2(;fDMlaake+z&N#@ z)*H<|`CE*QFEkpZZuxh|*kyV#kTTsKX%*!>54{Qs>Y(js1D9`wZH)!O*S}_eY(DoN z@m$bR7+8MJ_rJ4Ru2|8+N=JDY8~<~8$FPfppx$( zG8F`E6033nDAQdCsb5C=gRI&GP*sq%SzciSZ4Ltx4Ybaaz!Rn7y&J)VHI6Zqz1E=#)YVH1Y z((P+V+7mI1YA_c_`Q@1pi+Rl;4we}dJSXnf>+~i#X4neMIE%QeE2ji7m)tsk2e}kI zfs`2)8XZkyrTU}1(|-uH+I&Y$uicKs(XxtG=Orz)WBWA}J~$9YIGDLwB7GRGIR3yuR0;9*kFz>|E+ew2 z>B|4NFf4^rYWVv5NH}7dx+v<+i>3&tXv-eY8K;FewucUy4~j8J(60g z(u8gMd7|a`sK9lb#;IXOE8|O4i4m( zzrF_pAngGP9DMxN+|p~Q6KNt+y1_6tq&mxTuS%SZ6fqpud{~C=FFY(_+{HEYN+o)l z;#q#>yG$e%&4dEUwE;nJ2yi9=m&5zL&SHgzdQdStf^FH5e}~VE32UVm zdbVNiM%Pt&=3A*!6XCpjyV35gkvb{=gB9lYKzCTC9%sGuHrFt(N9d`){rhVwmMhh1+-IwQCb;rlnrdhdLuG|82`ze8iZ6^liuuQ_}d{CQ00 z=_}RUU^|9*C;AFFYAxO%q$o|K4}0&q-h$6(9PS>K-`Ol9@SJH9r^p6Ml@oULyM6C8 zRH{;uG#Uzpa$}9IN2e%tn4vIec|y|Q5CN__;(gv}Ll2Anve;pHU)DnxJi4u4*Icdu zb~DLi0C8}`&i$I#v)B1A>rGb>t)WfS!)k4!8Y*M2LgXsEO@PRHBh`)O+9otS^Vq;3 zyIg7=E)oH+$Q<$7K}7H7kVK()v(E~dY-TqUPjDH72saXyTIp&nD=8SDo^qBR?KlX2&dOBe@H~P zR01_wbY^F;2&jZ1D(N^GHU!*@x^LOuS}-pa-Mn zBYeoC4WNF=X(j?_gg;yw2rrb00eWMaUI@IuXdjm+==DP#KE;H zCj@l*SPjH_B{JK0Y;vsd`p5GQSc`>LIJsIF$HPf~5Mju8Y_`r}gm5Cc^u*B=3X=35 z4V;%-6Lhd=xw&pS_bORic!F7+t1e}j3~(m7^frktw2WDTXX_*DJi;6d=@~^lk+=w4_Lr4u)g9p_6gGuh4CSaN#pqZlC&@q36^ zdyo$%lXWfifM(Jf2B^227jXfE5f(xkIf0}!;PWvYG$4RNK$Y*o=h%40IU-t&)7uZa6@-HhgVC)@b<)!$vDHp-^<{X#c4~a(*Up4(;X6w7h6{P;EY-*`W1KRfT@lYrYS^z;O7~!9X2FXpt zB(~!nl;g(;8MPYbE3#}f7ry_j2p=95BsHa%+Lo$4*z11!mn0Ia1L5nfzMJ&|JnSV& zQOJ00Xh*JL#)*lu1TB4p&mh`xZ=-9mx?it-0fq(r2lzW!V4Q9&NJ7ahqc;R#E;Ctp z(q^{vnD`(MO)TWT%>H2d-nUiK&lf5pLs5i5jY_OKF2(z-hQn4{TQD9GEgpDhTsL#a_nt?cP3|WQ3&dJyY z!_fpd2?U%?oT-@McpGD~+?^$a!SV*lWI(oI_P7l4J3?O9GU@>?<>)VpDE}%V{otIG zDmJN!J8E!Fv&3JiWuMsZ?Bp??n9Aa=f`4#=4+V=++2VvDn8UdWK@IuME1baz;~Zvb zbZIkKCtO|)*&zX3>3XkK7Tp}iJ+`0X9lV1%*j$&DHc7>7p{dkVO8M^ z5znDC-WOUaCc5gRm4OJuKhpvJWN8^5Y#~9lf5@W}iu;ocZL6Mgo7`U)6_9C;CqHQ- zoHH4DuC543^;qe3JV+%u&_fkA(T|ke@-9r#eO_QM=Htcx^5Xmk7X-SPp#GL;V)2}y zgBdL`v-w=6bqS{>xBkW9KKIttont}qyXE&HiP>N7$8@Q$ajDysq1Z-S z5>`wzLRAyIUG|;64v%Cr)z|R%;2n-1b@t({A!IE4$)-(ue&&(E3*0hSES4s}6qKMP zTC7*>Tb|B1@F&{X(6C$g(m73u<0Pn}dn4|&S;3^QIB!x+n@{Fh@?K`|Vn}CZeDX|= zW)g&wQPND^|4dBiP3O!xzg}*9pX+p>+MSKlvUHszC*sk=yMh2@@9Ob&Gz~bz+8xuB9(fHl|CK6m~SVezYlk(`2Qh!+^}` z_1G;H0)4!FOwcrJ8h<(1)JR;9Xm9jHIEjX4zF`Qm6!+3YC0)En2As= zIlsZci_W0u6B%M?8+CbJ4v-ebr%7>4S1Pk{{Ish&0ZTv&DpPO!H4blgTBz{kDkN(c z{?eUh2*Sz-tA~~y%c?g#&NE<3;7ZrpMFi9rTb{J|w~nK*ESU$q^3Fy)Goi3|(K*+H zd!!zZ))sRblT1^Z_UfLlN#E&Lz3--D>67rz@!=4x27`X2GClc^HDY#CCYcJTN~jld zcpzrp-y6bWtUN>NiOQZU6K*Qk?*u+Gczn-epxJ5>mvJnYR1I$q(>0=>d<#x^MAD_ z4-VjQJn)&c?hD57)6A+(PJD1V2d=USyC1@gfOy_RfTyy~GFtG1cYk$u+XJ=(r~e#7 zt3722570*B2RBGjAT+5j8(X5s!{wcZZ(kJPV3FBhZu+o$-s=+Kp@jz}6r3o};d6^V zze1#A?4*;W8(OVUQXWo|bY9j2{t&Nnc>egw>nr)X3@*|u_0CAg5=oH?-L5Z#lFE08 z%iHNDcAjDCh#Dpruj!A~sH2=ZDa~4kZHOvR&SBD|m=K6ffJBdeh(nG#9hx%*%6G!q zGuW4jh$JzzIT&`s!&s?D!*x0%R^OQdMt}yTVTs%A%kZ}lJ~8+}Vur!Ctif9zbNBX~ zge~Gepm6Jg`Nz~YWfVt{Tbdyjx0+&c$`2g(bK0|9v~Mf7vxn)nC!`#xrKD6!^nWJX z2$SyU@Dk-rg+!)R%OD!E`v+pvC36W;)i~7JP7)Cj;?CF%EU5#};wI4!cS1ADZ~_=x z`2hg>%f!&?O=ox_3nlt$7Q_6qn2T%7peo5Mmr@U2KO(e4WfvM{D!GWg5!xThi)^1J ze)a|ofXX)twxQQz-ucr$)X-QpK0W>!{QQTG55-2~i&fqb?i%r(Bw&DtDvg)0I17@q z1{tTCNK8&VC=e`}n1mSwO4(8skB~2DE&PrzCiqC0B6Oplx5@s+VRt-B1HO)PkQ-?lsfj0YgxJr{9xX{cz*?Yh@||GAgB3|se=(c>59d{sP2nqN8==2kz+ zsKLO7Iwwm-0}~tA<9!$({f*b`*4Ajx8yU)3OdPMUsPa?TYOfk$FI5xnPuG`B06DYa z+Tes%>iML=V9a3y-X4XV+nzu|ia{+Y$reHHV@LwZhEN+IiP%XMY9bF(;uvoHoFZ)O z{-?n@pNK983CV&HUF~29qjPgSMNFLRLeg z@>ZN6<&j2?g#Jm>Q9*k==7Mk0_6x6Bh&D(rg1+BiP$9OFEq*z+@^?Nx$v?*V`AM3j zv~c{@h9PU=X|yT1iAX{>`2BhUj?np-qy>KQ$1PSuU!hCvLTQ$ynkjv2Q-N>&ccrAU z=xHQ!oAY2UhHhp{;c$k4*UwVqS#q8aZS}}+Yy_SGFJUd#>DkYDZ2sr8_6re; zBmSTlz#VJ7tP=j0GzF-fIL6bA-xm8}HC{19?=ootCtRW3BJ`mDzfBKegRmfNe2RrU zlP&P!ss_7h1swwA?R!6c9lJ+1J#l1YEFDASTKE9};HhZundSfN1{dEk0R|vWDTM!* zhW>x?8w}XIlt>Ne#OdT&=#!xcm?-;OT0OM*9}gWYV0Wi+z0sbNOk#(&$i+=Mp3nA^ z`10+)PARBQYhzrdPFW6wB~x9N;|ALueFDV^@j%*}W_Je{SfYkSN%U3!vEjc@2hq{m zebyUlW%dSDiKbMegn@uuy6+ML)MKH0H^ ziD;zf;|4!yR`?Avs#lu7x<4ZaR`h?{!_4|IlF4nz6U%3@y7?8p8Y-Onmn&sfpi^CE zb6wH#&SNwY_~&EI!7HPI0;>>7uZ39lE1+>aq6QHlU_g=XZ_IF2sS8E@1-n71V?&#c zHBV}#hl*_${uR7?ny}&Cb-FSdSD|j$TYV;J3VqUbe%?5cGIJGrXVx5{h>CA7We{$g zUKx)?fV~sVW21$m$;tx7eCLQ^M@4Mj1;0`P?$>Vi(Hc%bRVYx@#)sAr{vVdkIV`jO>*6!jWZU*++qNcKlWp6s$*#$6 znrxesZQFcL&-?qg>*{o0o$opK-fOS*+08d8VsGqx!bLRhMji48Q;>Z~K)+xQHj!*| zb8{E4kjT9?0Y5CDj4V5r{X-=6ZV2$NvXl6BXdC{#3~~&eOrj#`c>h}rxpf|4APm0w z{s!@P?hT3@X57h1dnj8u;{X}fSm#n2kkMukg4T!y#`o^eT8Gk@Jp&pAEhOoxfYh5< z{#?o?+zc=!vqJoOHm4t$l`mR{>mP@xe0UKgL*RAkPs7K;g1Oe}n;iG!sE!q682f7_ z5!uOkoYj_gpq%?0Dg+2ue3zgELk^5XmU7Xl0x}zy zdSHKs<@nLCzrrAHRv`k77z+qgB%mG!^{b_v6GA!x8CL@D!UtQ&xbwO38pTgt&uq}F z)(YmU#|;oyAN?CNGh+sZ3k%#0`1!mRPN+bE2voxp!mH{3#+e+zFOcE>Z882Iog?fU z@Uk)dnmm#2g_PUMj?oVUQKleCaY2^PxVLKlkx?*!gdg2|-|WkBaC4KW0eFg4YMnMQ z!YATf*23MDhnBrs0Ydp~p7ba~|CEU`q%auZdfNf%9pe9c)c^Msl)*TOfZ_AF`H9Ek za~jS%WdPuhK;ZevID)1Pqa~RF0>xg>N5y|>@{`Bq5Y^f8Aw1;NO(^uORjNPPb*f|7vNJtxXZ2Xb4p zBTg|WxcRgrz4*rnC0k^#M$@2jpnC67N#O8=;d)mFgUn^lv=B%a+ayl3bXv(_|ew~S+o$h4#9#9%N17yNZA-<-dRw=1t6k{;) zH?^RU!5oMJdDr;LxePbLhGL463}y(aa0XJcNOX~VrSUBS3w^ihhj4fNiZBz%7V-x@Oyh@FP@S9CFVm7`}pu{ z&X9`u!59Jbk3ZfY)n~Q}l{R>yS+)Gcl>q8=4`W$#? zF0X*djF6qsuZ}g_kDN4b#R%kYi?|3>`f(Vl<65!9mW>7W*vB(ts0_xpHwabb;0Kfpz`&K3CTJ(7@o5p zde8(lo=6}_RK*ua?4grLJ-4%s9W6e9ix1~rpMokSG< zh!QpolLE3{%;f7V^JN3p3V_b`=Ml-PO z7ybc({^IH-S}=@Eek$(vo71e@o(LFpHFep*GDC0fmhRRkI_@~tkyD;_4( zn>W4+jVqL|%gxBxs8R?IPR)!aAG{j#y%4d%vw`N5y$A9HVJPgu#6P|y`kn=uc=LxS zKbMuLmlN7-crI-bombk`aEp@4WF>qBp;(Y*s52cl^?I147pq@pjpBTn6kj>Mxp`-? zV8YJfnf>~9-a*V*F+&c zWk#Z66UWMizKbP7V?}xB3=9>#1+L&oD9*THT8&_no+CiR@*@s*`+pVFuQ~EZfPrFq z1qmSD+-|73B+29DgpX3S3ZIX|J^e<~vX86Fj;FB<-*eghR_icm^QT-}#8jtKpD-e& z#P8jRqTu9Z&7M{OlP+i_-n)8cvo54^ZY!7?}Z_sMs(n_F6XM599{=&l!?4nx5I;pnfl zb-3+}vrpYN{(AHo6EKE%O>jheXiaw?`)%hKs@23fG2D-azctA!z0JBeb#PuL>!Qdj z3BZ7k9_}Lkw%wdq6+S+YB$Z5oK-fM)tEo}&@H2tRw$gO3{`emEbk8NDS*NPr9~>`*e3dixLz7IL4e{E#V}+zn@7O3-j{bQLbijmPbe=w2g%qy9xl zS!!{2AI(wgO}B2PfWYj^<3DIr9~?AEZ!nV%TB3P~bk27lWbea7S1+@Lx=ExfjPs); zdgj-1?%QU=p@OCiB}7mdlPvbq!bW>+r{_nI_oPF<`BSDOOuEJytaG07wJ4!l?TA~Y zp(yI;QJR;aL{RdHn?(4Ry2>B5-uLW}4(9k#<=!a1s}_Fa!kW-X7sS>v;2aK5G};Sr zB7@;oi?!#zZuM@uQCvQtqFLvJI;D+U-uBg2axY9&mlJh}e`s$v=Cjth(f3Y1!mfWu z5UHHn*u4xH{K0C)*=hMD^82;9b~7CTI(_Z0lf+M%E9<3mvhctbGbaU&FY9ThZ z?;MK3AiCjwcv6$g3s?a9tw?#i4TpCLf`zebZ(sRW$}^;}Rk`evg)2{3>_v#!m{`H! zzdM&Z2n3tcd6h%YF21nGO7ef3Wa-#dvfRLV)6v<8>^#3^M!*GK8GnQRIU3O~50}K; zYwB{r_BdG0djEch&sU-b<9^cN|LbIbs~!Jlx?a{jgRl?)=8RMZnvSI!2)CDshC}=F zdfw{;Ht$pxbEUq$>%Gwel~Sb{XMW`(nI2@sVbt6_FQ~5x@tvKWtDRT#m0Af?Kl*l` z?@o4hV)+Lk2)y*Y=PC{f^CIgEz(5E#SWIQHETizB8f!1M6CovSb-B%8KVArS-V08| z=0QxN>bI3Pv+4)-t;u8SDkD>H*1O3!a?1}8FonhCnX34&69*gRY?udP@J(d0JJ%tV z&V_rvn-52z4J1m)iQF8FAx}vA4-}!@z+OmjtZ}uEF515)@OU0|ksHlzkVN0D#14cN zJ+hLfr|3lW9KuS*bOH9O=$YTr(ifw3CZpH@kBSjUx@PP;a7KIy$o!-nV8P+AC1Kt$ z`@Fi9v&maZ%pbUM(_Zmq&ZrE8OS3DGXLz#^G0M8!`%7H^s*_A4S8sKp1?t#ffHonB zsC@m61W9v3))Zh{#m19}k4TKLn9NpSY!qf;Z%5|#u3q?W_`c&WDRIjLItc?`7{zi~ z38qZ|lV}G3SuHj@7Lyl<96r!!)amzyAv6C7z-M>wgwU7UowV)Na4zvVOc?r*ay917onR{IBc3(~F~ zf8154#VNjOyH*ycqa#x%a%hkcGwcEgvJ%k!=>h+r;f^vcj~j#ex9JA)$S&X~0bl(h5dF!eX;PzCGXde$uP}{1tF0 z0_Wps0wjNa)~pH0U%8knG#jA3pKm3l7@gK?1vY`Kd-6$A39Uvt&@e|NO%#7t|5zYE zvy$Z831B}Y$pfo6?jiqJub}IBT?O~ETYNHTvKTo@y3WiveDjoN2rq&7eIPs>*AfPZ zp6?s$`9>!_E15J z;b4N+i2TSH4{Y6S2ktUB#uH&63AoQeaUC}Gkfh{9_ISvkx7HgSYo=FrD&61+_)!2N zW*c~+e3)+se1qBbz_6^8hK7e1%jR+KvP0+6fbe%YTiycfUyFatm7~5{BM;N z64+(m4@zhNo&g7Tqby{CuMG^78VW@&?fequY_8a`VD|dDKmOijE&gaS8- zh>)<$!coF&0)PROEpTgGg})q^R~ujU;c>h4sh5!#ViL_@(TMu-nXR?d~v44PVb2FaiTvjQc&F}l3 z)9CDY9r?QUnyM}$Di-laLY0(WRP)v5ooI<{FliNP_~Xb~Cf)gqp6^|Zj*G7qq-4hF zXo(fpDHX|3 z`6~u?5Z6Awnz-LK<)^3tu)KIqM^lYZ_cSS#Z9TGTVvK+A?f!$Y zalwQ;oT#=9;L*|Pwo$Tzy_4l%$!Ry?$NMfmWHCH!>O@}1pGE;qF^)ZVNo*hv>(}!tublz7 zqqRPS;gGdUoGy(lZyF1EuYt9K^tN3qF^LqU*x?U0&f?x2Kpl4t0(Y8Wf7dU)5tnZqiSZeLdV5vFKq|q7h6%- zMjQX!Dh?~{J>E;4x767$P4t&k4s%)RS`Q>hP7dsY$d8cUooao0C$r+UZhjUiXgcjLxB(BEjXj4_i#8FP0B{$s3_}=cXRrjuT;U z?Ae>UA!I{`HV$7(uU+)wcfiXQ%p*@ML%XSjp;oWqdS^Pp^%tyX+4wRBd`#+;nmF^W z=x_F#iyIsBm5y56>J9na&x+H+TgL=Zl(u;@*pyK=YB=>3ck-aZVBpQ46|2%%==39tpL-u2Tv12gdun&(^HRj(33%149!ii{nkm> z40+&WZh!Cy{fD4NF4H%Lr8q?Y_(;L6rBnSDXY&NKscC0^0t)l>;s;n*%5TpU_&gDC zgu;nz7H2wrTCK|)|3<#?np z`H#|o_6tB~>k3yQM@C@{2m)w@i^|Hzy!XkdilX!!aCA))ERLOfq}Lhjx#c)rcT&on`(WczwJL z2yoP^lFC@&2R*?s*Jr7q@ebHwBWH{A4X`8P*LkXg>~DY^DOo2W(OjzG^>WtuxSwHL zC>+XLG~}pu>bYmv{WD;4;OXYzE;A90`(du-2$EU>Wx?gFXUnm1s>p-rb=kdeDvk*n zCddwqi8I6SXn>hgqbQ1y^k>lHX@CQ#dZRPNu?iiXPyMYbYkUL|BsmKUtj6{3!1&q; zNg*86y;!@{)3p85x6_SQ1X(F}LV*fVI2bf<&kJ`EzFx$WJ0W4&*KUjN~k8j2{pc{L8G?bSuvTYt2^TcBJ+^~DUBOVT{Ylr&k$!WKpnma zDos75vy=b$UwLRct0g(d6PdAA{&%hTL=RQezmi0eB>y;TF2G(n?8(KV@nXY`#0;LZ zD;JxcSh78yh@|&r%+$)6pwY&n1w9=Mg;FB?^dOZYk)Fma_7n(x;VW*f!gDN&LgaHV zvz?gI&iW=bcmg}zDtldrFlxSPIHHT7Z+&~dV5E0?-#7BoAw$shti)x@x`)7kDx}hd zUy_d%oOiI@jDIYJG~x;H$|+D7-MAE7wjRnZW{B7wh5Xp}&9(lj=#r~Gih*rIjJivP z$)MOO0${>anov5KED%^m`xdxquE=7W#Y~E%CC(%y<5QjcSFeMH^HyJ)Q!;)N6{CnH zq)2=J<01t=FQ726ashSwHI`YhtIB?b0EQW*{F6S{E?kL$R*c~{vp9UN`t&Mgd@U6n z7+!x&R;yyEi!3Azme4t#cx^(v{nN0v)rvbTtA!fM?bjgi=gpqq;*^Ti{P^0=3u$xq|@~X*#3Pzd>xy~5xX#w9HquSXo{CWUg#!h z{lf0J9*B($6>i%xvil1&u<5LzfJ_ClM6`9TP*MUwp8mzM(-oCi?e@RPn_ty#$W2X@ zoLZFTV+Y&97+@xW-1kg@SYM1ydRj-(obqLlZ%CU63nT-j9Ce`8O~=Q4bR znkBfYV`Ap%Zr;^QwLMm+y;9h1bz6x@Ct|OSDlurb^U=*Hv~xnY=6|gW=`c)={s{WE z^V|?Rq{i^G=SLP8*lY*hzFv0hQ+^O;rFQoEkq>MyV6KRRqhCZ9ts*7(R z7M|qJVpW1jV12;j2F?oSdE(jfS2<&6UUB}hrXpw~fB31>xKGaB#hHUC;_N~mMac@O zzW3E)b8DBUz4S0o%$BhsLeCnqY|MSX(AX9<3C|_=pD3Gew*qNj#~x24w$%}A&riQe z&_;@U^93Ya-3s_3ItE3+keO6sM`3N^g|m-Cb^z0qEPf^~9G^t^4WELzV{`1n~x?#6;tXD8r&i$3K71!S$aXOCCTz0X) zMFR;rZkx%jg7c>gapP2rE=u)=)`CRca=e|x_~)S*85bbUBI7x%lumj1DQCEq3Cf=F zjW>U5C}(G-5>;JQj#;_012nqQhVK^BmDrTy5FM%D{Ej!dPhGEN7m~rI+Pj{=o@O)k z#~z?mT64-9)cVp>9d}gjkh|ejm)KWZV|*p~yy6vbHjoR3YEuo5BMW6GVztK0-9?%&8Aw-U48Eb>VeM93&u=(8-;%{>f(q5V)J`-iLM1lscC z9vs>n1+ou6V-xv(x}>h&WYknm*9HFl#yM=ie_&J& zB|+H9{WiLWoTxtpkvQW#pBO*6c!=UU^Orjz_rCIpOsc&1Pdvr5&Yx$)PbDsN3Vq!z z68IJZY6s)tV&iuuLrpwv^s`D8V^^`?uS6aS0fyG4KOs~`F%%V4cVj~t3eY&NtPf$! z%3#aM+$bonwN>|!Q)5-qx>`Mp0jFzf#@#4T0H}B;iTc4cve?%lQ!PdI zHRIjq{*@5dh`}FJ#*CBHiN!Ek;@{HoZ4{J|aJdr?hDTKC#M?_qF-5o*AA9TY%Un0j@oG@WiA!{Uqr=SGV;W8X$8HoE zrU;p>)k?*UB^d5kVBEF|+5Q;8M%s^?fPHCRr4(qbLQb_uWqMwUv2m_o;_#JWVU{>^>4OU6NTxtD$S)cQf(`5I^JiCPSl>tm>4 z?+gZ#Ds6WUgHSx14%_Z`1^guk^x9qYEDChUK2vx}6eSwJhQW$(SqTgMoi-SDM=~n= z6u%)HeI|kfgQgEm$sVt98Et!2P@V&O%(xl=IGo_sq(SaV`S|{Fu}8e|*_1n<%>Qy8 zaG6rGnYT)5F3#f2tI@$Xl=l6l4soULeTv{HWW?uKEjS`or=n)!D+S(aca6I zLNcGXhfF31BQe1qK(xyo6K9gAVT!Q+SXO$6`RQsfd9NXn$Ogm1GaD|y%;7Ub=)5em z_}2xbN_*8di##N_>m}_$+Jx8h7SV?|;kzBylOuajth0qfsuF;mlTlli6XsBGr1(k> z{|+>^qAgBGy2x>@)RQ^<1kDb65n=!OVE4({_KD&}*^Wxb^)(P!X&mbc&}T{%0TUx5 z$R|+yA%W-dX)_Q(q0P;nVI58~c!A^6)5Ak5AxuV~%u5u$O|IuN&cx+(NVtN+2_HKH z>25ui%BbGy!~4lNKEVfAdXIlgh##)$_wvabJs)fUVFBFtHnba1-SZdw+}}8B@JaNUKr2En_>zt{o%> z9#l>CeQ>1#85Bu=1gHQ%kJgXvNcvrY@;^|&MW>utJ@2h<52ts2oBhQtWHufmZ0ywd z#O*d*EqbLu*=UIbki-LYKvno-EN0WBGyNyhxCAn3vDIGMm{bYX)yZg6o&-$RBmfz1 z2uKu49e>Pc#q>813qve@0a(8x zanaBOa^vB<&j7re#P|JmvBn_qU%&*J1jLF&9>RrQur&0*j|Mph7fF9V0seB-eJe<1 zYs_eWdZozN&;pI{3NNL2HgA_lz81f3?~k5#0cHH&3-EjVHvc!vVuK@HB)s_-Ch}aV$`hBahoc`dDD)mHY?VD!)fjv98O&(wTP7O6k;1jZ$O}cld76KS*Z;Ub zUHZ(oNfOH79&$1`J{&c!dq__(GR8YKx$0JGHtc?x5NrnMu4e0P&7_DHVk{pGK)}la znZ;i5#R32w7Rl$(jZy&Yhz1zjwyO{tS740&9|`tp&LW+~oVbDH98_Fc6TpA}W>ac) zv8K^&Q%A--u>WkQ$D;wDu}G)S+a-Xglyubkij^1%DJ#xSPq&a6m29E9icMI$ZFh5`s8>y=M&F%4;y;=&T$IBTU6u8MTCXR)6x zrDi*5bIj zn50~(BJd@{e4Z^XQSaot&+d$YSSczHeaVsCUe^nn=N}h=mixVAUWa_`vg|?Y5#>ttp6E1=aRpyJA|v9fB=K6U)BZrb_VwczNC+C4P~A=Ltp!eLXhn_)kb9JY~um<1w(r@h_C>gx}A3p^-9hLkNxbX|{g8De&83dChu$5sOWaM5R*B z$i9hFp)9l!(ezT7##n(T=uOq2m_G4-anV``D)g0viueLyWr4^dIIYs}?+xJFXK=+1 zKy=yVfplto5tjut%fj^S0P2#vKy!GxU%;3!9BCQe_;~w^TUH<+N(0(R|5FjMXv7d< zFe&YbNOZWPvdKtN{P}i8>@M2URksq8p?BK{pk6A8rK4-0pM2NrXq($EDUAm!#e2IR zr3WlDA=%mRvz`Fkj>iQWZbOmZQj_!33A12?ebxW(XHNt@$orLW<^l&ogs((c*z!3^G6lvZtyITW-5+xxQ>iUU70@)rQyuR9aN!SS6UILG&0L-zv^q6?Q|sHhigZ@v|c z8JW*1C*Y$Tgi3tjc0Erb7vf@{;???Ar&Vhh%(9?ZPr^wZ3j57#_u1$e(Zbit6M!ic zf(BZku+m!iy=u3*$WBNz;_-Psk|Fe@jw~!#!+d>!JyIY!F#2P@f=}RkjkRCR9ay(# zN!Ut3;T~|c^}-u}cPvwTU&>o_*5dDg)#rGgiS$njot>4`5pN9Vl}&T5BA`9CK3_7c z?%Jt&!D6$Ynw?PoY=APZAM3)|%3AA7pCC41fchf4fy@n7qN6aI_Y?2Hgd_<5ey1@Tq@lR^M;N>9e@KnLK|vl)08e4T<_psfwH@i6p1YT+=?(U*P6c=v;a; zByntN2B%GKpcFB9z5O@EQ)iV4hqo`NEc6MokSTb~rf^;I!Wi2FmE4Ewv$vVtCgrjH zJHD}q9d9Xt_IJyow{K?@WA8t6dH5~fsZp71*LOmNUhYK-TF4SQrmvC!#}d!ixkmA5 zKWI-mT0c|T1ek`X0`b^@s!eKL#OiW)Obcj$4PDG+wa9RUuTvlfS4virg>SZP7%`$! z6c*tA<7ppYQa>mw9|6-2Z60pxWtLK+cp8pkQKen%vLe}x5mpfv0-x8b!E5{k43pjM zAAe)9aSwcmJ(o)V(yP}9q*EM$b-O5>7khyUhc}QNy$d0pM=Hiv&xmSWCxE*yjqZ zDSJTE{)kKX#UV20rdde?5x_Z}o)1MeojZ^AY2lj}Bed;?hJ?Nh-a_>i+fMjLSR1R8 zZ1t^zwuo+0=+mqUm|%-O7bW3?{Ih8P?(!lR_~qlEhjc`TS!m~WtDPp0J9NQfYUv(3 zU4|5x*2{2dvMZBphCwpCPZw`Ypib+4?;2lI_7dSp;P3)w6~S#!BRlmMrZB~+NimSW zbpA*JXGN5~UuUTBvM#dq5B&z#4;n&CncH%QO2y;^j=G9@niWmAjxt=&yE0+&e z0S!iSnMAF2L7%e#?qjnzf~0i(4;clAwaG%s#N7aOw21&sQe|V}+9VZ91Xt@vU@&Z) z8ZneNZj>OYw*bsFKleq=$OnuQcll@GT$GQ5ic}gRvXLJEji>np#MMZ_vdl0+^uJ5%er~z) zA+`cKIo{PYe=S5t6)>n{K(%y0XaOe12HSn%hfDRvJcDO$W30G7>?(v4T&%!}|aPyi)o&P)nw!NJmNPw}k*hh37S>=Jcsp;C*zG&nvp zRs5_(K*-3QXAl@G!ULexjpVzuNnyo~q1KcYf*DQ2Xn`4G;OgdA3k`!HUu~v)8Q@o) zZUO&;5)KhmYUp#3(N|eFmfi-NHBImZBkerE(>gk}882%Gi#eq4zq*=~M<-#o%47!M zc4oi^;nXz9ANFt<^!-?nfTcjiOe|bCQ%gcXI!mmJ>ofHZAJdW~BH%~PngH9&&LH#c zz`LY-s#MUu#s1)YZ#2aS*bL%O6>dO)S*C40gRLQB(qgp4@^S{O>=0}Cy%cjJ$g-wr zWT*}~!OPh91Q-$u>%WCx05d$K{Z0`-0ku2;ume0VoK6p1syih_K!MaG=wy*QpaiT} zk`$QJH)Au>Ch=%hT-n;M%Cxlrc7OHBZBG*k8IoL0(UiFC77fP~ah;=2T%y3L2{Plc zOYdc(562Ytdpgz8f-QzpYeP014iTUQj{Ys2p8?L*q@NB^u8_*>?X3J_hj%N>I3wHi z=Z>c%yM>F_r<>8QVPFGz?dHq%eOhwy37QLq`w1$q#4S$DcKD!hOsNE{xi61IsDt*!qIVgKkv3{5BHxjX^t~U1@<4XZC9}}+>!1pk^D8oet2SOSji9x>& z3>BFAAa_)+G9wyI&Xe*pmFFCLc)aYlc-vA;YG|}vpwDRcTT5O84R|6G*jDCy*}ncMTNMq5JK5og11T&GKq3=S$RJ-#L7p`2Cn z(+OfQ_6sX^-D_@yX1b#y(2tIc34|IR{QzW1ZDh=1=^VDmI>Zg(Vvo81-B_F2lJr9B zK!Ne62P&;D>=R7#KpfSmo`%(BeJF>^(Ldw*oeio*_v<{?zWQM%z}IZtXqJ~RuZhRjYgQn~iGTUsTQRZUW3A+Z}D-(%-B!dk}S`0IYLexCufGV4C2x znB-D#<#3xqIgh08h*SK*8GAE;W4j4BcGR2f@<@?dEN{3Pv9~vXYGIhiY1VXCgB)HT z;8~}nqjuhS0Zszqo?rD=9+OwvfIFoYaC@Z1_KDBDJfBqm78WiLi{5=j%A!gNDP;ZK z=X+SPR5NMju;WGaA|-nHBOT#JdceQa4%fru_HvAF@hk`4qHZ7&O7(WzMz3 zD_z&!XZEA?usB8VL7ow(Lzx4hWM$51qFJJ&s%v(h_O^xei(ekvK^Z&5nVX76qn(bF z^CuR_^RMk(`)?Vu;wW5Io3Tz?Mkn{42)O@>wZJxS(quaFT`-Gh<2>wXQKo8~emzRY zIq>R(x_~LsE&_=_9SOX3r`~*ABa}{$D{;TI*$9Vr-BvT5Z1tX1na>l3XvP6;+|Q#5 zUWOcJ{&SP~#Z3k!!+p`#LWyTzi+%zB?e%8zQ}Kx*;HO)lzw&_>8Oez8oVHikuBA={ z#hkpNAKi9OKTL8(A1w+GeZ0oSI8n0nd{}d3^nLf@ELlPkTspDYaMIn33?oKv(5Px2 zrYp-@9A~8v)j##^(6{Sm)sxuHz|ZCi3b1_*IB;bXLH$RWh2lYQC-nPN4$|??Pkahg zg*p}IW1T(DV8f}6^O-1S@?CM?cmD*AT}?iSm&1S6M0XIS_T5H3v20PN_IvW}3)lf$ zlu&aH0?FkNEYF=sL{jN&_t~;0s&736oi0~!8$K0-;UwN4s_%dM9IixS=S}Py%v^8H z)V{5dKlJe!p&3R1#YnP^q(WFHj%1~-yS~b8@7f>%UZ9Ya zloVcp6FVj`7j^y4vK07t){mO%U*X9DC7zX~SX6!_gSG86uX;de7b3^#MS;*!%6Lo* zK9m5m1ChN6Y&PkY*lS?PL^+PLlHxkq8&5v4ZkSj&D#@*0O8KeX?UxH=i-VHS2CEH+ z1Mpho{FTjQ{V>}FCHvaXZ9xaycI>%z7` zrb!t51p+R8y~zkf)@q-sjv}k2=ssR~L6Xk>W?vLoc=lUkz$=II4ju1F_lC)B{M9;R zF#cr!i@0nBFe!Zm)>HikH40zUm?+8ng|7g9H3#~`kr96;L+qK3(g_ zdK(J~A5y3z-)z7jfX9!am;}8#JhIu9Arq>NJfXT_?LuN4)L1ow@X>VxC4+JAYBoX(FFRLXfMae>aC*0_cQHU z8^J|kFa#0_F!X!Jhyz%9a8(pUj^UQrZ>c@?6f!%$FfB}a{H0$gSc(5 zjGc8~xpqfw#l(1y zwuxjH!$rkv&!DX9B54g>(l@-;d*w26`{ne(ZkZFhzMO0ueI}iw5SLuRTSRA*y2Hvw z6328|$zRT)R+4nx3+&e;&#z@HAe>f`)TQ@^fbz;=cOA`|gveg@+s-`$Hg)X3s-^v^ zYIyiSn`|tQebPQ)pa|9u_7pXh!N>_zt{T$IIT7TAh5h`B76$78_5EkP-OHE}m%YR>+r>F8wkO1xk5hgfw7eB*FEU-fNC!el@!SY{2J ztd0o&?P3vDmbKr?jK~~}R+~3al6Z$07QNC)PI|Is^FT(0y#1H+^)ht4(jke8{(7aD zOVu{3dL}=gm=460J}|$5dm+;}|HVePIAW^+TnRpx8a8D4Ow*ctQ#VHnvC4bI5jXX*M>-3z7q@mJoFG1T( z5iv>Ad17KCAPQNC#67HNiAcpQstX!KQ4$L7O7Q-KVxvil#s5&r(4ar zzV5r}#3vDBCBXB~lWK9h{Q;7a(`l!tg73R@1pw&k9c)qkWgJ60{h~{T@dpQlBRzv7 zld}J9emc9Pl#r6h@BLZg4ANg%$ta3FM)3Ef$!PtgY_?-CvxRn z-n(woUDx+l4@#el7drT-fy(#-Ur&US31;I84d|-@eo)_mgSF1Sv0oVlw2zy+?}yAj zIZgOcHW%Jsl)aXNfZ7NdUQ4GA$o$1cAzijOqmhJ0i>AbOBz(P5(PTJvynXXzna6GU z*fuVKY_~xlzj#d^Hd}I(dUVDxmdZj)!%_wzmh1OTP_III-nhvl-Xu^Cq2b&-8o(Ru zRlf9Qq1MC?%{J~6Kg-ZRCg{}PYy(9~5f1v9FNJT;OlahRV1F0@OQ&H%*c~JTd=z9I zoxi|G(Z_(aTXz7ua@Ak|I7v~>kG=i>9>wUdpj}+nU2Nt!t1(opghIj_VDfHm|NS;Z z>jE~J(Fr+V-3hX~9O6Ro5k{iyNjzw2yHiS-e0y|lIJ{Y{NN9Ndqr+5MZlKDN8+qLRe9~Wp) zorBN|o_4ezu2!b}A1iLE>&6;@-%GDra z9T$45{v|5BtSB~l8Z$CA6$wO4op9K7CP3~#U|QEz^tH}bMb2as8ci6cdfzvPwK^fN zMzNYryOM0WBKU-<=&EhnZ>-9!*(JWwfMzEFKDGUO3;X zU2w$3TLj_00PE42%Sr`?+J^a+C!Z$miij_+*h@gt4v@-2-(DUDpB#6GkYv(XpnyE7 zIN)rKW3$#gU2RsTLyUDq4njrU46XRFAy$S{ZYPP#;`ZnT`}_wy`}qm_LQ0LN$qSaQ z>fB7Vl`Xw<11&8gsn^lK`^M)Hax$mHod6WUJ9FB0C{!tlsrrZC#+_wX?+N74KjdGt z8Kkd!C#p>zh7fJGy28`s{K8^#BbspI>8R*1tFp_O%2KtV26mT`M$R4DN3UkOjZuqI zWehQ)g$V37!4MV^%#gLMiYQ8_mov?u0dO3lO<=WR2`%^ypqvzFHdxrd1CwhgGLe!i zz{WN@Z~r}?%lTL$AkxwS8JxbDVPdCgEB3GG)WHs0Q+gvFbh!0{P+vMPreX12Qt76W zDhCZNZwxSl-nkDp8lo55>&jJd3ohA8BMW!jLQ%}?K|MUBnQ$uytS6`G~eY6K;}#d^=z5Q@Q3vn}}1kWg~_w9(|Wg}Yw5`Sn8p zX;{@PYFp1u%FSUW2z8-YcH=*HJSPaN#avuuOy%9td}W4}a;wXkaT?$#h<3yY3;?}) zoe*~S9nA?fn*Z|~lg~1Q$H(I%{xaV)0`?czc54rJJh434A2Su0r+Sq*WwvH%wcZ9! z{#>~fJtRV0EPT(65cwvho7-t4p0(`2Z)IJ>m6+=m>fhjAPJ1H4*W#Ju{P-Qpqln#{O-d_R$DK5sFTLjb}s$o6aGS!h;o+D)zzg0Oaw`8 zH~Zt1+D&$CzY$PK?QYfqz;o7*_wvErzr&8?^QU=EP1IEd6b zKqL}poF-njWLJImgOGzAcCG?fB(lgbl%UD_4~~SvIDQN6-x|V86`rKf5fYAJabBZ| zX}XfR)J!?i!Q5!m8B2W^8f_{RwrEUY&1_wu@8KqdU2-@O4pE``j=IpNts19AzAJ+U z{cx*cz~c*hQKK@HKty)F))s8#?vR0tXBcl-|NmBze;U9E^zRcVWP}W_GCX`=3`nekNll~Y9NXEvDDqID?RX%s!lahXVqW zqEC}o+~F~hNeBLlKt7>9FkrI`Z)S82_#^ent1N^02V6XX8zfKAXR+QHZ{Bv%&l#st z9BY`e3NvfHQ#7d+>SUp+`#$iXpB!dVq1sJU1iBYvVLS1Z51=iAw^ykHAH~iX3_puM zFdc5a2Z$#yn!4FGh3QDCWqadVClV0og&nVnse?&|TEI=eR3l+>?-Puv*Fbg~&`JE_ zat?r)s+VYT1A<|w2$#42VJpvw>;RiNk2|ur+ht$Eq6X&F%)Vu~yW@eu-f|@*cPkj} z$iI-rMPAm;BT%nLRSlKu5A=a*?(ZPo>q3JzorW82NMh8d1al_)VUH@+xss>MGtf^du7}`3*eWo>AU++XFW~HACEbh|X>US`j2KDRw7p{ic zJGawl`VroI4g*lOL?^Hxx%X|`%+u$MA{F#&wb4ok_85i$U82Ei zlYR1fg56V}fJ}Xslw7}70rAB41d1;W9`_g4mXByYy^g@@b!sSrgH^XyS(07AIKRf# zAY7#4kI8St#`ogR&|$Xng|i(E zb-tB7eYYhRS0nw)`O~HG2kh7y2?*#qcgRMle0M%;+aydN`Fr3h>oqwhJP}cm!f`UG ztVD8d;mzlHk_-_5PG~pcPPNo%GHqh5=letF2e2m+YBMBzpNd2M)W`b>*=D_sihnNu zae?RQ@o^Jy4k5XJrX4~NWVc8ve(`97eS5@oYg~YA(p?O8WG5hM4J)JoN!dB$`W4S5 zj`qiDMgX^Y=YapcZ%Me-{$(1)tqA=paV((~v)Q#mD@HUDBa*X_d0Ps)8K#jEf9FHn zk1=wgKx0Sj(PN6ZE#8ARCUT|IqZNs*LepQzGZp|mcMewlirjQIW?zNz2}?(64bm$A zO+VuP`dAAoCNXR%2Uy$&BmhbTaHtXeVX>IP!ixPBrMkkZfQ`N4Kv-+fSxrsN&h-*V zxQ!5cQZvTs#S@Dv)aVO7<)Qb#jLjZS7bun}h?^2 z%f%K!^>jUY;Gz?Eg6AAA=2`CVXm4+Cz9B1-23X?6f9M1>5Wo%91Eih1+0TZ;muE9M z9jBTdf4UFP&Z0yH&(}EYNfn|ezET4y2x!ZNs(t`SZrt|i*LWMOSSbC!p3XcT>NJky zVyu~Zh0GfFm2p*Aa@!_m$e55LH{~7~GD2a;Iz~*)$d%lxC1sVPa*iw4h%{MD&g2-R z%h5)WeSYn}_V@qqe4gL;`@FuN&-?j0s02?n+HvhlLFK!*b$nawp`Z@OHX>F)11 zJg!k8dWm5Ur>KX)(U6g=qNtdgru&H-2SLoV3K~ z%x;;{?0>VX0~eAlEJhv*jHR^t@wA4<)MKl;ky-)kew3Y4j$6*#y!59z+M%8~8-)pN zQhc^8K4Bw+b99^YdsNitqkXLm)KoNJs%nJP2~RPgqbd~ZYFuGS5{&sLVW4TI^D|ZW zK-BJMj{gksW9j!#B4;Bx%U@!}{urq6q@Tfj>yMK5)3DE53wy-vt?3VE=pGf5Y~Zuv zpk7D@G54(Hy3z#Noaut<1yb40AGA=KC80?L)0k+MTrY!|pgEMZE#(_0=YQ|`m&;Xp z6Hh{kJBHq!rwxiGH>iFpe&_T!@MT`z+f@X;16Y*(*tqZIxsnbb>>;sVo55RV zEWmYwM&K_>PIN(-od-%iei05W$AF_rRAVJKngED6Y4>6W@ICN{VaqwTx3T<&Yah9% zmI8|3?b{cF`3}4m%dgwp&F6wDeoFHi&WD0inOQtn)`q?ZI@?;RB|kJq!GmA7d2*cu zRdS~)b$_69KVq1Li4}c*euV<1n=HkSNbD-7+JZSIpcH*n+C3g} z*J!^5Q?`ml1GHp+Z7B$SjQB1Ec0=fSAjZozlHVjw#hR*2V&hx<+543A?i!8qg6$zk zZ@NiB!VfPD^X=X7CgL=Z4Q%h2Ar5?CyNd870COHeljYuUvFE-KD1jh@zy3D}x2QN^ z4708Cvjk$fs+#%B$OEuOHT8a))JTc(6^)@hJhm?4rF{{pc9@~{ev4Ed6rly>V;T9H z@Fg1{0LXk~ZU~BB##WS>&a!XgE;+c>nhP_T%ySdCU+P5+|2mL(F=x#(S6Fh@%Y%Lo zlRI^0yYVWsy*-X%HVXE`(cu+L>HzH7!l}wBd)g#_$aM2)f*Wzt+IuS<{Ev6)UNLqG zL)$vX9}(wU1IP3K1|9$8n|KS{o5I=Gt?!Isv%Dp$36&mM*SAy57T@o#+thOxS?c3m zC#zDB0a~M?QrnT|pbyh_C~&Mw0>aL41f4*(iILGUkH$|o=2K%E3|7jPT$m(|25^Mz z2X)RKz?*gO*8p{=Ce_x)hpc~==4yUy^K%0_(<-XEw6t`j4rmHu??Xm{@lgb+xmfgZ z(MC0Za@x%d*mg5fH&7OrhM_%P*l<-?V~_B>f*r{R>NyKEFtygUk$^wJ;Ect)#`E-f zB=1B41`b_96%g_P<<((=`LG;@Vz8y{^?U)%Li=!x>*SnG`pocX(JaJCwBmPv;Rnu2 zdWi>hN(FojtFD`gPw&#HSw|czY2TuR1{9jsnB@tjRfvKgjfQJtVNMU+u7cY^?BsA! zcP*i!QNcu;*nurr2DZ_|>W+xaqNJulc?I&V3N<<(C1N5~B%Z53gUh;o7m1Wu!wfmD zVZskyTN(|E@XsiAD8nltt}XNkttv_63(OMW{#mWCCH`)3v;m%BHI+oW`3v9$ijM8WLCwX9H8wAAU4W=fYr z!iDFoFjQJ#xkw;zIEL-+?TSXnhictQ^gE-M@d+Z;1p>$ANH fjS`gYolIu;p0~%Or0*bEJm9c2w=sK&^-BB)aXCr3 literal 0 HcmV?d00001 diff --git a/images/SLP_pkgmgr_parser.png b/images/SLP_pkgmgr_parser.png new file mode 100755 index 0000000000000000000000000000000000000000..91ae136917c5d0cef8ba9b54a2e7711213541fa2 GIT binary patch literal 32840 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 literal 0 HcmV?d00001 diff --git a/include/SLP_pkgmgr_info_PG.h b/include/SLP_pkgmgr_info_PG.h new file mode 100755 index 0000000..92ff532 --- /dev/null +++ b/include/SLP_pkgmgr_info_PG.h @@ -0,0 +1,301 @@ +/* + * pkgmgr-info + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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. + * + */ + + +/** + + * + * @ingroup SLP_PG + * @defgroup PackageManagerInfoGuide + + +@par Package Manager Information Library Programming Guide + +

Introduction

+

Purpose of this document

+The purpose of this document is to describe how applications can use Package Manager Information APIs.\n +This document gives only programming guidelines to application developers. + +

Scope

+The scope of this document is limited to Samsung platform Package Manager Info API usage. + +

Architecture

+

Architecture overview

+Package Manager Information Library is responsible for getting/setting manifest file information from/to manifest DB.\n + +The library provides APIs to parse the package's manifest file\n +It also provides APIs to insert/update/delete this parsed data from manifest DB. + + +

Features

+Package Manager Info Library has the following features:\n + + - Get /Set Package Information in DB + - It provides API to get package manifest data from DB. + - It provides API to get package certificate data from DB. + - It provides API to set package manifest data in DB. + - It provides API to set package certificate data in DB. + +@image html SLP_pkgmgr_info.png "High-Level Architure depicting get/set operation" + + - Filter Package/Application Information + - It provides API to filter package information query result. + - It provides API to filter application information query result. + + - Manifest Parser + - It provides API to parse package manifest file. + - It provides API to insert/update/delete manifest data in DB. + +@image html SLP_pkgmgr_parser.png "High-Level Architure depicting manifest parsing" + +

Package Manager API descriptions

+ SEE API manual + +

Package Manager Features with sample code

+

Get /Set Package Information in DB

+ +Client application +- Get package version from manifest DB + +@code +#include + +static int get_pkg_version(const char *pkgid) +{ + int ret = 0; + char *version = NULL; + pkgmgrinfo_pkginfo_h handle; + ret = pkgmgrinfo_pkginfo_get_pkginfo(pkgid, &handle); + if (ret != PMINFO_R_OK) + return -1; + ret = pkgmgrinfo_pkginfo_get_version(handle, &version); + if (ret != PMINFO_R_OK) { + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return -1; + } + printf("pkg version: %s\n", version); + pkgmgrinfo_pkginfo_destroy_pkginfo(handle); + return 0; +} +@endcode + +- Get package author root certificate from manifest DB + +@code +static int get_cert_info(const char *pkgid) +{ + int ret = 0; + pkgmgrinfo_certinfo_h handle; + char *auth_cert = NULL; + ret = pkgmgrinfo_pkginfo_create_certinfo(&handle); + if (ret != PMINFO_R_OK) + return -1; + ret = pkgmgrinfo_pkginfo_load_certinfo(pkgid, handle); + if (ret != PMINFO_R_OK) { + pkgmgrinfo_pkginfo_destroy_certinfo(handle); + return -1; + } + ret = pkgmgrinfo_pkginfo_get_cert_value(handle, PMINFO_AUTHOR_ROOT_CERT, &auth_cert); + if (ret != PMINFO_R_OK) { + pkgmgrinfo_pkginfo_destroy_certinfo(handle); + return -1; + } + printf("Author root certificate: %s\n", auth_root); + pkgmgrinfo_pkginfo_destroy_certinfo(handle); + return 0; +} +@endcode + +- Set package version in manifest DB + +@code +#include + +static int set_pkg_version_in_db(const char *pkgid) +{ + int ret = 0; + pkgmgrinfo_pkgdbinfo_h handle; + ret = pkgmgrinfo_create_pkgdbinfo(pkgid, &handle); + if (ret != PMINFO_R_OK) + return -1; + ret = pkgmgrinfo_set_version_to_pkgdbinfo(handle, "0.0.1"); + if (ret != PMINFO_R_OK) { + pkgmgrinfo_destroy_pkgdbinfo(handle); + return -1; + } + ret = pkgmgrinfo_save_pkgdbinfo(handle); + if (ret != PMINFO_R_OK) { + pkgmgrinfo_destroy_pkgdbinfo(handle); + return -1; + } + pkgmgrinfo_destroy_pkgdbinfo(handle); + return 0; +} +@endcode + +- Set package author root certificate in manifest DB + +@code +static int set_cert_in_db(const char *pkgid) +{ + int ret = 0; + pkgmgrinfo_instcertinfo_h handle; + ret = pkgmgrinfo_create_certinfo_set_handle(&handle); + if (ret != PMINFO_R_OK) + return -1; + ret = pkgmgrinfo_set_cert_value(handle, PMINFO_SET_AUTHOR_ROOT_CERT, "author root certificate"); + if (ret != PMINFO_R_OK) { + pkgmgrinfo_destroy_certinfo_set_handle(handle); + return -1; + } + ret = pkgmgrinfo_save_pkgdbinfo(pkgid, handle); + if (ret != PMINFO_R_OK) { + pkgmgrinfo_destroy_certinfo_set_handle(handle); + return -1; + } + pkgmgrinfo_destroy_certinfo_set_handle(handle); + return 0; +} +@endcode + + +

Filter Package/Application Information

+ +- Filter number of installed rpm packages out of total number of packages installed. + +@code +#include +int pkg_list_cb(pkgmgrinfo_pkginfo_h handle, void *user_data) +{ + char *pkgid = NULL; + pkgmgrinfo_pkginfo_get_pkgname(handle, &pkgid); + printf("pkg id : %s\n", pkgid); + return 0; +} + +static int get_rpm_pkg_list() +{ + int ret = 0; + pkgmgrinfo_pkginfo_filter_h handle; + ret = pkgmgrinfo_pkginfo_filter_create(&handle); + if (ret != PMINFO_R_OK) + return -1; + ret = pkgmgrinfo_pkginfo_filter_add_string(handle, PMINFO_PKGINFO_PROP_PACKAGE_TYPE, "rpm"); + if (ret != PMINFO_R_OK) { + pkgmgrinfo_pkginfo_filter_destroy(handle); + return -1; + } + ret = pkgmgrinfo_pkginfo_filter_foreach_pkginfo(handle, pkg_list_cb, NULL); + if (ret != PMINFO_R_OK) { + pkgmgrinfo_pkginfo_filter_destroy(handle); + return -1; + } + pkgmgrinfo_pkginfo_filter_destroy(handle); + return 0; +} +@endcode + +- Filter number of installed applications which are of type "capp". + +@code +#include + +static int get_capp_count() +{ + int ret = 0; + int count = 0; + pkgmgrinfo_appinfo_filter_h handle; + ret = pkgmgrinfo_appinfo_filter_create(&handle); + if (ret != PMINFO_R_OK) + return -1; + ret = pkgmgrinfo_appinfo_filter_add_string(handle, PMINFO_APPINFO_PROP_APP_TYPE, "capp"); + if (ret != PMINFO_R_OK) { + pkgmgrinfo_appinfo_filter_destroy(handle); + return -1; + } + ret = pkgmgrinfo_appinfo_filter_count(handle, &count); + if (ret != PMINFO_R_OK) { + pkgmgrinfo_appinfo_filter_destroy(handle); + return -1; + } + printf("No of capp: %d\n", count); + pkgmgrinfo_appinfo_filter_destroy(handle); + return 0; +} +@endcode + +

Manifest Parser

+ +- Parse the package manifest file and insert the parsed data in manifest DB. + +@code +#include + +static int parse_manifest_file_for_installation(const char *manifest) +{ + int ret = 0; + ret = pkgmgr_parser_parse_manifest_for_installation(manifest, NULL); + if (ret) + return -1; + return 0; +} +@endcode + + +- Parse the package manifest file and update the manifest DB with the parsed data. + +@code +#include + +static int parse_manifest_file_for_upgrade(const char *manifest) +{ + int ret = 0; + ret = pkgmgr_parser_parse_manifest_for_upgrade(manifest, NULL); + if (ret) + return -1; + return 0; +} +@endcode + +- Parse the package manifest file and delete the parsed data from manifest DB. + +@code +#include + +static int parse_manifest_file_for_uninstallation(const char *manifest) +{ + int ret = 0; + ret = pkgmgr_parser_parse_manifest_for_uninstallation(manifest, NULL); + if (ret) + return -1; + return 0; +} +@endcode + + +*/ + +/** +@} +*/ + + diff --git a/include/pkgmgr-info-debug.h b/include/pkgmgr-info-debug.h new file mode 100644 index 0000000..45f088a --- /dev/null +++ b/include/pkgmgr-info-debug.h @@ -0,0 +1,117 @@ +/* + * pkgmgr-info-debug + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: junsuk. oh + * + * 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. + * + */ + +#ifndef __PKGMGR_INFO_DEBUG_H__ +#define __PKGMGR_INFO_DEBUG_H__ + +#include + +#define _LOGE(fmt, arg...) LOGE(fmt, ##arg) +#define _LOGD(fmt, arg...) LOGD(fmt, ##arg) +#define _LOGS(fmt, arg...) SECURE_LOGD(fmt, ##arg) + +#define PKGMGR_INFO_ENABLE_DLOG + +#ifdef PKGMGR_INFO_ENABLE_DLOG +#define PKGMGR_INFO_DEBUG(fmt, ...)\ + do\ + {\ + LOGD(fmt, ##__VA_ARGS__);\ + } while (0) + +#define PKGMGR_INFO_DEBUG_ERR(fmt, ...)\ + do\ + {\ + LOGE(fmt, ##__VA_ARGS__);\ + }while (0) + +#define PKGMGR_INFO_BEGIN() \ + do\ + {\ + LOGD("BEGIN >>>>");\ + } while( 0 ) + +#define PKGMGR_INFO_END() \ + do\ + {\ + LOGD("END <<<<");\ + } \ + while( 0 ) + +#else +#define PKGMGR_INFO_DEBUG(fmt, ...) \ + do\ + {\ + printf("\n [%s: %s(): %d] " fmt"\n", rindex(__FILE__, '/')+1, __FUNCTION__, __LINE__, ##__VA_ARGS__);\ + } while (0) + +#define PKGMGR_INFO_BEGIN() \ + do\ + {\ + printf("\n [%s: %d] : BEGIN >>>> %s() \n", rindex(__FILE__, '/')+1, __LINE__ , __FUNCTION__);\ + } while( 0 ) + +#define PKGMGR_INFO_END() \ + do\ + {\ + printf("\n [%s: %d]: END <<<< %s()\n", rindex(__FILE__, '/')+1, __LINE__ , __FUNCTION__); \ + } \ + while( 0 ) +#endif + + +#define ret_if(expr) do { \ + if (expr) { \ + PKGMGR_INFO_DEBUG_ERR("(%s) ", #expr); \ + return; \ + } \ +} while (0) + +#define retm_if(expr, fmt, arg...) do { \ + if (expr) { \ + PKGMGR_INFO_DEBUG_ERR("(%s) "fmt, #expr, ##arg); \ + return; \ + } \ + } while (0) + +#define retv_if(expr, val) do { \ + if (expr) { \ + PKGMGR_INFO_DEBUG_ERR("(%s) ", #expr); \ + return (val); \ + } \ + } while (0) + +#define retvm_if(expr, val, fmt, arg...) do { \ + if (expr) { \ + PKGMGR_INFO_DEBUG_ERR("(%s) "fmt, #expr, ##arg); \ + return (val); \ + } \ +} while (0) + +#define tryvm_if(expr, val, fmt, arg...) do { \ + if (expr) { \ + PKGMGR_INFO_DEBUG_ERR("(%s) "fmt, #expr, ##arg); \ + val; \ + goto catch; \ + } \ +} while (0) + +#endif /* __PKGMGR_INFO_DEBUG_H__ */ diff --git a/include/pkgmgr-info-internal.h b/include/pkgmgr-info-internal.h new file mode 100755 index 0000000..5329e1b --- /dev/null +++ b/include/pkgmgr-info-internal.h @@ -0,0 +1,144 @@ +/* + * pkgmgr-info + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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. + * + */ + + +#ifndef __PKGMGR_INFO_INTERNAL_H__ +#define __PKGMGR_INFO_INTERNAL_H__ + +#ifndef DEPRECATED +#define DEPRECATED __attribute__ ((__deprecated__)) +#endif + +#ifndef API +#define API __attribute__ ((visibility("default"))) +#endif + +#define MMC_PATH "/opt/storage/sdcard" +#define PKG_SD_PATH MMC_PATH"/app2sd/" + +#define PKG_RW_PATH "/opt/usr/apps/" +#define PKG_RO_PATH "/usr/apps/" +#define BLOCK_SIZE 4096 /*in bytes*/ + +#define PKG_TYPE_STRING_LEN_MAX 128 +#define PKG_VERSION_STRING_LEN_MAX 128 +#define PKG_VALUE_STRING_LEN_MAX 512 +#define PKG_LOCALE_STRING_LEN_MAX 8 + +#define MAX_QUERY_LEN 4096 +#define MAX_CERT_TYPE 9 + +#define MANIFEST_DB "/opt/dbspace/.pkgmgr_parser.db" +#define CERT_DB "/opt/dbspace/.pkgmgr_cert.db" +#define DATACONTROL_DB "/opt/usr/dbspace/.app-package.db" + +/*String properties for filtering based on package info*/ +typedef enum _pkgmgrinfo_pkginfo_filter_prop_str { + E_PMINFO_PKGINFO_PROP_PACKAGE_MIN_STR = 101, + E_PMINFO_PKGINFO_PROP_PACKAGE_ID = E_PMINFO_PKGINFO_PROP_PACKAGE_MIN_STR, + E_PMINFO_PKGINFO_PROP_PACKAGE_TYPE, + E_PMINFO_PKGINFO_PROP_PACKAGE_VERSION, + E_PMINFO_PKGINFO_PROP_PACKAGE_INSTALL_LOCATION, + E_PMINFO_PKGINFO_PROP_PACKAGE_INSTALLED_STORAGE, + E_PMINFO_PKGINFO_PROP_PACKAGE_AUTHOR_NAME, + E_PMINFO_PKGINFO_PROP_PACKAGE_AUTHOR_EMAIL, + E_PMINFO_PKGINFO_PROP_PACKAGE_AUTHOR_HREF, + E_PMINFO_PKGINFO_PROP_PACKAGE_MAX_STR = E_PMINFO_PKGINFO_PROP_PACKAGE_AUTHOR_HREF +} pkgmgrinfo_pkginfo_filter_prop_str; + +/*Boolean properties for filtering based on package info*/ +typedef enum _pkgmgrinfo_pkginfo_filter_prop_bool { + E_PMINFO_PKGINFO_PROP_PACKAGE_MIN_BOOL = 201, + E_PMINFO_PKGINFO_PROP_PACKAGE_REMOVABLE = E_PMINFO_PKGINFO_PROP_PACKAGE_MIN_BOOL, + E_PMINFO_PKGINFO_PROP_PACKAGE_PRELOAD, + E_PMINFO_PKGINFO_PROP_PACKAGE_READONLY, + E_PMINFO_PKGINFO_PROP_PACKAGE_UPDATE, + E_PMINFO_PKGINFO_PROP_PACKAGE_APPSETTING, + E_PMINFO_PKGINFO_PROP_PACKAGE_NODISPLAY_SETTING, + E_PMINFO_PKGINFO_PROP_PACKAGE_MAX_BOOL = E_PMINFO_PKGINFO_PROP_PACKAGE_NODISPLAY_SETTING +} pkgmgrinfo_pkginfo_filter_prop_bool; + +/*Integer properties for filtering based on package info*/ +typedef enum _pkgmgrinfo_pkginfo_filter_prop_int { + E_PMINFO_PKGINFO_PROP_PACKAGE_MIN_INT = 301, + E_PMINFO_PKGINFO_PROP_PACKAGE_SIZE = E_PMINFO_PKGINFO_PROP_PACKAGE_MIN_INT, + E_PMINFO_PKGINFO_PROP_PACKAGE_MAX_INT = E_PMINFO_PKGINFO_PROP_PACKAGE_SIZE +} pkgmgrinfo_pkginfo_filter_prop_int; + +/*String properties for filtering based on app info*/ +typedef enum _pkgmgrinfo_appinfo_filter_prop_str { + E_PMINFO_APPINFO_PROP_APP_MIN_STR = 401, + E_PMINFO_APPINFO_PROP_APP_ID = E_PMINFO_APPINFO_PROP_APP_MIN_STR, + E_PMINFO_APPINFO_PROP_APP_COMPONENT, + E_PMINFO_APPINFO_PROP_APP_EXEC, + E_PMINFO_APPINFO_PROP_APP_ICON, + E_PMINFO_APPINFO_PROP_APP_TYPE, + E_PMINFO_APPINFO_PROP_APP_OPERATION, + E_PMINFO_APPINFO_PROP_APP_URI, + E_PMINFO_APPINFO_PROP_APP_MIME, + E_PMINFO_APPINFO_PROP_APP_HWACCELERATION, + E_PMINFO_APPINFO_PROP_APP_CATEGORY, + E_PMINFO_APPINFO_PROP_APP_SCREENREADER, + E_PMINFO_APPINFO_PROP_APP_MAX_STR = E_PMINFO_APPINFO_PROP_APP_CATEGORY +} pkgmgrinfo_appinfo_filter_prop_str; + +/*Boolean properties for filtering based on app info*/ +typedef enum _pkgmgrinfo_appinfo_filter_prop_bool { + E_PMINFO_APPINFO_PROP_APP_MIN_BOOL = 501, + E_PMINFO_APPINFO_PROP_APP_NODISPLAY = E_PMINFO_APPINFO_PROP_APP_MIN_BOOL, + E_PMINFO_APPINFO_PROP_APP_MULTIPLE, + E_PMINFO_APPINFO_PROP_APP_ONBOOT, + E_PMINFO_APPINFO_PROP_APP_AUTORESTART, + E_PMINFO_APPINFO_PROP_APP_TASKMANAGE, + E_PMINFO_APPINFO_PROP_APP_LAUNCHCONDITION, + E_PMINFO_APPINFO_PROP_APP_MAX_BOOL = E_PMINFO_APPINFO_PROP_APP_LAUNCHCONDITION +} pkgmgrinfo_appinfo_filter_prop_bool; + +/*Integer properties for filtering based on app info*/ +typedef enum _pkgmgrinfo_appinfo_filter_prop_int { + /*Currently No Fields*/ + E_PMINFO_APPINFO_PROP_APP_MIN_INT = 601, + E_PMINFO_APPINFO_PROP_APP_MAX_INT = E_PMINFO_APPINFO_PROP_APP_MIN_INT +} pkgmgrinfo_appinfo_filter_prop_int; + +/*Integer properties for filtering based on app info*/ +typedef enum _pkgmgrinfo_pkginfo_filter_prop_range { + /*Currently No Fields*/ + E_PMINFO_PKGINFO_PROP_RANGE_MIN_INT = 701, + E_PMINFO_PKGINFO_PROP_RANGE_BASIC, + E_PMINFO_PKGINFO_PROP_RANGE_MAX_INT = E_PMINFO_PKGINFO_PROP_RANGE_BASIC +} pkgmgrinfo_pkginfo_filter_prop_range; + + +pkgmgrinfo_pkginfo_filter_prop_str _pminfo_pkginfo_convert_to_prop_str(const char *property); +pkgmgrinfo_pkginfo_filter_prop_int _pminfo_pkginfo_convert_to_prop_int(const char *property); +pkgmgrinfo_pkginfo_filter_prop_bool _pminfo_pkginfo_convert_to_prop_bool(const char *property); + +pkgmgrinfo_appinfo_filter_prop_str _pminfo_appinfo_convert_to_prop_str(const char *property); +pkgmgrinfo_appinfo_filter_prop_int _pminfo_appinfo_convert_to_prop_int(const char *property); +pkgmgrinfo_appinfo_filter_prop_bool _pminfo_appinfo_convert_to_prop_bool(const char *property); + +pkgmgrinfo_pkginfo_filter_prop_range _pminfo_pkginfo_convert_to_prop_range(const char *property); + +int _pkgmgrinfo_validate_cb(void *data, int ncols, char **coltxt, char **colname); + +#endif /* __PKGMGR_INFO_INTERNAL_H__ */ diff --git a/include/pkgmgr-info.h b/include/pkgmgr-info.h new file mode 100755 index 0000000..8e233d1 --- /dev/null +++ b/include/pkgmgr-info.h @@ -0,0 +1,5947 @@ +/* + * pkgmgr-info + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: Jayoun Lee , Sewook Park , + * Jaeho Lee , Shobhit Srivastava + * + * 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. + * + */ + + + + + +/** + * @file pkgmgr-info.h + * @author Sewook Park + * @author Shobhit Srivastava + * @version 0.1 + * @brief This file declares API of pkgmgr-info library + * + * @addtogroup APPLICATION_FRAMEWORK + * @{ + * + * @defgroup PackageManagerInfo + * @section Header Header file to include: + * @code + * #include + * @endcode + * + * @} + */ + +#ifndef __PKG_INFO_H__ +#define __PKG_INFO_H__ + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + + +/** + * @mainpage + * + * This is package information library + * + * Package Information Library is used to get package related information.\n + * It uses the package manifest information database to get any package related information\n + * It also provides API to set information in the package info database\n + * + */ + +/** + * @file pkgmgr-info.h + * @brief Package Information Library Header File + * + * Generated by Sewook Park + */ + + +/** + * @brief A handle to insert certificate information + */ +typedef void* pkgmgrinfo_instcertinfo_h; + +/** + * @brief Certificate Types to be used for setting information + */ +typedef enum { + PMINFO_SET_AUTHOR_ROOT_CERT = 0, /**< Author Root Certificate*/ + PMINFO_SET_AUTHOR_INTERMEDIATE_CERT = 1, /**< Author Intermediate Certificate*/ + PMINFO_SET_AUTHOR_SIGNER_CERT = 2, /**< Author Signer Certificate*/ + PMINFO_SET_DISTRIBUTOR_ROOT_CERT = 3, /**< Distributor Root Certificate*/ + PMINFO_SET_DISTRIBUTOR_INTERMEDIATE_CERT = 4, /**< Distributor Intermediate Certificate*/ + PMINFO_SET_DISTRIBUTOR_SIGNER_CERT = 5, /**< Distributor Signer Certificate*/ + PMINFO_SET_DISTRIBUTOR2_ROOT_CERT = 6, /**< End Entity Root Certificate*/ + PMINFO_SET_DISTRIBUTOR2_INTERMEDIATE_CERT = 7, /**< End Entity Intermediate Certificate*/ + PMINFO_SET_DISTRIBUTOR2_SIGNER_CERT = 8, /**< End Entity Signer Certificate*/ +}pkgmgrinfo_instcert_type; + +typedef enum { + PMINFO_CERT_COMPARE_MATCH, + PMINFO_CERT_COMPARE_MISMATCH, + PMINFO_CERT_COMPARE_LHS_NO_CERT, + PMINFO_CERT_COMPARE_RHS_NO_CERT, + PMINFO_CERT_COMPARE_BOTH_NO_CERT, + PMINFO_CERT_COMPARE_ERROR, +} pkgmgrinfo_cert_compare_result_type_e; + +/** + * @brief API return values + */ +enum { + PMINFO_R_EINVAL = -2, /**< Invalid argument */ + PMINFO_R_ERROR = -1, /**< General error */ + PMINFO_R_OK = 0 /**< General success */ +}; + +/** + * @brief Value to be used when filtering based on install location + */ +#define PMINFO_PKGINFO_INSTALL_LOCATION_AUTO "LOCATION_AUTO" + +/** + * @brief Value to be used when filtering based on install location + */ +#define PMINFO_PKGINFO_INSTALL_LOCATION_INTERNAL "LOCATION_INTERNAL" + +/** + * @brief Value to be used when filtering based on install location + */ +#define PMINFO_PKGINFO_INSTALL_LOCATION_EXTERNAL "LOCATION_EXTERNAL" + +/** + * @brief Value to be used when filtering based on app-component + */ +#define PMINFO_APPINFO_UI_APP "UI_APP" + +/** + * @brief Value to be used when filtering based on app-component + */ +#define PMINFO_APPINFO_SVC_APP "SVC_APP" + +typedef enum { + PMINFO_HWACCELERATION_NOT_USE_GL = 0, /**< Don't use hardware acceleration*/ + PMINFO_HWACCELERATION_USE_GL = 1, /**< Use hardware acceleration*/ + PMINFO_HWACCELERATION_USE_SYSTEM_SETTING = 2 /**< Follow system setting for hardware acceleration */ +}pkgmgrinfo_app_hwacceleration; + +typedef enum { + PMINFO_SCREENREADER_OFF = 0, /**< Don't use screen reader*/ + PMINFO_SCREENREADER_ON = 1, /**< Use screen reader*/ + PMINFO_SCREENREADER_USE_SYSTEM_SETTING = 2 /**< Follow system setting for screen reader */ +}pkgmgrinfo_app_screenreader; + +typedef enum { + PMINFO_RECENTIMAGE_USE_ICON = 0, /**