From: Junghyun Yeon Date: Fri, 21 Aug 2020 02:15:59 +0000 (+0900) Subject: Move test codes X-Git-Tag: submit/tizen/20200821.072757~1 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=dfa29d2c2530a53b787a0371b86784177d19e67b;p=platform%2Fcore%2Fappfw%2Ftpk-backend.git Move test codes Move test codes into ${src root}/test and rename it to smoke_tests. Change-Id: If1b83fcd255f5d36e20a66e13df3974906525cba Signed-off-by: Junghyun Yeon --- diff --git a/CMakeLists.txt b/CMakeLists.txt index 6c01650..3c72b06 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -57,3 +57,4 @@ FIND_PACKAGE(Boost REQUIRED COMPONENTS system filesystem regex program_options) FIND_PACKAGE(GTest REQUIRED) ADD_SUBDIRECTORY(src) +ADD_SUBDIRECTORY(test) diff --git a/packaging/tpk-backend.spec b/packaging/tpk-backend.spec index 54a0e0d..b98a2cf 100644 --- a/packaging/tpk-backend.spec +++ b/packaging/tpk-backend.spec @@ -100,7 +100,7 @@ ln -s %{_bindir}/tpk-backend %{buildroot}%{_sysconfdir}/package-manager/backend/ %{_bindir}/tpk-installer-ut/* %{_datadir}/tpk-installer-ut/* %{_libdir}/libtpk-smoke-utils.so* -%{_includedir}/app-installers/unit_tests/tpk_smoke_utils.h +%{_includedir}/app-installers/smoke_tests/tpk_smoke_utils.h %changelog * Thu Dec 18 2015 Pawel Sikorski 0.1-1 diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 0189747..7a3cda5 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,3 +1,2 @@ ADD_SUBDIRECTORY(lib) ADD_SUBDIRECTORY(tpk) -ADD_SUBDIRECTORY(unit_tests) diff --git a/src/unit_tests/CMakeLists.txt b/src/unit_tests/CMakeLists.txt deleted file mode 100644 index d38d2f1..0000000 --- a/src/unit_tests/CMakeLists.txt +++ /dev/null @@ -1,78 +0,0 @@ -SET(DESTINATION_DIR tpk-installer-ut) -SET(TARGET_SMOKE_UTILS smoke-utils) - -# Executables -ADD_EXECUTABLE(${TARGET_SMOKE_TEST} - smoke_test.cc -) - -ADD_EXECUTABLE(${TARGET_SMOKE_TEST_EXTENSIVE} - extensive_smoke_test.cc -) - -ADD_EXECUTABLE(${TARGET_SMOKE_TEST_HELPER} - smoke_test_helper.cc -) - -ADD_EXECUTABLE(${TARGET_MANIFEST_TEST} - manifest_test.cc - manifest_test_package.cc - manifest_test_service_application.cc - manifest_test_ui_application.cc - manifest_test_watch_application.cc - manifest_test_widget_application.cc -) - -ADD_EXECUTABLE(${TARGET_RECOVERY_TEST} - recovery_test.cc -) - -ADD_LIBRARY(${TARGET_TPK_SMOKE_UTILS} SHARED - tpk_smoke_utils.cc -) - -TARGET_INCLUDE_DIRECTORIES(${TARGET_SMOKE_TEST} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../) -TARGET_INCLUDE_DIRECTORIES(${TARGET_SMOKE_TEST_EXTENSIVE} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../) -TARGET_INCLUDE_DIRECTORIES(${TARGET_SMOKE_TEST_HELPER} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../) -TARGET_INCLUDE_DIRECTORIES(${TARGET_MANIFEST_TEST} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../) -TARGET_INCLUDE_DIRECTORIES(${TARGET_RECOVERY_TEST} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../) - -INSTALL(DIRECTORY test_samples/ DESTINATION ${SHAREDIR}/${DESTINATION_DIR}/test_samples) - -APPLY_PKG_CONFIG(${TARGET_SMOKE_TEST} PUBLIC - Boost - GTEST - GUM_DEPS -) -APPLY_PKG_CONFIG(${TARGET_SMOKE_TEST_EXTENSIVE} PUBLIC - Boost - GTEST - GUM_DEPS -) -APPLY_PKG_CONFIG(${TARGET_MANIFEST_TEST} PUBLIC - Boost - GTEST -) -APPLY_PKG_CONFIG(${TARGET_RECOVERY_TEST} PUBLIC - Boost - GTEST - GUM_DEPS -) - -# FindGTest module do not sets all needed libraries in GTEST_LIBRARIES and -# GTest main libraries is still missing, so additional linking of -# GTEST_MAIN_LIBRARIES is needed. -TARGET_LINK_LIBRARIES(${TARGET_SMOKE_TEST} PRIVATE ${TARGET_LIBNAME_TPK} ${GTEST_MAIN_LIBRARIES} ${TARGET_SMOKE_UTILS} ${TARGET_TPK_SMOKE_UTILS}) -TARGET_LINK_LIBRARIES(${TARGET_SMOKE_TEST_EXTENSIVE} PRIVATE ${TARGET_LIBNAME_TPK} ${GTEST_MAIN_LIBRARIES} ${TARGET_SMOKE_UTILS} ${TARGET_TPK_SMOKE_UTILS}) -TARGET_LINK_LIBRARIES(${TARGET_SMOKE_TEST_HELPER} PRIVATE ${TARGET_LIBNAME_TPK} ${TARGET_TPK_SMOKE_UTILS}) -TARGET_LINK_LIBRARIES(${TARGET_MANIFEST_TEST} PRIVATE ${TARGET_LIBNAME_TPK} ${GTEST_MAIN_LIBRARIES}) -TARGET_LINK_LIBRARIES(${TARGET_RECOVERY_TEST} PRIVATE ${TARGET_LIBNAME_TPK} ${GTEST_MAIN_LIBRARIES} ${TARGET_SMOKE_UTILS} ${TARGET_TPK_SMOKE_UTILS}) -TARGET_LINK_LIBRARIES(${TARGET_TPK_SMOKE_UTILS} PRIVATE ${TARGET_LIBNAME_TPK} ${TARGET_SMOKE_UTILS}) - -INSTALL(TARGETS ${TARGET_SMOKE_TEST} DESTINATION ${BINDIR}/${DESTINATION_DIR}) -INSTALL(TARGETS ${TARGET_SMOKE_TEST_EXTENSIVE} DESTINATION ${BINDIR}/${DESTINATION_DIR}) -INSTALL(TARGETS ${TARGET_SMOKE_TEST_HELPER} DESTINATION ${BINDIR}/${DESTINATION_DIR}) -INSTALL(TARGETS ${TARGET_MANIFEST_TEST} DESTINATION ${BINDIR}/${DESTINATION_DIR}) -INSTALL(TARGETS ${TARGET_RECOVERY_TEST} DESTINATION ${BINDIR}/${DESTINATION_DIR}) -INSTALL(TARGETS ${TARGET_TPK_SMOKE_UTILS} DESTINATION ${LIB_INSTALL_DIR}) -INSTALL(FILES tpk_smoke_utils.h DESTINATION ${INCLUDEDIR}/app-installers/unit_tests/) diff --git a/src/unit_tests/extensive_smoke_test.cc b/src/unit_tests/extensive_smoke_test.cc deleted file mode 100644 index 8dc8fae..0000000 --- a/src/unit_tests/extensive_smoke_test.cc +++ /dev/null @@ -1,500 +0,0 @@ -// Copyright (c) 2017 Samsung Electronics Co., Ltd All Rights Reserved -// Use of this source code is governed by an apache-2.0 license that can be -// found in the LICENSE file. - -#include -#include - -#include - -#include -#include - -#include "unit_tests/tpk_smoke_utils.h" - -namespace bpo = boost::program_options; -namespace ci = common_installer; - -enum class BackupType : int { - MOVE, - COPY_AND_REMOVE, -}; - -namespace smoke_test { - -class SmokeEnvironment : public testing::Environment { - public: - explicit SmokeEnvironment(ci::RequestMode mode, bool no_backup, - BackupType backup_type) : - request_mode_(mode), no_backup_(no_backup), - backup_type_(backup_type) { - } - void SetUp() override { - if (request_mode_ == ci::RequestMode::USER) { - ASSERT_TRUE(AddTestUser(&test_user)); - } - if (no_backup_) - return; - backups_ = SetupBackupDirectories(test_user.uid); - if (backup_type_ == BackupType::MOVE) { - for (auto& path : backups_) - ASSERT_TRUE(BackupPath(path)); - } else if (backup_type_ == BackupType::COPY_AND_REMOVE) { - for (auto& path : backups_) - ASSERT_TRUE(BackupPathCopyAndRemove(path)); - } - } - void TearDown() override { - ASSERT_TRUE(request_mode_ == ci::RequestMode::GLOBAL || - (request_mode_ == ci::RequestMode::USER && - kGlobalUserUid != test_user.uid)); - TpkBackendInterface backend(std::to_string(test_user.uid)); - UninstallAllSmokeApps(request_mode_, test_user.uid, &backend); - if (request_mode_ == ci::RequestMode::USER) { - ASSERT_TRUE(DeleteTestUser()); - } - if (no_backup_) - return; - if (backup_type_ == BackupType::MOVE) { - for (auto& path : backups_) - ASSERT_TRUE(RestorePath(path)); - } else if (backup_type_ == BackupType::COPY_AND_REMOVE) { - for (auto& path : backups_) - ASSERT_TRUE(RestorePathCopyAndRemove(path)); - } - } - User test_user; - - private: - ci::RequestMode request_mode_; - std::vector backups_; - bool no_backup_; - BackupType backup_type_; -}; - -} // namespace smoke_test - -namespace { - -smoke_test::SmokeEnvironment *env = nullptr; -void signalHandler(int signum) { - env->TearDown(); - exit(signum); -} - -} // namespace - -namespace smoke_test { - -class SmokeTest : public testing::Test { - public: - SmokeTest() : backend(std::to_string(env->test_user.uid)), - params{PackageType::TPK, false} { - params.test_user.uid = env->test_user.uid; - params.test_user.gid = env->test_user.gid; - } - protected: - TpkBackendInterface backend; - TestParameters params; -}; - -TEST_F(SmokeTest, DeltaMode_Tpk_Rollback) { - bf::path path = kSmokePackagesDirectory / "DeltaMode_Tpk_Rollback.tpk"; - bf::path delta_package = kSmokePackagesDirectory / - "DeltaMode_Tpk_Rollback.delta"; - std::string pkgid = "smoketpk28"; - std::string appid = "smoketpk28.DeltaModeTpk_Rollback"; - std::string exec = "basicdali"; - ASSERT_EQ(backend.Install(path), ci::AppInstaller::Result::OK); - std::string test_uid_str = std::to_string(params.test_user.uid); - const char* argv[] = - {"", "-i", delta_package.c_str(), "-u", test_uid_str.c_str()}; - - backend.TestRollbackAfterEachStep(SIZEOFARRAY(argv), argv, [&]() -> bool { - EXTENDED_ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - - // Check delta modifications - - bf::path root_path = ci::GetRootAppPath(params.is_readonly, - params.test_user.uid); - EXTENDED_ASSERT_TRUE(bf::exists(root_path / pkgid / "res" / "DELETED")); - EXTENDED_ASSERT_FALSE(bf::exists(root_path / pkgid / "res" / "ADDED")); - EXTENDED_ASSERT_TRUE(bf::exists(root_path / pkgid / "bin" / "basicdali")); - EXTENDED_ASSERT_TRUE(bf::exists(root_path / pkgid / "shared" / "res" / - "basicdali.png")); - EXTENDED_ASSERT_TRUE(ValidateFileContentInPackage(pkgid, - "res/MODIFIED", "version 1\n", params)); - return true; - }); -} - -TEST_F(SmokeTest, RecoveryMode_Tpk_Installation) { - bf::path path = kSmokePackagesDirectory / "RecoveryMode_Tpk_Installation.tpk"; - std::string pkgid = "smokeapp15"; - RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); - - std::string test_uid_str = std::to_string(params.test_user.uid); - std::vector args = - {"", "-i", path.c_str(), "-u", test_uid_str.c_str()}; - backend.CrashAfterEachStep(&args, [&](int step) -> bool { - if (step >= 2) { - bf::path recovery_file = FindRecoveryFile("/tpk-recovery", - params.test_user.uid); - EXTENDED_ASSERT_FALSE(recovery_file.empty()); - EXTENDED_ASSERT_EQ(backend.Recover(recovery_file), - ci::AppInstaller::Result::OK); - EXTENDED_ASSERT_TRUE(CheckPackageNonExistance(pkgid, params)); - } - return true; - }, params.pkg_type); - RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); -} - -TEST_F(SmokeTest, RecoveryMode_Tpk_Update) { - bf::path path_old = kSmokePackagesDirectory / "RecoveryMode_Tpk_Update.tpk"; - bf::path path_new = kSmokePackagesDirectory / "RecoveryMode_Tpk_Update_2.tpk"; - RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); - ASSERT_EQ(backend.Install(path_old), ci::AppInstaller::Result::OK); - - std::string test_uid_str = std::to_string(params.test_user.uid); - std::vector args = - {"", "-i", path_new.string(), "-u", test_uid_str.c_str()}; - backend.CrashAfterEachStep(&args, [&](int step) -> bool { - if (step >= 2) { - std::string pkgid = "smokeapp16"; - std::string appid = "smokeapp16.RecoveryModeTpkUpdate"; - std::string exec = "native"; - bf::path recovery_file = FindRecoveryFile("/tpk-recovery", - params.test_user.uid); - EXTENDED_ASSERT_FALSE(recovery_file.empty()); - EXTENDED_ASSERT_EQ(backend.Recover(recovery_file), - ci::AppInstaller::Result::OK); - EXTENDED_ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - - EXTENDED_ASSERT_TRUE( - ValidateFileContentInPackage(pkgid, "VERSION", "1\n", params)); - } - return true; - }, params.pkg_type); -} - -#define TEP_TEST_STARTING_BLOCK(NUMBER) \ - bf::path path = kSmokePackagesDirectory / "TEP_Tpk"; \ - path += #NUMBER; \ - path += ".tpk"; \ - bf::path tep1 = kSmokePackagesDirectory / "tep1.tep"; \ - bf::path tep2 = kSmokePackagesDirectory / "tep2.tep"; \ - std::string number = std::to_string(50 + NUMBER - 1); \ - std::string pkgid = std::string("smokeapp") + number; \ - std::string appid = pkgid + ".TEP"; \ - std::string exec = "native"; \ - - -TEST_F(SmokeTest, TEP_Tpk_TepInstallTepUpdateRollback) { - TEP_TEST_STARTING_BLOCK(5) - ASSERT_EQ(backend.InstallWithTEP(path, tep1), ci::AppInstaller::Result::OK); - std::string test_uid_str = std::to_string(params.test_user.uid); - const char* argv[] = {"", "-i", path.c_str(), "-u", test_uid_str.c_str(), - "-e", tep1.c_str()}; - backend.TestRollbackAfterEachStep(SIZEOFARRAY(argv), argv, [&]() -> bool { - EXTENDED_ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - EXTENDED_ASSERT_TRUE(ValidateFileContentInPackage(pkgid, - "tep/tep1.tep", "tep1\n", params)); - return true; - }); -} - -TEST_F(SmokeTest, TEP_Tpk_NoTepInstallTepUpdateRollback) { - TEP_TEST_STARTING_BLOCK(6) - ASSERT_EQ(backend.Install(path), ci::AppInstaller::Result::OK); - std::string test_uid_str = std::to_string(params.test_user.uid); - const char* argv[] = {"", "-i", path.c_str(), "-u", test_uid_str.c_str(), - "-e", tep1.c_str()}; - backend.TestRollbackAfterEachStep(SIZEOFARRAY(argv), argv, [&]() -> bool { - EXTENDED_ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - bf::path root_path = ci::GetRootAppPath(params.is_readonly, - params.test_user.uid); - bf::path tep_file = root_path / pkgid / "tep" / "tep2.tep"; - EXTENDED_ASSERT_FALSE(bf::exists(tep_file)); - return true; - }); -} - -TEST_F(SmokeTest, TEP_Tpk_TepInstallNoTepUpdateRollback) { - TEP_TEST_STARTING_BLOCK(7) - ASSERT_EQ(backend.InstallWithTEP(path, tep1), ci::AppInstaller::Result::OK); - std::string test_uid_str = std::to_string(params.test_user.uid); - const char* argv[] = {"", "-i", path.c_str(), "-u", test_uid_str.c_str()}; - backend.TestRollbackAfterEachStep(SIZEOFARRAY(argv), argv, [&]() -> bool { - EXTENDED_ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - EXTENDED_ASSERT_TRUE(ValidateFileContentInPackage(pkgid, - "tep/tep1.tep", "tep1\n", params)); - return true; - }); -} - -TEST_F(SmokeTest, TEP_Tpk_Mount_TepInstallTepUpdateRollback) { - TEP_TEST_STARTING_BLOCK(12) - ASSERT_EQ(backend.MountInstallWithTEP(path, tep1), - ci::AppInstaller::Result::OK); - std::string test_uid_str = std::to_string(params.test_user.uid); - const char* argv[] = {"", "-w", path.c_str(), "-u", test_uid_str.c_str(), - "-e", tep2.c_str()}; - backend.TestRollbackAfterEachStep(SIZEOFARRAY(argv), argv, [&]() -> bool { - ScopedTzipInterface package_mount(pkgid, params.test_user.uid); - EXTENDED_ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - EXTENDED_ASSERT_TRUE(ValidateFileContentInPackage(pkgid, - "tep/tep1.tep", "tep1\n", params)); - return true; - }); -} - -TEST_F(SmokeTest, TEP_Tpk_Mount_NoTepInstallTepUpdateRollback) { - TEP_TEST_STARTING_BLOCK(13) - ASSERT_EQ(backend.MountInstall(path), ci::AppInstaller::Result::OK); - std::string test_uid_str = std::to_string(params.test_user.uid); - const char* argv[] = {"", "-w", path.c_str(), "-u", test_uid_str.c_str(), - "-e", tep1.c_str()}; - backend.TestRollbackAfterEachStep(SIZEOFARRAY(argv), argv, [&]() -> bool { - ScopedTzipInterface package_mount(pkgid, params.test_user.uid); - EXTENDED_ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - bf::path root_path = ci::GetRootAppPath(params.is_readonly, - params.test_user.uid); - bf::path tep_file = root_path / pkgid / "tep" / "tep2.tep"; - EXTENDED_ASSERT_FALSE(bf::exists(tep_file)); - return true; - }); -} - -TEST_F(SmokeTest, TEP_Tpk_Mount_TepInstallNoTepUpdateRollback) { - TEP_TEST_STARTING_BLOCK(14) - ASSERT_EQ(backend.MountInstallWithTEP(path, tep1), - ci::AppInstaller::Result::OK); - std::string test_uid_str = std::to_string(params.test_user.uid); - const char* argv[] = {"", "-i", path.c_str(), "-u", test_uid_str.c_str()}; - backend.TestRollbackAfterEachStep(SIZEOFARRAY(argv), argv, [&]() -> bool { - ScopedTzipInterface package_mount(pkgid, params.test_user.uid); - EXTENDED_ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - EXTENDED_ASSERT_TRUE(ValidateFileContentInPackage(pkgid, - "tep/tep1.tep", "tep1\n", params)); - return true; - }); -} - -TEST_F(SmokeTest, InstallationMode_Rollback) { - bf::path path = kSmokePackagesDirectory / "InstallationMode_Rollback.tpk"; - std::string pkgid = "smoketpk34"; - std::string test_uid_str = std::to_string(params.test_user.uid); - const char* argv[] = {"", "-i", path.c_str(), "-u", test_uid_str.c_str()}; - - backend.TestRollbackAfterEachStep(SIZEOFARRAY(argv), argv, [&]() -> bool { - EXTENDED_ASSERT_TRUE(CheckPackageNonExistance(pkgid, params)); - return true; - }); -} - -TEST_F(SmokeTest, RecoveryMode_ForDelta) { - bf::path path_old = kSmokePackagesDirectory / "RecoveryMode_ForDelta.tpk"; - bf::path path_new = kSmokePackagesDirectory / "RecoveryMode_ForDelta.delta"; - RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); - ASSERT_EQ(ci::AppInstaller::Result::OK, backend.Install(path_old)); - - std::string test_uid_str = std::to_string(params.test_user.uid); - std::vector args = - {"", "-i", path_new.string(), "-u", test_uid_str.c_str()}; - backend.CrashAfterEachStep(&args, [&](int step) -> bool { - if (step >= 2) { - std::string pkgid = "smoketpk35"; - std::string appid = "smoketpk35.RecoveryMode_ForDelta"; - std::string exec = "smoketpk35"; - bf::path recovery_file = FindRecoveryFile("/tpk-recovery", - params.test_user.uid); - EXTENDED_ASSERT_FALSE(recovery_file.empty()); - EXTENDED_ASSERT_EQ(backend.Recover(recovery_file), - ci::AppInstaller::Result::OK); - EXTENDED_ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - - EXTENDED_ASSERT_TRUE( - ValidateFileContentInPackage(pkgid, "res/MODIFIED", "version 1", - params)); - bf::path root_path = ci::GetRootAppPath(params.is_readonly, - params.test_user.uid); - EXTENDED_ASSERT_TRUE(bf::exists(root_path / pkgid / "res/DELETED")); - EXTENDED_ASSERT_FALSE(bf::exists(root_path / pkgid / "res/ADDED")); - } - return true; - }, params.pkg_type); -} - -TEST_F(SmokeTest, UpdateMode_Rollback) { - bf::path old_path = kSmokePackagesDirectory / "UpdateMode_Rollback.tpk"; - bf::path new_path = kSmokePackagesDirectory / "UpdateMode_Rollback2.tpk"; - std::string pkgid = "smoketpk36"; - std::string appid = "smoketpk36.UpdateMode_Rollback"; - std::string exec = "smoketpk36"; - ASSERT_EQ(ci::AppInstaller::Result::OK, backend.Install(old_path)); - - std::string test_uid_str = std::to_string(params.test_user.uid); - const char* argv[] = - {"", "-i", new_path.c_str(), "-u", test_uid_str.c_str()}; - backend.TestRollbackAfterEachStep(SIZEOFARRAY(argv), argv, [&]() -> bool { - EXTENDED_ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - EXTENDED_ASSERT_TRUE(ValidateFileContentInPackage(pkgid, - "res/VERSION", "1", params)); - return true; - }); -} - -TEST_F(SmokeTest, RecoveryMode_ForMountInstall) { - bf::path path = kSmokePackagesDirectory / "RecoveryMode_ForMountInstall.tpk"; - RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); - - std::string test_uid_str = std::to_string(params.test_user.uid); - std::vector args = - {"", "-w", path.string(), "-u", test_uid_str.c_str()}; - backend.CrashAfterEachStep(&args, [&](int step) -> bool { - if (step >= 2) { - std::string pkgid = "smoketpk37"; - std::string appid = "smoketpk37.RecoveryMode_ForMountInstall"; - bf::path recovery_file = FindRecoveryFile("/tpk-recovery", - params.test_user.uid); - EXTENDED_ASSERT_FALSE(recovery_file.empty()); - EXTENDED_ASSERT_EQ(backend.Recover(recovery_file), - ci::AppInstaller::Result::OK); - EXTENDED_ASSERT_TRUE(CheckPackageNonExistance(pkgid, params)); - } - return true; - }, params.pkg_type); -} - -TEST_F(SmokeTest, RecoveryMode_ForMountUpdate) { - bf::path path_old = - kSmokePackagesDirectory / "RecoveryMode_ForMountUpdate.tpk"; - bf::path path_new = - kSmokePackagesDirectory / "RecoveryMode_ForMountUpdate2.tpk"; - RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); - ASSERT_EQ(ci::AppInstaller::Result::OK, backend.MountInstall(path_old)); - - std::string test_uid_str = std::to_string(params.test_user.uid); - std::vector args = - {"", "-w", path_new.string(), "-u", test_uid_str.c_str()}; - backend.CrashAfterEachStep(&args, [&](int step) -> bool { - if (step >= 2) { - std::string pkgid = "smoketpk38"; - std::string appid = "smoketpk38.RecoveryMode_ForMountUpdate"; - std::string exec = "smoketpk38"; - - // Filesystem may be mounted after crash - ScopedTzipInterface poweroff_unmount_interface(pkgid, - params.test_user.uid); - poweroff_unmount_interface.Release(); - - bf::path recovery_file = FindRecoveryFile("/tpk-recovery", - params.test_user.uid); - EXTENDED_ASSERT_FALSE(recovery_file.empty()); - EXTENDED_ASSERT_EQ(backend.Recover(recovery_file), - ci::AppInstaller::Result::OK); - ScopedTzipInterface interface(pkgid, params.test_user.uid); - EXTENDED_ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - - EXTENDED_ASSERT_TRUE(ValidateFileContentInPackage(pkgid, - "res/VERSION", "1", params)); - } - return true; - }, params.pkg_type); -} - -TEST_F(SmokeTest, MountInstallationMode_Rollback) { - bf::path path = - kSmokePackagesDirectory / "MountInstallationMode_Rollback.tpk"; - std::string pkgid = "smoketpk39"; - std::string test_uid_str = std::to_string(params.test_user.uid); - const char* argv[] = {"", "-w", path.c_str(), "-u", test_uid_str.c_str()}; - - backend.TestRollbackAfterEachStep(SIZEOFARRAY(argv), argv, [&]() -> bool { - ScopedTzipInterface package_mount(pkgid, params.test_user.uid); - EXTENDED_ASSERT_TRUE(CheckPackageNonExistance(pkgid, params)); - return true; - }); -} - -TEST_F(SmokeTest, MountUpdateMode_Rollback) { - bf::path old_path = kSmokePackagesDirectory / "MountUpdateMode_Rollback.tpk"; - bf::path new_path = kSmokePackagesDirectory / "MountUpdateMode_Rollback2.tpk"; - std::string pkgid = "smoketpk40"; - std::string appid = "smoketpk40.MountUpdateMode_Rollback"; - std::string exec = "smoketpk40"; - ASSERT_EQ(ci::AppInstaller::Result::OK, backend.MountInstall(old_path)); - std::string test_uid_str = std::to_string(params.test_user.uid); - const char* argv[] = - {"", "-w", new_path.c_str(), "-u", test_uid_str.c_str()}; - - backend.TestRollbackAfterEachStep(SIZEOFARRAY(argv), argv, [&]() -> bool { - ScopedTzipInterface package_mount(pkgid, params.test_user.uid); - EXTENDED_ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - EXTENDED_ASSERT_TRUE(ValidateFileContentInPackage(pkgid, - "res/VERSION", "1", params)); - return true; - }); -} - -} // namespace smoke_test - -int main(int argc, char** argv) { - try { - bool no_backup = false; - BackupType backup_type = BackupType::MOVE; - - ci::RequestMode request_mode = smoke_test::ParseRequestMode(argc, argv); - if (getuid() != 0 || request_mode != ci::RequestMode::GLOBAL) { - std::cout << "Skip tests for preload request" << std::endl; - ::testing::GTEST_FLAG(filter) = "SmokeTest.*"; - } - testing::InitGoogleTest(&argc, argv); - - bpo::options_description options("Allowed options"); - bpo::variables_map opt_map; - try { - options.add_options() - ("help", "display this help message") - ("no-backup", "Do test without backup") - ("backup-type", bpo::value(), " set test's " - "backup type \'move\', \'copy and remove\'"); - bpo::store(bpo::parse_command_line(argc, argv, options), opt_map); - if (opt_map.count("help")) { - std::cerr << options << std::endl; - return -1; - } - - if (opt_map.count("no-backup")) - no_backup = true; - if (opt_map.count("backup-type")) { - if (opt_map["backup-type"].as() == "move") { - backup_type = BackupType::MOVE; - } else if (opt_map["backup-type"].as() == "copy") { - backup_type = BackupType::COPY_AND_REMOVE; - } else { - std::cerr << options << std::endl; - return -1; - } - } - bpo::notify(opt_map); - } catch (...) { - std::cerr << "Exception occurred: " - << boost::current_exception_diagnostic_information() - << std::endl; - return -1; - } - - ::env = static_cast( - testing::AddGlobalTestEnvironment( - new smoke_test::SmokeEnvironment(request_mode, - no_backup, backup_type))); - signal(SIGINT, ::signalHandler); - signal(SIGSEGV, ::signalHandler); - return RUN_ALL_TESTS(); - } catch (...) { - std::cout << "Exception occurred during testing" << std::endl; - return 1; - } -} diff --git a/src/unit_tests/manifest_test.cc b/src/unit_tests/manifest_test.cc deleted file mode 100644 index dcbd231..0000000 --- a/src/unit_tests/manifest_test.cc +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright (c) 2015 Samsung Electronics Co., Ltd All Rights Reserved -// Use of this source code is governed by an apache-2.0 license that can be -// found in the LICENSE file. - -#include "unit_tests/manifest_test.h" - -#include - -namespace bf = boost::filesystem; -namespace ci = common_installer; - -namespace { - -const char kManifestTestcaseData[] = - "/usr/share/tpk-installer-ut/test_samples/manifest/"; - -} // namespace - -bool StepParseRunner::Run() { - PrepareContext(); - ci::configuration::StepParseManifest step(context_.get(), - ci::configuration::StepParseManifest::ManifestLocation::PACKAGE, - ci::configuration::StepParseManifest::StoreLocation::NORMAL); - return step.process() == ci::Step::Status::OK; -} - -manifest_x* StepParseRunner::GetManifest() const { - return context_->manifest_data.get(); -} - -bf::path StepParseRunner::GetRootApplicationPath() const { - return context_->root_application_path.get(); -} - -void StepParseRunner::PrepareContext() { - context_.reset(new ci::InstallerContext()); - context_->root_application_path.set(ci::GetRootAppPath(false, getuid())); - context_->unpacked_dir_path.set( - bf::path(kManifestTestcaseData) / dir_suffix_); - - // Make sure that there is manifest file for testcase - assert(bf::exists(context_->unpacked_dir_path.get() / "tizen-manifest.xml") - && "Failed to stat manifest file"); -} - -std::string ManifestTest::GetMyName() const { - std::string suite = - testing::UnitTest::GetInstance()->current_test_info()->test_case_name(); - std::string case_name = - testing::UnitTest::GetInstance()->current_test_info()->name(); - return suite + '.' + case_name; -} - -application_x* GetSingleApp(manifest_x* m) { - if (!m) - return nullptr; - auto apps = GListRange(m->application); - if (Size(&apps) != 1) - return nullptr; - return *apps.begin(); -} diff --git a/src/unit_tests/manifest_test.h b/src/unit_tests/manifest_test.h deleted file mode 100644 index 7fcc18d..0000000 --- a/src/unit_tests/manifest_test.h +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright (c) 2015 Samsung Electronics Co., Ltd All Rights Reserved -// Use of this source code is governed by an apache-2.0 license that can be -// found in the LICENSE file. - -#ifndef UNIT_TESTS_MANIFEST_TEST_H_ -#define UNIT_TESTS_MANIFEST_TEST_H_ - -#include - -#include -#include -#include -#include - -#include -#include - -#include -#include - -#define ASSERT_CSTR_EQ(STR1, STR2) \ - ASSERT_EQ(strcmp(STR1, STR2), 0) \ - -#define ASSERT_CSTR_NE(STR1, STR2) \ - ASSERT_NE(strcmp(STR1, STR2), 0) \ - -#define ASSERT_IN(ITEM, CONTAINER) \ - ASSERT_NE(std::find(CONTAINER.begin(), CONTAINER.end(), ITEM), \ - CONTAINER.end()); \ - -template -gint Size(GListRange* range) { - return std::distance(range->begin(), range->end()); -} - -class StepParseRunner { - public: - explicit StepParseRunner(const std::string& dir_suffix, - bool ignore_start_files = true) - : dir_suffix_(dir_suffix), - ignore_start_files_(ignore_start_files), - context_(nullptr) { } - - bool Run(); - manifest_x* GetManifest() const; - boost::filesystem::path GetRootApplicationPath() const; - - private: - void PrepareContext(); - - std::string dir_suffix_; - bool ignore_start_files_; - std::unique_ptr context_; -}; - -class ManifestTest : public testing::Test { - public: - std::string GetMyName() const; -}; - -application_x* GetSingleApp(manifest_x* m); - -#endif // UNIT_TESTS_MANIFEST_TEST_H_ diff --git a/src/unit_tests/manifest_test_package.cc b/src/unit_tests/manifest_test_package.cc deleted file mode 100644 index 1f9dce7..0000000 --- a/src/unit_tests/manifest_test_package.cc +++ /dev/null @@ -1,462 +0,0 @@ -// Copyright (c) 2015 Samsung Electronics Co., Ltd All Rights Reserved -// Use of this source code is governed by an apache-2.0 license that can be -// found in the LICENSE file. - -#include "unit_tests/manifest_test.h" - -namespace bf = boost::filesystem; -namespace ci = common_installer; - -TEST_F(ManifestTest, ManifestElement_Valid) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - ASSERT_CSTR_EQ(m->package, "package0id"); - auto apps = GListRange(m->application); - ASSERT_EQ(Size(&apps), 1); - application_x* app = *apps.begin(); - ASSERT_CSTR_EQ(app->appid, "package0id.appid"); -} - -TEST_F(ManifestTest, ManifestElement_InvalidRootElement) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, ManifestElement_DoubleRootElement) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, ManifestElement_InstallLocation_Auto) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - ASSERT_CSTR_EQ(m->installlocation, "auto"); -} - -TEST_F(ManifestTest, ManifestElement_InstallLocation_InternalOnly) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - ASSERT_CSTR_EQ(m->installlocation, "internal-only"); -} - -TEST_F(ManifestTest, ManifestElement_InstallLocation_PreferExternal) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - ASSERT_CSTR_EQ(m->installlocation, "prefer-external"); -} - -TEST_F(ManifestTest, ManifestElement_InstallLocation_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - ASSERT_CSTR_EQ(m->installlocation, "auto"); -} - -TEST_F(ManifestTest, ManifestElement_InstallLocation_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, ManifestElement_Package_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, ManifestElement_Package_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, ManifestElement_Type_Tpk) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - ASSERT_CSTR_EQ(m->type, "tpk"); -} - -TEST_F(ManifestTest, ManifestElement_Type_Rpm) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - ASSERT_CSTR_EQ(m->type, "rpm"); -} - -TEST_F(ManifestTest, ManifestElement_Type_Wgt) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - ASSERT_CSTR_EQ(m->type, "wgt"); -} - -TEST_F(ManifestTest, ManifestElement_Type_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, ManifestElement_Type_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - ASSERT_CSTR_EQ(m->type, "tpk"); -} - -TEST_F(ManifestTest, ManifestElement_Version_Valid) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - ASSERT_CSTR_EQ(m->version, "1.2.3"); -} - -TEST_F(ManifestTest, ManifestElement_Version_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, ManifestElement_Version_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, ManifestElement_ApiVersion_Valid) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - ASSERT_CSTR_EQ(m->api_version, "3.0"); -} - -TEST_F(ManifestTest, ManifestElement_ApiVersion_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, ManifestElement_ApiVersion_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, AuthorElement_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - auto authors = GListRange(m->author); - ASSERT_EQ(Size(&authors), 0); -} - -TEST_F(ManifestTest, AuthorElement_Valid) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - auto authors = GListRange(m->author); - ASSERT_EQ(Size(&authors), 1); - author_x* author = *authors.begin(); - ASSERT_CSTR_EQ(author->email, "valid@email.com"); - ASSERT_CSTR_EQ(author->href, "http://site.domain.com"); -} - -TEST_F(ManifestTest, DescriptionElement_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - auto descriptions = GListRange(m->description); - ASSERT_EQ(Size(&descriptions), 0); -} - -TEST_F(ManifestTest, DescriptionElement_Valid) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - auto descriptions = GListRange(m->description); - ASSERT_EQ(Size(&descriptions), 1); - description_x* description = *descriptions.begin(); - ASSERT_CSTR_EQ(description->text, "text"); - ASSERT_CSTR_EQ(description->lang, "en-GB"); -} - -TEST_F(ManifestTest, DescriptionElement_Many) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - auto descriptions = GListRange(m->description); - ASSERT_EQ(Size(&descriptions), 2); - description_x* description1 = *descriptions.begin(); - description_x* description2 = *++descriptions.begin(); - ASSERT_CSTR_EQ(description1->text, "text"); - ASSERT_CSTR_EQ(description1->lang, "en-GB"); - ASSERT_CSTR_EQ(description2->text, "text2"); - ASSERT_CSTR_EQ(description2->lang, DEFAULT_LOCALE); -} - -TEST_F(ManifestTest, DescriptionElement_Lang_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, PrivilegesElement_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - auto privileges = GListRange(m->privileges); - ASSERT_EQ(Size(&privileges), 0); -} - -TEST_F(ManifestTest, PrivilegesElement_None) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - auto privileges = GListRange(m->privileges); - ASSERT_EQ(Size(&privileges), 0); -} - -TEST_F(ManifestTest, PrivilegesElement_Valid) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - auto privileges = GListRange(m->privileges); - ASSERT_EQ(Size(&privileges), 1); - ASSERT_CSTR_EQ((*privileges.begin())->value, - "http://tizen.org/privilege/application.admin"); -} - -TEST_F(ManifestTest, PrivilegesElement_Many) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - auto privileges = GListRange(m->privileges); - ASSERT_EQ(Size(&privileges), 3); - ASSERT_CSTR_EQ(((*privileges.begin()))->value, - "http://tizen.org/privilege/account.read"); - ASSERT_CSTR_EQ(((*++privileges.begin()))->value, - "http://tizen.org/privilege/application.admin"); - ASSERT_CSTR_EQ(((*++++privileges.begin())->value), - "http://tizen.org/privilege/appmanager.launch"); -} - -TEST_F(ManifestTest, AppDefinedPrivilegesElement_Invalid_OverLength) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, AppDefinedPrivilegesElement_Invalid_NotURI) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, AppDefinedPrivilegesElement_Invalid_NoPKGID) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, AppDefinedPrivilegesElement_Valid) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - auto privileges = - GListRange(m->appdefined_privileges); - ASSERT_EQ(Size(&privileges), 1); - ASSERT_CSTR_EQ((*privileges.begin())->value, - "http://package0id/appdefined/test.read"); -} - -TEST_F(ManifestTest, AppDefinedPrivilegesElement_WithLicenseValid) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - auto privileges = - GListRange(m->appdefined_privileges); - ASSERT_EQ(Size(&privileges), 1); - ASSERT_CSTR_EQ((*privileges.begin())->value, - "http://package0id/appdefined/test.read"); - bf::path path(m->root_path); - path /= "res/cert"; - ASSERT_CSTR_EQ((*privileges.begin())->license, path.c_str()); -} - -TEST_F(ManifestTest, AppDefinedPrivilegesElement_Many) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - auto privileges = - GListRange(m->appdefined_privileges); - ASSERT_EQ(Size(&privileges), 2); - ASSERT_CSTR_EQ(((*privileges.begin()))->value, - "http://package0id/appdefined/test.read"); - ASSERT_CSTR_EQ(((*++privileges.begin()))->value, - "http://package0id/appdefined/test.write"); -} - -TEST_F(ManifestTest, AppDefinedPrivilegesElement_WithLicenseMany) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - auto privileges = - GListRange(m->appdefined_privileges); - ASSERT_EQ(Size(&privileges), 2); - ASSERT_CSTR_EQ(((*privileges.begin()))->value, - "http://package0id/appdefined/test.read"); - bf::path path(m->root_path); - path /= "res/cert"; - ASSERT_CSTR_EQ(((*privileges.begin()))->license, path.c_str()); - ASSERT_CSTR_EQ(((*++privileges.begin()))->value, - "http://package0id/appdefined/test.write"); - ASSERT_CSTR_EQ(((*++privileges.begin()))->license, path.c_str()); -} - -TEST_F(ManifestTest, ProvidesAppDefinedPrivilegesElement_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - auto privileges = - GListRange(m->provides_appdefined_privileges); - ASSERT_EQ(Size(&privileges), 0); -} - -TEST_F(ManifestTest, ProvidesAppDefinedPrivilegesElement_None) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - auto privileges = - GListRange(m->provides_appdefined_privileges); - ASSERT_EQ(Size(&privileges), 0); -} - -TEST_F(ManifestTest, ProvidesAppDefinedPrivilegesElement_Invalid_OverLength) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, ProvidesAppDefinedPrivilegesElement_Invalid_NotURI) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, ProvidesAppDefinedPrivilegesElement_Invalid_NoPKGID) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, ProvidesAppDefinedPrivilegesElement_Valid) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - auto privileges = - GListRange(m->provides_appdefined_privileges); - ASSERT_EQ(Size(&privileges), 1); - ASSERT_CSTR_EQ((*privileges.begin())->value, - "http://package0id/appdefined/test.read"); -} - -TEST_F(ManifestTest, ProvidesAppDefinedPrivilegesElement_WithLicenseValid) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - auto privileges = - GListRange(m->provides_appdefined_privileges); - ASSERT_EQ(Size(&privileges), 1); - ASSERT_CSTR_EQ((*privileges.begin())->value, - "http://package0id/appdefined/test.read"); - bf::path path(m->root_path); - path /= "res/cert"; - ASSERT_CSTR_EQ((*privileges.begin())->license, path.c_str()); -} - -TEST_F(ManifestTest, ProvidesAppDefinedPrivilegesElement_Many) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - auto privileges = - GListRange(m->provides_appdefined_privileges); - ASSERT_EQ(Size(&privileges), 2); - ASSERT_CSTR_EQ(((*privileges.begin()))->value, - "http://package0id/appdefined/test.read"); - ASSERT_CSTR_EQ(((*++privileges.begin()))->value, - "http://package0id/appdefined/test.write"); -} - -TEST_F(ManifestTest, ProvidesAppDefinedPrivilegesElement_WithLicenseMany) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - auto privileges = - GListRange(m->provides_appdefined_privileges); - ASSERT_EQ(Size(&privileges), 2); - ASSERT_CSTR_EQ(((*privileges.begin()))->value, - "http://package0id/appdefined/test.read"); - bf::path path(m->root_path); - path /= "res/cert"; - ASSERT_CSTR_EQ(((*privileges.begin()))->license, path.c_str()); - ASSERT_CSTR_EQ(((*++privileges.begin()))->value, - "http://package0id/appdefined/test.write"); - ASSERT_CSTR_EQ(((*++privileges.begin()))->license, path.c_str()); -} - -TEST_F(ManifestTest, ProfileElement_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - auto profiles = GListRange(m->deviceprofile); - ASSERT_EQ(Size(&profiles), 0); -} - -TEST_F(ManifestTest, ProfileElement_Valid) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - auto profiles = GListRange(m->deviceprofile); - ASSERT_EQ(Size(&profiles), 1); - const char* profile = *profiles.begin(); - ASSERT_CSTR_EQ(profile, "mobile"); -} - -TEST_F(ManifestTest, ProfileElement_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, ProfileElement_Many) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - auto profiles = GListRange(m->deviceprofile); - ASSERT_EQ(Size(&profiles), 2); - const char* profile1 = *profiles.begin(); - const char* profile2 = *++profiles.begin(); - ASSERT_CSTR_EQ(profile1, "mobile"); - ASSERT_CSTR_EQ(profile2, "wearable"); -} diff --git a/src/unit_tests/manifest_test_service_application.cc b/src/unit_tests/manifest_test_service_application.cc deleted file mode 100644 index 876c481..0000000 --- a/src/unit_tests/manifest_test_service_application.cc +++ /dev/null @@ -1,560 +0,0 @@ -// Copyright (c) 2015 Samsung Electronics Co., Ltd All Rights Reserved -// Use of this source code is governed by an apache-2.0 license that can be -// found in the LICENSE file. - -#include "unit_tests/manifest_test.h" - -#include -#include - -#include - -namespace bf = boost::filesystem; -namespace ci = common_installer; - -TEST_F(ManifestTest, ServiceApplicationElement_Valid) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - ASSERT_CSTR_EQ(m->package, "package0id"); - auto apps = GListRange(m->application); - ASSERT_EQ(Size(&apps), 1); - application_x* app = *apps.begin(); - ASSERT_CSTR_EQ(app->appid, "package0id.appid"); - ASSERT_CSTR_EQ(app->component_type, "svcapp"); - ASSERT_CSTR_EQ(app->mainapp, "true"); -} - -TEST_F(ManifestTest, ServiceApplicationElement_Appid_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, ServiceApplicationElement_Appid_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, ServiceApplicationElement_Multiple_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->multiple, "false"); -} - -TEST_F(ManifestTest, ServiceApplicationElement_Multiple_False) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->multiple, "false"); -} - -TEST_F(ManifestTest, ServiceApplicationElement_Multiple_True) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->multiple, "true"); -} - -TEST_F(ManifestTest, ServiceApplicationElement_Multiple_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, ServiceApplicationElement_AutoRestart_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->autorestart, "false"); -} - -TEST_F(ManifestTest, ServiceApplicationElement_AutoRestart_False) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->autorestart, "false"); -} - -TEST_F(ManifestTest, ServiceApplicationElement_AutoRestart_True) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->autorestart, "true"); -} - -TEST_F(ManifestTest, ServiceApplicationElement_AutoRestart_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, ServiceApplicationElement_OnBoot_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->onboot, "false"); -} - -TEST_F(ManifestTest, ServiceApplicationElement_OnBoot_False) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->onboot, "false"); -} - -TEST_F(ManifestTest, ServiceApplicationElement_OnBoot_True) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->onboot, "true"); -} - -TEST_F(ManifestTest, ServiceApplicationElement_OnBoot_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, ServiceApplicationElement_Taskmanage_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->taskmanage, "true"); -} - -TEST_F(ManifestTest, ServiceApplicationElement_Taskmanage_False) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->taskmanage, "false"); -} - -TEST_F(ManifestTest, ServiceApplicationElement_Taskmanage_True) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->taskmanage, "true"); -} - -TEST_F(ManifestTest, ServiceApplicationElement_Taskmanage_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, ServiceApplicationElement_Type_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, ServiceApplicationElement_Type_Capp) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->type, "capp"); -} - -TEST_F(ManifestTest, ServiceApplicationElement_Type_Webapp) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->type, "webapp"); -} - -TEST_F(ManifestTest, ServiceApplicationElement_Label_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto labels = GListRange(app->label); - ASSERT_EQ(Size(&labels), 0); -} - -TEST_F(ManifestTest, ServiceApplicationElement_Label_Valid) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto labels = GListRange(app->label); - ASSERT_EQ(Size(&labels), 1); - ASSERT_CSTR_EQ((*labels.begin())->text, "label"); - ASSERT_CSTR_EQ((*labels.begin())->lang, DEFAULT_LOCALE); -} - -TEST_F(ManifestTest, ServiceApplicationElement_Label_Text_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, ServiceApplicationElement_Label_Lang_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, ServiceApplicationElement_Label_Many) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto labels = GListRange(app->label); - ASSERT_EQ(Size(&labels), 2); - ASSERT_CSTR_EQ((*labels.begin())->text, "label"); - ASSERT_CSTR_EQ((*labels.begin())->lang, DEFAULT_LOCALE); - ASSERT_CSTR_EQ((*++labels.begin())->text, "label_GB"); - ASSERT_CSTR_EQ((*++labels.begin())->lang, "en-GB"); -} - -TEST_F(ManifestTest, ServiceApplicationElement_Label_Many_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, ServiceApplicationElement_Metadata_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto labels = GListRange(app->metadata); - ASSERT_EQ(Size(&labels), 0); -} - -TEST_F(ManifestTest, ServiceApplicationElement_Metadata_Valid) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto metadata = GListRange(app->metadata); - ASSERT_EQ(Size(&metadata), 1); - ASSERT_CSTR_EQ((*metadata.begin())->key, "key"); - ASSERT_CSTR_EQ((*metadata.begin())->value, "value"); -} - -TEST_F(ManifestTest, ServiceApplicationElement_Metadata_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, ServiceApplicationElement_Metadata_Many) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto metadata = GListRange(app->metadata); - ASSERT_EQ(Size(&metadata), 2); - ASSERT_CSTR_EQ((*metadata.begin())->key, "key1"); - ASSERT_CSTR_EQ((*metadata.begin())->value, "value1"); - ASSERT_CSTR_EQ((*++metadata.begin())->key, "key2"); - ASSERT_CSTR_EQ((*++metadata.begin())->value, ""); -} - -TEST_F(ManifestTest, ServiceApplicationElement_BackgroundCategory_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto bg_categories = GListRange(app->background_category); - ASSERT_EQ(Size(&bg_categories), 0); -} - -TEST_F(ManifestTest, ServiceApplicationElement_BackgroundCategory_Valid) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto bg_categories = GListRange(app->background_category); - ASSERT_EQ(Size(&bg_categories), 1); - ASSERT_CSTR_EQ(*bg_categories.begin(), "bgcategory"); -} - -TEST_F(ManifestTest, ServiceApplicationElement_BackgroundCategory_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, ServiceApplicationElement_BackgroundCategory_Many) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto bg_categories = GListRange(app->background_category); - ASSERT_EQ(Size(&bg_categories), 2); - ASSERT_CSTR_EQ(*bg_categories.begin(), "bgcategory1"); - ASSERT_CSTR_EQ(*++bg_categories.begin(), "bgcategory2"); -} - -TEST_F(ManifestTest, ServiceApplicationElement_DataControl_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto datacontrols = GListRange(app->datacontrol); - ASSERT_EQ(Size(&datacontrols), 0); -} - -TEST_F(ManifestTest, ServiceApplicationElement_DataControl_Valid) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto datacontrols = GListRange(app->datacontrol); - ASSERT_EQ(Size(&datacontrols), 1); - ASSERT_CSTR_EQ((*datacontrols.begin())->providerid, "providerid"); - ASSERT_CSTR_EQ((*datacontrols.begin())->access, "access"); - ASSERT_CSTR_EQ((*datacontrols.begin())->type, "type"); -} - -TEST_F(ManifestTest, ServiceApplicationElement_DataControl_Many) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto datacontrols = GListRange(app->datacontrol); - ASSERT_EQ(Size(&datacontrols), 2); - ASSERT_CSTR_EQ((*datacontrols.begin())->providerid, "providerid1"); - ASSERT_CSTR_EQ((*datacontrols.begin())->access, "access1"); - ASSERT_CSTR_EQ((*datacontrols.begin())->type, "type1"); - ASSERT_CSTR_EQ((*++datacontrols.begin())->providerid, "providerid2"); - ASSERT_CSTR_EQ((*++datacontrols.begin())->access, "access2"); - ASSERT_CSTR_EQ((*++datacontrols.begin())->type, "type2"); -} - -TEST_F(ManifestTest, ServiceApplicationElement_AppControl_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto appcontrols = GListRange(app->appcontrol); - ASSERT_EQ(Size(&appcontrols), 0); -} - -TEST_F(ManifestTest, ServiceApplicationElement_AppControl_Operation_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto appcontrols = GListRange(app->appcontrol); - ASSERT_EQ(Size(&appcontrols), 0); -} - -TEST_F(ManifestTest, ServiceApplicationElement_AppControl_Operation_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, - ServiceApplicationElement_AppControl_Operation_Invalid_NotURI) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, ServiceApplicationElement_AppControl_Mime_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, ServiceApplicationElement_AppControl_Uri_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, ServiceApplicationElement_AppControl_Valid) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto appcontrols = GListRange(app->appcontrol); - ASSERT_EQ(Size(&appcontrols), 1); - ASSERT_CSTR_EQ((*appcontrols.begin())->operation, - "http://tizen.org/appcontrol/operation/compose"); - ASSERT_CSTR_EQ((*appcontrols.begin())->uri, "scheme://"); - ASSERT_CSTR_EQ((*appcontrols.begin())->mime, "application/pdf"); -} - -TEST_F(ManifestTest, ServiceApplicationElement_AppControl_Many) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto appcontrols = GListRange(app->appcontrol); - ASSERT_EQ(Size(&appcontrols), 2); - ASSERT_CSTR_EQ((*appcontrols.begin())->operation, - "http://tizen.org/appcontrol/operation/compose"); - ASSERT_CSTR_EQ((*appcontrols.begin())->uri, "scheme://"); - ASSERT_CSTR_EQ((*appcontrols.begin())->mime, "application/pdf"); - ASSERT_CSTR_EQ((*++appcontrols.begin())->operation, - "http://tizen.org/appcontrol/operation/compose2"); - ASSERT_CSTR_EQ((*++appcontrols.begin())->uri, "scheme2://"); - ASSERT_CSTR_EQ((*++appcontrols.begin())->mime, "application/text"); -} - -TEST_F(ManifestTest, ServiceApplicationElement_AppControl_SkipUri) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto appcontrols = GListRange(app->appcontrol); - ASSERT_EQ(Size(&appcontrols), 1); - ASSERT_CSTR_EQ((*appcontrols.begin())->operation, - "http://tizen.org/appcontrol/operation/compose"); - ASSERT_EQ((*appcontrols.begin())->uri, nullptr); - ASSERT_CSTR_EQ((*appcontrols.begin())->mime, "application/pdf"); -} - -TEST_F(ManifestTest, ServiceApplicationElement_AppControl_SkipMime) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto appcontrols = GListRange(app->appcontrol); - ASSERT_EQ(Size(&appcontrols), 1); - ASSERT_CSTR_EQ((*appcontrols.begin())->operation, - "http://tizen.org/appcontrol/operation/compose"); - ASSERT_CSTR_EQ((*appcontrols.begin())->uri, "scheme://"); - ASSERT_EQ((*appcontrols.begin())->mime, nullptr); -} - -TEST_F(ManifestTest, ServiceApplicationElement_AppControl_CartesianProduct) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto appcontrols = GListRange(app->appcontrol); - ASSERT_EQ(Size(&appcontrols), 8); - - std::vector> - found_app_controls; - for (auto& item : appcontrols) { - found_app_controls.emplace_back(item->operation, item->uri, item->mime); - } - - for (auto operation : {"http://tizen.org/appcontrol/operation/compose1", - "http://tizen.org/appcontrol/operation/compose2"}) { - for (auto uri : {"scheme1://", "scheme2://"}) { - for (auto mime : {"application/text", "application/pdf"}) { - ASSERT_IN(boost::make_tuple(operation, uri, mime), found_app_controls); - } - } - } -} - -TEST_F(ManifestTest, - ServiceApplicationElement_AppControl_CartesianProduct_SkipMime) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto appcontrols = GListRange(app->appcontrol); - ASSERT_EQ(Size(&appcontrols), 4); - - std::vector> - found_app_controls; - for (auto& item : appcontrols) { - ASSERT_EQ(item->mime, nullptr); - found_app_controls.emplace_back(item->operation, item->uri, ""); - } - - for (auto operation : {"http://tizen.org/appcontrol/operation/compose1", - "http://tizen.org/appcontrol/operation/compose2"}) { - for (auto uri : {"scheme1://", "scheme2://"}) { - ASSERT_IN(boost::make_tuple(operation, uri, ""), found_app_controls); - } - } -} - -TEST_F(ManifestTest, - ServiceApplicationElement_AppControl_CartesianProduct_SkipUri) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto appcontrols = GListRange(app->appcontrol); - ASSERT_EQ(Size(&appcontrols), 4); - - std::vector> - found_app_controls; - for (auto& item : appcontrols) { - ASSERT_EQ(item->uri, nullptr); - found_app_controls.emplace_back(item->operation, "", item->mime); - } - - for (auto operation : {"http://tizen.org/appcontrol/operation/compose1", - "http://tizen.org/appcontrol/operation/compose2"}) { - for (auto mime : {"application/text", "application/pdf"}) { - ASSERT_IN(boost::make_tuple(operation, "", mime), found_app_controls); - } - } -} - -TEST_F(ManifestTest, ServiceApplicationElement_Icon_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto icons = GListRange(app->icon); - ASSERT_EQ(Size(&icons), 0); -} - -TEST_F(ManifestTest, ServiceApplicationElement_Icon_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, ServiceApplicationElement_Icon_Valid) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto icons = GListRange(app->icon); - ASSERT_EQ(Size(&icons), 1); - ASSERT_EQ(bf::path((*icons.begin())->text).filename().string(), - "test_icon.png"); -} - -TEST_F(ManifestTest, ServiceApplicationElement_SetManifestXDefaults) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - ASSERT_CSTR_EQ(m->package, "package0id"); - ASSERT_CSTR_EQ(m->version, "1.0.0"); - ASSERT_CSTR_EQ(m->installlocation, "auto"); - ASSERT_CSTR_EQ(m->appsetting, "false"); - ASSERT_CSTR_EQ(m->type, "tpk"); - ASSERT_NE(m->installed_time, nullptr); - ASSERT_CSTR_EQ(m->mainapp_id, "package0id.appid"); - ASSERT_CSTR_EQ(m->nodisplay_setting, "false"); - ASSERT_CSTR_EQ(m->support_disable, "false"); - ASSERT_CSTR_EQ(m->api_version, "2.3"); - auto apps = GListRange(m->application); - ASSERT_EQ(Size(&apps), 1); - application_x* app = *apps.begin(); - ASSERT_CSTR_EQ(app->appid, "package0id.appid"); - ASSERT_NE(app->exec, nullptr); - ASSERT_CSTR_EQ(app->nodisplay, "true"); - ASSERT_CSTR_EQ(app->multiple, "false"); - ASSERT_CSTR_EQ(app->taskmanage, "true"); - ASSERT_CSTR_EQ(app->hwacceleration, "default"); - ASSERT_CSTR_EQ(app->screenreader, "use-system-setting"); - ASSERT_CSTR_EQ(app->component_type, "svcapp"); - ASSERT_CSTR_EQ(app->mainapp, "true"); - ASSERT_CSTR_EQ(app->recentimage, "false"); - ASSERT_CSTR_EQ(app->launchcondition, "false"); - ASSERT_CSTR_EQ(app->indicatordisplay, "true"); - ASSERT_CSTR_EQ(app->effectimage_type, "image"); - ASSERT_CSTR_EQ(app->guestmode_visibility, "true"); - ASSERT_CSTR_EQ(app->permission_type, "normal"); - ASSERT_CSTR_EQ(app->submode, "false"); - ASSERT_CSTR_EQ(app->process_pool, "false"); -} diff --git a/src/unit_tests/manifest_test_ui_application.cc b/src/unit_tests/manifest_test_ui_application.cc deleted file mode 100644 index b69d752..0000000 --- a/src/unit_tests/manifest_test_ui_application.cc +++ /dev/null @@ -1,642 +0,0 @@ -// Copyright (c) 2015 Samsung Electronics Co., Ltd All Rights Reserved -// Use of this source code is governed by an apache-2.0 license that can be -// found in the LICENSE file. - -#include "unit_tests/manifest_test.h" - -#include -#include - -#include - -namespace bf = boost::filesystem; -namespace ci = common_installer; - -TEST_F(ManifestTest, UIApplicationElement_Valid) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - ASSERT_CSTR_EQ(m->package, "package0id"); - auto apps = GListRange(m->application); - ASSERT_EQ(Size(&apps), 1); - application_x* app = *apps.begin(); - ASSERT_CSTR_EQ(app->appid, "package0id.appid"); - ASSERT_CSTR_EQ(app->component_type, "uiapp"); - ASSERT_CSTR_EQ(app->mainapp, "true"); -} - -TEST_F(ManifestTest, UIApplicationElement_MissingNoApp) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, UIApplicationElement_MissingOtherApp) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_NE(app->component_type, "uiapp"); -} - -TEST_F(ManifestTest, UIApplicationElement_Appid_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, UIApplicationElement_Appid_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, UIApplicationElement_LaunchMode_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->launch_mode, "single"); -} - -TEST_F(ManifestTest, UIApplicationElement_LaunchMode_Single) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->launch_mode, "single"); -} - -TEST_F(ManifestTest, UIApplicationElement_LaunchMode_Group) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->launch_mode, "group"); -} - -TEST_F(ManifestTest, UIApplicationElement_LaunchMode_Caller) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->launch_mode, "caller"); -} - -TEST_F(ManifestTest, UIApplicationElement_LaunchMode_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, UIApplicationElement_Multiple_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->multiple, "false"); -} - -TEST_F(ManifestTest, UIApplicationElement_Multiple_False) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr);; - ASSERT_CSTR_EQ(app->multiple, "false"); -} - -TEST_F(ManifestTest, UIApplicationElement_Multiple_True) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->multiple, "true"); -} - -TEST_F(ManifestTest, UIApplicationElement_Multiple_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, UIApplicationElement_Nodisplay_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->nodisplay, "false"); -} - -TEST_F(ManifestTest, UIApplicationElement_Nodisplay_False) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->nodisplay, "false"); -} - -TEST_F(ManifestTest, UIApplicationElement_Nodisplay_True) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->nodisplay, "true"); -} - -TEST_F(ManifestTest, UIApplicationElement_Nodisplay_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, UIApplicationElement_Taskmanage_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->taskmanage, "true"); -} - -TEST_F(ManifestTest, UIApplicationElement_Taskmanage_False) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->taskmanage, "false"); -} - -TEST_F(ManifestTest, UIApplicationElement_Taskmanage_True) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->taskmanage, "true"); -} - -TEST_F(ManifestTest, UIApplicationElement_Taskmanage_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, UIApplicationElement_HwAcceleration_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->hwacceleration, "default"); -} - -TEST_F(ManifestTest, UIApplicationElement_HwAcceleration_Default) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->hwacceleration, "default"); -} - -TEST_F(ManifestTest, UIApplicationElement_HwAcceleration_Off) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->hwacceleration, "off"); -} - -TEST_F(ManifestTest, UIApplicationElement_HwAcceleration_On) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->hwacceleration, "on"); -} - -TEST_F(ManifestTest, UIApplicationElement_Type_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, UIApplicationElement_Type_Capp) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->type, "capp"); -} - -TEST_F(ManifestTest, UIApplicationElement_Type_Webapp) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->type, "webapp"); -} - -TEST_F(ManifestTest, UIApplicationElement_Label_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto labels = GListRange(app->label); - ASSERT_EQ(Size(&labels), 0); -} - -TEST_F(ManifestTest, UIApplicationElement_Label_Valid) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto labels = GListRange(app->label); - ASSERT_EQ(Size(&labels), 1); - ASSERT_CSTR_EQ((*labels.begin())->text, "label"); - ASSERT_CSTR_EQ((*labels.begin())->lang, DEFAULT_LOCALE); -} - -TEST_F(ManifestTest, UIApplicationElement_Label_Text_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, UIApplicationElement_Label_Lang_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, UIApplicationElement_Label_Many) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto labels = GListRange(app->label); - ASSERT_EQ(Size(&labels), 2); - ASSERT_CSTR_EQ((*labels.begin())->text, "label"); - ASSERT_CSTR_EQ((*labels.begin())->lang, DEFAULT_LOCALE); - ASSERT_CSTR_EQ((*++labels.begin())->text, "label_GB"); - ASSERT_CSTR_EQ((*++labels.begin())->lang, "en-GB"); -} - -TEST_F(ManifestTest, UIApplicationElement_Label_Many_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, UIApplicationElement_Metadata_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto labels = GListRange(app->metadata); - ASSERT_EQ(Size(&labels), 0); -} - -TEST_F(ManifestTest, UIApplicationElement_Metadata_Valid) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto metadata = GListRange(app->metadata); - ASSERT_EQ(Size(&metadata), 1); - ASSERT_CSTR_EQ((*metadata.begin())->key, "key"); - ASSERT_CSTR_EQ((*metadata.begin())->value, "value"); -} - -TEST_F(ManifestTest, UIApplicationElement_Metadata_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, UIApplicationElement_Metadata_Many) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto metadata = GListRange(app->metadata); - ASSERT_EQ(Size(&metadata), 2); - ASSERT_CSTR_EQ((*metadata.begin())->key, "key1"); - ASSERT_CSTR_EQ((*metadata.begin())->value, "value1"); - ASSERT_CSTR_EQ((*++metadata.begin())->key, "key2"); - ASSERT_CSTR_EQ((*++metadata.begin())->value, ""); -} - -TEST_F(ManifestTest, UIApplicationElement_BackgroundCategory_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto bg_categories = GListRange(app->background_category); - ASSERT_EQ(Size(&bg_categories), 0); -} - -TEST_F(ManifestTest, UIApplicationElement_BackgroundCategory_Valid) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto bg_categories = GListRange(app->background_category); - ASSERT_EQ(Size(&bg_categories), 1); - ASSERT_CSTR_EQ(*bg_categories.begin(), "bgcategory"); -} - -TEST_F(ManifestTest, UIApplicationElement_BackgroundCategory_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, UIApplicationElement_BackgroundCategory_Many) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto bg_categories = GListRange(app->background_category); - ASSERT_EQ(Size(&bg_categories), 2); - ASSERT_CSTR_EQ(*bg_categories.begin(), "bgcategory1"); - ASSERT_CSTR_EQ(*++bg_categories.begin(), "bgcategory2"); -} - -TEST_F(ManifestTest, UIApplicationElement_DataControl_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto datacontrols = GListRange(app->datacontrol); - ASSERT_EQ(Size(&datacontrols), 0); -} - -TEST_F(ManifestTest, UIApplicationElement_DataControl_Valid) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto datacontrols = GListRange(app->datacontrol); - ASSERT_EQ(Size(&datacontrols), 1); - ASSERT_CSTR_EQ((*datacontrols.begin())->providerid, "providerid"); - ASSERT_CSTR_EQ((*datacontrols.begin())->access, "access"); - ASSERT_CSTR_EQ((*datacontrols.begin())->type, "type"); -} - -TEST_F(ManifestTest, UIApplicationElement_DataControl_Many) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto datacontrols = GListRange(app->datacontrol); - ASSERT_EQ(Size(&datacontrols), 2); - ASSERT_CSTR_EQ((*datacontrols.begin())->providerid, "providerid1"); - ASSERT_CSTR_EQ((*datacontrols.begin())->access, "access1"); - ASSERT_CSTR_EQ((*datacontrols.begin())->type, "type1"); - ASSERT_CSTR_EQ((*++datacontrols.begin())->providerid, "providerid2"); - ASSERT_CSTR_EQ((*++datacontrols.begin())->access, "access2"); - ASSERT_CSTR_EQ((*++datacontrols.begin())->type, "type2"); -} - -TEST_F(ManifestTest, UIApplicationElement_AppControl_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto appcontrols = GListRange(app->appcontrol); - ASSERT_EQ(Size(&appcontrols), 0); -} - -TEST_F(ManifestTest, UIApplicationElement_AppControl_Operation_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto appcontrols = GListRange(app->appcontrol); - ASSERT_EQ(Size(&appcontrols), 0); -} - -TEST_F(ManifestTest, UIApplicationElement_AppControl_Operation_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, UIApplicationElement_AppControl_Operation_Invalid_NotURI) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, UIApplicationElement_AppControl_Mime_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, UIApplicationElement_AppControl_Uri_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, UIApplicationElement_AppControl_Valid) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto appcontrols = GListRange(app->appcontrol); - ASSERT_EQ(Size(&appcontrols), 1); - ASSERT_CSTR_EQ((*appcontrols.begin())->operation, - "http://tizen.org/appcontrol/operation/compose"); - ASSERT_CSTR_EQ((*appcontrols.begin())->uri, "scheme://"); - ASSERT_CSTR_EQ((*appcontrols.begin())->mime, "application/pdf"); -} - -TEST_F(ManifestTest, UIApplicationElement_AppControl_Many) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto appcontrols = GListRange(app->appcontrol); - ASSERT_EQ(Size(&appcontrols), 2); - ASSERT_CSTR_EQ((*appcontrols.begin())->operation, - "http://tizen.org/appcontrol/operation/compose"); - ASSERT_CSTR_EQ((*appcontrols.begin())->uri, "scheme://"); - ASSERT_CSTR_EQ((*appcontrols.begin())->mime, "application/pdf"); - ASSERT_CSTR_EQ((*++appcontrols.begin())->operation, - "http://tizen.org/appcontrol/operation/compose2"); - ASSERT_CSTR_EQ((*++appcontrols.begin())->uri, "scheme2://"); - ASSERT_CSTR_EQ((*++appcontrols.begin())->mime, "application/text"); -} - -TEST_F(ManifestTest, UIApplicationElement_AppControl_SkipUri) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto appcontrols = GListRange(app->appcontrol); - ASSERT_EQ(Size(&appcontrols), 1); - ASSERT_CSTR_EQ((*appcontrols.begin())->operation, - "http://tizen.org/appcontrol/operation/compose"); - ASSERT_EQ((*appcontrols.begin())->uri, nullptr); - ASSERT_CSTR_EQ((*appcontrols.begin())->mime, "application/pdf"); -} - -TEST_F(ManifestTest, UIApplicationElement_AppControl_SkipMime) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto appcontrols = GListRange(app->appcontrol); - ASSERT_EQ(Size(&appcontrols), 1); - ASSERT_CSTR_EQ((*appcontrols.begin())->operation, - "http://tizen.org/appcontrol/operation/compose"); - ASSERT_CSTR_EQ((*appcontrols.begin())->uri, "scheme://"); - ASSERT_EQ((*appcontrols.begin())->mime, nullptr); -} - -TEST_F(ManifestTest, UIApplicationElement_AppControl_CartesianProduct) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto appcontrols = GListRange(app->appcontrol); - ASSERT_EQ(Size(&appcontrols), 8); - - std::vector> - found_app_controls; - for (auto& item : appcontrols) { - found_app_controls.emplace_back(item->operation, item->uri, item->mime); - } - - for (auto operation : {"http://tizen.org/appcontrol/operation/compose1", - "http://tizen.org/appcontrol/operation/compose2"}) { - for (auto uri : {"scheme1://", "scheme2://"}) { - for (auto mime : {"application/text", "application/pdf"}) { - ASSERT_IN(boost::make_tuple(operation, uri, mime), found_app_controls); - } - } - } -} - -TEST_F(ManifestTest, - UIApplicationElement_AppControl_CartesianProduct_SkipMime) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto appcontrols = GListRange(app->appcontrol); - ASSERT_EQ(Size(&appcontrols), 4); - - std::vector> - found_app_controls; - for (auto& item : appcontrols) { - ASSERT_EQ(item->mime, nullptr); - found_app_controls.emplace_back(item->operation, item->uri, ""); - } - - for (auto operation : {"http://tizen.org/appcontrol/operation/compose1", - "http://tizen.org/appcontrol/operation/compose2"}) { - for (auto uri : {"scheme1://", "scheme2://"}) { - ASSERT_IN(boost::make_tuple(operation, uri, ""), found_app_controls); - } - } -} - -TEST_F(ManifestTest, UIApplicationElement_AppControl_CartesianProduct_SkipUri) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto appcontrols = GListRange(app->appcontrol); - ASSERT_EQ(Size(&appcontrols), 4); - - std::vector> - found_app_controls; - for (auto& item : appcontrols) { - ASSERT_EQ(item->uri, nullptr); - found_app_controls.emplace_back(item->operation, "", item->mime); - } - - for (auto operation : {"http://tizen.org/appcontrol/operation/compose1", - "http://tizen.org/appcontrol/operation/compose2"}) { - for (auto mime : {"application/text", "application/pdf"}) { - ASSERT_IN(boost::make_tuple(operation, "", mime), found_app_controls); - } - } -} - -TEST_F(ManifestTest, UIApplicationElement_Icon_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto icons = GListRange(app->icon); - ASSERT_EQ(Size(&icons), 0); -} - -TEST_F(ManifestTest, UIApplicationElement_Icon_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, UIApplicationElement_Icon_Valid) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto icons = GListRange(app->icon); - ASSERT_EQ(Size(&icons), 1); - ASSERT_EQ(bf::path((*icons.begin())->text).filename().string(), - "test_icon.png"); -} - -TEST_F(ManifestTest, UIApplicationElement_SetManifestXDefaults) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - ASSERT_CSTR_EQ(m->package, "package0id"); - ASSERT_CSTR_EQ(m->version, "1.0.0"); - ASSERT_CSTR_EQ(m->installlocation, "auto"); - ASSERT_CSTR_EQ(m->appsetting, "false"); - ASSERT_CSTR_EQ(m->type, "tpk"); - ASSERT_NE(m->installed_time, nullptr); - ASSERT_CSTR_EQ(m->mainapp_id, "package0id.appid"); - ASSERT_CSTR_EQ(m->nodisplay_setting, "false"); - ASSERT_CSTR_EQ(m->support_disable, "false"); - ASSERT_CSTR_EQ(m->api_version, "2.3"); - auto apps = GListRange(m->application); - ASSERT_EQ(Size(&apps), 1); - application_x* app = *apps.begin(); - ASSERT_CSTR_EQ(app->appid, "package0id.appid"); - ASSERT_NE(app->exec, nullptr); - ASSERT_CSTR_EQ(app->nodisplay, "false"); - ASSERT_CSTR_EQ(app->multiple, "false"); - ASSERT_CSTR_EQ(app->taskmanage, "true"); - ASSERT_CSTR_EQ(app->hwacceleration, "default"); - ASSERT_CSTR_EQ(app->screenreader, "use-system-setting"); - ASSERT_CSTR_EQ(app->component_type, "uiapp"); - ASSERT_CSTR_EQ(app->mainapp, "true"); - ASSERT_CSTR_EQ(app->recentimage, "false"); - ASSERT_CSTR_EQ(app->launchcondition, "false"); - ASSERT_CSTR_EQ(app->indicatordisplay, "true"); - ASSERT_CSTR_EQ(app->effectimage_type, "image"); - ASSERT_CSTR_EQ(app->guestmode_visibility, "true"); - ASSERT_CSTR_EQ(app->permission_type, "normal"); - ASSERT_CSTR_EQ(app->component_type, "uiapp"); - ASSERT_CSTR_EQ(app->submode, "false"); - ASSERT_CSTR_EQ(app->process_pool, "false"); -} - -TEST_F(ManifestTest, UIApplicationElement_SplashScreens_Duplicated_Entry) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - auto apps = GListRange(m->application); - ASSERT_EQ(Size(&apps), 1); - application_x* app = *apps.begin(); - auto splashscreens = GListRange(app->splashscreens); - ASSERT_EQ(splashscreens.Size(), 2); - auto root_path = runner.GetRootApplicationPath(); - std::string pkgid = "package0id"; - auto src_directory = root_path / pkgid / "shared" / "res"; - auto test1 = src_directory / "test1.jpg"; - auto it = splashscreens.begin(); - ASSERT_CSTR_EQ((*it)->src, test1.c_str()); - ASSERT_CSTR_EQ((*it)->type, "img"); - ASSERT_CSTR_EQ((*it)->dpi, "hdpi"); - ASSERT_CSTR_EQ((*it)->orientation, "landscape"); - ASSERT_CSTR_EQ((*it)->operation, - "http://tizen.org/appcontrol/operation/default"); - it++; - ASSERT_CSTR_EQ((*it)->src, test1.c_str()); - ASSERT_CSTR_EQ((*it)->type, "img"); - ASSERT_CSTR_EQ((*it)->dpi, "hdpi"); - ASSERT_CSTR_EQ((*it)->orientation, "landscape"); - ASSERT_CSTR_EQ((*it)->operation, - "http://tizen.org/appcontrol/operation/test_operation"); -} diff --git a/src/unit_tests/manifest_test_watch_application.cc b/src/unit_tests/manifest_test_watch_application.cc deleted file mode 100644 index 07e95de..0000000 --- a/src/unit_tests/manifest_test_watch_application.cc +++ /dev/null @@ -1,148 +0,0 @@ -// Copyright (c) 2015 Samsung Electronics Co., Ltd All Rights Reserved -// Use of this source code is governed by an apache-2.0 license that can be -// found in the LICENSE file. - -#include "unit_tests/manifest_test.h" - -namespace bf = boost::filesystem; -namespace ci = common_installer; - -TEST_F(ManifestTest, WatchApplicationElement_Valid) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - ASSERT_CSTR_EQ(m->package, "package0id"); - auto apps = GListRange(m->application); - ASSERT_EQ(Size(&apps), 1); - application_x* app = *apps.begin(); - ASSERT_CSTR_EQ(app->appid, "package0id.appid"); - ASSERT_CSTR_EQ(app->component_type, "watchapp"); -} - -TEST_F(ManifestTest, WatchApplicationElement_Appid_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, WatchApplicationElement_Appid_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, WatchApplicationElement_Label_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto labels = GListRange(app->label); - ASSERT_EQ(Size(&labels), 0); -} - -TEST_F(ManifestTest, WatchApplicationElement_Label_Valid) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto labels = GListRange(app->label); - ASSERT_EQ(Size(&labels), 1); - ASSERT_CSTR_EQ((*labels.begin())->text, "label"); - ASSERT_CSTR_EQ((*labels.begin())->lang, DEFAULT_LOCALE); -} - -TEST_F(ManifestTest, WatchApplicationElement_Label_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, WatchApplicationElement_Icon_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto icons = GListRange(app->icon); - ASSERT_EQ(Size(&icons), 0); -} - -TEST_F(ManifestTest, WatchApplicationElement_Icon_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, WatchApplicationElement_Icon_Valid) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto icons = GListRange(app->icon); - ASSERT_EQ(Size(&icons), 1); - ASSERT_EQ(bf::path((*icons.begin())->text).filename().string(), - "test_icon.png"); -} - -TEST_F(ManifestTest, WatchApplicationElement_AmbientSupport_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->support_ambient, "false"); -} - -TEST_F(ManifestTest, WatchApplicationElement_AmbientSupport_False) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->support_ambient, "false"); -} - - -TEST_F(ManifestTest, WatchApplicationElement_AmbientSupport_True) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - ASSERT_CSTR_EQ(app->support_ambient, "true"); -} - -TEST_F(ManifestTest, WatchApplicationElement_AmbientSupport_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, WatchApplicationElement_SetManifestXDefaults) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - ASSERT_CSTR_EQ(m->package, "package0id"); - ASSERT_CSTR_EQ(m->version, "1.0.0"); - ASSERT_CSTR_EQ(m->installlocation, "auto"); - ASSERT_CSTR_EQ(m->appsetting, "false"); - ASSERT_CSTR_EQ(m->type, "tpk"); - ASSERT_NE(m->installed_time, nullptr); - ASSERT_CSTR_EQ(m->mainapp_id, "package0id.appid"); - ASSERT_CSTR_EQ(m->nodisplay_setting, "false"); - ASSERT_CSTR_EQ(m->support_disable, "false"); - ASSERT_CSTR_EQ(m->api_version, "2.3"); - auto apps = GListRange(m->application); - ASSERT_EQ(Size(&apps), 1); - application_x* app = *apps.begin(); - ASSERT_CSTR_EQ(app->appid, "package0id.appid"); - ASSERT_NE(app->exec, nullptr); - ASSERT_CSTR_EQ(app->nodisplay, "true"); - ASSERT_CSTR_EQ(app->multiple, "false"); - ASSERT_CSTR_EQ(app->taskmanage, "false"); - ASSERT_CSTR_EQ(app->hwacceleration, "default"); - ASSERT_CSTR_EQ(app->screenreader, "use-system-setting"); - ASSERT_CSTR_EQ(app->component_type, "watchapp"); - ASSERT_CSTR_EQ(app->mainapp, "true"); - ASSERT_CSTR_EQ(app->recentimage, "false"); - ASSERT_CSTR_EQ(app->launchcondition, "false"); - ASSERT_CSTR_EQ(app->indicatordisplay, "true"); - ASSERT_CSTR_EQ(app->effectimage_type, "image"); - ASSERT_CSTR_EQ(app->guestmode_visibility, "true"); - ASSERT_CSTR_EQ(app->permission_type, "normal"); - ASSERT_CSTR_EQ(app->submode, "false"); - ASSERT_CSTR_EQ(app->process_pool, "false"); -} diff --git a/src/unit_tests/manifest_test_widget_application.cc b/src/unit_tests/manifest_test_widget_application.cc deleted file mode 100644 index 657d13c..0000000 --- a/src/unit_tests/manifest_test_widget_application.cc +++ /dev/null @@ -1,143 +0,0 @@ -// Copyright (c) 2015 Samsung Electronics Co., Ltd All Rights Reserved -// Use of this source code is governed by an apache-2.0 license that can be -// found in the LICENSE file. - -#include "unit_tests/manifest_test.h" - -namespace bf = boost::filesystem; -namespace ci = common_installer; - -TEST_F(ManifestTest, WidgetApplicationElement_Valid) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - ASSERT_CSTR_EQ(m->package, "package0id"); - auto apps = GListRange(m->application); - ASSERT_EQ(Size(&apps), 1); - application_x* app = *apps.begin(); - ASSERT_CSTR_EQ(app->appid, "package0id.appid"); - ASSERT_CSTR_EQ(app->component_type, "widgetapp"); -} - -TEST_F(ManifestTest, WidgetApplicationElement_Appid_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, WidgetApplicationElement_Appid_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, WidgetApplicationElement_Label_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto labels = GListRange(app->label); - ASSERT_EQ(Size(&labels), 0); -} - -TEST_F(ManifestTest, WidgetApplicationElement_Label_Valid) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto labels = GListRange(app->label); - ASSERT_EQ(Size(&labels), 1); - ASSERT_CSTR_EQ((*labels.begin())->text, "label"); - ASSERT_CSTR_EQ((*labels.begin())->lang, DEFAULT_LOCALE); -} - -TEST_F(ManifestTest, WidgetApplicationElement_Label_Text_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, WidgetApplicationElement_Label_Lang_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, WidgetApplicationElement_Label_Many) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto labels = GListRange(app->label); - ASSERT_EQ(Size(&labels), 2); - ASSERT_CSTR_EQ((*labels.begin())->text, "label"); - ASSERT_CSTR_EQ((*labels.begin())->lang, DEFAULT_LOCALE); - ASSERT_CSTR_EQ((*++labels.begin())->text, "label_GB"); - ASSERT_CSTR_EQ((*++labels.begin())->lang, "en-GB"); -} - -TEST_F(ManifestTest, WidgetApplicationElement_Label_Many_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, WidgetApplicationElement_Icon_Missing) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto icons = GListRange(app->icon); - ASSERT_EQ(Size(&icons), 0); -} - -TEST_F(ManifestTest, WidgetApplicationElement_Icon_Invalid) { - StepParseRunner runner(GetMyName()); - ASSERT_FALSE(runner.Run()); -} - -TEST_F(ManifestTest, WidgetApplicationElement_Icon_Valid) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - application_x* app = GetSingleApp(runner.GetManifest()); - ASSERT_NE(app, nullptr); - auto icons = GListRange(app->icon); - ASSERT_EQ(Size(&icons), 1); - ASSERT_EQ(bf::path((*icons.begin())->text).filename().string(), - "test_icon.png"); -} - -// preview, update-period, support-size are supposed to be parsed by plugin - -TEST_F(ManifestTest, WidgetApplicationElement_SetManifestXDefaults) { - StepParseRunner runner(GetMyName()); - ASSERT_TRUE(runner.Run()); - manifest_x* m = runner.GetManifest(); - ASSERT_NE(m, nullptr); - ASSERT_CSTR_EQ(m->package, "package0id"); - ASSERT_CSTR_EQ(m->version, "1.0.0"); - ASSERT_CSTR_EQ(m->installlocation, "auto"); - ASSERT_CSTR_EQ(m->appsetting, "false"); - ASSERT_CSTR_EQ(m->type, "tpk"); - ASSERT_NE(m->installed_time, nullptr); - ASSERT_CSTR_EQ(m->mainapp_id, "package0id.appid"); - ASSERT_CSTR_EQ(m->nodisplay_setting, "false"); - ASSERT_CSTR_EQ(m->support_disable, "false"); - ASSERT_CSTR_EQ(m->api_version, "2.3"); - auto apps = GListRange(m->application); - ASSERT_EQ(Size(&apps), 1); - application_x* app = *apps.begin(); - ASSERT_CSTR_EQ(app->appid, "package0id.appid"); - ASSERT_NE(app->exec, nullptr); - ASSERT_CSTR_EQ(app->nodisplay, "true"); - ASSERT_CSTR_EQ(app->multiple, "false"); - ASSERT_CSTR_EQ(app->taskmanage, "false"); - ASSERT_CSTR_EQ(app->hwacceleration, "default"); - ASSERT_CSTR_EQ(app->screenreader, "use-system-setting"); - ASSERT_CSTR_EQ(app->component_type, "widgetapp"); - ASSERT_CSTR_EQ(app->mainapp, "true"); - ASSERT_CSTR_EQ(app->recentimage, "false"); - ASSERT_CSTR_EQ(app->launchcondition, "false"); - ASSERT_CSTR_EQ(app->indicatordisplay, "false"); - ASSERT_CSTR_EQ(app->effectimage_type, "image"); - ASSERT_CSTR_EQ(app->guestmode_visibility, "true"); - ASSERT_CSTR_EQ(app->permission_type, "normal"); - ASSERT_CSTR_EQ(app->submode, "false"); - ASSERT_CSTR_EQ(app->process_pool, "false"); -} diff --git a/src/unit_tests/recovery_test.cc b/src/unit_tests/recovery_test.cc deleted file mode 100644 index a9dbbb8..0000000 --- a/src/unit_tests/recovery_test.cc +++ /dev/null @@ -1,468 +0,0 @@ -// Copyright (c) 2019 Samsung Electronics Co., Ltd All Rights Reserved -// Use of this source code is governed by an apache-2.0 license that can be -// found in the LICENSE file. - -#include -#include - -#include -#include - -#include - -#include -#include -#include - -#include "unit_tests/tpk_smoke_utils.h" - -namespace bf = boost::filesystem; -namespace bpo = boost::program_options; -namespace ci = common_installer; - -enum class ReqType : int { - UNKNOWN_REQ, - INSTALL_REQ, - UNINSTALL_REQ, - UPDATE_REQ, - DELTA_REQ, - MOUNT_INSTALL_REQ, - MOUNT_UPDATE_REQ, -}; - -enum class BackupType : int { - MOVE, - COPY_AND_REMOVE, -}; - -std::map install_req_filter = { - { ReqType::INSTALL_REQ, "SmokeTest.RecoveryMode_Tpk_Installation" }, - { ReqType::UNINSTALL_REQ, "SmokeTest.RecoveryMode_Tpk_Uninstallation" }, - { ReqType::UPDATE_REQ, "SmokeTest.RecoveryMode_Tpk_Update" }, - { ReqType::DELTA_REQ, "SmokeTest.RecoveryMode_ForDelta" }, - { ReqType::MOUNT_INSTALL_REQ, "SmokeTest.RecoveryMode_ForMountInstall" }, - { ReqType::MOUNT_UPDATE_REQ, "SmokeTest.RecoveryMode_ForMountUpdate" } -}; - -int delay = 1000000; -int interval = 500000; -int test_count = 0; - -namespace smoke_test { - -class SmokeEnvironment : public testing::Environment { - public: - explicit SmokeEnvironment(ci::RequestMode mode, bool no_backup, - BackupType backup_type) : - request_mode_(mode), no_backup_(no_backup), - backup_type_(backup_type) { - } - - void SetUp() override { - if (request_mode_ == ci::RequestMode::USER) { - ASSERT_TRUE(AddTestUser(&test_user)); - } - if (no_backup_) - return; - backups_ = SetupBackupDirectories(test_user.uid); - if (backup_type_ == BackupType::MOVE) { - for (auto& path : backups_) - ASSERT_TRUE(BackupPath(path)); - } else if (backup_type_ == BackupType::COPY_AND_REMOVE) { - for (auto& path : backups_) - ASSERT_TRUE(BackupPathCopyAndRemove(path)); - } - } - - void TearDown() override { - test_count++; - ASSERT_TRUE(request_mode_ == ci::RequestMode::GLOBAL || - (request_mode_ == ci::RequestMode::USER && - kGlobalUserUid != test_user.uid)); - - ci::PkgQueryInterface pkg_query("recoverypkg", test_user.uid, true); - if (pkg_query.IsPackageInstalled()) { - TpkSmokeTestHelperRunner backend; - SmokeTestHelperRunner::Result ret = - backend.UninstallWithSubprocess("recoverypkg", test_user.uid); - ASSERT_EQ(ret, SmokeTestHelperRunner::Result::SUCCESS); - } - - if (request_mode_ == ci::RequestMode::USER) { - ASSERT_TRUE(DeleteTestUser()); - } - if (no_backup_) - return; - if (backup_type_ == BackupType::MOVE) { - for (auto& path : backups_) - ASSERT_TRUE(RestorePath(path)); - } else if (backup_type_ == BackupType::COPY_AND_REMOVE) { - for (auto& path : backups_) - ASSERT_TRUE(RestorePathCopyAndRemove(path)); - } - } - - User test_user; - - private: - ci::RequestMode request_mode_; - std::vector backups_; - bool no_backup_; - BackupType backup_type_; -}; - -} // namespace smoke_test - -namespace { - -smoke_test::SmokeEnvironment *env = nullptr; - -void signalHandler(int signum) { - env->TearDown(); - exit(signum); -} - -} // namespace - -namespace smoke_test { - -class SmokeTest : public testing::Test { - public: - SmokeTest() : params{PackageType::TPK, false} { - params.test_user.uid = env->test_user.uid; - params.test_user.gid = env->test_user.gid; - } - - protected: - TpkSmokeTestHelperRunner backend; - TestParameters params; -}; - -TEST_F(SmokeTest, RecoveryMode_Tpk_Installation) { - RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); - - bf::path path = kSmokePackagesDirectory / "RecoveryPkg.tpk"; - int wait_time = delay + interval * test_count; - - SmokeTestHelperRunner::Result ret = backend.InstallWithSubprocessAndKill( - path, params.test_user.uid, wait_time); - if (ret == SmokeTestHelperRunner::Result::SUCCESS) { - std::cout << "install finished before process killed" << std::endl; - return; - } - ASSERT_EQ(ret, SmokeTestHelperRunner::Result::KILLED); - std::string pkgid = "recoverypkg"; - bf::path recovery_file = FindRecoveryFile("/tpk-recovery", - params.test_user.uid); - if (recovery_file.empty()) { - std::cout << "recovery file dosen't exist, " - "this test is skipped" << std::endl; - return; - } - ASSERT_EQ(backend.RecoveryWithSubprocess(recovery_file, params.test_user.uid), - SmokeTestHelperRunner::Result::SUCCESS); - ASSERT_TRUE(CheckPackageNonExistance(pkgid, params)); -} - -TEST_F(SmokeTest, RecoveryMode_Tpk_Uninstallation) { - RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); - bf::path path = kSmokePackagesDirectory / "RecoveryPkg.tpk"; - - SmokeTestHelperRunner::Result ret = backend.InstallWithSubprocess( - path, params.test_user.uid); - if (ret != SmokeTestHelperRunner::Result::SUCCESS) { - std::cout << "failed to install package before uninstall" << std::endl; - return; - } - - std::string pkgid = "recoverypkg"; - int wait_time = delay + interval * test_count; - ret = backend.UninstallWithSubprocessAndKill( - pkgid, params.test_user.uid, wait_time); - if (ret == SmokeTestHelperRunner::Result::SUCCESS) { - std::cout << "uninstall finished before process killed" << std::endl; - return; - } - ASSERT_EQ(ret, SmokeTestHelperRunner::Result::KILLED); - - bf::path recovery_file = FindRecoveryFile("/tpk-recovery", - params.test_user.uid); - if (recovery_file.empty()) { - std::cout << "recovery file dosen't exist, " - "this test is skipped" << std::endl; - return; - } - ASSERT_EQ(backend.RecoveryWithSubprocess(recovery_file, params.test_user.uid), - SmokeTestHelperRunner::Result::SUCCESS); - ASSERT_TRUE(CheckPackageNonExistance(pkgid, params)); -} - -TEST_F(SmokeTest, RecoveryMode_Tpk_Update) { - RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); - - bf::path path_old = kSmokePackagesDirectory / "RecoveryPkg.tpk"; - bf::path path_new = kSmokePackagesDirectory / "RecoveryPkg2.tpk"; - int wait_time = delay + interval * test_count; - - ASSERT_EQ(backend.InstallWithSubprocess(path_old, params.test_user.uid), - SmokeTestHelperRunner::Result::SUCCESS); - - SmokeTestHelperRunner::Result ret = backend.InstallWithSubprocessAndKill( - path_new, params.test_user.uid, wait_time); - if (ret == SmokeTestHelperRunner::Result::SUCCESS) { - std::cout << "update finished before process killed" << std::endl; - return; - } - ASSERT_EQ(ret, SmokeTestHelperRunner::Result::KILLED); - - std::string pkgid = "recoverypkg"; - std::string appid = "recoverypkg"; - std::string exec = "recoverypkg"; - bf::path recovery_file = FindRecoveryFile("/tpk-recovery", - params.test_user.uid); - if (recovery_file.empty()) { - std::cout << "recovery file dosen't exist, " - "this test is skipped" << std::endl; - return; - } - - std::unique_ptr recovery_info = - GetRecoverFileInfo(recovery_file); - ASSERT_EQ(backend.RecoveryWithSubprocess(recovery_file, params.test_user.uid), - SmokeTestHelperRunner::Result::SUCCESS); - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "res/VERSION", - recovery_info->cleanup() ? "2\n" : "1\n", params)); -} - -TEST_F(SmokeTest, RecoveryMode_ForDelta) { - RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); - - bf::path path_old = kSmokePackagesDirectory / "RecoveryPkg.tpk"; - bf::path path_new = kSmokePackagesDirectory / "RecoveryPkg.delta"; - int wait_time = delay + interval * test_count; - - ASSERT_EQ(backend.InstallWithSubprocess(path_old, params.test_user.uid), - SmokeTestHelperRunner::Result::SUCCESS); - - SmokeTestHelperRunner::Result ret = backend.InstallWithSubprocessAndKill( - path_new, params.test_user.uid, wait_time); - if (ret == SmokeTestHelperRunner::Result::SUCCESS) { - std::cout << "delta finished before process killed" << std::endl; - return; - } - ASSERT_EQ(ret, SmokeTestHelperRunner::Result::KILLED); - - std::string pkgid = "recoverypkg"; - std::string appid = "recoverypkg"; - std::string exec = "recoverypkg"; - bf::path recovery_file = FindRecoveryFile("/tpk-recovery", - params.test_user.uid); - bf::path root_path = ci::GetRootAppPath(params.is_readonly, - params.test_user.uid); - if (recovery_file.empty()) { - std::cout << "recovery file dosen't exist, " - "this test is skipped" << std::endl; - return; - } - - std::unique_ptr recovery_info = - GetRecoverFileInfo(recovery_file); - ASSERT_EQ(backend.RecoveryWithSubprocess(recovery_file, params.test_user.uid), - SmokeTestHelperRunner::Result::SUCCESS); - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "res/VERSION", - recovery_info->cleanup() ? "2\n" : "1\n", params)); - bool deleted_exist = bf::exists(root_path / pkgid / "res/DELETED"); - bool added_exist = bf::exists(root_path / pkgid / "res/ADDED"); - ASSERT_NE(deleted_exist, added_exist); - ASSERT_TRUE(recovery_info->cleanup() ? added_exist : deleted_exist); -} - -TEST_F(SmokeTest, RecoveryMode_ForMountInstall) { - RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); - - bf::path path = kSmokePackagesDirectory / "RecoveryPkg.tpk"; - int wait_time = delay + interval * test_count; - - SmokeTestHelperRunner::Result ret = backend.MountInstallWithSubprocessAndKill( - path, params.test_user.uid, wait_time); - if (ret == SmokeTestHelperRunner::Result::SUCCESS) { - std::cout << "mount install finished before process killed" << std::endl; - return; - } - - std::string pkgid = "recoverypkg"; - bf::path recovery_file = FindRecoveryFile("/tpk-recovery", - params.test_user.uid); - if (recovery_file.empty()) { - std::cout << "recovery file dosen't exist, " - "this test is skipped" << std::endl; - return; - } - ASSERT_EQ(backend.RecoveryWithSubprocess(recovery_file, params.test_user.uid), - SmokeTestHelperRunner::Result::SUCCESS); - - ASSERT_TRUE(CheckPackageNonExistance(pkgid, params)); -} - -TEST_F(SmokeTest, RecoveryMode_ForMountUpdate) { - RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); - - bf::path path_old = - kSmokePackagesDirectory / "RecoveryPkg.tpk"; - bf::path path_new = - kSmokePackagesDirectory / "RecoveryPkg2.tpk"; - int wait_time = delay + interval * test_count; - - ASSERT_EQ(backend.MountInstallWithSubprocess(path_old, params.test_user.uid), - SmokeTestHelperRunner::Result::SUCCESS); - - SmokeTestHelperRunner::Result ret = backend.MountInstallWithSubprocessAndKill( - path_new, params.test_user.uid, wait_time); - if (ret == SmokeTestHelperRunner::Result::SUCCESS) { - std::cout << "mount update finished before process killed" << std::endl; - return; - } - - std::string pkgid = "recoverypkg"; - std::string appid = "recoverypkg"; - std::string exec = "recoverypkg"; - bf::path recovery_file = FindRecoveryFile("/tpk-recovery", - params.test_user.uid); - if (recovery_file.empty()) { - std::cout << "recovery file dosen't exist, " - "this test is skipped" << std::endl; - return; - } - - // Filesystem may be mounted after crash - ScopedTzipInterface poweroff_unmount_interface(pkgid, params.test_user.uid); - poweroff_unmount_interface.Release(); - - ASSERT_EQ(backend.RecoveryWithSubprocess(recovery_file, params.test_user.uid), - SmokeTestHelperRunner::Result::SUCCESS); - - ScopedTzipInterface interface(pkgid, params.test_user.uid); - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - ASSERT_TRUE(ValidateFileContentInPackage(pkgid, - "res/VERSION", "1\n", params)); -} - -} // namespace smoke_test - -const int kBufSize = 1024; - -int main(int argc, char** argv) { - try { - bool no_backup = false; - int repeat_count = 10; - ReqType req_type = ReqType::UNKNOWN_REQ; - bool repeat = false; - BackupType backup_type = BackupType::MOVE; - ci::RequestMode request_mode = smoke_test::ParseRequestMode(argc, argv); - if (getuid() != 0 || request_mode != ci::RequestMode::GLOBAL) - std::cout << "Run recovery test with user request mode" << std::endl; - - bpo::options_description options("Allowed options"); - bpo::variables_map opt_map; - options.add_options() - ("help", "display this help message") - ("install", - "recovery test for forced termination " - "during package installing") - ("uninstall", - "recovery test for forced termination " - "during package uninstallation") - ("update", - "recovery test for forced termination " - "during package updating") - ("delta", - "recovery test for forced termination " - "during package delta installing") - ("mount-install", - "recovery test for forced termination " - "during package mount-installing") - ("mount-update", - "recovery test for forced termination " - "during package mount-updating") - ("delay", bpo::value(), "fixed delay for forced termination\n" - "unit : microsecond (ex. 1000000us = 1s)") - ("interval", bpo::value(), - "use with repeat option.\n" - "as it repeat the interval is added to delay\n" - "unit : microsecond (ex. 1000000us = 1s)") - ("repeat", bpo::value(), "option for performing tests repeatedly\n" - "enter -1 to test infinitely") - ("no-backup", "Do test without backup") - ("backup-type", bpo::value(), " set test's " - "backup type \'move\', \'copy and remove\'"); - bpo::store(bpo::command_line_parser(argc, argv). - options(options).allow_unregistered().run(), opt_map); - if (opt_map.count("help")) { - std::cerr << options << std::endl; - return -1; - } - - if (opt_map.count("install")) - req_type = ReqType::INSTALL_REQ; - if (opt_map.count("uninstall")) - req_type = ReqType::UNINSTALL_REQ; - else if (opt_map.count("update")) - req_type = ReqType::UPDATE_REQ; - else if (opt_map.count("delta")) - req_type = ReqType::DELTA_REQ; - else if (opt_map.count("mount-install")) - req_type = ReqType::MOUNT_INSTALL_REQ; - else if (opt_map.count("mount-update")) - req_type = ReqType::MOUNT_UPDATE_REQ; - - if (opt_map.count("delay")) - delay = opt_map["delay"].as(); - - if (opt_map.count("interval")) - interval = opt_map["interval"].as(); - - if (opt_map.count("repeat")) { - repeat = true; - repeat_count = opt_map["repeat"].as(); - } - - if (opt_map.count("no-backup")) - no_backup = true; - if (opt_map.count("backup-type")) { - if (opt_map["backup-type"].as() == "move") { - backup_type = BackupType::MOVE; - } else if (opt_map["backup-type"].as() == "copy") { - backup_type = BackupType::COPY_AND_REMOVE; - } else { - std::cerr << options << std::endl; - return -1; - } - } - bpo::notify(opt_map); - - if (req_type == ReqType::UNKNOWN_REQ) { - std::cerr << options << std::endl; - return 0; - } - - testing::GTEST_FLAG(filter) = install_req_filter[req_type]; - if (repeat) { - testing::GTEST_FLAG(repeat) = repeat_count; - testing::GTEST_FLAG(break_on_failure) = true; - } - - testing::InitGoogleTest(&argc, argv); - ::env = static_cast( - testing::AddGlobalTestEnvironment( - new smoke_test::SmokeEnvironment(request_mode, - no_backup, backup_type))); - signal(SIGINT, ::signalHandler); - signal(SIGSEGV, ::signalHandler); - return RUN_ALL_TESTS(); - } catch (...) { - std::cout << "Exception occurred during testing" << std::endl; - return 1; - } -} diff --git a/src/unit_tests/smoke_test.cc b/src/unit_tests/smoke_test.cc deleted file mode 100644 index 38a4838..0000000 --- a/src/unit_tests/smoke_test.cc +++ /dev/null @@ -1,955 +0,0 @@ -// Copyright (c) 2015 Samsung Electronics Co., Ltd All Rights Reserved -// Use of this source code is governed by an apache-2.0 license that can be -// found in the LICENSE file. - -#include -#include - -#include -#include -#include -#include - -#include -#include - -#include "unit_tests/tpk_smoke_utils.h" - -namespace st = smoke_test; -namespace bf = boost::filesystem; -namespace bs = boost::system; -namespace ci = common_installer; -namespace bpo = boost::program_options; - -enum class BackupType : int { - MOVE, - COPY_AND_REMOVE, -}; - -namespace smoke_test { - -class SmokeEnvironment : public testing::Environment { - public: - explicit SmokeEnvironment(ci::RequestMode mode, bool no_backup, - BackupType backup_type) : - request_mode_(mode), no_backup_(no_backup), - backup_type_(backup_type) { - } - void SetUp() override { - if (request_mode_ == ci::RequestMode::USER) { - ASSERT_TRUE(AddTestUser(&test_user)); - } - if (no_backup_) - return; - backups_ = SetupBackupDirectories(test_user.uid); - if (backup_type_ == BackupType::MOVE) { - for (auto& path : backups_) - ASSERT_TRUE(BackupPath(path)); - } else if (backup_type_ == BackupType::COPY_AND_REMOVE) { - for (auto& path : backups_) - ASSERT_TRUE(BackupPathCopyAndRemove(path)); - } - } - void TearDown() override { - ASSERT_TRUE(request_mode_ == ci::RequestMode::GLOBAL || - (request_mode_ == ci::RequestMode::USER && - kGlobalUserUid != test_user.uid)); - TpkBackendInterface backend(std::to_string(test_user.uid)); - UninstallAllSmokeApps(request_mode_, test_user.uid, &backend); - if (request_mode_ == ci::RequestMode::USER) { - ASSERT_TRUE(DeleteTestUser()); - } - if (no_backup_) - return; - if (backup_type_ == BackupType::MOVE) { - for (auto& path : backups_) - ASSERT_TRUE(RestorePath(path)); - } else if (backup_type_ == BackupType::COPY_AND_REMOVE) { - for (auto& path : backups_) - ASSERT_TRUE(RestorePathCopyAndRemove(path)); - } - } - User test_user; - - private: - ci::RequestMode request_mode_; - std::vector backups_; - bool no_backup_; - BackupType backup_type_; -}; - -} // namespace smoke_test - -namespace { - -smoke_test::SmokeEnvironment *env = nullptr; -void signalHandler(int signum) { - env->TearDown(); - exit(signum); -} - -} // namespace - -namespace smoke_test { - -class SmokeTest : public testing::Test { - public: - SmokeTest() : backend(std::to_string(env->test_user.uid)), - params{PackageType::TPK, false} { - params.test_user.uid = env->test_user.uid; - params.test_user.gid = env->test_user.gid; - } - protected: - TpkBackendInterface backend; - TestParameters params; -}; - -class RollbackSmokeTest : public testing::Test { - public: - RollbackSmokeTest() : backend(std::to_string(env->test_user.uid), - RequestResult::FAIL), params{PackageType::TPK, false} { - params.test_user.uid = env->test_user.uid; - params.test_user.gid = env->test_user.gid; - } - protected: - TpkBackendInterface backend; - TestParameters params; -}; - -class PreloadSmokeTest : public testing::Test { - public: - PreloadSmokeTest() : backend(std::to_string(env->test_user.uid)), - params{PackageType::TPK, true} { - params.test_user.uid = env->test_user.uid; - params.test_user.gid = env->test_user.gid; - } - protected: - TpkBackendInterface backend; - TestParameters params; -}; - -// TODO(b.kunikowski): New smoke app pkgid name convention. -// Change all smokeapp pkgids to smoketpk, because now there -// may be some smoke app pkgid identical as in tpk smoke tests, and this may -// cause bad results of some smoke tests. - -TEST_F(SmokeTest, DeltaMode_Tpk) { - bf::path path = kSmokePackagesDirectory / "DeltaMode_Tpk.tpk"; - bf::path delta_package = kSmokePackagesDirectory / "DeltaMode_Tpk.delta"; - std::string pkgid = "smokeapp18"; - std::string appid = "smokeapp18.DeltaModeTpk"; - std::string exec = "native"; - ASSERT_EQ(backend.InstallSuccess(path), ci::AppInstaller::Result::OK); - ASSERT_EQ(backend.Install(delta_package), ci::AppInstaller::Result::OK); - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - - // Check delta modifications - bf::path root_path = ci::GetRootAppPath(params.is_readonly, - params.test_user.uid); - ASSERT_FALSE(bf::exists(root_path / pkgid / "DELETED")); - ASSERT_TRUE(bf::exists(root_path / pkgid / "ADDED")); - ASSERT_TRUE(bf::exists(root_path / pkgid / "bin" / "native")); - ASSERT_TRUE(bf::exists(root_path / pkgid / "shared" / "res" / "native.png")); - ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "MODIFIED", "version 2\n", - params)); -} - -TEST_F(RollbackSmokeTest, DeltaMode) { - bf::path path = kSmokePackagesDirectory / "DeltaMode_Tpk_Rollback.tpk"; - bf::path delta_package = kSmokePackagesDirectory / - "DeltaMode_Tpk_Rollback.delta"; - std::string pkgid = "smoketpk28"; - std::string appid = "smoketpk28.DeltaModeTpk_Rollback"; - std::string exec = "basicdali"; - ASSERT_EQ(backend.InstallSuccess(path), ci::AppInstaller::Result::OK); - ASSERT_EQ(backend.Install(delta_package), ci::AppInstaller::Result::ERROR); - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - - // Check delta modifications - bf::path root_path = ci::GetRootAppPath(params.is_readonly, - params.test_user.uid); - ASSERT_TRUE(bf::exists(root_path / pkgid / "res" / "DELETED")); - ASSERT_FALSE(bf::exists(root_path / pkgid / "res" / "ADDED")); - ASSERT_TRUE(bf::exists(root_path / pkgid / "bin" / "basicdali")); - ASSERT_TRUE(bf::exists(root_path / pkgid / "shared" / "res" / - "basicdali.png")); - ASSERT_TRUE(ValidateFileContentInPackage(pkgid, - "res/MODIFIED", - "version 1\n", - params)); -} - -TEST_F(SmokeTest, ReinstallMode_Tpk) { - bf::path path = kSmokePackagesDirectory / "ReinstallMode_Tpk.tpk"; - bf::path rds_directory = kSmokePackagesDirectory / "delta_dir"; - std::string pkgid = "smokeapp25"; - std::string appid = "smokeapp25.ReinstallModeTpk"; - std::string exec = "native"; - bf::path sdk_expected_directory = kSdkDirectory / "tmp" / pkgid; - ASSERT_TRUE(ci::CopyDir(rds_directory, sdk_expected_directory)); - ASSERT_EQ(backend.RDSUpdate(path, pkgid), ci::AppInstaller::Result::OK); - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - - // Check rds modifications - bf::path root_path = ci::GetRootAppPath(false, - params.test_user.uid); - ASSERT_FALSE(bf::exists(root_path / pkgid / "DELETED")); - ASSERT_TRUE(bf::exists(root_path / pkgid / "ADDED")); - ASSERT_TRUE(bf::exists(root_path / pkgid / "bin" / "native")); - ASSERT_TRUE(bf::exists(root_path / pkgid / "shared" / "res" / "native.png")); - ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "MODIFIED", "version 2\n", - params)); -} - -TEST_F(SmokeTest, InstallationMode_Tpk) { - bf::path path = kSmokePackagesDirectory / "InstallationMode_Tpk.tpk"; - std::string pkgid = "smokeapp12"; - std::string appid = "smokeapp12.InstallationModeTpk"; - std::string exec = "native"; - ASSERT_EQ(backend.Install(path), ci::AppInstaller::Result::OK); - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); -} - -TEST_F(SmokeTest, UpdateMode_Tpk) { - bf::path path_old = kSmokePackagesDirectory / "UpdateMode_Tpk.tpk"; - bf::path path_new = kSmokePackagesDirectory / "UpdateMode_Tpk_2.tpk"; - std::string pkgid = "smokeapp13"; - std::string appid = "smokeapp13.UpdateModeTpk"; - std::string exec = "native"; - ASSERT_EQ(backend.InstallSuccess(path_old), ci::AppInstaller::Result::OK); - ASSERT_EQ(backend.Install(path_new), ci::AppInstaller::Result::OK); - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - - ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "VERSION", "2\n", params)); -} - -TEST_F(SmokeTest, DeinstallationMode_Tpk) { - bf::path path = kSmokePackagesDirectory / "DeinstallationMode_Tpk.tpk"; - std::string pkgid = "smokeapp14"; - ASSERT_EQ(backend.Install(path), ci::AppInstaller::Result::OK); - ASSERT_EQ(backend.Uninstall(pkgid), ci::AppInstaller::Result::OK); - ASSERT_TRUE(CheckPackageNonExistance(pkgid, params)); -} - -TEST_F(SmokeTest, EnablePkg) { - bf::path path = kSmokePackagesDirectory / "EnablePkg.tpk"; - std::string pkgid = "smokeapp22"; - ASSERT_EQ(backend.Install(path), ci::AppInstaller::Result::OK); - ASSERT_EQ(backend.DisablePackage(pkgid), ci::AppInstaller::Result::OK); - ASSERT_EQ(backend.EnablePackage(pkgid), ci::AppInstaller::Result::OK); - ci::PkgQueryInterface pkg_query(pkgid, params.test_user.uid); - ASSERT_TRUE(pkg_query.IsPackageInstalled( - ci::GetRequestMode(params.test_user.uid))); -} - -TEST_F(SmokeTest, DisablePkg) { - bf::path path = kSmokePackagesDirectory / "DisablePkg.tpk"; - std::string pkgid = "smokeapp23"; - std::string appid = "smokeapp23.DisablePkg"; - std::string exec = "=disablepkg"; - ASSERT_EQ(backend.Install(path), ci::AppInstaller::Result::OK); - ASSERT_EQ(backend.DisablePackage(pkgid), ci::AppInstaller::Result::OK); - ASSERT_TRUE(ci::QueryIsDisabledPackage(pkgid, params.test_user.uid)); - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); -} - -TEST_F(SmokeTest, RecoveryMode_Tpk_Installation) { - bf::path path = kSmokePackagesDirectory / "RecoveryMode_Tpk_Installation.tpk"; - RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); - ci::Subprocess backend_crash("/usr/bin/tpk-installer-ut/smoke-test-helper"); - std::string test_uid_str = std::to_string(params.test_user.uid); - backend_crash.Run("-i", path.string(), "-u", test_uid_str.c_str()); - ASSERT_NE(backend_crash.Wait(), 0); - - std::string pkgid = "smokeapp15"; - bf::path recovery_file = FindRecoveryFile("/tpk-recovery", - params.test_user.uid); - ASSERT_FALSE(recovery_file.empty()); - std::unique_ptr recovery_info = - GetRecoverFileInfo(recovery_file); - ASSERT_EQ(backend.Recover(recovery_file), ci::AppInstaller::Result::OK); - ASSERT_TRUE(CheckPackageNonExistance(pkgid, params)); - ASSERT_FALSE(bf::exists(recovery_info->unpacked_dir())); -} - -TEST_F(SmokeTest, RecoveryMode_Tpk_Update) { - bf::path path_old = kSmokePackagesDirectory / "RecoveryMode_Tpk_Update.tpk"; - bf::path path_new = kSmokePackagesDirectory / "RecoveryMode_Tpk_Update_2.tpk"; - RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); - ASSERT_EQ(backend.Install(path_old), ci::AppInstaller::Result::OK); - - std::string pkgid = "smokeapp16"; - std::string appid = "smokeapp16.RecoveryModeTpkUpdate"; - std::string exec = "native"; - ci::PkgQueryInterface pkg_query(pkgid, params.test_user.uid); - std::string version_old = pkg_query.Version(); - - ci::Subprocess backend_crash("/usr/bin/tpk-installer-ut/smoke-test-helper"); - std::string test_uid_str = std::to_string(params.test_user.uid); - backend_crash.Run("-i", path_new.string(), "-u", test_uid_str.c_str()); - ASSERT_NE(backend_crash.Wait(), 0); - - bf::path recovery_file = FindRecoveryFile("/tpk-recovery", - params.test_user.uid); - ASSERT_FALSE(recovery_file.empty()); - std::unique_ptr recovery_info = - GetRecoverFileInfo(recovery_file); - ASSERT_EQ(backend.Recover(recovery_file), ci::AppInstaller::Result::OK); - - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "res/VERSION", "1", params)); - ASSERT_FALSE(bf::exists(recovery_info->unpacked_dir())); - ci::PkgQueryInterface pkg_query2(pkgid, params.test_user.uid, true); - std::string version_recovered = pkg_query2.Version(); - ASSERT_TRUE(version_old == version_recovered); -} - -TEST_F(SmokeTest, MountInstallationMode_Tpk) { - bf::path path = kSmokePackagesDirectory / "MountInstallationMode_Tpk.tpk"; - std::string pkgid = "smokeapp26"; - std::string appid = "smokeapp26.MountInstallationModeTpk"; - std::string exec = "native"; - ASSERT_EQ(backend.MountInstall(path), ci::AppInstaller::Result::OK); - ScopedTzipInterface package_mount(pkgid, params.test_user.uid); - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); -} - -TEST_F(SmokeTest, MountUpdateMode_Tpk) { - bf::path path_old = kSmokePackagesDirectory / "MountUpdateMode_Tpk.tpk"; - bf::path path_new = kSmokePackagesDirectory / "MountUpdateMode_Tpk_2.tpk"; - std::string pkgid = "smokeapp27"; - std::string appid = "smokeapp27.MountUpdateModeTpk"; - std::string exec = "native"; - ASSERT_EQ(backend.MountInstallSuccess(path_old), - ci::AppInstaller::Result::OK); - ASSERT_EQ(backend.MountInstall(path_new), ci::AppInstaller::Result::OK); - ScopedTzipInterface package_mount(pkgid, params.test_user.uid); - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - - ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "res/VERSION", "2\n", - params)); -} - -TEST_F(SmokeTest, MigrateLegacyExternalImage_Tpk) { - ASSERT_TRUE(CheckAvailableExternalPath()); - bf::path path = kSmokePackagesDirectory / "InstallExternal_Tpk_2.tpk"; - std::string pkgid = "smokeapp28"; - std::string appid = "smokeapp28.InstallExternalTpk"; - std::string exec = "smokeapp28"; - bf::path legacy_path = kSmokePackagesDirectory / kLegacyExtImageDir; - std::string test_uid_str = std::to_string(params.test_user.uid); - if (test_uid_str == kDefaultUserIdStr || - params.test_user.uid == kGlobalUserUid) { - ASSERT_EQ(backend.MigrateLegacyExternalImage(pkgid, path, legacy_path), - ci::AppInstaller::Result::OK); - ValidateExternalPackage(pkgid, {appid, exec}, params); - } else { - ASSERT_EQ(backend.MigrateLegacyExternalImage(pkgid, path, legacy_path), - ci::AppInstaller::Result::ERROR); - } -} - -TEST_F(SmokeTest, InstallExternal_Tpk) { - ASSERT_TRUE(CheckAvailableExternalPath()); - bf::path path = kSmokePackagesDirectory / "InstallExternal_Tpk.tpk"; - std::string pkgid = "smokeapp29"; - std::string appid = "smokeapp29.InstallExternalTpk"; - std::string exec = "smokeapp29"; - ASSERT_EQ(backend.InstallWithStorage(path, StorageType::EXTERNAL), - ci::AppInstaller::Result::OK); - ASSERT_TRUE(ValidateExternalPackage(pkgid, {appid, exec}, params)); -} - -#define TEP_TEST_STARTING_BLOCK(NUMBER) \ - bf::path path = kSmokePackagesDirectory / "TEP_Tpk"; \ - path += #NUMBER; \ - path += ".tpk"; \ - bf::path tep1 = kSmokePackagesDirectory / "tep1.tep"; \ - bf::path tep2 = kSmokePackagesDirectory / "tep2.tep"; \ - std::string number = std::to_string(50 + NUMBER - 1); \ - std::string pkgid = std::string("smokeapp") + number; \ - std::string appid = pkgid + ".TEP"; \ - std::string exec = "native"; \ - -TEST_F(SmokeTest, TEP_Tpk_TepInstall) { - TEP_TEST_STARTING_BLOCK(1) - ASSERT_EQ(backend.InstallWithTEP(path, tep1), ci::AppInstaller::Result::OK); - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "tep/tep1.tep", "tep1\n", - params)); -} - -TEST_F(SmokeTest, TEP_Tpk_TepInstallTepUpdate) { - TEP_TEST_STARTING_BLOCK(2) - ASSERT_EQ(backend.InstallWithTEP(path, tep1), ci::AppInstaller::Result::OK); - ASSERT_EQ(backend.InstallWithTEP(path, tep2), ci::AppInstaller::Result::OK); - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "tep/tep2.tep", "tep2\n", - params)); -} - -TEST_F(SmokeTest, TEP_Tpk_NoTepInstallTepUpdate) { - TEP_TEST_STARTING_BLOCK(3) - ASSERT_EQ(backend.Install(path), ci::AppInstaller::Result::OK); - ASSERT_EQ(backend.InstallWithTEP(path, tep2), ci::AppInstaller::Result::OK); - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "tep/tep2.tep", "tep2\n", - params)); -} - -TEST_F(SmokeTest, TEP_Tpk_TepInstallNoTepUpdate) { - TEP_TEST_STARTING_BLOCK(4) - ASSERT_EQ(backend.InstallWithTEP(path, tep1), ci::AppInstaller::Result::OK); - ASSERT_EQ(backend.Install(path), ci::AppInstaller::Result::OK); - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "tep/tep1.tep", "tep1\n", - params)); -} - -TEST_F(RollbackSmokeTest, TEP_Tpk_TepInstallTepUpdateRollback) { - TEP_TEST_STARTING_BLOCK(5) - ASSERT_EQ(backend.InstallSuccessWithTEP(path, tep1), - ci::AppInstaller::Result::OK); - ASSERT_EQ(backend.InstallWithTEP(path, tep2), - ci::AppInstaller::Result::ERROR); - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "tep/tep1.tep", "tep1\n", - params)); -} - -TEST_F(RollbackSmokeTest, TEP_Tpk_NoTepInstallTepUpdateRollback) { - TEP_TEST_STARTING_BLOCK(6) - ASSERT_EQ(backend.InstallSuccess(path), ci::AppInstaller::Result::OK); - ASSERT_EQ(backend.InstallWithTEP(path, tep2), - ci::AppInstaller::Result::ERROR); - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - bf::path root_path = ci::GetRootAppPath(params.is_readonly, - params.test_user.uid); - bf::path tep_file = root_path / pkgid / "tep" / "tep2.tep"; - ASSERT_FALSE(bf::exists(tep_file)); -} - -TEST_F(RollbackSmokeTest, TEP_Tpk_TepInstallNoTepUpdateRollback) { - TEP_TEST_STARTING_BLOCK(7) - ASSERT_EQ(backend.InstallSuccessWithTEP(path, tep1), - ci::AppInstaller::Result::OK); - ASSERT_EQ(backend.Install(path), ci::AppInstaller::Result::ERROR); - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "tep/tep1.tep", "tep1\n", - params)); -} - -TEST_F(SmokeTest, TEP_Tpk_Mount_TepInstall) { - TEP_TEST_STARTING_BLOCK(8) - ASSERT_EQ(backend.MountInstallWithTEP(path, tep1), - ci::AppInstaller::Result::OK); - ScopedTzipInterface package_mount(pkgid, params.test_user.uid); - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "tep/tep1.tep", "tep1\n", - params)); -} - -TEST_F(SmokeTest, TEP_Tpk_Mount_TepInstallTepUpdate) { - TEP_TEST_STARTING_BLOCK(9) - ASSERT_EQ(backend.MountInstallWithTEP(path, tep1), - ci::AppInstaller::Result::OK); - ASSERT_EQ(backend.MountInstallWithTEP(path, tep2), - ci::AppInstaller::Result::OK); - ScopedTzipInterface package_mount(pkgid, params.test_user.uid); - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "tep/tep2.tep", "tep2\n", - params)); -} - -TEST_F(SmokeTest, TEP_Tpk_Mount_NoTepInstallTepUpdate) { - TEP_TEST_STARTING_BLOCK(10) - ASSERT_EQ(backend.MountInstall(path), ci::AppInstaller::Result::OK); - ASSERT_EQ(backend.MountInstallWithTEP(path, tep2), - ci::AppInstaller::Result::OK); - ScopedTzipInterface package_mount(pkgid, params.test_user.uid); - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "tep/tep2.tep", "tep2\n", - params)); -} - -TEST_F(SmokeTest, TEP_Tpk_Mount_TepInstallNoTepUpdate) { - TEP_TEST_STARTING_BLOCK(11) - ASSERT_EQ(backend.MountInstallWithTEP(path, tep1), - ci::AppInstaller::Result::OK); - ASSERT_EQ(backend.MountInstall(path), ci::AppInstaller::Result::OK); - ScopedTzipInterface package_mount(pkgid, params.test_user.uid); - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "tep/tep1.tep", "tep1\n", - params)); -} - -TEST_F(RollbackSmokeTest, TEP_Tpk_Mount_TepInstallTepUpdateRollback) { - TEP_TEST_STARTING_BLOCK(12) - ASSERT_EQ(backend.MountInstallSuccessWithTEP(path, tep1), - ci::AppInstaller::Result::OK); - ASSERT_EQ(backend.MountInstallWithTEP(path, tep2), - ci::AppInstaller::Result::ERROR); - ScopedTzipInterface package_mount(pkgid, params.test_user.uid); - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "tep/tep1.tep", "tep1\n", - params)); -} - -TEST_F(RollbackSmokeTest, TEP_Tpk_Mount_NoTepInstallTepUpdateRollback) { - TEP_TEST_STARTING_BLOCK(13) - ASSERT_EQ(backend.MountInstallSuccess(path), ci::AppInstaller::Result::OK); - ASSERT_EQ(backend.MountInstallWithTEP(path, tep2), - ci::AppInstaller::Result::ERROR); - ScopedTzipInterface package_mount(pkgid, params.test_user.uid); - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - bf::path root_path = ci::GetRootAppPath(params.is_readonly, - params.test_user.uid); - bf::path tep_file = root_path / pkgid / "tep" / "tep2.tep"; - ASSERT_FALSE(bf::exists(tep_file)); -} - -TEST_F(RollbackSmokeTest, TEP_Tpk_Mount_TepInstallNoTepUpdateRollback) { - TEP_TEST_STARTING_BLOCK(14) - ASSERT_EQ(backend.MountInstallSuccessWithTEP(path, tep1), - ci::AppInstaller::Result::OK); - ASSERT_EQ(backend.MountInstall(path), ci::AppInstaller::Result::ERROR); - ScopedTzipInterface package_mount(pkgid, params.test_user.uid); - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "tep/tep1.tep", "tep1\n", - params)); -} - -TEST_F(PreloadSmokeTest, InstallationMode_Preload) { - ASSERT_EQ(getuid(), 0) << "Test cannot be run by normal user"; - bf::path path = kSmokePackagesDirectory / "InstallationMode_Preload.tpk"; - std::string pkgid = "smoketpk29"; - std::string appid = "smoketpk29.InstallationModePreload"; - std::string exec = "native"; - ASSERT_EQ(backend.InstallPreload(path), ci::AppInstaller::Result::OK); - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); -} - -TEST_F(PreloadSmokeTest, UpdateMode_Preload) { - ASSERT_EQ(getuid(), 0) << "Test cannot be run by normal user"; - bf::path path_old = kSmokePackagesDirectory / "UpdateMode_Preload.tpk"; - bf::path path_new = kSmokePackagesDirectory / "UpdateMode_Preload2.tpk"; - std::string pkgid = "smoketpk30"; - std::string appid = "smoketpk30.UpdateModePreload"; - std::string exec = "native"; - ASSERT_EQ(backend.InstallPreload(path_old), ci::AppInstaller::Result::OK); - ASSERT_EQ(backend.InstallPreload(path_new), ci::AppInstaller::Result::OK); - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - - ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "res/VERSION", "2", params)); -} - -TEST_F(PreloadSmokeTest, DeinstallationMode_Preload) { - ASSERT_EQ(getuid(), 0) << "Test cannot be run by normal user"; - bf::path path = kSmokePackagesDirectory / "DeinstallationMode_Preload.tpk"; - std::string pkgid = "smoketpk31"; - ASSERT_EQ(backend.InstallPreload(path), ci::AppInstaller::Result::OK); - ASSERT_EQ(backend.UninstallPreload(pkgid), ci::AppInstaller::Result::OK); - CheckPackageNonExistance(pkgid, params); -} - -TEST_F(SmokeTest, InstallationMode_GoodSignature) { - bf::path path = - kSmokePackagesDirectory / "InstallationMode_GoodSignature.tpk"; - ASSERT_EQ(ci::AppInstaller::Result::OK, backend.Install(path)); -} - -TEST_F(SmokeTest, InstallationMode_WrongSignature) { - bf::path path = - kSmokePackagesDirectory / "InstallationMode_WrongSignature.tpk"; - ASSERT_EQ(ci::AppInstaller::Result::ERROR, backend.Install(path)); -} - -TEST_F(RollbackSmokeTest, InstallationMode_Rollback) { - bf::path path = kSmokePackagesDirectory / "InstallationMode_Rollback.tpk"; - std::string pkgid = "smoketpk34"; - ASSERT_EQ(ci::AppInstaller::Result::ERROR, backend.Install(path)); - ASSERT_TRUE(CheckPackageNonExistance(pkgid, params)); -} - -TEST_F(SmokeTest, RecoveryMode_ForDelta) { - bf::path path_old = kSmokePackagesDirectory / "RecoveryMode_ForDelta.tpk"; - bf::path path_new = kSmokePackagesDirectory / "RecoveryMode_ForDelta.delta"; - RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); - ASSERT_EQ(ci::AppInstaller::Result::OK, backend.Install(path_old)); - ci::Subprocess backend_crash("/usr/bin/tpk-installer-ut/smoke-test-helper"); - std::string test_uid_str = std::to_string(params.test_user.uid); - backend_crash.Run("-i", path_new.string(), "-u", test_uid_str.c_str()); - ASSERT_NE(backend_crash.Wait(), 0); - - std::string pkgid = "smoketpk35"; - std::string appid = "smoketpk35.RecoveryMode_ForDelta"; - std::string exec = "smoketpk35"; - bf::path recovery_file = FindRecoveryFile("/tpk-recovery", - params.test_user.uid); - ASSERT_FALSE(recovery_file.empty()); - std::unique_ptr recovery_info = - GetRecoverFileInfo(recovery_file); - ASSERT_EQ(ci::AppInstaller::Result::OK, backend.Recover(recovery_file)); - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - - ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "res/MODIFIED", "version 1", - params)); - bf::path root_path = ci::GetRootAppPath(params.is_readonly, - params.test_user.uid); - ASSERT_TRUE(bf::exists(root_path / pkgid / "res/DELETED")); - ASSERT_FALSE(bf::exists(root_path / pkgid / "res/ADDED")); - ASSERT_FALSE(bf::exists(recovery_info->unpacked_dir())); -} - -TEST_F(RollbackSmokeTest, UpdateMode) { - bf::path old_path = kSmokePackagesDirectory / "UpdateMode_Rollback.tpk"; - bf::path new_path = kSmokePackagesDirectory / "UpdateMode_Rollback2.tpk"; - std::string pkgid = "smoketpk36"; - std::string appid = "smoketpk36.UpdateMode_Rollback"; - std::string exec = "smoketpk36"; - ASSERT_EQ(ci::AppInstaller::Result::OK, backend.InstallSuccess(old_path)); - ci::PkgQueryInterface pkg_query(pkgid, params.test_user.uid); - std::string version_old = pkg_query.Version(); - ASSERT_EQ(ci::AppInstaller::Result::ERROR, backend.Install(new_path)); - - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "res/VERSION", "1", - params)); - ci::PkgQueryInterface pkg_query2(pkgid, params.test_user.uid, true); - std::string version_rollbacked = pkg_query2.Version(); - ASSERT_TRUE(version_old == version_rollbacked); -} - -TEST_F(SmokeTest, RecoveryMode_ForMountInstall) { - bf::path path = kSmokePackagesDirectory / "RecoveryMode_ForMountInstall.tpk"; - RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); - ci::Subprocess backend_crash("/usr/bin/tpk-installer-ut/smoke-test-helper"); - std::string test_uid_str = std::to_string(params.test_user.uid); - backend_crash.Run("-w", path.string(), "-u", test_uid_str.c_str()); - ASSERT_NE(0, backend_crash.Wait()); - - std::string pkgid = "smoketpk37"; - bf::path recovery_file = FindRecoveryFile("/tpk-recovery", - params.test_user.uid); - ASSERT_FALSE(recovery_file.empty()); - std::unique_ptr recovery_info = - GetRecoverFileInfo(recovery_file); - ASSERT_EQ(ci::AppInstaller::Result::OK, backend.Recover(recovery_file)); - ASSERT_TRUE(CheckPackageNonExistance(pkgid, params)); - ASSERT_FALSE(bf::exists(recovery_info->unpacked_dir())); -} - -TEST_F(SmokeTest, RecoveryMode_ForMountUpdate) { - bf::path path_old = - kSmokePackagesDirectory / "RecoveryMode_ForMountUpdate.tpk"; - bf::path path_new = - kSmokePackagesDirectory / "RecoveryMode_ForMountUpdate2.tpk"; - RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); - ASSERT_EQ(ci::AppInstaller::Result::OK, backend.MountInstall(path_old)); - - std::string pkgid = "smoketpk38"; - std::string appid = "smoketpk38.RecoveryMode_ForMountUpdate"; - std::string exec = "smoketpk38"; - ci::PkgQueryInterface pkg_query(pkgid, params.test_user.uid); - std::string version_old = pkg_query.Version(); - - ci::Subprocess backend_crash("/usr/bin/tpk-installer-ut/smoke-test-helper"); - std::string test_uid_str = std::to_string(params.test_user.uid); - backend_crash.Run("-w", path_new.string(), "-u", test_uid_str.c_str()); - ASSERT_NE(0, backend_crash.Wait()); - - // Filesystem may be mounted after crash - ScopedTzipInterface poweroff_unmount_interface(pkgid, params.test_user.uid); - poweroff_unmount_interface.Release(); - - bf::path recovery_file = FindRecoveryFile("/tpk-recovery", - params.test_user.uid); - ASSERT_FALSE(recovery_file.empty()); - std::unique_ptr recovery_info = - GetRecoverFileInfo(recovery_file); - ASSERT_EQ(ci::AppInstaller::Result::OK, backend.Recover(recovery_file)); - ScopedTzipInterface interface(pkgid, params.test_user.uid); - - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "res/VERSION", "1", params)); - ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "shared/res/VERSION", "1", - params)); - ASSERT_FALSE(bf::exists(recovery_info->unpacked_dir())); - ci::PkgQueryInterface pkg_query2(pkgid, params.test_user.uid, true); - std::string version_recovered = pkg_query2.Version(); - ASSERT_TRUE(version_old == version_recovered); -} - -TEST_F(RollbackSmokeTest, MountInstallationMode) { - bf::path path = - kSmokePackagesDirectory / "MountInstallationMode_Rollback.tpk"; - std::string pkgid = "smoketpk39"; - ASSERT_EQ(ci::AppInstaller::Result::ERROR, backend.MountInstall(path)); - ScopedTzipInterface package_mount(pkgid, params.test_user.uid); - ASSERT_TRUE(CheckPackageNonExistance(pkgid, params)); -} - -TEST_F(RollbackSmokeTest, MountUpdateMode) { - bf::path old_path = kSmokePackagesDirectory / "MountUpdateMode_Rollback.tpk"; - bf::path new_path = kSmokePackagesDirectory / "MountUpdateMode_Rollback2.tpk"; - std::string pkgid = "smoketpk40"; - std::string appid = "smoketpk40.MountUpdateMode_Rollback"; - std::string exec = "smoketpk40"; - ASSERT_EQ(ci::AppInstaller::Result::OK, - backend.MountInstallSuccess(old_path)); - ci::PkgQueryInterface pkg_query(pkgid, params.test_user.uid); - std::string version_old = pkg_query.Version(); - ASSERT_EQ(ci::AppInstaller::Result::ERROR, backend.MountInstall(new_path)); - ScopedTzipInterface package_mount(pkgid, params.test_user.uid); - - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "res/VERSION", "1", params)); - ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "shared/res/VERSION", "1", - params)); - ci::PkgQueryInterface pkg_query2(pkgid, params.test_user.uid, true); - std::string version_rollbacked = pkg_query2.Version(); - ASSERT_TRUE(version_old == version_rollbacked); -} - -TEST_F(SmokeTest, ManifestDirectInstallMode) { - ASSERT_EQ(getuid(), 0) << "Test cannot be run by normal user"; - bf::path src_path = kSmokePackagesDirectory / "ManifestDirectInstallMode"; - std::string pkgid = "smoketpk41"; - std::string appid = "smoketpk41.ManifestDirectInstallMode"; - std::string exec = "basicui"; - bf::path pkg_path = ci::GetRootAppPath(params.is_readonly, - params.test_user.uid); - - ci::CopyDir(src_path / pkgid, pkg_path / pkgid); - ci::PkgQueryInterface pkg_query(pkgid, params.test_user.uid); - ASSERT_FALSE(pkg_query.IsPackageInstalled( - ci::GetRequestMode(params.test_user.uid))); - ASSERT_EQ(backend.ManifestDirectInstall(pkgid), ci::AppInstaller::Result::OK); - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); -} - -TEST_F(SmokeTest, ManifestDirectUpdateMode) { - bf::path path = kSmokePackagesDirectory / "ManifestDirectUpdateMode.tpk"; - std::string pkgid = "smoketpk42"; - std::string appid = "smoketpk42.ManifestDirectUpdateMode"; - std::string exec = "basicui"; - - ASSERT_EQ(backend.Install(path), ci::AppInstaller::Result::OK); - int install_time = GetAppInstalledTime(appid.c_str(), params.test_user.uid); - ASSERT_EQ(backend.ManifestDirectInstall(pkgid), ci::AppInstaller::Result::OK); - ASSERT_TRUE(GetAppInstalledTime(appid.c_str(), - params.test_user.uid) > install_time) - << "Package is not updated (app installed time didn't change)."; - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); -} - -TEST_F(PreloadSmokeTest, ReadonlyUpdateInstallMode) { - ASSERT_EQ(getuid(), 0) << "Test cannot be run by normal user"; - bf::path path = kSmokePackagesDirectory / "ReadonlyUpdateInstallMode.tpk"; - std::string pkgid = "smoketpk43"; - std::string appid = "smoketpk43.ReadonlyUpdateInstallMode"; - std::string exec = "basicui"; - - ASSERT_EQ(backend.InstallPreload(path), ci::AppInstaller::Result::OK); - ASSERT_EQ(backend.Install(path), ci::AppInstaller::Result::OK); - ValidatePackage(pkgid, {appid, exec}, params); - TestParameters nonreadonly_params(params); - nonreadonly_params.is_readonly = false; - ValidatePackage(pkgid, {appid, exec}, nonreadonly_params); -} - -TEST_F(PreloadSmokeTest, ReadonlyUpdateUninstallMode) { - ASSERT_EQ(getuid(), 0) << "Test cannot be run by normal user"; - bf::path path = kSmokePackagesDirectory / "ReadonlyUpdateUninstallMode.tpk"; - std::string pkgid = "smoketpk44"; - std::string appid = "smoketpk44.ReadonlyUpdateUninstallMode"; - std::string exec = "basicui"; - - ASSERT_EQ(backend.InstallPreload(path), ci::AppInstaller::Result::OK); - ci::PkgQueryInterface pkg_query1(pkgid, params.test_user.uid); - PackageAttributes original(pkg_query1); - ASSERT_EQ(backend.Install(path), ci::AppInstaller::Result::OK); - ValidatePackage(pkgid, {appid, exec}, params); - TestParameters nonreadonly_params(params); - nonreadonly_params.is_readonly = false; - ValidatePackage(pkgid, {appid, exec}, nonreadonly_params); - ASSERT_EQ(backend.Uninstall(pkgid), ci::AppInstaller::Result::OK); - ci::PkgQueryInterface pkg_query2(pkgid, params.test_user.uid, true); - PackageAttributes restored(pkg_query2); - ASSERT_EQ(original, restored); - ValidatePackage(pkgid, {appid, exec}, params); -} - -TEST_F(SmokeTest, InstallExtended_Tpk) { - ASSERT_TRUE(CheckAvailableExtendedPath()); - bf::path path = kSmokePackagesDirectory / "InstallExtended_Tpk.tpk"; - std::string pkgid = "smoketpk45"; - std::string appid = "smoketpk45.InstallExtendedTpk"; - std::string exec = "smoketpk45.InstallExtendedTpk"; - ASSERT_EQ(backend.InstallWithStorage(path, StorageType::EXTENDED), - ci::AppInstaller::Result::OK); - ASSERT_TRUE(ValidateExtendedPackage(pkgid, {appid, exec}, params)); -} - -TEST_F(SmokeTest, RecoveryMode_CrashAfterUnzip) { - bf::path path = kSmokePackagesDirectory / "RecoveryMode_CrashAfterUnzip.tpk"; - RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); - ci::Subprocess backend_crash("/usr/bin/tpk-installer-ut/smoke-test-helper"); - std::string test_uid_str = std::to_string(params.test_user.uid); - backend_crash.Run("-i", path.string(), "-u", test_uid_str.c_str(), - "-step_name", "Unzip"); - ASSERT_NE(backend_crash.Wait(), 0); - - std::string pkgid = "smokeapp47"; - bf::path recovery_file = FindRecoveryFile("/tpk-recovery", - params.test_user.uid); - ASSERT_FALSE(recovery_file.empty()); - std::unique_ptr recovery_info = - GetRecoverFileInfo(recovery_file); - ASSERT_TRUE(recovery_info); - ASSERT_EQ(backend.Recover(recovery_file), ci::AppInstaller::Result::OK); - ASSERT_TRUE(CheckPackageNonExistance(pkgid, params)); - ASSERT_FALSE(bf::exists(recovery_info->unpacked_dir())); -} - -TEST_F(RollbackSmokeTest, UpdateMode_RollbackSharedDataUpdate) { - bf::path path_old = kSmokePackagesDirectory / "UpdateMode_SharedData.tpk"; - bf::path path_new = kSmokePackagesDirectory / "UpdateMode_SharedData_2.tpk"; - std::string pkgid = "smoketpk.shareddata"; - std::string appid = "smoketpk.shareddata"; - std::string exec = "shareddata"; - ASSERT_EQ(backend.InstallSuccess(path_old), ci::AppInstaller::Result::OK); - ASSERT_EQ(backend.Install(path_new), ci::AppInstaller::Result::ERROR); - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - ASSERT_TRUE(CheckSharedDataExistance(pkgid, params)); -} - -TEST_F(RollbackSmokeTest, UpdateMode_RollbackNonSharedDataUpdate) { - bf::path path_old = kSmokePackagesDirectory / "UpdateMode_NonSharedData.tpk"; - bf::path path_new = - kSmokePackagesDirectory / "UpdateMode_NonSharedData_2.tpk"; - std::string pkgid = "smoketpk.non-shareddata"; - std::string appid = "smoketpk.non-shareddata"; - std::string exec = "shareddata"; - ASSERT_EQ(backend.InstallSuccess(path_old), ci::AppInstaller::Result::OK); - ASSERT_EQ(backend.Install(path_new), ci::AppInstaller::Result::ERROR); - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - ASSERT_TRUE(CheckSharedDataNonExistance(pkgid, params)); -} - -TEST_F(SmokeTest, RecoveryMode_SharedDataUpdate) { - bf::path path_old = - kSmokePackagesDirectory / "RecoveryMode_SharedData.tpk"; - bf::path path_new = - kSmokePackagesDirectory / "RecoveryMode_SharedData_2.tpk"; - RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); - ASSERT_EQ(backend.Install(path_old), ci::AppInstaller::Result::OK); - ci::Subprocess backend_crash("/usr/bin/tpk-installer-ut/smoke-test-helper"); - std::string test_uid_str = std::to_string(params.test_user.uid); - backend_crash.Run("-i", path_new.string(), "-u", test_uid_str.c_str()); - ASSERT_NE(backend_crash.Wait(), 0); - - std::string pkgid = "smoketpk.recovery-shareddata"; - std::string appid = "smoketpk.recovery-shareddata"; - std::string exec = "shareddata"; - bf::path recovery_file = FindRecoveryFile("/tpk-recovery", - params.test_user.uid); - ASSERT_FALSE(recovery_file.empty()); - std::unique_ptr recovery_info = - GetRecoverFileInfo(recovery_file); - ASSERT_EQ(backend.Recover(recovery_file), ci::AppInstaller::Result::OK); - - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - ASSERT_TRUE(CheckSharedDataExistance(pkgid, params)); - ASSERT_FALSE(bf::exists(recovery_info->unpacked_dir())); -} - -TEST_F(SmokeTest, RecoveryMode_NonSharedDataUpdate) { - bf::path path_old = - kSmokePackagesDirectory / "RecoveryMode_NonSharedData.tpk"; - bf::path path_new = - kSmokePackagesDirectory / "RecoveryMode_NonSharedData_2.tpk"; - RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); - ASSERT_EQ(backend.Install(path_old), ci::AppInstaller::Result::OK); - ci::Subprocess backend_crash("/usr/bin/tpk-installer-ut/smoke-test-helper"); - std::string test_uid_str = std::to_string(params.test_user.uid); - backend_crash.Run("-i", path_new.string(), "-u", test_uid_str.c_str()); - ASSERT_NE(backend_crash.Wait(), 0); - - std::string pkgid = "smoketpk.recovery-non-shareddata"; - std::string appid = "smoketpk.recovery-non-shareddata"; - std::string exec = "shareddata"; - bf::path recovery_file = FindRecoveryFile("/tpk-recovery", - params.test_user.uid); - ASSERT_FALSE(recovery_file.empty()); - std::unique_ptr recovery_info = - GetRecoverFileInfo(recovery_file); - ASSERT_EQ(backend.Recover(recovery_file), ci::AppInstaller::Result::OK); - - ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); - ASSERT_TRUE(CheckSharedDataNonExistance(pkgid, params)); - ASSERT_FALSE(bf::exists(recovery_info->unpacked_dir())); -} - -} // namespace smoke_test - -int main(int argc, char** argv) { - try { - bool no_backup = false; - BackupType backup_type = BackupType::MOVE; - - ci::RequestMode request_mode = st::ParseRequestMode(argc, argv); - if (getuid() != 0 || request_mode != ci::RequestMode::GLOBAL) { - std::cout << "Skip tests for preload request" << std::endl; - ::testing::GTEST_FLAG(filter) = "SmokeTest.*"; - } - testing::InitGoogleTest(&argc, argv); - - bpo::options_description options("Allowed options"); - bpo::variables_map opt_map; - try { - options.add_options() - ("help", "display this help message") - ("no-backup", "Do test without backup") - ("backup-type", bpo::value(), " set test's " - "backup type \'move\', \'copy and remove\'"); - bpo::store(bpo::command_line_parser(argc, argv). - options(options).allow_unregistered().run(), opt_map); - if (opt_map.count("help")) { - std::cerr << options << std::endl; - return -1; - } - - if (opt_map.count("no-backup")) - no_backup = true; - if (opt_map.count("backup-type")) { - if (opt_map["backup-type"].as() == "move") { - backup_type = BackupType::MOVE; - } else if (opt_map["backup-type"].as() == "copy") { - backup_type = BackupType::COPY_AND_REMOVE; - } else { - std::cerr << options << std::endl; - return -1; - } - } - bpo::notify(opt_map); - } catch (...) { - std::cerr << "Exception occurred: " - << boost::current_exception_diagnostic_information() - << std::endl; - return -1; - } - - ::env = static_cast( - testing::AddGlobalTestEnvironment( - new smoke_test::SmokeEnvironment(request_mode, - no_backup, backup_type))); - - signal(SIGINT, ::signalHandler); - signal(SIGSEGV, ::signalHandler); - return RUN_ALL_TESTS(); - } catch (...) { - std::cout << "Exception occurred during testing" << std::endl; - return 1; - } -} diff --git a/src/unit_tests/smoke_test_helper.cc b/src/unit_tests/smoke_test_helper.cc deleted file mode 100644 index d075906..0000000 --- a/src/unit_tests/smoke_test_helper.cc +++ /dev/null @@ -1,89 +0,0 @@ -// Copyright (c) 2015 Samsung Electronics Co., Ltd All Rights Reserved -// Use of this source code is governed by an apache-2.0 license that can be -// found in the LICENSE file. - -#include -#include - -#include "tpk/tpk_app_query_interface.h" -#include "tpk/tpk_installer.h" -#include "unit_tests/tpk_smoke_utils.h" - -namespace ci = common_installer; - -static int RunCrashTpkInstaller(ci::PkgMgrPtr pkgmgr, - int index, - std::string step_name, - smoke_test::CrashStepType type) { - smoke_test::CrashTpkInstaller t(pkgmgr, index, step_name, type); - - if (t.Run() != ci::AppInstaller::Result::OK) { - LOG(ERROR) << "CrashTpkInstaller run failure"; - return -1; - } - return 0; -} - -static int RunTpkInstallerWithoutParserPlugins(ci::PkgMgrPtr pkgmgr) { - smoke_test::TpkInstallerWithoutPasrserPlugins t(pkgmgr); - - if (t.Run() != ci::AppInstaller::Result::OK) { - LOG(ERROR) << "TpkInstallerWithoutPasrserPlugins run failure"; - return -1; - } - return 0; -} - -// This version of backend will crash in the end -// it is used for recovery testcase -int main(const int argc, char* argv[]) { - try { - int index = -1; - int backend_argc = argc; - std::string step_name; - bool remove_plugins = false; - smoke_test::CrashStepType type = smoke_test::CrashStepType::PROCESS; - - if (!strcmp(argv[backend_argc-2], "-idx")) { - index = atoi(argv[backend_argc-1]); - backend_argc -= 2; - LOG(DEBUG) << "Step crash after " << index << " step."; - } - - if (!strcmp(argv[backend_argc-2], "-step_name")) { - step_name = argv[backend_argc-1]; - backend_argc -= 2; - LOG(DEBUG) << "Step crash after " << step_name << " step."; - } - - if (!strcmp(argv[backend_argc-1], "-remove_plugin_steps")) { - backend_argc--; - remove_plugins = true; - LOG(DEBUG) << "Remove parser plugins steps"; - } - - if (!strcmp(argv[backend_argc-1], "-type_clean")) { - backend_argc--; - type = smoke_test::CrashStepType::CLEAN; - LOG(DEBUG) << "step will be crashed in clean operation"; - } - - ci::PkgmgrInstaller pkgmgr_installer; - tpk::TpkAppQueryInterface interface; - ci::PkgMgrPtr pkgmgr = ci::PkgMgrInterface::Create(backend_argc, argv, - &pkgmgr_installer, - &interface); - if (!pkgmgr) { - LOG(ERROR) << "Failed to create pkgmgr interface"; - return -1; - } - - if (remove_plugins) - return RunTpkInstallerWithoutParserPlugins(pkgmgr); - else - return RunCrashTpkInstaller(pkgmgr, index, step_name, type); - } catch (...) { - std::cout << "Exception occurred during testing" << std::endl; - return 1; - } -} diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_Invalid_NoPKGID/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_Invalid_NoPKGID/tizen-manifest.xml deleted file mode 100644 index fde3f59..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_Invalid_NoPKGID/tizen-manifest.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - http://package2id/appdefined/test.read - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_Invalid_NotURI/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_Invalid_NotURI/tizen-manifest.xml deleted file mode 100644 index 8967e25..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_Invalid_NotURI/tizen-manifest.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - package0id/appdefined/test.read - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_Invalid_OverLength/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_Invalid_OverLength/tizen-manifest.xml deleted file mode 100644 index 460ae13..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_Invalid_OverLength/tizen-manifest.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - http://package0id/appdefined/longnameeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee.read - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_Many/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_Many/tizen-manifest.xml deleted file mode 100644 index 36a626d..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_Many/tizen-manifest.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - http://package0id/appdefined/test.read - http://package0id/appdefined/test.write - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_Valid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_Valid/tizen-manifest.xml deleted file mode 100644 index e654396..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_Valid/tizen-manifest.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - http://package0id/appdefined/test.read - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_WithLicenseMany/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_WithLicenseMany/tizen-manifest.xml deleted file mode 100644 index f46a329..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_WithLicenseMany/tizen-manifest.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - http://package0id/appdefined/test.read - http://package0id/appdefined/test.write - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_WithLicenseValid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_WithLicenseValid/tizen-manifest.xml deleted file mode 100644 index d5b097d..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_WithLicenseValid/tizen-manifest.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - http://package0id/appdefined/test.read - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.AuthorElement_Email_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.AuthorElement_Email_Invalid/tizen-manifest.xml deleted file mode 100644 index b530f32..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.AuthorElement_Email_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - Author - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.AuthorElement_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.AuthorElement_Missing/tizen-manifest.xml deleted file mode 100644 index f0bba4a..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.AuthorElement_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.AuthorElement_Valid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.AuthorElement_Valid/tizen-manifest.xml deleted file mode 100644 index c5bb0d0..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.AuthorElement_Valid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - Author - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.DescriptionElement_Lang_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.DescriptionElement_Lang_Invalid/tizen-manifest.xml deleted file mode 100644 index dc63a51..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.DescriptionElement_Lang_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - text - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.DescriptionElement_Many/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.DescriptionElement_Many/tizen-manifest.xml deleted file mode 100644 index 981f0c7..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.DescriptionElement_Many/tizen-manifest.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - text - text2 - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.DescriptionElement_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.DescriptionElement_Missing/tizen-manifest.xml deleted file mode 100644 index f0bba4a..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.DescriptionElement_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.DescriptionElement_Text_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.DescriptionElement_Text_Invalid/tizen-manifest.xml deleted file mode 100644 index 998c058..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.DescriptionElement_Text_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.DescriptionElement_Valid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.DescriptionElement_Valid/tizen-manifest.xml deleted file mode 100644 index 3d06cd0..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.DescriptionElement_Valid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - text - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_ApiVersion_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_ApiVersion_Invalid/tizen-manifest.xml deleted file mode 100644 index 687b74e..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_ApiVersion_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_ApiVersion_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_ApiVersion_Missing/tizen-manifest.xml deleted file mode 100644 index 298350a..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_ApiVersion_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_ApiVersion_Valid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_ApiVersion_Valid/tizen-manifest.xml deleted file mode 100644 index 24d6a8e..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_ApiVersion_Valid/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_DoubleRootElement/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_DoubleRootElement/tizen-manifest.xml deleted file mode 100644 index 1701557..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_DoubleRootElement/tizen-manifest.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_InstallLocation_Auto/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_InstallLocation_Auto/tizen-manifest.xml deleted file mode 100644 index d20ff21..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_InstallLocation_Auto/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_InstallLocation_InternalOnly/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_InstallLocation_InternalOnly/tizen-manifest.xml deleted file mode 100644 index 03324bd..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_InstallLocation_InternalOnly/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_InstallLocation_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_InstallLocation_Invalid/tizen-manifest.xml deleted file mode 100644 index 10a7277..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_InstallLocation_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_InstallLocation_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_InstallLocation_Missing/tizen-manifest.xml deleted file mode 100644 index f0bba4a..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_InstallLocation_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_InstallLocation_PreferExternal/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_InstallLocation_PreferExternal/tizen-manifest.xml deleted file mode 100644 index 7ce8aa1..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_InstallLocation_PreferExternal/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_InvalidRootElement/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_InvalidRootElement/tizen-manifest.xml deleted file mode 100644 index a24942c..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_InvalidRootElement/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_Package_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_Package_Invalid/tizen-manifest.xml deleted file mode 100644 index 8bd02ad..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_Package_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_Package_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_Package_Missing/tizen-manifest.xml deleted file mode 100644 index b2ad80b..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_Package_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_Type_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_Type_Invalid/tizen-manifest.xml deleted file mode 100644 index b266445..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_Type_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_Type_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_Type_Missing/tizen-manifest.xml deleted file mode 100644 index f0bba4a..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_Type_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_Type_Rpm/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_Type_Rpm/tizen-manifest.xml deleted file mode 100644 index f940316..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_Type_Rpm/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_Type_Tpk/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_Type_Tpk/tizen-manifest.xml deleted file mode 100644 index 0be8390..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_Type_Tpk/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_Type_Wgt/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_Type_Wgt/tizen-manifest.xml deleted file mode 100644 index f8f79c4..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_Type_Wgt/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_Valid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_Valid/tizen-manifest.xml deleted file mode 100644 index f0bba4a..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_Valid/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_Version_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_Version_Invalid/tizen-manifest.xml deleted file mode 100644 index 25c83cd..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_Version_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_Version_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_Version_Missing/tizen-manifest.xml deleted file mode 100644 index fbd52ef..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_Version_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_Version_Valid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_Version_Valid/tizen-manifest.xml deleted file mode 100644 index 4698dac..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ManifestElement_Version_Valid/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.PrivilegesElement_Many/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.PrivilegesElement_Many/tizen-manifest.xml deleted file mode 100644 index 84fdf70..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.PrivilegesElement_Many/tizen-manifest.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - http://tizen.org/privilege/application.admin - http://tizen.org/privilege/appmanager.launch - http://tizen.org/privilege/account.read - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.PrivilegesElement_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.PrivilegesElement_Missing/tizen-manifest.xml deleted file mode 100644 index f0bba4a..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.PrivilegesElement_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.PrivilegesElement_None/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.PrivilegesElement_None/tizen-manifest.xml deleted file mode 100644 index 38f049e..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.PrivilegesElement_None/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.PrivilegesElement_Valid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.PrivilegesElement_Valid/tizen-manifest.xml deleted file mode 100644 index 822bbef..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.PrivilegesElement_Valid/tizen-manifest.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - http://tizen.org/privilege/application.admin - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ProfileElement_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ProfileElement_Invalid/tizen-manifest.xml deleted file mode 100644 index f20cb15..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ProfileElement_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - text - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ProfileElement_Many/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ProfileElement_Many/tizen-manifest.xml deleted file mode 100644 index 65d0db0..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ProfileElement_Many/tizen-manifest.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ProfileElement_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ProfileElement_Missing/tizen-manifest.xml deleted file mode 100644 index f0bba4a..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ProfileElement_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ProfileElement_Valid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ProfileElement_Valid/tizen-manifest.xml deleted file mode 100644 index cf2b074..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ProfileElement_Valid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Invalid_NoPKGID/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Invalid_NoPKGID/tizen-manifest.xml deleted file mode 100644 index fd27046..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Invalid_NoPKGID/tizen-manifest.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - http://package2id/appdefined/test.read - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Invalid_NotURI/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Invalid_NotURI/tizen-manifest.xml deleted file mode 100644 index 558d917..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Invalid_NotURI/tizen-manifest.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - package0id/appdefined/test.read - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Invalid_OverLength/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Invalid_OverLength/tizen-manifest.xml deleted file mode 100644 index 7bdfe28..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Invalid_OverLength/tizen-manifest.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - http://package0id/appdefined/longnameeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee.read - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Many/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Many/tizen-manifest.xml deleted file mode 100644 index a073f29..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Many/tizen-manifest.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - http://package0id/appdefined/test.read - http://package0id/appdefined/test.write - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Missing/tizen-manifest.xml deleted file mode 100644 index f0bba4a..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_None/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_None/tizen-manifest.xml deleted file mode 100644 index c4bb3a7..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_None/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Valid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Valid/tizen-manifest.xml deleted file mode 100644 index fa4e4cb..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Valid/tizen-manifest.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - http://package0id/appdefined/test.read - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_WithLicenseMany/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_WithLicenseMany/tizen-manifest.xml deleted file mode 100644 index b323bcc..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_WithLicenseMany/tizen-manifest.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - http://package0id/appdefined/test.read - http://package0id/appdefined/test.write - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_WithLicenseValid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_WithLicenseValid/tizen-manifest.xml deleted file mode 100644 index 8270405..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_WithLicenseValid/tizen-manifest.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - http://package0id/appdefined/test.read - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_CartesianProduct/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_CartesianProduct/tizen-manifest.xml deleted file mode 100644 index ff306fd..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_CartesianProduct/tizen-manifest.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_CartesianProduct_SkipMime/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_CartesianProduct_SkipMime/tizen-manifest.xml deleted file mode 100644 index 6f7bce1..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_CartesianProduct_SkipMime/tizen-manifest.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_CartesianProduct_SkipUri/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_CartesianProduct_SkipUri/tizen-manifest.xml deleted file mode 100644 index 0b3078f..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_CartesianProduct_SkipUri/tizen-manifest.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Many/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Many/tizen-manifest.xml deleted file mode 100644 index 8cd8903..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Many/tizen-manifest.xml +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Mime_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Mime_Invalid/tizen-manifest.xml deleted file mode 100644 index 7ff32f9..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Mime_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Missing/tizen-manifest.xml deleted file mode 100644 index 08f42fa..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Operation_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Operation_Invalid/tizen-manifest.xml deleted file mode 100644 index a685b5d..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Operation_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Operation_Invalid_NotURI/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Operation_Invalid_NotURI/tizen-manifest.xml deleted file mode 100644 index b576d97..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Operation_Invalid_NotURI/tizen-manifest.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Operation_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Operation_Missing/tizen-manifest.xml deleted file mode 100644 index 85ae069..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Operation_Missing/tizen-manifest.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_SkipMime/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_SkipMime/tizen-manifest.xml deleted file mode 100644 index a1d21c9..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_SkipMime/tizen-manifest.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_SkipUri/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_SkipUri/tizen-manifest.xml deleted file mode 100644 index 721f4ca..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_SkipUri/tizen-manifest.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Uri_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Uri_Invalid/tizen-manifest.xml deleted file mode 100644 index 0d216f2..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Uri_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Valid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Valid/tizen-manifest.xml deleted file mode 100644 index f3417a6..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Valid/tizen-manifest.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Appid_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Appid_Invalid/tizen-manifest.xml deleted file mode 100644 index abfbe1d..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Appid_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Appid_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Appid_Missing/tizen-manifest.xml deleted file mode 100644 index d7ac4b4..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Appid_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AutoRestart_False/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AutoRestart_False/tizen-manifest.xml deleted file mode 100644 index 6abbc58..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AutoRestart_False/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AutoRestart_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AutoRestart_Invalid/tizen-manifest.xml deleted file mode 100644 index fc1c0ec..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AutoRestart_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AutoRestart_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AutoRestart_Missing/tizen-manifest.xml deleted file mode 100644 index 08f42fa..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AutoRestart_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AutoRestart_True/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AutoRestart_True/tizen-manifest.xml deleted file mode 100644 index cb9663e..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AutoRestart_True/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_BackgroundCategory_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_BackgroundCategory_Invalid/tizen-manifest.xml deleted file mode 100644 index 59846d1..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_BackgroundCategory_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_BackgroundCategory_Many/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_BackgroundCategory_Many/tizen-manifest.xml deleted file mode 100644 index 857d335..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_BackgroundCategory_Many/tizen-manifest.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_BackgroundCategory_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_BackgroundCategory_Missing/tizen-manifest.xml deleted file mode 100644 index 08f42fa..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_BackgroundCategory_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_BackgroundCategory_Valid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_BackgroundCategory_Valid/tizen-manifest.xml deleted file mode 100644 index 9a541fd..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_BackgroundCategory_Valid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_DataControl_Many/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_DataControl_Many/tizen-manifest.xml deleted file mode 100644 index 43ee407..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_DataControl_Many/tizen-manifest.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_DataControl_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_DataControl_Missing/tizen-manifest.xml deleted file mode 100644 index 08f42fa..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_DataControl_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_DataControl_Valid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_DataControl_Valid/tizen-manifest.xml deleted file mode 100644 index 7ab9e67..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_DataControl_Valid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Icon_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Icon_Invalid/tizen-manifest.xml deleted file mode 100644 index f73bd87..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Icon_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Icon_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Icon_Missing/tizen-manifest.xml deleted file mode 100644 index 08f42fa..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Icon_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Icon_Valid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Icon_Valid/tizen-manifest.xml deleted file mode 100644 index a4f168b..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Icon_Valid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - test_icon.png - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Lang_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Lang_Invalid/tizen-manifest.xml deleted file mode 100644 index cb59a15..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Lang_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Many/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Many/tizen-manifest.xml deleted file mode 100644 index e5c870f..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Many/tizen-manifest.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Many_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Many_Invalid/tizen-manifest.xml deleted file mode 100644 index 28b8d87..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Many_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Missing/tizen-manifest.xml deleted file mode 100644 index 08f42fa..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Text_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Text_Invalid/tizen-manifest.xml deleted file mode 100644 index 5636950..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Text_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Valid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Valid/tizen-manifest.xml deleted file mode 100644 index 806c0ec..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Valid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Metadata_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Metadata_Invalid/tizen-manifest.xml deleted file mode 100644 index cba02b0..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Metadata_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Metadata_Many/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Metadata_Many/tizen-manifest.xml deleted file mode 100644 index 3afb02e..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Metadata_Many/tizen-manifest.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Metadata_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Metadata_Missing/tizen-manifest.xml deleted file mode 100644 index 08f42fa..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Metadata_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Metadata_Valid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Metadata_Valid/tizen-manifest.xml deleted file mode 100644 index 9082fa0..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Metadata_Valid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Multiple_False/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Multiple_False/tizen-manifest.xml deleted file mode 100644 index 87e7dd0..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Multiple_False/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Multiple_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Multiple_Invalid/tizen-manifest.xml deleted file mode 100644 index a3f7e1c..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Multiple_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Multiple_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Multiple_Missing/tizen-manifest.xml deleted file mode 100644 index 08f42fa..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Multiple_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Multiple_True/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Multiple_True/tizen-manifest.xml deleted file mode 100644 index 3368f2d..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Multiple_True/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_OnBoot_False/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_OnBoot_False/tizen-manifest.xml deleted file mode 100644 index 7076ddf..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_OnBoot_False/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_OnBoot_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_OnBoot_Invalid/tizen-manifest.xml deleted file mode 100644 index af32fa4..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_OnBoot_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_OnBoot_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_OnBoot_Missing/tizen-manifest.xml deleted file mode 100644 index 08f42fa..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_OnBoot_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_OnBoot_True/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_OnBoot_True/tizen-manifest.xml deleted file mode 100644 index 59d07c3..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_OnBoot_True/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_SetManifestXDefaults/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_SetManifestXDefaults/tizen-manifest.xml deleted file mode 100644 index 08f42fa..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_SetManifestXDefaults/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Taskmanage_False/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Taskmanage_False/tizen-manifest.xml deleted file mode 100644 index f233ab3..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Taskmanage_False/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Taskmanage_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Taskmanage_Invalid/tizen-manifest.xml deleted file mode 100644 index e498b85..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Taskmanage_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Taskmanage_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Taskmanage_Missing/tizen-manifest.xml deleted file mode 100644 index 08f42fa..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Taskmanage_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Taskmanage_True/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Taskmanage_True/tizen-manifest.xml deleted file mode 100644 index 34d5fc8..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Taskmanage_True/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Type_Capp/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Type_Capp/tizen-manifest.xml deleted file mode 100644 index 08f42fa..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Type_Capp/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Type_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Type_Missing/tizen-manifest.xml deleted file mode 100644 index 4a49cf8..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Type_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Type_Webapp/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Type_Webapp/tizen-manifest.xml deleted file mode 100644 index 76bb8f3..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Type_Webapp/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Valid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Valid/tizen-manifest.xml deleted file mode 100644 index 08f42fa..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Valid/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_CartesianProduct/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_CartesianProduct/tizen-manifest.xml deleted file mode 100644 index 4064781..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_CartesianProduct/tizen-manifest.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_CartesianProduct_SkipMime/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_CartesianProduct_SkipMime/tizen-manifest.xml deleted file mode 100644 index 1953a27..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_CartesianProduct_SkipMime/tizen-manifest.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_CartesianProduct_SkipUri/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_CartesianProduct_SkipUri/tizen-manifest.xml deleted file mode 100644 index 35214d9..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_CartesianProduct_SkipUri/tizen-manifest.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Many/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Many/tizen-manifest.xml deleted file mode 100644 index 8e169b6..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Many/tizen-manifest.xml +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Mime_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Mime_Invalid/tizen-manifest.xml deleted file mode 100644 index 638e160..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Mime_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Missing/tizen-manifest.xml deleted file mode 100644 index f0bba4a..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Operation_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Operation_Invalid/tizen-manifest.xml deleted file mode 100644 index ee7dbed..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Operation_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Operation_Invalid_NotURI/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Operation_Invalid_NotURI/tizen-manifest.xml deleted file mode 100644 index 410d411..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Operation_Invalid_NotURI/tizen-manifest.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Operation_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Operation_Missing/tizen-manifest.xml deleted file mode 100644 index f92a123..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Operation_Missing/tizen-manifest.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_SkipMime/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_SkipMime/tizen-manifest.xml deleted file mode 100644 index dd3e21a..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_SkipMime/tizen-manifest.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_SkipUri/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_SkipUri/tizen-manifest.xml deleted file mode 100644 index 464cb59..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_SkipUri/tizen-manifest.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Uri_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Uri_Invalid/tizen-manifest.xml deleted file mode 100644 index 4679cff..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Uri_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Valid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Valid/tizen-manifest.xml deleted file mode 100644 index 52886a5..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Valid/tizen-manifest.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Appid_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Appid_Invalid/tizen-manifest.xml deleted file mode 100644 index 669e95b..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Appid_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Appid_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Appid_Missing/tizen-manifest.xml deleted file mode 100644 index 64a7774..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Appid_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_BackgroundCategory_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_BackgroundCategory_Invalid/tizen-manifest.xml deleted file mode 100644 index 051dd00..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_BackgroundCategory_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_BackgroundCategory_Many/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_BackgroundCategory_Many/tizen-manifest.xml deleted file mode 100644 index dffba18..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_BackgroundCategory_Many/tizen-manifest.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_BackgroundCategory_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_BackgroundCategory_Missing/tizen-manifest.xml deleted file mode 100644 index f0bba4a..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_BackgroundCategory_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_BackgroundCategory_Valid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_BackgroundCategory_Valid/tizen-manifest.xml deleted file mode 100644 index d8294ea..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_BackgroundCategory_Valid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_DataControl_Many/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_DataControl_Many/tizen-manifest.xml deleted file mode 100644 index 1242b7f..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_DataControl_Many/tizen-manifest.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_DataControl_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_DataControl_Missing/tizen-manifest.xml deleted file mode 100644 index f0bba4a..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_DataControl_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_DataControl_Valid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_DataControl_Valid/tizen-manifest.xml deleted file mode 100644 index ebd6b77..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_DataControl_Valid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_HwAcceleration_Default/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_HwAcceleration_Default/tizen-manifest.xml deleted file mode 100644 index de30cb6..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_HwAcceleration_Default/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_HwAcceleration_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_HwAcceleration_Missing/tizen-manifest.xml deleted file mode 100644 index f0bba4a..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_HwAcceleration_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_HwAcceleration_Off/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_HwAcceleration_Off/tizen-manifest.xml deleted file mode 100644 index 1f3ae5e..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_HwAcceleration_Off/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_HwAcceleration_On/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_HwAcceleration_On/tizen-manifest.xml deleted file mode 100644 index 528ba32..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_HwAcceleration_On/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Icon_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Icon_Invalid/tizen-manifest.xml deleted file mode 100644 index ea51842..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Icon_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Icon_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Icon_Missing/tizen-manifest.xml deleted file mode 100644 index f0bba4a..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Icon_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Icon_Valid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Icon_Valid/tizen-manifest.xml deleted file mode 100644 index 127027e..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Icon_Valid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - test_icon.png - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Lang_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Lang_Invalid/tizen-manifest.xml deleted file mode 100644 index e094b67..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Lang_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Many/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Many/tizen-manifest.xml deleted file mode 100644 index bdfaa9f..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Many/tizen-manifest.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Many_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Many_Invalid/tizen-manifest.xml deleted file mode 100644 index 2576fc3..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Many_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Missing/tizen-manifest.xml deleted file mode 100644 index f0bba4a..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Text_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Text_Invalid/tizen-manifest.xml deleted file mode 100644 index aa1a87e..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Text_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Valid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Valid/tizen-manifest.xml deleted file mode 100644 index 2c11e8d..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Valid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_LaunchMode_Caller/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_LaunchMode_Caller/tizen-manifest.xml deleted file mode 100644 index 2d9b43c..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_LaunchMode_Caller/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_LaunchMode_Group/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_LaunchMode_Group/tizen-manifest.xml deleted file mode 100644 index 65dfbd3..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_LaunchMode_Group/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_LaunchMode_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_LaunchMode_Invalid/tizen-manifest.xml deleted file mode 100644 index a0000e7..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_LaunchMode_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_LaunchMode_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_LaunchMode_Missing/tizen-manifest.xml deleted file mode 100644 index f0bba4a..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_LaunchMode_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_LaunchMode_Single/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_LaunchMode_Single/tizen-manifest.xml deleted file mode 100644 index d77c3b1..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_LaunchMode_Single/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Metadata_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Metadata_Invalid/tizen-manifest.xml deleted file mode 100644 index 0c48a40..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Metadata_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Metadata_Many/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Metadata_Many/tizen-manifest.xml deleted file mode 100644 index aa01815..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Metadata_Many/tizen-manifest.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Metadata_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Metadata_Missing/tizen-manifest.xml deleted file mode 100644 index f0bba4a..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Metadata_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Metadata_Valid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Metadata_Valid/tizen-manifest.xml deleted file mode 100644 index d194091..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Metadata_Valid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_MissingNoApp/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_MissingNoApp/tizen-manifest.xml deleted file mode 100644 index 8e7fef5..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_MissingNoApp/tizen-manifest.xml +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_MissingOtherApp/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_MissingOtherApp/tizen-manifest.xml deleted file mode 100644 index 08f42fa..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_MissingOtherApp/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Multiple_False/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Multiple_False/tizen-manifest.xml deleted file mode 100644 index 06a1524..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Multiple_False/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Multiple_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Multiple_Invalid/tizen-manifest.xml deleted file mode 100644 index f1cd36e..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Multiple_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Multiple_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Multiple_Missing/tizen-manifest.xml deleted file mode 100644 index f0bba4a..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Multiple_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Multiple_True/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Multiple_True/tizen-manifest.xml deleted file mode 100644 index a14c47d..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Multiple_True/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Nodisplay_False/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Nodisplay_False/tizen-manifest.xml deleted file mode 100644 index 6880ba8..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Nodisplay_False/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Nodisplay_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Nodisplay_Invalid/tizen-manifest.xml deleted file mode 100644 index ff27582..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Nodisplay_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Nodisplay_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Nodisplay_Missing/tizen-manifest.xml deleted file mode 100644 index f0bba4a..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Nodisplay_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Nodisplay_True/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Nodisplay_True/tizen-manifest.xml deleted file mode 100644 index 2e451f0..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Nodisplay_True/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_SetManifestXDefaults/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_SetManifestXDefaults/tizen-manifest.xml deleted file mode 100644 index f0bba4a..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_SetManifestXDefaults/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_SplashScreens_Duplicated_Entry/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_SplashScreens_Duplicated_Entry/tizen-manifest.xml deleted file mode 100644 index 2bca285..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_SplashScreens_Duplicated_Entry/tizen-manifest.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Taskmanage_False/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Taskmanage_False/tizen-manifest.xml deleted file mode 100644 index 9bfa177..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Taskmanage_False/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Taskmanage_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Taskmanage_Invalid/tizen-manifest.xml deleted file mode 100644 index 8fb9701..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Taskmanage_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Taskmanage_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Taskmanage_Missing/tizen-manifest.xml deleted file mode 100644 index f0bba4a..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Taskmanage_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Taskmanage_True/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Taskmanage_True/tizen-manifest.xml deleted file mode 100644 index 6b069cb..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Taskmanage_True/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Type_Capp/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Type_Capp/tizen-manifest.xml deleted file mode 100644 index f0bba4a..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Type_Capp/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Type_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Type_Missing/tizen-manifest.xml deleted file mode 100644 index d509712..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Type_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Type_Webapp/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Type_Webapp/tizen-manifest.xml deleted file mode 100644 index 461ee35..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Type_Webapp/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Valid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Valid/tizen-manifest.xml deleted file mode 100644 index f0bba4a..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Valid/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_AmbientSupport_False/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_AmbientSupport_False/tizen-manifest.xml deleted file mode 100644 index c4103e6..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_AmbientSupport_False/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_AmbientSupport_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_AmbientSupport_Invalid/tizen-manifest.xml deleted file mode 100644 index 994105a..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_AmbientSupport_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_AmbientSupport_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_AmbientSupport_Missing/tizen-manifest.xml deleted file mode 100644 index 8e9bcce..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_AmbientSupport_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_AmbientSupport_True/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_AmbientSupport_True/tizen-manifest.xml deleted file mode 100644 index edc9a21..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_AmbientSupport_True/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Appid_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Appid_Invalid/tizen-manifest.xml deleted file mode 100644 index 9603ec3..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Appid_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Appid_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Appid_Missing/tizen-manifest.xml deleted file mode 100644 index 1d9ee66..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Appid_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Icon_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Icon_Invalid/tizen-manifest.xml deleted file mode 100644 index b5ceae8..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Icon_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Icon_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Icon_Missing/tizen-manifest.xml deleted file mode 100644 index 8e9bcce..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Icon_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Icon_Valid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Icon_Valid/tizen-manifest.xml deleted file mode 100644 index 4971e4e..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Icon_Valid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - test_icon.png - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Label_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Label_Invalid/tizen-manifest.xml deleted file mode 100644 index 7c9b8d3..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Label_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Label_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Label_Missing/tizen-manifest.xml deleted file mode 100644 index 8e9bcce..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Label_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Label_Valid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Label_Valid/tizen-manifest.xml deleted file mode 100644 index bcd1ec8..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Label_Valid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_SetManifestXDefaults/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_SetManifestXDefaults/tizen-manifest.xml deleted file mode 100644 index 8e9bcce..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_SetManifestXDefaults/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Valid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Valid/tizen-manifest.xml deleted file mode 100644 index 8e9bcce..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Valid/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Appid_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Appid_Invalid/tizen-manifest.xml deleted file mode 100644 index bf08f47..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Appid_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Appid_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Appid_Missing/tizen-manifest.xml deleted file mode 100644 index da37c53..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Appid_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Icon_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Icon_Invalid/tizen-manifest.xml deleted file mode 100644 index 0324d67..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Icon_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Icon_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Icon_Missing/tizen-manifest.xml deleted file mode 100644 index 55e6da9..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Icon_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Icon_Valid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Icon_Valid/tizen-manifest.xml deleted file mode 100644 index 8dfbf62..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Icon_Valid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - test_icon.png - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Lang_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Lang_Invalid/tizen-manifest.xml deleted file mode 100644 index 5f9f05c..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Lang_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Many/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Many/tizen-manifest.xml deleted file mode 100644 index 41c4707..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Many/tizen-manifest.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Many_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Many_Invalid/tizen-manifest.xml deleted file mode 100644 index ce72881..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Many_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Missing/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Missing/tizen-manifest.xml deleted file mode 100644 index 55e6da9..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Missing/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Text_Invalid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Text_Invalid/tizen-manifest.xml deleted file mode 100644 index 4fb778f..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Text_Invalid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Valid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Valid/tizen-manifest.xml deleted file mode 100644 index 840b648..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Valid/tizen-manifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_SetManifestXDefaults/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_SetManifestXDefaults/tizen-manifest.xml deleted file mode 100644 index 55e6da9..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_SetManifestXDefaults/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Valid/tizen-manifest.xml b/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Valid/tizen-manifest.xml deleted file mode 100644 index 55e6da9..0000000 --- a/src/unit_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Valid/tizen-manifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/unit_tests/test_samples/smoke/DeinstallationMode_Preload.tpk b/src/unit_tests/test_samples/smoke/DeinstallationMode_Preload.tpk deleted file mode 100644 index 52974c4..0000000 Binary files a/src/unit_tests/test_samples/smoke/DeinstallationMode_Preload.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/DeinstallationMode_Tpk.tpk b/src/unit_tests/test_samples/smoke/DeinstallationMode_Tpk.tpk deleted file mode 100644 index 8f66981..0000000 Binary files a/src/unit_tests/test_samples/smoke/DeinstallationMode_Tpk.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/DeltaMode_Tpk.delta b/src/unit_tests/test_samples/smoke/DeltaMode_Tpk.delta deleted file mode 100644 index b0c33f2..0000000 Binary files a/src/unit_tests/test_samples/smoke/DeltaMode_Tpk.delta and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/DeltaMode_Tpk.tpk b/src/unit_tests/test_samples/smoke/DeltaMode_Tpk.tpk deleted file mode 100644 index 89a89d1..0000000 Binary files a/src/unit_tests/test_samples/smoke/DeltaMode_Tpk.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/DeltaMode_Tpk_2.tpk b/src/unit_tests/test_samples/smoke/DeltaMode_Tpk_2.tpk deleted file mode 100644 index 40dc78f..0000000 Binary files a/src/unit_tests/test_samples/smoke/DeltaMode_Tpk_2.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/DeltaMode_Tpk_Rollback.delta b/src/unit_tests/test_samples/smoke/DeltaMode_Tpk_Rollback.delta deleted file mode 100644 index 7110a2e..0000000 Binary files a/src/unit_tests/test_samples/smoke/DeltaMode_Tpk_Rollback.delta and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/DeltaMode_Tpk_Rollback.tpk b/src/unit_tests/test_samples/smoke/DeltaMode_Tpk_Rollback.tpk deleted file mode 100644 index e1d0769..0000000 Binary files a/src/unit_tests/test_samples/smoke/DeltaMode_Tpk_Rollback.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/DeltaMode_Tpk_Rollback_2.tpk b/src/unit_tests/test_samples/smoke/DeltaMode_Tpk_Rollback_2.tpk deleted file mode 100644 index 9dd3442..0000000 Binary files a/src/unit_tests/test_samples/smoke/DeltaMode_Tpk_Rollback_2.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/DisablePkg.tpk b/src/unit_tests/test_samples/smoke/DisablePkg.tpk deleted file mode 100644 index 4461ea9..0000000 Binary files a/src/unit_tests/test_samples/smoke/DisablePkg.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/EnablePkg.tpk b/src/unit_tests/test_samples/smoke/EnablePkg.tpk deleted file mode 100644 index 0600d14..0000000 Binary files a/src/unit_tests/test_samples/smoke/EnablePkg.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/InstallExtended_Tpk.tpk b/src/unit_tests/test_samples/smoke/InstallExtended_Tpk.tpk deleted file mode 100644 index a06bb03..0000000 Binary files a/src/unit_tests/test_samples/smoke/InstallExtended_Tpk.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/InstallExternal_Tpk.tpk b/src/unit_tests/test_samples/smoke/InstallExternal_Tpk.tpk deleted file mode 100644 index b9f9ec1..0000000 Binary files a/src/unit_tests/test_samples/smoke/InstallExternal_Tpk.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/InstallExternal_Tpk_2.tpk b/src/unit_tests/test_samples/smoke/InstallExternal_Tpk_2.tpk deleted file mode 100644 index 21dce6c..0000000 Binary files a/src/unit_tests/test_samples/smoke/InstallExternal_Tpk_2.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/InstallationMode_GoodSignature.tpk b/src/unit_tests/test_samples/smoke/InstallationMode_GoodSignature.tpk deleted file mode 100644 index d6969e1..0000000 Binary files a/src/unit_tests/test_samples/smoke/InstallationMode_GoodSignature.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/InstallationMode_Preload.tpk b/src/unit_tests/test_samples/smoke/InstallationMode_Preload.tpk deleted file mode 100644 index 03168ce..0000000 Binary files a/src/unit_tests/test_samples/smoke/InstallationMode_Preload.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/InstallationMode_Rollback.tpk b/src/unit_tests/test_samples/smoke/InstallationMode_Rollback.tpk deleted file mode 100644 index 983cefe..0000000 Binary files a/src/unit_tests/test_samples/smoke/InstallationMode_Rollback.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/InstallationMode_Tpk.tpk b/src/unit_tests/test_samples/smoke/InstallationMode_Tpk.tpk deleted file mode 100644 index 2dea339..0000000 Binary files a/src/unit_tests/test_samples/smoke/InstallationMode_Tpk.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/InstallationMode_WrongSignature.tpk b/src/unit_tests/test_samples/smoke/InstallationMode_WrongSignature.tpk deleted file mode 100644 index 3847f1d..0000000 Binary files a/src/unit_tests/test_samples/smoke/InstallationMode_WrongSignature.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/author-signature.xml b/src/unit_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/author-signature.xml deleted file mode 100644 index 45a6533..0000000 --- a/src/unit_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/author-signature.xml +++ /dev/null @@ -1,66 +0,0 @@ - - - - - - -Yrs3GkHAMzZGL7qmFGAF7sdXg6shvOtthBSb/Hjzfjw= - - - -1d0oEZHqPn+QzNzGIHwj9ODby6x9ggFs9uOsav6jPNs= - - - -vQ+rOr8hWb4TVBijWblCSAB+8eePv+QyN6wNXzvJgSE= - - - - - - -lpo8tUDs054eLlBQXiDPVDVKfw30ZZdtkRs1jd7H5K8= - - - -ATfZj/k87yYSeapRBX0sMZ5tO6jMQDj4EWCCTLtj5cf+N1s8WCbl4sST53hWdTf+JgvAzTpF6x+t -LcwC9zQZxfYTzHu0KqyKJy6uXj6tiB85SSlYhejOtDogxvGFCnRo6RZioYzF4SDtxha9NkYyh1PF -L0UpraclVNYVc1MMfYY= - - - - -MIICnDCCAYSgAwIBAgIGAVvS9uY8MA0GCSqGSIb3DQEBBQUAMFYxGjAYBgNVBAoMEVRpemVuIEFz -c29jaWF0aW9uMRowGAYDVQQLDBFUaXplbiBBc3NvY2lhdGlvbjEcMBoGA1UEAwwTVGl6ZW4gRGV2 -ZWxvcGVycyBDQTAeFw0xMjExMDEwMDAwMDBaFw0xOTAxMDEwMDAwMDBaMBgxFjAUBgNVBAMMDUFw -cF9pbnN0YWxsZXIwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAIKgQLsl5UIJdfdaDXbY+aQ6 -VHjwTPv5+aUlF1l6G9SDZ7tmJTCO1yAudmMr6vEN+ZL/bbOEAlyhkJPTmntPesO1h/WzjIlpFzTO -UcHlEXAu1vZGTnPBoYTutBeVmbH9JY/dCSm2xFSioKaWHl+uMn0SB1DcvgIVSs4DkvO0F1+TAgMB -AAGjMjAwMAwGA1UdEwEB/wQCMAAwCwYDVR0PBAQDAgeAMBMGA1UdJQQMMAoGCCsGAQUFBwMDMA0G -CSqGSIb3DQEBBQUAA4IBAQBwNrj9b7/g4JI9K3wohRLHW5IpxOwBO9gUlkotSUNaiAvNwsQfB5pE -k+rTUa4Nwxcq6rFfne1brXP1vbl/bVGW/WJqV6dF3BL1QfwGif0vvcO1Sz2QOpoc/Jtt8zlmsRne -TIEMph6kDUT1oNUlTCGnxD24WagRxuGUe/RZ6L4y+6T8L+fBDtMyyM+GytqE72V+0KeyITJMTdzM -wRMjN3XccXemcox73isLxSXlgwrFbotkTyYPTFphiZCRU7BlA3EClIk+3To0b3irROY/iIlg6ZyY -gNbND9/aIJxqPqCghW7PMjGH/9KK2mtNhtJSFrIAvvUiW/fMrNj1opsAHGgJ - - -MIIDOTCCAiGgAwIBAgIBATANBgkqhkiG9w0BAQUFADBYMRowGAYDVQQKDBFUaXplbiBBc3NvY2lh -dGlvbjEaMBgGA1UECwwRVGl6ZW4gQXNzb2NpYXRpb24xHjAcBgNVBAMMFVRpemVuIERldmVsb3Bl -cnMgUm9vdDAeFw0xMjAxMDEwMDAwMDBaFw0yNzAxMDEwMDAwMDBaMFYxGjAYBgNVBAoMEVRpemVu -IEFzc29jaWF0aW9uMRowGAYDVQQLDBFUaXplbiBBc3NvY2lhdGlvbjEcMBoGA1UEAwwTVGl6ZW4g -RGV2ZWxvcGVycyBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANVGhRGmMIUyBA7o -PCz8Sxut6z6HNkF4oDIuzuKaMzRYPeWodwe9O0gmqAkToQHfwg2giRhE5GoPld0fq+OYMMwSasCu -g8dwODx1eDeSYVuOLWRxpAmbTXOsSFi6VoWeyaPEm18JBHvZBsU5YQtgZ6Kp7MqzvQg3pXOxtajj -vyHxiatJl+xXrHgcXC1wgyG3buty7u/Fi2mvKXJ0PRJcCjjK81dqe/Vr20sRUCrbk02zbm5ggFt/ -jIEhV8wbFRQpliobc7J4dSTKhFfrqGM8rdd54LYhD7gSI1CFSe16pUXfcVR7FhJztRaiGLnCrwBE -dyTZ248+D4L/qR/D0axb3jcCAwEAAaMQMA4wDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQUFAAOC -AQEAnOXXQ/1O/QTDHyrmQDtFziqPY3xWlJBqJtEqXiT7Y+Ljpe66e+Ee/OjQMlZe8gu21/8cKklH -95RxjopMWCVedXDUbWdvS2+CdyvVW/quT2E0tjqIzXDekUTYwwhlPWlGxvfj3VsxqSFq3p8Brl04 -1Gx5RKAGyKVsMfTLhbbwSWwApuBUxYfcNpKwLWGPXkysu+HctY03OKv4/xKBnVWiN8ex/Sgesi0M -+OBAOMdZMPK32uJBTeKFx1xZgTLIhk45V0hPOomPjZloiv0LSS11eyd451ufjW0iHRE7WlpR6EvI -W6TFyZgMpQq+kg4hWl2SBTf3s2VI8Ygz7gj8TMlClg== - - - - - \ No newline at end of file diff --git a/src/unit_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/bin/basicui b/src/unit_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/bin/basicui deleted file mode 100644 index 91135f5..0000000 Binary files a/src/unit_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/bin/basicui and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/lib/sth.txt b/src/unit_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/lib/sth.txt deleted file mode 100644 index a3cc0b5..0000000 --- a/src/unit_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/lib/sth.txt +++ /dev/null @@ -1 +0,0 @@ -Needed, because empty directories are skipped when copying, and directory structure will be invalid. diff --git a/src/unit_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/res/sth.txt b/src/unit_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/res/sth.txt deleted file mode 100644 index a3cc0b5..0000000 --- a/src/unit_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/res/sth.txt +++ /dev/null @@ -1 +0,0 @@ -Needed, because empty directories are skipped when copying, and directory structure will be invalid. diff --git a/src/unit_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/shared/res/basicui.png b/src/unit_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/shared/res/basicui.png deleted file mode 100644 index 9765b1b..0000000 Binary files a/src/unit_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/shared/res/basicui.png and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/signature1.xml b/src/unit_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/signature1.xml deleted file mode 100644 index 399fa19..0000000 --- a/src/unit_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/signature1.xml +++ /dev/null @@ -1,68 +0,0 @@ - - - - - - -anhYz6XCClJebTJ+qamYS8R0Rk4xDr7LKqaWzyxvj0I= - - - -Yrs3GkHAMzZGL7qmFGAF7sdXg6shvOtthBSb/Hjzfjw= - - - -1d0oEZHqPn+QzNzGIHwj9ODby6x9ggFs9uOsav6jPNs= - - - -vQ+rOr8hWb4TVBijWblCSAB+8eePv+QyN6wNXzvJgSE= - - - - - - -u/jU3U4Zm5ihTMSjKGlGYbWzDfRkGphPPHx3gJIYEJ4= - - - -NTEUK1tZpBTxjgfGxbwc1bZr8kAG8dc2+hx2xzUFxZUgIWwIIy/SdKy7VGUCAH3y/HApfaNBL1SL -RnGoQ/R3L/eQvQnzq/iTpZcCSpYnnvH9fJHAmgSod5XgH9IS+QKU/fzJ1rhlMBMD8oGxrDa4JrQJ -65+mUCgDS7LZUp6olx8= - - - - -MIICnTCCAgYCCQDE9MbMmJ/yCzANBgkqhkiG9w0BAQUFADCBkDELMAkGA1UEBhMCS1IxDjAMBgNV -BAgMBVN1d29uMQ4wDAYDVQQHDAVTdXdvbjEWMBQGA1UECgwNVGl6ZW4gVGVzdCBDQTEiMCAGA1UE -CwwZVGl6ZW4gRGlzdHJpYnV0b3IgVGVzdCBDQTElMCMGA1UEAwwcVGl6ZW4gUGFydG5lciBEaXN0 -cmlidXRvciBDQTAeFw0xMjEwMjcwNzQ4MzNaFw0yMjEwMjUwNzQ4MzNaMIGUMQswCQYDVQQGEwJL -UjEOMAwGA1UECAwFU3V3b24xDjAMBgNVBAcMBVN1d29uMRYwFAYDVQQKDA1UaXplbiBUZXN0IENB -MSIwIAYDVQQLDBlUaXplbiBEaXN0cmlidXRvciBUZXN0IENBMSkwJwYDVQQDDCBUaXplbiBQYXJ0 -bmVyIERpc3RyaWJ1dG9yIFNpZ25lcjCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAy9mg2x4B -zxlK3LJL81GsLq/pJfK1evdCKG/IOBpdoRO0rLhYnsL5+KvToPFa5g9GTZo32LikpW1NZ7++3EHE -fnO2IGLUau4kquvhmz1LNg5xBTx7IbucmwLMRGo1BPGdsAQQLyXeQKJ5PCERmVg4MIoiL2zT/JsL -sZ9UPT6GEB8CAwEAATANBgkqhkiG9w0BAQUFAAOBgQAw5xPBFR1XKuZ8QpsCtSE0zXVHvwIa+Ha4 -YBdRtGwEoZmiKGZV/wAhPRdmR0kISkTz20kIGz/ZwRZCVGhsr5hkkpFknYlKeKkEJ/tJfZl4D7ec -GFAnynOzlWZqSIPz+yxX8ah9E6lTv4Vs9DhNb08nxVvxLqlpyVdk9RUsCx/yIA== - - -MIICtTCCAh6gAwIBAgIJAKORBcIiXygIMA0GCSqGSIb3DQEBBQUAMIGVMQswCQYDVQQGEwJLUjEO -MAwGA1UECAwFU3V3b24xDjAMBgNVBAcMBVN1d29uMRYwFAYDVQQKDA1UaXplbiBUZXN0IENBMSIw -IAYDVQQLDBlUaXplbiBEaXN0cmlidXRvciBUZXN0IENBMSowKAYDVQQDDCFUaXplbiBQYXJ0bmVy -IERpc3RyaWJ1dG9yIFJvb3QgQ0EwHhcNMTIxMDI3MDc0NTIwWhcNMjIxMDI1MDc0NTIwWjCBkDEL -MAkGA1UEBhMCS1IxDjAMBgNVBAgMBVN1d29uMQ4wDAYDVQQHDAVTdXdvbjEWMBQGA1UECgwNVGl6 -ZW4gVGVzdCBDQTEiMCAGA1UECwwZVGl6ZW4gRGlzdHJpYnV0b3IgVGVzdCBDQTElMCMGA1UEAwwc -VGl6ZW4gUGFydG5lciBEaXN0cmlidXRvciBDQTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA -2ZQrdEowjqxUmB8FX8ej19VKY6jGHKNIRE5wrhBkuZ1b0FLRPiN3/Cl9wMkCnyJui4QhC28g1aBg -w/JnaObcDqW1NgFVH3006+gZvCTDlw1nIEjvZa6P+uWOOi05xPPAE0feKPkO1POnOjnapfkkEVNU -8TXsLbLYBylWT8rxZC8CAwEAAaMQMA4wDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQUFAAOBgQBJ -yJ7p6qs0JI+1iKOk/sYWVP6dMueY72qOc/wVj5c3ejOlgJNNXDMAQ14QcRRexffc68ipTwybU/3m -tcNwydzKJe+GFa4b2zyKOvOgrfs4MKSR0T9XEPmTKeR+NDT2CbA6/kQoRYm0fSORzD2UXJzNZWe/ -WjwSA66hv4q+0QZQFQ== - - - - - \ No newline at end of file diff --git a/src/unit_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/tizen-manifest.xml b/src/unit_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/tizen-manifest.xml deleted file mode 100644 index 780b3f1..0000000 --- a/src/unit_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/tizen-manifest.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - basicui.png - - - diff --git a/src/unit_tests/test_samples/smoke/ManifestDirectUpdateMode.tpk b/src/unit_tests/test_samples/smoke/ManifestDirectUpdateMode.tpk deleted file mode 100644 index f96ff56..0000000 Binary files a/src/unit_tests/test_samples/smoke/ManifestDirectUpdateMode.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/MountInstallationMode_Rollback.tpk b/src/unit_tests/test_samples/smoke/MountInstallationMode_Rollback.tpk deleted file mode 100644 index 1d371be..0000000 Binary files a/src/unit_tests/test_samples/smoke/MountInstallationMode_Rollback.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/MountInstallationMode_Tpk.tpk b/src/unit_tests/test_samples/smoke/MountInstallationMode_Tpk.tpk deleted file mode 100644 index ec3f9ff..0000000 Binary files a/src/unit_tests/test_samples/smoke/MountInstallationMode_Tpk.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/MountUpdateMode_Rollback.tpk b/src/unit_tests/test_samples/smoke/MountUpdateMode_Rollback.tpk deleted file mode 100644 index 6586b51..0000000 Binary files a/src/unit_tests/test_samples/smoke/MountUpdateMode_Rollback.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/MountUpdateMode_Rollback2.tpk b/src/unit_tests/test_samples/smoke/MountUpdateMode_Rollback2.tpk deleted file mode 100644 index b8cb1f1..0000000 Binary files a/src/unit_tests/test_samples/smoke/MountUpdateMode_Rollback2.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/MountUpdateMode_Tpk.tpk b/src/unit_tests/test_samples/smoke/MountUpdateMode_Tpk.tpk deleted file mode 100644 index ea563d9..0000000 Binary files a/src/unit_tests/test_samples/smoke/MountUpdateMode_Tpk.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/MountUpdateMode_Tpk_2.tpk b/src/unit_tests/test_samples/smoke/MountUpdateMode_Tpk_2.tpk deleted file mode 100644 index 752d2f2..0000000 Binary files a/src/unit_tests/test_samples/smoke/MountUpdateMode_Tpk_2.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/ReadonlyUpdateInstallMode.tpk b/src/unit_tests/test_samples/smoke/ReadonlyUpdateInstallMode.tpk deleted file mode 100644 index c678f07..0000000 Binary files a/src/unit_tests/test_samples/smoke/ReadonlyUpdateInstallMode.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/ReadonlyUpdateUninstallMode.tpk b/src/unit_tests/test_samples/smoke/ReadonlyUpdateUninstallMode.tpk deleted file mode 100644 index ffc8dcb..0000000 Binary files a/src/unit_tests/test_samples/smoke/ReadonlyUpdateUninstallMode.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/RecoveryMode_CrashAfterUnzip.tpk b/src/unit_tests/test_samples/smoke/RecoveryMode_CrashAfterUnzip.tpk deleted file mode 100644 index d46291e..0000000 Binary files a/src/unit_tests/test_samples/smoke/RecoveryMode_CrashAfterUnzip.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/RecoveryMode_ForDelta.delta b/src/unit_tests/test_samples/smoke/RecoveryMode_ForDelta.delta deleted file mode 100644 index 90da396..0000000 Binary files a/src/unit_tests/test_samples/smoke/RecoveryMode_ForDelta.delta and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/RecoveryMode_ForDelta.tpk b/src/unit_tests/test_samples/smoke/RecoveryMode_ForDelta.tpk deleted file mode 100644 index c1bf82e..0000000 Binary files a/src/unit_tests/test_samples/smoke/RecoveryMode_ForDelta.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/RecoveryMode_ForMountInstall.tpk b/src/unit_tests/test_samples/smoke/RecoveryMode_ForMountInstall.tpk deleted file mode 100644 index 3a33b26..0000000 Binary files a/src/unit_tests/test_samples/smoke/RecoveryMode_ForMountInstall.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/RecoveryMode_ForMountUpdate.tpk b/src/unit_tests/test_samples/smoke/RecoveryMode_ForMountUpdate.tpk deleted file mode 100644 index b7f13cb..0000000 Binary files a/src/unit_tests/test_samples/smoke/RecoveryMode_ForMountUpdate.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/RecoveryMode_ForMountUpdate2.tpk b/src/unit_tests/test_samples/smoke/RecoveryMode_ForMountUpdate2.tpk deleted file mode 100644 index ef80686..0000000 Binary files a/src/unit_tests/test_samples/smoke/RecoveryMode_ForMountUpdate2.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/RecoveryMode_NonSharedData.tpk b/src/unit_tests/test_samples/smoke/RecoveryMode_NonSharedData.tpk deleted file mode 100644 index a7df83b..0000000 Binary files a/src/unit_tests/test_samples/smoke/RecoveryMode_NonSharedData.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/RecoveryMode_NonSharedData_2.tpk b/src/unit_tests/test_samples/smoke/RecoveryMode_NonSharedData_2.tpk deleted file mode 100644 index 441c58b..0000000 Binary files a/src/unit_tests/test_samples/smoke/RecoveryMode_NonSharedData_2.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/RecoveryMode_SharedData.tpk b/src/unit_tests/test_samples/smoke/RecoveryMode_SharedData.tpk deleted file mode 100644 index d1dc366..0000000 Binary files a/src/unit_tests/test_samples/smoke/RecoveryMode_SharedData.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/RecoveryMode_SharedData_2.tpk b/src/unit_tests/test_samples/smoke/RecoveryMode_SharedData_2.tpk deleted file mode 100644 index cf91a3a..0000000 Binary files a/src/unit_tests/test_samples/smoke/RecoveryMode_SharedData_2.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/RecoveryMode_Tpk_Installation.tpk b/src/unit_tests/test_samples/smoke/RecoveryMode_Tpk_Installation.tpk deleted file mode 100644 index 2b384bf..0000000 Binary files a/src/unit_tests/test_samples/smoke/RecoveryMode_Tpk_Installation.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/RecoveryMode_Tpk_Update.tpk b/src/unit_tests/test_samples/smoke/RecoveryMode_Tpk_Update.tpk deleted file mode 100644 index 3a04033..0000000 Binary files a/src/unit_tests/test_samples/smoke/RecoveryMode_Tpk_Update.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/RecoveryMode_Tpk_Update_2.tpk b/src/unit_tests/test_samples/smoke/RecoveryMode_Tpk_Update_2.tpk deleted file mode 100644 index 48c2839..0000000 Binary files a/src/unit_tests/test_samples/smoke/RecoveryMode_Tpk_Update_2.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/RecoveryPkg.delta b/src/unit_tests/test_samples/smoke/RecoveryPkg.delta deleted file mode 100644 index bcdf006..0000000 Binary files a/src/unit_tests/test_samples/smoke/RecoveryPkg.delta and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/RecoveryPkg.tpk b/src/unit_tests/test_samples/smoke/RecoveryPkg.tpk deleted file mode 100644 index aa35c55..0000000 Binary files a/src/unit_tests/test_samples/smoke/RecoveryPkg.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/RecoveryPkg2.tpk b/src/unit_tests/test_samples/smoke/RecoveryPkg2.tpk deleted file mode 100644 index 2828101..0000000 Binary files a/src/unit_tests/test_samples/smoke/RecoveryPkg2.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/ReinstallMode_Tpk.tpk b/src/unit_tests/test_samples/smoke/ReinstallMode_Tpk.tpk deleted file mode 100644 index 37d3fa5..0000000 Binary files a/src/unit_tests/test_samples/smoke/ReinstallMode_Tpk.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/TEP_Tpk1.tpk b/src/unit_tests/test_samples/smoke/TEP_Tpk1.tpk deleted file mode 100644 index f380e81..0000000 Binary files a/src/unit_tests/test_samples/smoke/TEP_Tpk1.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/TEP_Tpk10.tpk b/src/unit_tests/test_samples/smoke/TEP_Tpk10.tpk deleted file mode 100644 index c059e16..0000000 Binary files a/src/unit_tests/test_samples/smoke/TEP_Tpk10.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/TEP_Tpk11.tpk b/src/unit_tests/test_samples/smoke/TEP_Tpk11.tpk deleted file mode 100644 index 80e3706..0000000 Binary files a/src/unit_tests/test_samples/smoke/TEP_Tpk11.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/TEP_Tpk12.tpk b/src/unit_tests/test_samples/smoke/TEP_Tpk12.tpk deleted file mode 100644 index ba2574c..0000000 Binary files a/src/unit_tests/test_samples/smoke/TEP_Tpk12.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/TEP_Tpk13.tpk b/src/unit_tests/test_samples/smoke/TEP_Tpk13.tpk deleted file mode 100644 index a63da3f..0000000 Binary files a/src/unit_tests/test_samples/smoke/TEP_Tpk13.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/TEP_Tpk14.tpk b/src/unit_tests/test_samples/smoke/TEP_Tpk14.tpk deleted file mode 100644 index b2ad7a0..0000000 Binary files a/src/unit_tests/test_samples/smoke/TEP_Tpk14.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/TEP_Tpk2.tpk b/src/unit_tests/test_samples/smoke/TEP_Tpk2.tpk deleted file mode 100644 index 1aa3798..0000000 Binary files a/src/unit_tests/test_samples/smoke/TEP_Tpk2.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/TEP_Tpk3.tpk b/src/unit_tests/test_samples/smoke/TEP_Tpk3.tpk deleted file mode 100644 index 6d113d8..0000000 Binary files a/src/unit_tests/test_samples/smoke/TEP_Tpk3.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/TEP_Tpk4.tpk b/src/unit_tests/test_samples/smoke/TEP_Tpk4.tpk deleted file mode 100644 index 50a766c..0000000 Binary files a/src/unit_tests/test_samples/smoke/TEP_Tpk4.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/TEP_Tpk5.tpk b/src/unit_tests/test_samples/smoke/TEP_Tpk5.tpk deleted file mode 100644 index b8bf161..0000000 Binary files a/src/unit_tests/test_samples/smoke/TEP_Tpk5.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/TEP_Tpk6.tpk b/src/unit_tests/test_samples/smoke/TEP_Tpk6.tpk deleted file mode 100644 index bea5c30..0000000 Binary files a/src/unit_tests/test_samples/smoke/TEP_Tpk6.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/TEP_Tpk7.tpk b/src/unit_tests/test_samples/smoke/TEP_Tpk7.tpk deleted file mode 100644 index ac4e6ea..0000000 Binary files a/src/unit_tests/test_samples/smoke/TEP_Tpk7.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/TEP_Tpk8.tpk b/src/unit_tests/test_samples/smoke/TEP_Tpk8.tpk deleted file mode 100644 index 8b05078..0000000 Binary files a/src/unit_tests/test_samples/smoke/TEP_Tpk8.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/TEP_Tpk9.tpk b/src/unit_tests/test_samples/smoke/TEP_Tpk9.tpk deleted file mode 100644 index bcaa55e..0000000 Binary files a/src/unit_tests/test_samples/smoke/TEP_Tpk9.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/UpdateMode_NonSharedData.tpk b/src/unit_tests/test_samples/smoke/UpdateMode_NonSharedData.tpk deleted file mode 100644 index 1eea6e5..0000000 Binary files a/src/unit_tests/test_samples/smoke/UpdateMode_NonSharedData.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/UpdateMode_NonSharedData_2.tpk b/src/unit_tests/test_samples/smoke/UpdateMode_NonSharedData_2.tpk deleted file mode 100644 index be7893d..0000000 Binary files a/src/unit_tests/test_samples/smoke/UpdateMode_NonSharedData_2.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/UpdateMode_Preload.tpk b/src/unit_tests/test_samples/smoke/UpdateMode_Preload.tpk deleted file mode 100644 index 0de6572..0000000 Binary files a/src/unit_tests/test_samples/smoke/UpdateMode_Preload.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/UpdateMode_Preload2.tpk b/src/unit_tests/test_samples/smoke/UpdateMode_Preload2.tpk deleted file mode 100644 index 54df318..0000000 Binary files a/src/unit_tests/test_samples/smoke/UpdateMode_Preload2.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/UpdateMode_Rollback.tpk b/src/unit_tests/test_samples/smoke/UpdateMode_Rollback.tpk deleted file mode 100644 index e9d6f82..0000000 Binary files a/src/unit_tests/test_samples/smoke/UpdateMode_Rollback.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/UpdateMode_Rollback2.tpk b/src/unit_tests/test_samples/smoke/UpdateMode_Rollback2.tpk deleted file mode 100644 index 07c53a3..0000000 Binary files a/src/unit_tests/test_samples/smoke/UpdateMode_Rollback2.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/UpdateMode_SharedData.tpk b/src/unit_tests/test_samples/smoke/UpdateMode_SharedData.tpk deleted file mode 100644 index 9df9b8a..0000000 Binary files a/src/unit_tests/test_samples/smoke/UpdateMode_SharedData.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/UpdateMode_SharedData_2.tpk b/src/unit_tests/test_samples/smoke/UpdateMode_SharedData_2.tpk deleted file mode 100644 index aa59e29..0000000 Binary files a/src/unit_tests/test_samples/smoke/UpdateMode_SharedData_2.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/UpdateMode_Tpk.tpk b/src/unit_tests/test_samples/smoke/UpdateMode_Tpk.tpk deleted file mode 100644 index 9224768..0000000 Binary files a/src/unit_tests/test_samples/smoke/UpdateMode_Tpk.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/UpdateMode_Tpk_2.tpk b/src/unit_tests/test_samples/smoke/UpdateMode_Tpk_2.tpk deleted file mode 100644 index 2df7ddc..0000000 Binary files a/src/unit_tests/test_samples/smoke/UpdateMode_Tpk_2.tpk and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/delta_dir/.rds_delta b/src/unit_tests/test_samples/smoke/delta_dir/.rds_delta deleted file mode 100644 index fb08dcc..0000000 --- a/src/unit_tests/test_samples/smoke/delta_dir/.rds_delta +++ /dev/null @@ -1,6 +0,0 @@ -#add -ADDED -#modify -MODIFIED -#delete -DELETED diff --git a/src/unit_tests/test_samples/smoke/delta_dir/ADDED b/src/unit_tests/test_samples/smoke/delta_dir/ADDED deleted file mode 100644 index e69de29..0000000 diff --git a/src/unit_tests/test_samples/smoke/delta_dir/MODIFIED b/src/unit_tests/test_samples/smoke/delta_dir/MODIFIED deleted file mode 100644 index 1f7a7a4..0000000 --- a/src/unit_tests/test_samples/smoke/delta_dir/MODIFIED +++ /dev/null @@ -1 +0,0 @@ -version 2 diff --git a/src/unit_tests/test_samples/smoke/delta_dir/author-signature.xml b/src/unit_tests/test_samples/smoke/delta_dir/author-signature.xml deleted file mode 100644 index 1936f08..0000000 --- a/src/unit_tests/test_samples/smoke/delta_dir/author-signature.xml +++ /dev/null @@ -1,74 +0,0 @@ - - - - - - -4W8VliAYUP1KY2gLJ/YDy2TmcXYVm+PY7XikQD/bFwA= - - - -m76Dq+1hU8YC3/kYBle8rJLovpCFYy3/HQCUS74IeSY= - - - -ZmAZCVzbwHUNfKaJi3rtgc6aF+/+Qk4MoetKx2sXEsI= - - - -1d0oEZHqPn+QzNzGIHwj9ODby6x9ggFs9uOsav6jPNs= - - - -SY77G0wHiFZyXUI2qoDEbKCfT2LP1V8D+qS4ec17yWM= - - - - - - -lpo8tUDs054eLlBQXiDPVDVKfw30ZZdtkRs1jd7H5K8= - - - -C69U/+6mOukXlqpfx1KRXm8hPJ6+CAuQJBrR0thQemMBaAwt6Jzk1zgDJt+AYlenNamj24HqoULa -sl7Cibfp+FU/zeNC587JPQT/GRaErr4ifgGLDpJ41BNr62ODeMbiBgct8eX0igWl622VqZUSy1YD -SWKKkwN7OeoCUv4fKgQ= - - - - -MIIClTCCAX2gAwIBAgIGAVSVy18QMA0GCSqGSIb3DQEBBQUAMFYxGjAYBgNVBAoMEVRpemVuIEFz -c29jaWF0aW9uMRowGAYDVQQLDBFUaXplbiBBc3NvY2lhdGlvbjEcMBoGA1UEAwwTVGl6ZW4gRGV2 -ZWxvcGVycyBDQTAeFw0xMjExMDEwMDAwMDBaFw0xOTAxMDEwMDAwMDBaMBExDzANBgNVBAMMBmF1 -dGhvcjCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEArRGCnZnlc9C4Gl1ywl02AajwD/UO249R -AZHgI3IPGhbzo2XT7gWDJvh1AqS8v6lKvMwkwRoEq7kXK9oJ3u4blP+K0pAj6cLXR9kHdfY0/ZaT -ficImTEgFxSKFHLGvsDX2S3QmeHS3y4pvmLdFr+fqsvBIDz+SISMvJ8Vlemm7PkCAwEAAaMyMDAw -DAYDVR0TAQH/BAIwADALBgNVHQ8EBAMCB4AwEwYDVR0lBAwwCgYIKwYBBQUHAwMwDQYJKoZIhvcN -AQEFBQADggEBAAoIjlzjeo0hdBxhJdrTZZG29KzpBDAXEKn9JvGqAhH5UdKxnqXDn5jt+Yode2a4 -/lQq9jFnzPCr7e+uBAnpOcH/sf3sKVI1J+Ssxo4j3tOwL74wNLUSONvXrfGFtLboof5d/JdnffME -WLQTgd95k3OTQzZSLYrR9tXgpnBgDBaZpnnE7XKiAEZ1IetexkD6f78gDe/yucYO3VESzsrenLaQ -MPcTF5kzi3QZGKJDMGhzC88bKDP96ZvhY+LOAUg3WNAk8Uyqpef6GuKSBZXXURN9EJErU2KoCMkx -hQmjVgQRwHdLy5iCWMgkWr5LEUMJocOG4DozrZ5XWBPiKSoYcNc= - - -MIIDOTCCAiGgAwIBAgIBATANBgkqhkiG9w0BAQUFADBYMRowGAYDVQQKDBFUaXplbiBBc3NvY2lh -dGlvbjEaMBgGA1UECwwRVGl6ZW4gQXNzb2NpYXRpb24xHjAcBgNVBAMMFVRpemVuIERldmVsb3Bl -cnMgUm9vdDAeFw0xMjAxMDEwMDAwMDBaFw0yNzAxMDEwMDAwMDBaMFYxGjAYBgNVBAoMEVRpemVu -IEFzc29jaWF0aW9uMRowGAYDVQQLDBFUaXplbiBBc3NvY2lhdGlvbjEcMBoGA1UEAwwTVGl6ZW4g -RGV2ZWxvcGVycyBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANVGhRGmMIUyBA7o -PCz8Sxut6z6HNkF4oDIuzuKaMzRYPeWodwe9O0gmqAkToQHfwg2giRhE5GoPld0fq+OYMMwSasCu -g8dwODx1eDeSYVuOLWRxpAmbTXOsSFi6VoWeyaPEm18JBHvZBsU5YQtgZ6Kp7MqzvQg3pXOxtajj -vyHxiatJl+xXrHgcXC1wgyG3buty7u/Fi2mvKXJ0PRJcCjjK81dqe/Vr20sRUCrbk02zbm5ggFt/ -jIEhV8wbFRQpliobc7J4dSTKhFfrqGM8rdd54LYhD7gSI1CFSe16pUXfcVR7FhJztRaiGLnCrwBE -dyTZ248+D4L/qR/D0axb3jcCAwEAAaMQMA4wDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQUFAAOC -AQEAnOXXQ/1O/QTDHyrmQDtFziqPY3xWlJBqJtEqXiT7Y+Ljpe66e+Ee/OjQMlZe8gu21/8cKklH -95RxjopMWCVedXDUbWdvS2+CdyvVW/quT2E0tjqIzXDekUTYwwhlPWlGxvfj3VsxqSFq3p8Brl04 -1Gx5RKAGyKVsMfTLhbbwSWwApuBUxYfcNpKwLWGPXkysu+HctY03OKv4/xKBnVWiN8ex/Sgesi0M -+OBAOMdZMPK32uJBTeKFx1xZgTLIhk45V0hPOomPjZloiv0LSS11eyd451ufjW0iHRE7WlpR6EvI -W6TFyZgMpQq+kg4hWl2SBTf3s2VI8Ygz7gj8TMlClg== - - - - - \ No newline at end of file diff --git a/src/unit_tests/test_samples/smoke/delta_dir/signature1.xml b/src/unit_tests/test_samples/smoke/delta_dir/signature1.xml deleted file mode 100644 index 68e70cf..0000000 --- a/src/unit_tests/test_samples/smoke/delta_dir/signature1.xml +++ /dev/null @@ -1,76 +0,0 @@ - - - - - - -4W8VliAYUP1KY2gLJ/YDy2TmcXYVm+PY7XikQD/bFwA= - - - -m76Dq+1hU8YC3/kYBle8rJLovpCFYy3/HQCUS74IeSY= - - - -p2OKn1M4try6sjsAi7//u2Og5vg1yrPQ7biD4FOHnK4= - - - -ZmAZCVzbwHUNfKaJi3rtgc6aF+/+Qk4MoetKx2sXEsI= - - - -1d0oEZHqPn+QzNzGIHwj9ODby6x9ggFs9uOsav6jPNs= - - - -SY77G0wHiFZyXUI2qoDEbKCfT2LP1V8D+qS4ec17yWM= - - - - - - -u/jU3U4Zm5ihTMSjKGlGYbWzDfRkGphPPHx3gJIYEJ4= - - - -CgAdWvIj11sAxwLplwiC6UHnM2AFSqcr2tBFoLO3BRKEpCwwC1tsCG9gwQTT4BDWjMUG7f93C6kC -KyLV689eeZf5e4yk9yfvAu30kLpIXYF5fOMfmMP6LuLYOomf2u84wY9s51hzwMyL5lz2PgrQda6T -fIxSAXcOtC2vxGWsSa4= - - - - -MIICmzCCAgQCCQDXI7WLdVZwiTANBgkqhkiG9w0BAQUFADCBjzELMAkGA1UEBhMCS1IxDjAMBgNV -BAgMBVN1d29uMQ4wDAYDVQQHDAVTdXdvbjEWMBQGA1UECgwNVGl6ZW4gVGVzdCBDQTEiMCAGA1UE -CwwZVGl6ZW4gRGlzdHJpYnV0b3IgVGVzdCBDQTEkMCIGA1UEAwwbVGl6ZW4gUHVibGljIERpc3Ry -aWJ1dG9yIENBMB4XDTEyMTAyOTEzMDMwNFoXDTIyMTAyNzEzMDMwNFowgZMxCzAJBgNVBAYTAktS -MQ4wDAYDVQQIDAVTdXdvbjEOMAwGA1UEBwwFU3V3b24xFjAUBgNVBAoMDVRpemVuIFRlc3QgQ0Ex -IjAgBgNVBAsMGVRpemVuIERpc3RyaWJ1dG9yIFRlc3QgQ0ExKDAmBgNVBAMMH1RpemVuIFB1Ymxp -YyBEaXN0cmlidXRvciBTaWduZXIwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBALtMvlc5hENK -90ZdA+y66+Sy0enD1gpZDBh5T9RP0oRsptJv5jjNTseQbQi0SZOdOXb6J7iQdlBCtR343RpIEz8H -mrBy7mSY7mgwoU4EPpp4CTSUeAuKcmvrNOngTp5Hv7Ngf02TTHOLK3hZLpGayaDviyNZB5PdqQdB -hokKjzAzAgMBAAEwDQYJKoZIhvcNAQEFBQADgYEAvGp1gxxAIlFfhJH1efjb9BJK/rtRkbYn9+Ez -GEbEULg1svsgnyWisFimI3uFvgI/swzr1eKVY3Sc8MQ3+Fdy3EkbDZ2+WAubhcEkorTWjzWz2fL1 -vKaYjeIsuEX6TVRUugHWudPzcEuQRLQf8ibZWjbQdBmpeQYBMg5x+xKLCJc= - - -MIICtDCCAh2gAwIBAgIJAMDbehElPNKvMA0GCSqGSIb3DQEBBQUAMIGVMQswCQYDVQQGEwJLUjEO -MAwGA1UECAwFU3V3b24xDjAMBgNVBAcMBVN1d29uMRYwFAYDVQQKDA1UaXplbiBUZXN0IENBMSMw -IQYDVQQLDBpUVGl6ZW4gRGlzdHJpYnV0b3IgVGVzdCBDQTEpMCcGA1UEAwwgVGl6ZW4gUHVibGlj -IERpc3RyaWJ1dG9yIFJvb3QgQ0EwHhcNMTIxMDI5MTMwMjUwWhcNMjIxMDI3MTMwMjUwWjCBjzEL -MAkGA1UEBhMCS1IxDjAMBgNVBAgMBVN1d29uMQ4wDAYDVQQHDAVTdXdvbjEWMBQGA1UECgwNVGl6 -ZW4gVGVzdCBDQTEiMCAGA1UECwwZVGl6ZW4gRGlzdHJpYnV0b3IgVGVzdCBDQTEkMCIGA1UEAwwb -VGl6ZW4gUHVibGljIERpc3RyaWJ1dG9yIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDe -OTS/3nXvkDEmsFCJIvRlQ3RKDcxdWJJp625pFqHdmoJBdV+x6jl1raGK2Y1sp2Gdvpjc/z92yzAp -bE/UVLPh/tRNZPeGhzU4ejDDm7kzdr2f7Ia0U98K+OoY12ucwg7TYNItj9is7Cj4blGfuMDzd2ah -2AgnCGlwNwV/pv+uVQIDAQABoxAwDjAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBBQUAA4GBACqJ -KO33YdoGudwanZIxMdXuxnnD9R6u72ltKk1S4zPfMJJv482CRGCI4FK6djhlsI4i0Lt1SVIJEed+ -yc3qckGm19dW+4xdlkekon7pViEBWuyHw8OWv3RXtTum1+PGHjBJ2eYY4ZKIpz73U/1NC16sTB/0 -VhfnkHwPltmrpYVe - - - - - \ No newline at end of file diff --git a/src/unit_tests/test_samples/smoke/delta_dir/tizen-manifest.xml b/src/unit_tests/test_samples/smoke/delta_dir/tizen-manifest.xml deleted file mode 100644 index 4777c0c..0000000 --- a/src/unit_tests/test_samples/smoke/delta_dir/tizen-manifest.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - native.png - - diff --git a/src/unit_tests/test_samples/smoke/legacy_extimage_dir/app2sd_migrate.db b/src/unit_tests/test_samples/smoke/legacy_extimage_dir/app2sd_migrate.db deleted file mode 100644 index f2f336a..0000000 Binary files a/src/unit_tests/test_samples/smoke/legacy_extimage_dir/app2sd_migrate.db and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/legacy_extimage_dir/smokeapp28 b/src/unit_tests/test_samples/smoke/legacy_extimage_dir/smokeapp28 deleted file mode 100644 index 7f96369..0000000 Binary files a/src/unit_tests/test_samples/smoke/legacy_extimage_dir/smokeapp28 and /dev/null differ diff --git a/src/unit_tests/test_samples/smoke/tep1.tep b/src/unit_tests/test_samples/smoke/tep1.tep deleted file mode 100644 index e0002c8..0000000 --- a/src/unit_tests/test_samples/smoke/tep1.tep +++ /dev/null @@ -1 +0,0 @@ -tep1 diff --git a/src/unit_tests/test_samples/smoke/tep2.tep b/src/unit_tests/test_samples/smoke/tep2.tep deleted file mode 100644 index d7786cf..0000000 --- a/src/unit_tests/test_samples/smoke/tep2.tep +++ /dev/null @@ -1 +0,0 @@ -tep2 diff --git a/src/unit_tests/test_samples/tpk-sample-manifest.xml b/src/unit_tests/test_samples/tpk-sample-manifest.xml deleted file mode 100644 index c661101..0000000 --- a/src/unit_tests/test_samples/tpk-sample-manifest.xml +++ /dev/null @@ -1,43 +0,0 @@ - - - tester - This is default description - This is test description - - - - testapp.png - - - - - - - - - - - - - - - - - - testapp.png - testapp.png - - - http://tizen.org/account/capability/calendar - http://tizen.org/account/capability/photo - - - - http://tizen.org/privilege/appmanager.launch - http://tizen.org/privilege/packagemanager.info - - true - true - true - true - diff --git a/src/unit_tests/tpk_smoke_utils.cc b/src/unit_tests/tpk_smoke_utils.cc deleted file mode 100644 index 0d56e1d..0000000 --- a/src/unit_tests/tpk_smoke_utils.cc +++ /dev/null @@ -1,101 +0,0 @@ -// Copyright (c) 2017 Samsung Electronics Co., Ltd All Rights Reserved -// Use of this source code is governed by an apache-2.0 license that can be -// found in the LICENSE file. - -#include "unit_tests/tpk_smoke_utils.h" - -#include - -#include -#include - -#include "tpk/tpk_installer.h" - -namespace ci = common_installer; -namespace st = smoke_test; - -namespace smoke_test { - -const bf::path kSmokePackagesDirectory = - "/usr/share/tpk-installer-ut/test_samples/smoke/"; - -bool ValidatePackage(const std::string& pkgid, - const std::pair& app, - const TestParameters& params) { - return ValidatePackage(pkgid, Apps{ app }, params); -} - -bool ValidateExternalPackage(const std::string& pkgid, - const std::pair& app, - const TestParameters& params) { - return ValidateExternalPackage(pkgid, Apps{ app }, params); -} - -bool ValidateExtendedPackage(const std::string& pkgid, - const std::pair& app, - const TestParameters& params) { - return ValidateExtendedPackage(pkgid, Apps{ app }, params); -} - -TpkBackendInterface::AppQueryInterfacePtr -TpkBackendInterface::CreateQueryInterface() const { - return AppQueryInterfacePtr(new tpk::TpkAppQueryInterface()); -} - -TpkBackendInterface::AppInstallerPtr -TpkBackendInterface::CreateInstaller( - ci::PkgMgrPtr pkgmgr) const { - return AppInstallerPtr(new tpk::TpkInstaller(pkgmgr)); -} - -TpkBackendInterface::AppInstallerPtr -TpkBackendInterface::CreateFailExpectedInstaller( - ci::PkgMgrPtr pkgmgr, int fail_at) const { - return AppInstallerPtr(new FailExpectedTpkInstaller(pkgmgr, fail_at)); -} - -TpkBackendInterface::CommandResult -TpkBackendInterface::InstallWithTEP( - const bf::path& path, const bf::path& tep) const { - const char* argv[] = {"", "-i", path.c_str(), "-u", uid_str_.c_str(), - "-e", tep.c_str()}; - return CallBackend(SIZEOFARRAY(argv), argv); -} - -TpkBackendInterface::CommandResult -TpkBackendInterface::MountInstallWithTEP( - const bf::path& path, const bf::path& tep) const { - const char* argv[] = {"", "-w", path.c_str(), "-u", uid_str_.c_str(), - "-e", tep.c_str()}; - return CallBackend(SIZEOFARRAY(argv), argv); -} - -TpkBackendInterface::CommandResult -TpkBackendInterface::InstallSuccessWithTEP( - const bf::path& path, const bf::path& tep) const { - RequestResult tmp_mode = mode_; - RequestResult &original_mode = const_cast(mode_); - original_mode = RequestResult::NORMAL; - if (InstallWithTEP(path, tep) != BackendInterface::CommandResult::OK) { - LOG(ERROR) << "Failed to install application with tep. Cannot update"; - return BackendInterface::CommandResult::UNKNOWN; - } - original_mode = tmp_mode; - return BackendInterface::CommandResult::OK; -} - -TpkBackendInterface::CommandResult -TpkBackendInterface::MountInstallSuccessWithTEP( - const bf::path& path, const bf::path& tep) const { - RequestResult tmp_mode = mode_; - RequestResult &original_mode = const_cast(mode_); - original_mode = RequestResult::NORMAL; - if (MountInstallWithTEP(path, tep) != BackendInterface::CommandResult::OK) { - LOG(ERROR) << "Failed to mount install application with tep. Cannot update"; - return BackendInterface::CommandResult::UNKNOWN; - } - original_mode = tmp_mode; - return BackendInterface::CommandResult::OK; -} - -} // namespace smoke_test diff --git a/src/unit_tests/tpk_smoke_utils.h b/src/unit_tests/tpk_smoke_utils.h deleted file mode 100644 index 18d00de..0000000 --- a/src/unit_tests/tpk_smoke_utils.h +++ /dev/null @@ -1,197 +0,0 @@ -// Copyright (c) 2017 Samsung Electronics Co., Ltd All Rights Reserved -// Use of this source code is governed by an apache-2.0 license that can be -// found in the LICENSE file. - -#ifndef UNIT_TESTS_TPK_SMOKE_UTILS_H_ -#define UNIT_TESTS_TPK_SMOKE_UTILS_H_ - -#include -#include -#include -#include - -#include -#include -#include - -#include "tpk/tpk_app_query_interface.h" -#include "tpk/tpk_installer.h" - -namespace smoke_test { - -extern const bf::path kSmokePackagesDirectory; - -bool ValidatePackage(const std::string& pkgid, - const std::pair& app, - const TestParameters& params); - -bool ValidateExternalPackage(const std::string& pkgid, - const std::pair& app, - const TestParameters& params); - -bool ValidateExtendedPackage(const std::string& pkgid, - const std::pair& app, - const TestParameters& params); - -class TpkBackendInterface: public BackendInterface { - public: - using BackendInterface::BackendInterface; - CommandResult InstallWithTEP(const bf::path& path, - const bf::path& tep) const; - CommandResult InstallSuccessWithTEP(const bf::path& path, - const bf::path& tep) const; - CommandResult MountInstallWithTEP(const bf::path& path, - const bf::path& tep) const; - CommandResult MountInstallSuccessWithTEP(const bf::path& path, - const bf::path& tep) const; - - AppQueryInterfacePtr CreateQueryInterface() const override; - AppInstallerPtr CreateInstaller( - common_installer::PkgMgrPtr pkgmgr) const override; - AppInstallerPtr CreateFailExpectedInstaller( - common_installer::PkgMgrPtr pkgmgr, int fail_at) const override; -}; - -class TpkSmokeTestHelperRunner : public SmokeTestHelperRunner { - private: - common_installer::Subprocess CreateSubprocess() const { - return common_installer::Subprocess( - "/usr/bin/tpk-installer-ut/smoke-test-helper"); - } -}; - -#ifdef OVERRIDE_STEPS_BLOCK -#undef OVERRIDE_STEPS_BLOCK -#endif -#define OVERRIDE_STEPS_BLOCK(STEPS) \ - void STEPS() override { \ - tpk::TpkInstaller::STEPS(); \ - if (fail_at_ > -1) \ - AddStepAtIndex(fail_at_); \ - else \ - AddStep(); \ - } \ - -class FailExpectedTpkInstaller : public tpk::TpkInstaller { - public: - explicit FailExpectedTpkInstaller( - common_installer::PkgMgrPtr pkgmgr, int fail_at) - : tpk::TpkInstaller(pkgmgr), fail_at_(fail_at) { } - - private: - OVERRIDE_STEPS_BLOCK(InstallSteps) - OVERRIDE_STEPS_BLOCK(UpdateSteps) - OVERRIDE_STEPS_BLOCK(UninstallSteps) - OVERRIDE_STEPS_BLOCK(ReinstallSteps) - OVERRIDE_STEPS_BLOCK(DeltaSteps) - OVERRIDE_STEPS_BLOCK(MoveSteps) - OVERRIDE_STEPS_BLOCK(RecoverySteps) - OVERRIDE_STEPS_BLOCK(MountInstallSteps) - OVERRIDE_STEPS_BLOCK(MountUpdateSteps) - OVERRIDE_STEPS_BLOCK(ManifestDirectInstallSteps) - OVERRIDE_STEPS_BLOCK(ManifestDirectUpdateSteps) - OVERRIDE_STEPS_BLOCK(ManifestPartialInstallSteps) - OVERRIDE_STEPS_BLOCK(ManifestPartialUpdateSteps) - OVERRIDE_STEPS_BLOCK(PartialUninstallSteps) - OVERRIDE_STEPS_BLOCK(ReadonlyUpdateInstallSteps) - OVERRIDE_STEPS_BLOCK(ReadonlyUpdateUninstallSteps) - OVERRIDE_STEPS_BLOCK(DisablePkgSteps) - OVERRIDE_STEPS_BLOCK(EnablePkgSteps) - OVERRIDE_STEPS_BLOCK(MigrateExtImgSteps) - OVERRIDE_STEPS_BLOCK(RecoverDBSteps) - - int fail_at_; -}; - -#ifdef OVERRIDE_STEPS_BLOCK -#undef OVERRIDE_STEPS_BLOCK -#endif -#define OVERRIDE_STEPS_BLOCK(STEPS) \ - void STEPS() override { \ - tpk::TpkInstaller::STEPS(); \ - if (crash_at_ > -1) \ - AddStepAtIndex(crash_at_, type_); \ - else if (step_name_.size()) \ - AddStepAfter(step_name_, type_); \ - else \ - AddStep(type_); \ - } \ - -class CrashTpkInstaller : public tpk::TpkInstaller { - public: - explicit CrashTpkInstaller(common_installer::PkgMgrPtr pkgmgr, int crash_at, - std::string step_name, CrashStepType type) : - tpk::TpkInstaller(pkgmgr), crash_at_(crash_at), - step_name_(step_name), type_(type) {} - - private: - OVERRIDE_STEPS_BLOCK(InstallSteps) - OVERRIDE_STEPS_BLOCK(UpdateSteps) - OVERRIDE_STEPS_BLOCK(UninstallSteps) - OVERRIDE_STEPS_BLOCK(ReinstallSteps) - OVERRIDE_STEPS_BLOCK(DeltaSteps) - OVERRIDE_STEPS_BLOCK(MoveSteps) - OVERRIDE_STEPS_BLOCK(RecoverySteps) - OVERRIDE_STEPS_BLOCK(MountInstallSteps) - OVERRIDE_STEPS_BLOCK(MountUpdateSteps) - OVERRIDE_STEPS_BLOCK(ManifestDirectInstallSteps) - OVERRIDE_STEPS_BLOCK(ManifestDirectUpdateSteps) - OVERRIDE_STEPS_BLOCK(ManifestPartialInstallSteps) - OVERRIDE_STEPS_BLOCK(ManifestPartialUpdateSteps) - OVERRIDE_STEPS_BLOCK(PartialUninstallSteps) - OVERRIDE_STEPS_BLOCK(ReadonlyUpdateInstallSteps) - OVERRIDE_STEPS_BLOCK(ReadonlyUpdateUninstallSteps) - OVERRIDE_STEPS_BLOCK(DisablePkgSteps) - OVERRIDE_STEPS_BLOCK(EnablePkgSteps) - OVERRIDE_STEPS_BLOCK(MigrateExtImgSteps) - OVERRIDE_STEPS_BLOCK(RecoverDBSteps) - - int crash_at_; - std::string step_name_; - CrashStepType type_; -}; - -#ifdef OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS -#undef OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS -#endif -#define OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(STEPS) \ - void STEPS() override { \ - tpk::TpkInstaller::STEPS(); \ - RemoveStep("RunParserPlugin"); \ - } \ - -class TpkInstallerWithoutPasrserPlugins : public tpk::TpkInstaller { - public: - explicit TpkInstallerWithoutPasrserPlugins( - common_installer::PkgMgrPtr pkgmgr) : tpk::TpkInstaller(pkgmgr) { } - - private: - OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(InstallSteps) - OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(UpdateSteps) - OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(UninstallSteps) - OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(ReinstallSteps) - OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(DeltaSteps) - OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(MoveSteps) - OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(MountInstallSteps) - OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(MountUpdateSteps) - OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(ManifestDirectInstallSteps) - OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(ManifestDirectUpdateSteps) - OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(ManifestPartialInstallSteps) - OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(ManifestPartialUpdateSteps) - OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(PartialUninstallSteps) - OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(ReadonlyUpdateInstallSteps) - OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(ReadonlyUpdateUninstallSteps) - OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(DisablePkgSteps) - OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(EnablePkgSteps) - OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(MigrateExtImgSteps) - OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(RecoverDBSteps) - void RecoverySteps() override { - tpk::TpkInstaller::RecoverySteps(); - RemoveStep("RecoverParserPlugin"); - } -}; - -} // namespace smoke_test - - -#endif // UNIT_TESTS_TPK_SMOKE_UTILS_H_ diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt new file mode 100644 index 0000000..d506da3 --- /dev/null +++ b/test/CMakeLists.txt @@ -0,0 +1 @@ +ADD_SUBDIRECTORY(smoke_tests) diff --git a/test/smoke_tests/CMakeLists.txt b/test/smoke_tests/CMakeLists.txt new file mode 100644 index 0000000..d027ef8 --- /dev/null +++ b/test/smoke_tests/CMakeLists.txt @@ -0,0 +1,79 @@ +SET(DESTINATION_DIR tpk-installer-ut) +SET(TARGET_SMOKE_UTILS smoke-utils) + +# Executables +ADD_EXECUTABLE(${TARGET_SMOKE_TEST} + smoke_test.cc +) + +ADD_EXECUTABLE(${TARGET_SMOKE_TEST_EXTENSIVE} + extensive_smoke_test.cc +) + +ADD_EXECUTABLE(${TARGET_SMOKE_TEST_HELPER} + smoke_test_helper.cc +) + +ADD_EXECUTABLE(${TARGET_MANIFEST_TEST} + manifest_test.cc + manifest_test_package.cc + manifest_test_service_application.cc + manifest_test_ui_application.cc + manifest_test_watch_application.cc + manifest_test_widget_application.cc +) + +ADD_EXECUTABLE(${TARGET_RECOVERY_TEST} + recovery_test.cc +) + +ADD_LIBRARY(${TARGET_TPK_SMOKE_UTILS} SHARED + tpk_smoke_utils.cc +) + +TARGET_INCLUDE_DIRECTORIES(${TARGET_SMOKE_TEST} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../) +TARGET_INCLUDE_DIRECTORIES(${TARGET_SMOKE_TEST_EXTENSIVE} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../) +TARGET_INCLUDE_DIRECTORIES(${TARGET_SMOKE_TEST_HELPER} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../) +TARGET_INCLUDE_DIRECTORIES(${TARGET_TPK_SMOKE_UTILS} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../) +TARGET_INCLUDE_DIRECTORIES(${TARGET_MANIFEST_TEST} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../) +TARGET_INCLUDE_DIRECTORIES(${TARGET_RECOVERY_TEST} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../) + +INSTALL(DIRECTORY test_samples/ DESTINATION ${SHAREDIR}/${DESTINATION_DIR}/test_samples) + +APPLY_PKG_CONFIG(${TARGET_SMOKE_TEST} PUBLIC + Boost + GTEST + GUM_DEPS +) +APPLY_PKG_CONFIG(${TARGET_SMOKE_TEST_EXTENSIVE} PUBLIC + Boost + GTEST + GUM_DEPS +) +APPLY_PKG_CONFIG(${TARGET_MANIFEST_TEST} PUBLIC + Boost + GTEST +) +APPLY_PKG_CONFIG(${TARGET_RECOVERY_TEST} PUBLIC + Boost + GTEST + GUM_DEPS +) + +# FindGTest module do not sets all needed libraries in GTEST_LIBRARIES and +# GTest main libraries is still missing, so additional linking of +# GTEST_MAIN_LIBRARIES is needed. +TARGET_LINK_LIBRARIES(${TARGET_SMOKE_TEST} PRIVATE ${TARGET_LIBNAME_TPK} ${GTEST_MAIN_LIBRARIES} ${TARGET_SMOKE_UTILS} ${TARGET_TPK_SMOKE_UTILS}) +TARGET_LINK_LIBRARIES(${TARGET_SMOKE_TEST_EXTENSIVE} PRIVATE ${TARGET_LIBNAME_TPK} ${GTEST_MAIN_LIBRARIES} ${TARGET_SMOKE_UTILS} ${TARGET_TPK_SMOKE_UTILS}) +TARGET_LINK_LIBRARIES(${TARGET_SMOKE_TEST_HELPER} PRIVATE ${TARGET_LIBNAME_TPK} ${TARGET_TPK_SMOKE_UTILS}) +TARGET_LINK_LIBRARIES(${TARGET_MANIFEST_TEST} PRIVATE ${TARGET_LIBNAME_TPK} ${GTEST_MAIN_LIBRARIES}) +TARGET_LINK_LIBRARIES(${TARGET_RECOVERY_TEST} PRIVATE ${TARGET_LIBNAME_TPK} ${GTEST_MAIN_LIBRARIES} ${TARGET_SMOKE_UTILS} ${TARGET_TPK_SMOKE_UTILS}) +TARGET_LINK_LIBRARIES(${TARGET_TPK_SMOKE_UTILS} PRIVATE ${TARGET_LIBNAME_TPK} ${TARGET_SMOKE_UTILS}) + +INSTALL(TARGETS ${TARGET_SMOKE_TEST} DESTINATION ${BINDIR}/${DESTINATION_DIR}) +INSTALL(TARGETS ${TARGET_SMOKE_TEST_EXTENSIVE} DESTINATION ${BINDIR}/${DESTINATION_DIR}) +INSTALL(TARGETS ${TARGET_SMOKE_TEST_HELPER} DESTINATION ${BINDIR}/${DESTINATION_DIR}) +INSTALL(TARGETS ${TARGET_MANIFEST_TEST} DESTINATION ${BINDIR}/${DESTINATION_DIR}) +INSTALL(TARGETS ${TARGET_RECOVERY_TEST} DESTINATION ${BINDIR}/${DESTINATION_DIR}) +INSTALL(TARGETS ${TARGET_TPK_SMOKE_UTILS} DESTINATION ${LIB_INSTALL_DIR}) +INSTALL(FILES tpk_smoke_utils.h DESTINATION ${INCLUDEDIR}/app-installers/smoke_tests/) diff --git a/test/smoke_tests/extensive_smoke_test.cc b/test/smoke_tests/extensive_smoke_test.cc new file mode 100644 index 0000000..0a666ea --- /dev/null +++ b/test/smoke_tests/extensive_smoke_test.cc @@ -0,0 +1,500 @@ +// Copyright (c) 2017 Samsung Electronics Co., Ltd All Rights Reserved +// Use of this source code is governed by an apache-2.0 license that can be +// found in the LICENSE file. + +#include +#include + +#include + +#include +#include + +#include "smoke_tests/tpk_smoke_utils.h" + +namespace bpo = boost::program_options; +namespace ci = common_installer; + +enum class BackupType : int { + MOVE, + COPY_AND_REMOVE, +}; + +namespace smoke_test { + +class SmokeEnvironment : public testing::Environment { + public: + explicit SmokeEnvironment(ci::RequestMode mode, bool no_backup, + BackupType backup_type) : + request_mode_(mode), no_backup_(no_backup), + backup_type_(backup_type) { + } + void SetUp() override { + if (request_mode_ == ci::RequestMode::USER) { + ASSERT_TRUE(AddTestUser(&test_user)); + } + if (no_backup_) + return; + backups_ = SetupBackupDirectories(test_user.uid); + if (backup_type_ == BackupType::MOVE) { + for (auto& path : backups_) + ASSERT_TRUE(BackupPath(path)); + } else if (backup_type_ == BackupType::COPY_AND_REMOVE) { + for (auto& path : backups_) + ASSERT_TRUE(BackupPathCopyAndRemove(path)); + } + } + void TearDown() override { + ASSERT_TRUE(request_mode_ == ci::RequestMode::GLOBAL || + (request_mode_ == ci::RequestMode::USER && + kGlobalUserUid != test_user.uid)); + TpkBackendInterface backend(std::to_string(test_user.uid)); + UninstallAllSmokeApps(request_mode_, test_user.uid, &backend); + if (request_mode_ == ci::RequestMode::USER) { + ASSERT_TRUE(DeleteTestUser()); + } + if (no_backup_) + return; + if (backup_type_ == BackupType::MOVE) { + for (auto& path : backups_) + ASSERT_TRUE(RestorePath(path)); + } else if (backup_type_ == BackupType::COPY_AND_REMOVE) { + for (auto& path : backups_) + ASSERT_TRUE(RestorePathCopyAndRemove(path)); + } + } + User test_user; + + private: + ci::RequestMode request_mode_; + std::vector backups_; + bool no_backup_; + BackupType backup_type_; +}; + +} // namespace smoke_test + +namespace { + +smoke_test::SmokeEnvironment *env = nullptr; +void signalHandler(int signum) { + env->TearDown(); + exit(signum); +} + +} // namespace + +namespace smoke_test { + +class SmokeTest : public testing::Test { + public: + SmokeTest() : backend(std::to_string(env->test_user.uid)), + params{PackageType::TPK, false} { + params.test_user.uid = env->test_user.uid; + params.test_user.gid = env->test_user.gid; + } + protected: + TpkBackendInterface backend; + TestParameters params; +}; + +TEST_F(SmokeTest, DeltaMode_Tpk_Rollback) { + bf::path path = kSmokePackagesDirectory / "DeltaMode_Tpk_Rollback.tpk"; + bf::path delta_package = kSmokePackagesDirectory / + "DeltaMode_Tpk_Rollback.delta"; + std::string pkgid = "smoketpk28"; + std::string appid = "smoketpk28.DeltaModeTpk_Rollback"; + std::string exec = "basicdali"; + ASSERT_EQ(backend.Install(path), ci::AppInstaller::Result::OK); + std::string test_uid_str = std::to_string(params.test_user.uid); + const char* argv[] = + {"", "-i", delta_package.c_str(), "-u", test_uid_str.c_str()}; + + backend.TestRollbackAfterEachStep(SIZEOFARRAY(argv), argv, [&]() -> bool { + EXTENDED_ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + + // Check delta modifications + + bf::path root_path = ci::GetRootAppPath(params.is_readonly, + params.test_user.uid); + EXTENDED_ASSERT_TRUE(bf::exists(root_path / pkgid / "res" / "DELETED")); + EXTENDED_ASSERT_FALSE(bf::exists(root_path / pkgid / "res" / "ADDED")); + EXTENDED_ASSERT_TRUE(bf::exists(root_path / pkgid / "bin" / "basicdali")); + EXTENDED_ASSERT_TRUE(bf::exists(root_path / pkgid / "shared" / "res" / + "basicdali.png")); + EXTENDED_ASSERT_TRUE(ValidateFileContentInPackage(pkgid, + "res/MODIFIED", "version 1\n", params)); + return true; + }); +} + +TEST_F(SmokeTest, RecoveryMode_Tpk_Installation) { + bf::path path = kSmokePackagesDirectory / "RecoveryMode_Tpk_Installation.tpk"; + std::string pkgid = "smokeapp15"; + RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); + + std::string test_uid_str = std::to_string(params.test_user.uid); + std::vector args = + {"", "-i", path.c_str(), "-u", test_uid_str.c_str()}; + backend.CrashAfterEachStep(&args, [&](int step) -> bool { + if (step >= 2) { + bf::path recovery_file = FindRecoveryFile("/tpk-recovery", + params.test_user.uid); + EXTENDED_ASSERT_FALSE(recovery_file.empty()); + EXTENDED_ASSERT_EQ(backend.Recover(recovery_file), + ci::AppInstaller::Result::OK); + EXTENDED_ASSERT_TRUE(CheckPackageNonExistance(pkgid, params)); + } + return true; + }, params.pkg_type); + RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); +} + +TEST_F(SmokeTest, RecoveryMode_Tpk_Update) { + bf::path path_old = kSmokePackagesDirectory / "RecoveryMode_Tpk_Update.tpk"; + bf::path path_new = kSmokePackagesDirectory / "RecoveryMode_Tpk_Update_2.tpk"; + RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); + ASSERT_EQ(backend.Install(path_old), ci::AppInstaller::Result::OK); + + std::string test_uid_str = std::to_string(params.test_user.uid); + std::vector args = + {"", "-i", path_new.string(), "-u", test_uid_str.c_str()}; + backend.CrashAfterEachStep(&args, [&](int step) -> bool { + if (step >= 2) { + std::string pkgid = "smokeapp16"; + std::string appid = "smokeapp16.RecoveryModeTpkUpdate"; + std::string exec = "native"; + bf::path recovery_file = FindRecoveryFile("/tpk-recovery", + params.test_user.uid); + EXTENDED_ASSERT_FALSE(recovery_file.empty()); + EXTENDED_ASSERT_EQ(backend.Recover(recovery_file), + ci::AppInstaller::Result::OK); + EXTENDED_ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + + EXTENDED_ASSERT_TRUE( + ValidateFileContentInPackage(pkgid, "VERSION", "1\n", params)); + } + return true; + }, params.pkg_type); +} + +#define TEP_TEST_STARTING_BLOCK(NUMBER) \ + bf::path path = kSmokePackagesDirectory / "TEP_Tpk"; \ + path += #NUMBER; \ + path += ".tpk"; \ + bf::path tep1 = kSmokePackagesDirectory / "tep1.tep"; \ + bf::path tep2 = kSmokePackagesDirectory / "tep2.tep"; \ + std::string number = std::to_string(50 + NUMBER - 1); \ + std::string pkgid = std::string("smokeapp") + number; \ + std::string appid = pkgid + ".TEP"; \ + std::string exec = "native"; \ + + +TEST_F(SmokeTest, TEP_Tpk_TepInstallTepUpdateRollback) { + TEP_TEST_STARTING_BLOCK(5) + ASSERT_EQ(backend.InstallWithTEP(path, tep1), ci::AppInstaller::Result::OK); + std::string test_uid_str = std::to_string(params.test_user.uid); + const char* argv[] = {"", "-i", path.c_str(), "-u", test_uid_str.c_str(), + "-e", tep1.c_str()}; + backend.TestRollbackAfterEachStep(SIZEOFARRAY(argv), argv, [&]() -> bool { + EXTENDED_ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + EXTENDED_ASSERT_TRUE(ValidateFileContentInPackage(pkgid, + "tep/tep1.tep", "tep1\n", params)); + return true; + }); +} + +TEST_F(SmokeTest, TEP_Tpk_NoTepInstallTepUpdateRollback) { + TEP_TEST_STARTING_BLOCK(6) + ASSERT_EQ(backend.Install(path), ci::AppInstaller::Result::OK); + std::string test_uid_str = std::to_string(params.test_user.uid); + const char* argv[] = {"", "-i", path.c_str(), "-u", test_uid_str.c_str(), + "-e", tep1.c_str()}; + backend.TestRollbackAfterEachStep(SIZEOFARRAY(argv), argv, [&]() -> bool { + EXTENDED_ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + bf::path root_path = ci::GetRootAppPath(params.is_readonly, + params.test_user.uid); + bf::path tep_file = root_path / pkgid / "tep" / "tep2.tep"; + EXTENDED_ASSERT_FALSE(bf::exists(tep_file)); + return true; + }); +} + +TEST_F(SmokeTest, TEP_Tpk_TepInstallNoTepUpdateRollback) { + TEP_TEST_STARTING_BLOCK(7) + ASSERT_EQ(backend.InstallWithTEP(path, tep1), ci::AppInstaller::Result::OK); + std::string test_uid_str = std::to_string(params.test_user.uid); + const char* argv[] = {"", "-i", path.c_str(), "-u", test_uid_str.c_str()}; + backend.TestRollbackAfterEachStep(SIZEOFARRAY(argv), argv, [&]() -> bool { + EXTENDED_ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + EXTENDED_ASSERT_TRUE(ValidateFileContentInPackage(pkgid, + "tep/tep1.tep", "tep1\n", params)); + return true; + }); +} + +TEST_F(SmokeTest, TEP_Tpk_Mount_TepInstallTepUpdateRollback) { + TEP_TEST_STARTING_BLOCK(12) + ASSERT_EQ(backend.MountInstallWithTEP(path, tep1), + ci::AppInstaller::Result::OK); + std::string test_uid_str = std::to_string(params.test_user.uid); + const char* argv[] = {"", "-w", path.c_str(), "-u", test_uid_str.c_str(), + "-e", tep2.c_str()}; + backend.TestRollbackAfterEachStep(SIZEOFARRAY(argv), argv, [&]() -> bool { + ScopedTzipInterface package_mount(pkgid, params.test_user.uid); + EXTENDED_ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + EXTENDED_ASSERT_TRUE(ValidateFileContentInPackage(pkgid, + "tep/tep1.tep", "tep1\n", params)); + return true; + }); +} + +TEST_F(SmokeTest, TEP_Tpk_Mount_NoTepInstallTepUpdateRollback) { + TEP_TEST_STARTING_BLOCK(13) + ASSERT_EQ(backend.MountInstall(path), ci::AppInstaller::Result::OK); + std::string test_uid_str = std::to_string(params.test_user.uid); + const char* argv[] = {"", "-w", path.c_str(), "-u", test_uid_str.c_str(), + "-e", tep1.c_str()}; + backend.TestRollbackAfterEachStep(SIZEOFARRAY(argv), argv, [&]() -> bool { + ScopedTzipInterface package_mount(pkgid, params.test_user.uid); + EXTENDED_ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + bf::path root_path = ci::GetRootAppPath(params.is_readonly, + params.test_user.uid); + bf::path tep_file = root_path / pkgid / "tep" / "tep2.tep"; + EXTENDED_ASSERT_FALSE(bf::exists(tep_file)); + return true; + }); +} + +TEST_F(SmokeTest, TEP_Tpk_Mount_TepInstallNoTepUpdateRollback) { + TEP_TEST_STARTING_BLOCK(14) + ASSERT_EQ(backend.MountInstallWithTEP(path, tep1), + ci::AppInstaller::Result::OK); + std::string test_uid_str = std::to_string(params.test_user.uid); + const char* argv[] = {"", "-i", path.c_str(), "-u", test_uid_str.c_str()}; + backend.TestRollbackAfterEachStep(SIZEOFARRAY(argv), argv, [&]() -> bool { + ScopedTzipInterface package_mount(pkgid, params.test_user.uid); + EXTENDED_ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + EXTENDED_ASSERT_TRUE(ValidateFileContentInPackage(pkgid, + "tep/tep1.tep", "tep1\n", params)); + return true; + }); +} + +TEST_F(SmokeTest, InstallationMode_Rollback) { + bf::path path = kSmokePackagesDirectory / "InstallationMode_Rollback.tpk"; + std::string pkgid = "smoketpk34"; + std::string test_uid_str = std::to_string(params.test_user.uid); + const char* argv[] = {"", "-i", path.c_str(), "-u", test_uid_str.c_str()}; + + backend.TestRollbackAfterEachStep(SIZEOFARRAY(argv), argv, [&]() -> bool { + EXTENDED_ASSERT_TRUE(CheckPackageNonExistance(pkgid, params)); + return true; + }); +} + +TEST_F(SmokeTest, RecoveryMode_ForDelta) { + bf::path path_old = kSmokePackagesDirectory / "RecoveryMode_ForDelta.tpk"; + bf::path path_new = kSmokePackagesDirectory / "RecoveryMode_ForDelta.delta"; + RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); + ASSERT_EQ(ci::AppInstaller::Result::OK, backend.Install(path_old)); + + std::string test_uid_str = std::to_string(params.test_user.uid); + std::vector args = + {"", "-i", path_new.string(), "-u", test_uid_str.c_str()}; + backend.CrashAfterEachStep(&args, [&](int step) -> bool { + if (step >= 2) { + std::string pkgid = "smoketpk35"; + std::string appid = "smoketpk35.RecoveryMode_ForDelta"; + std::string exec = "smoketpk35"; + bf::path recovery_file = FindRecoveryFile("/tpk-recovery", + params.test_user.uid); + EXTENDED_ASSERT_FALSE(recovery_file.empty()); + EXTENDED_ASSERT_EQ(backend.Recover(recovery_file), + ci::AppInstaller::Result::OK); + EXTENDED_ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + + EXTENDED_ASSERT_TRUE( + ValidateFileContentInPackage(pkgid, "res/MODIFIED", "version 1", + params)); + bf::path root_path = ci::GetRootAppPath(params.is_readonly, + params.test_user.uid); + EXTENDED_ASSERT_TRUE(bf::exists(root_path / pkgid / "res/DELETED")); + EXTENDED_ASSERT_FALSE(bf::exists(root_path / pkgid / "res/ADDED")); + } + return true; + }, params.pkg_type); +} + +TEST_F(SmokeTest, UpdateMode_Rollback) { + bf::path old_path = kSmokePackagesDirectory / "UpdateMode_Rollback.tpk"; + bf::path new_path = kSmokePackagesDirectory / "UpdateMode_Rollback2.tpk"; + std::string pkgid = "smoketpk36"; + std::string appid = "smoketpk36.UpdateMode_Rollback"; + std::string exec = "smoketpk36"; + ASSERT_EQ(ci::AppInstaller::Result::OK, backend.Install(old_path)); + + std::string test_uid_str = std::to_string(params.test_user.uid); + const char* argv[] = + {"", "-i", new_path.c_str(), "-u", test_uid_str.c_str()}; + backend.TestRollbackAfterEachStep(SIZEOFARRAY(argv), argv, [&]() -> bool { + EXTENDED_ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + EXTENDED_ASSERT_TRUE(ValidateFileContentInPackage(pkgid, + "res/VERSION", "1", params)); + return true; + }); +} + +TEST_F(SmokeTest, RecoveryMode_ForMountInstall) { + bf::path path = kSmokePackagesDirectory / "RecoveryMode_ForMountInstall.tpk"; + RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); + + std::string test_uid_str = std::to_string(params.test_user.uid); + std::vector args = + {"", "-w", path.string(), "-u", test_uid_str.c_str()}; + backend.CrashAfterEachStep(&args, [&](int step) -> bool { + if (step >= 2) { + std::string pkgid = "smoketpk37"; + std::string appid = "smoketpk37.RecoveryMode_ForMountInstall"; + bf::path recovery_file = FindRecoveryFile("/tpk-recovery", + params.test_user.uid); + EXTENDED_ASSERT_FALSE(recovery_file.empty()); + EXTENDED_ASSERT_EQ(backend.Recover(recovery_file), + ci::AppInstaller::Result::OK); + EXTENDED_ASSERT_TRUE(CheckPackageNonExistance(pkgid, params)); + } + return true; + }, params.pkg_type); +} + +TEST_F(SmokeTest, RecoveryMode_ForMountUpdate) { + bf::path path_old = + kSmokePackagesDirectory / "RecoveryMode_ForMountUpdate.tpk"; + bf::path path_new = + kSmokePackagesDirectory / "RecoveryMode_ForMountUpdate2.tpk"; + RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); + ASSERT_EQ(ci::AppInstaller::Result::OK, backend.MountInstall(path_old)); + + std::string test_uid_str = std::to_string(params.test_user.uid); + std::vector args = + {"", "-w", path_new.string(), "-u", test_uid_str.c_str()}; + backend.CrashAfterEachStep(&args, [&](int step) -> bool { + if (step >= 2) { + std::string pkgid = "smoketpk38"; + std::string appid = "smoketpk38.RecoveryMode_ForMountUpdate"; + std::string exec = "smoketpk38"; + + // Filesystem may be mounted after crash + ScopedTzipInterface poweroff_unmount_interface(pkgid, + params.test_user.uid); + poweroff_unmount_interface.Release(); + + bf::path recovery_file = FindRecoveryFile("/tpk-recovery", + params.test_user.uid); + EXTENDED_ASSERT_FALSE(recovery_file.empty()); + EXTENDED_ASSERT_EQ(backend.Recover(recovery_file), + ci::AppInstaller::Result::OK); + ScopedTzipInterface interface(pkgid, params.test_user.uid); + EXTENDED_ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + + EXTENDED_ASSERT_TRUE(ValidateFileContentInPackage(pkgid, + "res/VERSION", "1", params)); + } + return true; + }, params.pkg_type); +} + +TEST_F(SmokeTest, MountInstallationMode_Rollback) { + bf::path path = + kSmokePackagesDirectory / "MountInstallationMode_Rollback.tpk"; + std::string pkgid = "smoketpk39"; + std::string test_uid_str = std::to_string(params.test_user.uid); + const char* argv[] = {"", "-w", path.c_str(), "-u", test_uid_str.c_str()}; + + backend.TestRollbackAfterEachStep(SIZEOFARRAY(argv), argv, [&]() -> bool { + ScopedTzipInterface package_mount(pkgid, params.test_user.uid); + EXTENDED_ASSERT_TRUE(CheckPackageNonExistance(pkgid, params)); + return true; + }); +} + +TEST_F(SmokeTest, MountUpdateMode_Rollback) { + bf::path old_path = kSmokePackagesDirectory / "MountUpdateMode_Rollback.tpk"; + bf::path new_path = kSmokePackagesDirectory / "MountUpdateMode_Rollback2.tpk"; + std::string pkgid = "smoketpk40"; + std::string appid = "smoketpk40.MountUpdateMode_Rollback"; + std::string exec = "smoketpk40"; + ASSERT_EQ(ci::AppInstaller::Result::OK, backend.MountInstall(old_path)); + std::string test_uid_str = std::to_string(params.test_user.uid); + const char* argv[] = + {"", "-w", new_path.c_str(), "-u", test_uid_str.c_str()}; + + backend.TestRollbackAfterEachStep(SIZEOFARRAY(argv), argv, [&]() -> bool { + ScopedTzipInterface package_mount(pkgid, params.test_user.uid); + EXTENDED_ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + EXTENDED_ASSERT_TRUE(ValidateFileContentInPackage(pkgid, + "res/VERSION", "1", params)); + return true; + }); +} + +} // namespace smoke_test + +int main(int argc, char** argv) { + try { + bool no_backup = false; + BackupType backup_type = BackupType::MOVE; + + ci::RequestMode request_mode = smoke_test::ParseRequestMode(argc, argv); + if (getuid() != 0 || request_mode != ci::RequestMode::GLOBAL) { + std::cout << "Skip tests for preload request" << std::endl; + ::testing::GTEST_FLAG(filter) = "SmokeTest.*"; + } + testing::InitGoogleTest(&argc, argv); + + bpo::options_description options("Allowed options"); + bpo::variables_map opt_map; + try { + options.add_options() + ("help", "display this help message") + ("no-backup", "Do test without backup") + ("backup-type", bpo::value(), " set test's " + "backup type \'move\', \'copy and remove\'"); + bpo::store(bpo::parse_command_line(argc, argv, options), opt_map); + if (opt_map.count("help")) { + std::cerr << options << std::endl; + return -1; + } + + if (opt_map.count("no-backup")) + no_backup = true; + if (opt_map.count("backup-type")) { + if (opt_map["backup-type"].as() == "move") { + backup_type = BackupType::MOVE; + } else if (opt_map["backup-type"].as() == "copy") { + backup_type = BackupType::COPY_AND_REMOVE; + } else { + std::cerr << options << std::endl; + return -1; + } + } + bpo::notify(opt_map); + } catch (...) { + std::cerr << "Exception occurred: " + << boost::current_exception_diagnostic_information() + << std::endl; + return -1; + } + + ::env = static_cast( + testing::AddGlobalTestEnvironment( + new smoke_test::SmokeEnvironment(request_mode, + no_backup, backup_type))); + signal(SIGINT, ::signalHandler); + signal(SIGSEGV, ::signalHandler); + return RUN_ALL_TESTS(); + } catch (...) { + std::cout << "Exception occurred during testing" << std::endl; + return 1; + } +} diff --git a/test/smoke_tests/manifest_test.cc b/test/smoke_tests/manifest_test.cc new file mode 100644 index 0000000..383b908 --- /dev/null +++ b/test/smoke_tests/manifest_test.cc @@ -0,0 +1,61 @@ +// Copyright (c) 2015 Samsung Electronics Co., Ltd All Rights Reserved +// Use of this source code is governed by an apache-2.0 license that can be +// found in the LICENSE file. + +#include "smoke_tests/manifest_test.h" + +#include + +namespace bf = boost::filesystem; +namespace ci = common_installer; + +namespace { + +const char kManifestTestcaseData[] = + "/usr/share/tpk-installer-ut/test_samples/manifest/"; + +} // namespace + +bool StepParseRunner::Run() { + PrepareContext(); + ci::configuration::StepParseManifest step(context_.get(), + ci::configuration::StepParseManifest::ManifestLocation::PACKAGE, + ci::configuration::StepParseManifest::StoreLocation::NORMAL); + return step.process() == ci::Step::Status::OK; +} + +manifest_x* StepParseRunner::GetManifest() const { + return context_->manifest_data.get(); +} + +bf::path StepParseRunner::GetRootApplicationPath() const { + return context_->root_application_path.get(); +} + +void StepParseRunner::PrepareContext() { + context_.reset(new ci::InstallerContext()); + context_->root_application_path.set(ci::GetRootAppPath(false, getuid())); + context_->unpacked_dir_path.set( + bf::path(kManifestTestcaseData) / dir_suffix_); + + // Make sure that there is manifest file for testcase + assert(bf::exists(context_->unpacked_dir_path.get() / "tizen-manifest.xml") + && "Failed to stat manifest file"); +} + +std::string ManifestTest::GetMyName() const { + std::string suite = + testing::UnitTest::GetInstance()->current_test_info()->test_case_name(); + std::string case_name = + testing::UnitTest::GetInstance()->current_test_info()->name(); + return suite + '.' + case_name; +} + +application_x* GetSingleApp(manifest_x* m) { + if (!m) + return nullptr; + auto apps = GListRange(m->application); + if (Size(&apps) != 1) + return nullptr; + return *apps.begin(); +} diff --git a/test/smoke_tests/manifest_test.h b/test/smoke_tests/manifest_test.h new file mode 100644 index 0000000..6ce359c --- /dev/null +++ b/test/smoke_tests/manifest_test.h @@ -0,0 +1,63 @@ +// Copyright (c) 2015 Samsung Electronics Co., Ltd All Rights Reserved +// Use of this source code is governed by an apache-2.0 license that can be +// found in the LICENSE file. + +#ifndef SMOKE_TESTS_MANIFEST_TEST_H_ +#define SMOKE_TESTS_MANIFEST_TEST_H_ + +#include + +#include +#include +#include +#include + +#include +#include + +#include +#include + +#define ASSERT_CSTR_EQ(STR1, STR2) \ + ASSERT_EQ(strcmp(STR1, STR2), 0) \ + +#define ASSERT_CSTR_NE(STR1, STR2) \ + ASSERT_NE(strcmp(STR1, STR2), 0) \ + +#define ASSERT_IN(ITEM, CONTAINER) \ + ASSERT_NE(std::find(CONTAINER.begin(), CONTAINER.end(), ITEM), \ + CONTAINER.end()); \ + +template +gint Size(GListRange* range) { + return std::distance(range->begin(), range->end()); +} + +class StepParseRunner { + public: + explicit StepParseRunner(const std::string& dir_suffix, + bool ignore_start_files = true) + : dir_suffix_(dir_suffix), + ignore_start_files_(ignore_start_files), + context_(nullptr) { } + + bool Run(); + manifest_x* GetManifest() const; + boost::filesystem::path GetRootApplicationPath() const; + + private: + void PrepareContext(); + + std::string dir_suffix_; + bool ignore_start_files_; + std::unique_ptr context_; +}; + +class ManifestTest : public testing::Test { + public: + std::string GetMyName() const; +}; + +application_x* GetSingleApp(manifest_x* m); + +#endif // SMOKE_TESTS_MANIFEST_TEST_H_ diff --git a/test/smoke_tests/manifest_test_package.cc b/test/smoke_tests/manifest_test_package.cc new file mode 100644 index 0000000..3483ddd --- /dev/null +++ b/test/smoke_tests/manifest_test_package.cc @@ -0,0 +1,462 @@ +// Copyright (c) 2015 Samsung Electronics Co., Ltd All Rights Reserved +// Use of this source code is governed by an apache-2.0 license that can be +// found in the LICENSE file. + +#include "smoke_tests/manifest_test.h" + +namespace bf = boost::filesystem; +namespace ci = common_installer; + +TEST_F(ManifestTest, ManifestElement_Valid) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + ASSERT_CSTR_EQ(m->package, "package0id"); + auto apps = GListRange(m->application); + ASSERT_EQ(Size(&apps), 1); + application_x* app = *apps.begin(); + ASSERT_CSTR_EQ(app->appid, "package0id.appid"); +} + +TEST_F(ManifestTest, ManifestElement_InvalidRootElement) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, ManifestElement_DoubleRootElement) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, ManifestElement_InstallLocation_Auto) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + ASSERT_CSTR_EQ(m->installlocation, "auto"); +} + +TEST_F(ManifestTest, ManifestElement_InstallLocation_InternalOnly) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + ASSERT_CSTR_EQ(m->installlocation, "internal-only"); +} + +TEST_F(ManifestTest, ManifestElement_InstallLocation_PreferExternal) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + ASSERT_CSTR_EQ(m->installlocation, "prefer-external"); +} + +TEST_F(ManifestTest, ManifestElement_InstallLocation_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + ASSERT_CSTR_EQ(m->installlocation, "auto"); +} + +TEST_F(ManifestTest, ManifestElement_InstallLocation_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, ManifestElement_Package_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, ManifestElement_Package_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, ManifestElement_Type_Tpk) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + ASSERT_CSTR_EQ(m->type, "tpk"); +} + +TEST_F(ManifestTest, ManifestElement_Type_Rpm) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + ASSERT_CSTR_EQ(m->type, "rpm"); +} + +TEST_F(ManifestTest, ManifestElement_Type_Wgt) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + ASSERT_CSTR_EQ(m->type, "wgt"); +} + +TEST_F(ManifestTest, ManifestElement_Type_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, ManifestElement_Type_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + ASSERT_CSTR_EQ(m->type, "tpk"); +} + +TEST_F(ManifestTest, ManifestElement_Version_Valid) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + ASSERT_CSTR_EQ(m->version, "1.2.3"); +} + +TEST_F(ManifestTest, ManifestElement_Version_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, ManifestElement_Version_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, ManifestElement_ApiVersion_Valid) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + ASSERT_CSTR_EQ(m->api_version, "3.0"); +} + +TEST_F(ManifestTest, ManifestElement_ApiVersion_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, ManifestElement_ApiVersion_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, AuthorElement_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + auto authors = GListRange(m->author); + ASSERT_EQ(Size(&authors), 0); +} + +TEST_F(ManifestTest, AuthorElement_Valid) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + auto authors = GListRange(m->author); + ASSERT_EQ(Size(&authors), 1); + author_x* author = *authors.begin(); + ASSERT_CSTR_EQ(author->email, "valid@email.com"); + ASSERT_CSTR_EQ(author->href, "http://site.domain.com"); +} + +TEST_F(ManifestTest, DescriptionElement_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + auto descriptions = GListRange(m->description); + ASSERT_EQ(Size(&descriptions), 0); +} + +TEST_F(ManifestTest, DescriptionElement_Valid) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + auto descriptions = GListRange(m->description); + ASSERT_EQ(Size(&descriptions), 1); + description_x* description = *descriptions.begin(); + ASSERT_CSTR_EQ(description->text, "text"); + ASSERT_CSTR_EQ(description->lang, "en-GB"); +} + +TEST_F(ManifestTest, DescriptionElement_Many) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + auto descriptions = GListRange(m->description); + ASSERT_EQ(Size(&descriptions), 2); + description_x* description1 = *descriptions.begin(); + description_x* description2 = *++descriptions.begin(); + ASSERT_CSTR_EQ(description1->text, "text"); + ASSERT_CSTR_EQ(description1->lang, "en-GB"); + ASSERT_CSTR_EQ(description2->text, "text2"); + ASSERT_CSTR_EQ(description2->lang, DEFAULT_LOCALE); +} + +TEST_F(ManifestTest, DescriptionElement_Lang_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, PrivilegesElement_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + auto privileges = GListRange(m->privileges); + ASSERT_EQ(Size(&privileges), 0); +} + +TEST_F(ManifestTest, PrivilegesElement_None) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + auto privileges = GListRange(m->privileges); + ASSERT_EQ(Size(&privileges), 0); +} + +TEST_F(ManifestTest, PrivilegesElement_Valid) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + auto privileges = GListRange(m->privileges); + ASSERT_EQ(Size(&privileges), 1); + ASSERT_CSTR_EQ((*privileges.begin())->value, + "http://tizen.org/privilege/application.admin"); +} + +TEST_F(ManifestTest, PrivilegesElement_Many) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + auto privileges = GListRange(m->privileges); + ASSERT_EQ(Size(&privileges), 3); + ASSERT_CSTR_EQ(((*privileges.begin()))->value, + "http://tizen.org/privilege/account.read"); + ASSERT_CSTR_EQ(((*++privileges.begin()))->value, + "http://tizen.org/privilege/application.admin"); + ASSERT_CSTR_EQ(((*++++privileges.begin())->value), + "http://tizen.org/privilege/appmanager.launch"); +} + +TEST_F(ManifestTest, AppDefinedPrivilegesElement_Invalid_OverLength) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, AppDefinedPrivilegesElement_Invalid_NotURI) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, AppDefinedPrivilegesElement_Invalid_NoPKGID) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, AppDefinedPrivilegesElement_Valid) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + auto privileges = + GListRange(m->appdefined_privileges); + ASSERT_EQ(Size(&privileges), 1); + ASSERT_CSTR_EQ((*privileges.begin())->value, + "http://package0id/appdefined/test.read"); +} + +TEST_F(ManifestTest, AppDefinedPrivilegesElement_WithLicenseValid) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + auto privileges = + GListRange(m->appdefined_privileges); + ASSERT_EQ(Size(&privileges), 1); + ASSERT_CSTR_EQ((*privileges.begin())->value, + "http://package0id/appdefined/test.read"); + bf::path path(m->root_path); + path /= "res/cert"; + ASSERT_CSTR_EQ((*privileges.begin())->license, path.c_str()); +} + +TEST_F(ManifestTest, AppDefinedPrivilegesElement_Many) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + auto privileges = + GListRange(m->appdefined_privileges); + ASSERT_EQ(Size(&privileges), 2); + ASSERT_CSTR_EQ(((*privileges.begin()))->value, + "http://package0id/appdefined/test.read"); + ASSERT_CSTR_EQ(((*++privileges.begin()))->value, + "http://package0id/appdefined/test.write"); +} + +TEST_F(ManifestTest, AppDefinedPrivilegesElement_WithLicenseMany) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + auto privileges = + GListRange(m->appdefined_privileges); + ASSERT_EQ(Size(&privileges), 2); + ASSERT_CSTR_EQ(((*privileges.begin()))->value, + "http://package0id/appdefined/test.read"); + bf::path path(m->root_path); + path /= "res/cert"; + ASSERT_CSTR_EQ(((*privileges.begin()))->license, path.c_str()); + ASSERT_CSTR_EQ(((*++privileges.begin()))->value, + "http://package0id/appdefined/test.write"); + ASSERT_CSTR_EQ(((*++privileges.begin()))->license, path.c_str()); +} + +TEST_F(ManifestTest, ProvidesAppDefinedPrivilegesElement_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + auto privileges = + GListRange(m->provides_appdefined_privileges); + ASSERT_EQ(Size(&privileges), 0); +} + +TEST_F(ManifestTest, ProvidesAppDefinedPrivilegesElement_None) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + auto privileges = + GListRange(m->provides_appdefined_privileges); + ASSERT_EQ(Size(&privileges), 0); +} + +TEST_F(ManifestTest, ProvidesAppDefinedPrivilegesElement_Invalid_OverLength) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, ProvidesAppDefinedPrivilegesElement_Invalid_NotURI) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, ProvidesAppDefinedPrivilegesElement_Invalid_NoPKGID) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, ProvidesAppDefinedPrivilegesElement_Valid) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + auto privileges = + GListRange(m->provides_appdefined_privileges); + ASSERT_EQ(Size(&privileges), 1); + ASSERT_CSTR_EQ((*privileges.begin())->value, + "http://package0id/appdefined/test.read"); +} + +TEST_F(ManifestTest, ProvidesAppDefinedPrivilegesElement_WithLicenseValid) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + auto privileges = + GListRange(m->provides_appdefined_privileges); + ASSERT_EQ(Size(&privileges), 1); + ASSERT_CSTR_EQ((*privileges.begin())->value, + "http://package0id/appdefined/test.read"); + bf::path path(m->root_path); + path /= "res/cert"; + ASSERT_CSTR_EQ((*privileges.begin())->license, path.c_str()); +} + +TEST_F(ManifestTest, ProvidesAppDefinedPrivilegesElement_Many) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + auto privileges = + GListRange(m->provides_appdefined_privileges); + ASSERT_EQ(Size(&privileges), 2); + ASSERT_CSTR_EQ(((*privileges.begin()))->value, + "http://package0id/appdefined/test.read"); + ASSERT_CSTR_EQ(((*++privileges.begin()))->value, + "http://package0id/appdefined/test.write"); +} + +TEST_F(ManifestTest, ProvidesAppDefinedPrivilegesElement_WithLicenseMany) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + auto privileges = + GListRange(m->provides_appdefined_privileges); + ASSERT_EQ(Size(&privileges), 2); + ASSERT_CSTR_EQ(((*privileges.begin()))->value, + "http://package0id/appdefined/test.read"); + bf::path path(m->root_path); + path /= "res/cert"; + ASSERT_CSTR_EQ(((*privileges.begin()))->license, path.c_str()); + ASSERT_CSTR_EQ(((*++privileges.begin()))->value, + "http://package0id/appdefined/test.write"); + ASSERT_CSTR_EQ(((*++privileges.begin()))->license, path.c_str()); +} + +TEST_F(ManifestTest, ProfileElement_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + auto profiles = GListRange(m->deviceprofile); + ASSERT_EQ(Size(&profiles), 0); +} + +TEST_F(ManifestTest, ProfileElement_Valid) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + auto profiles = GListRange(m->deviceprofile); + ASSERT_EQ(Size(&profiles), 1); + const char* profile = *profiles.begin(); + ASSERT_CSTR_EQ(profile, "mobile"); +} + +TEST_F(ManifestTest, ProfileElement_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, ProfileElement_Many) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + auto profiles = GListRange(m->deviceprofile); + ASSERT_EQ(Size(&profiles), 2); + const char* profile1 = *profiles.begin(); + const char* profile2 = *++profiles.begin(); + ASSERT_CSTR_EQ(profile1, "mobile"); + ASSERT_CSTR_EQ(profile2, "wearable"); +} diff --git a/test/smoke_tests/manifest_test_service_application.cc b/test/smoke_tests/manifest_test_service_application.cc new file mode 100644 index 0000000..2c65ae0 --- /dev/null +++ b/test/smoke_tests/manifest_test_service_application.cc @@ -0,0 +1,560 @@ +// Copyright (c) 2015 Samsung Electronics Co., Ltd All Rights Reserved +// Use of this source code is governed by an apache-2.0 license that can be +// found in the LICENSE file. + +#include "smoke_tests/manifest_test.h" + +#include +#include + +#include + +namespace bf = boost::filesystem; +namespace ci = common_installer; + +TEST_F(ManifestTest, ServiceApplicationElement_Valid) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + ASSERT_CSTR_EQ(m->package, "package0id"); + auto apps = GListRange(m->application); + ASSERT_EQ(Size(&apps), 1); + application_x* app = *apps.begin(); + ASSERT_CSTR_EQ(app->appid, "package0id.appid"); + ASSERT_CSTR_EQ(app->component_type, "svcapp"); + ASSERT_CSTR_EQ(app->mainapp, "true"); +} + +TEST_F(ManifestTest, ServiceApplicationElement_Appid_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, ServiceApplicationElement_Appid_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, ServiceApplicationElement_Multiple_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->multiple, "false"); +} + +TEST_F(ManifestTest, ServiceApplicationElement_Multiple_False) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->multiple, "false"); +} + +TEST_F(ManifestTest, ServiceApplicationElement_Multiple_True) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->multiple, "true"); +} + +TEST_F(ManifestTest, ServiceApplicationElement_Multiple_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, ServiceApplicationElement_AutoRestart_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->autorestart, "false"); +} + +TEST_F(ManifestTest, ServiceApplicationElement_AutoRestart_False) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->autorestart, "false"); +} + +TEST_F(ManifestTest, ServiceApplicationElement_AutoRestart_True) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->autorestart, "true"); +} + +TEST_F(ManifestTest, ServiceApplicationElement_AutoRestart_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, ServiceApplicationElement_OnBoot_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->onboot, "false"); +} + +TEST_F(ManifestTest, ServiceApplicationElement_OnBoot_False) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->onboot, "false"); +} + +TEST_F(ManifestTest, ServiceApplicationElement_OnBoot_True) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->onboot, "true"); +} + +TEST_F(ManifestTest, ServiceApplicationElement_OnBoot_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, ServiceApplicationElement_Taskmanage_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->taskmanage, "true"); +} + +TEST_F(ManifestTest, ServiceApplicationElement_Taskmanage_False) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->taskmanage, "false"); +} + +TEST_F(ManifestTest, ServiceApplicationElement_Taskmanage_True) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->taskmanage, "true"); +} + +TEST_F(ManifestTest, ServiceApplicationElement_Taskmanage_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, ServiceApplicationElement_Type_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, ServiceApplicationElement_Type_Capp) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->type, "capp"); +} + +TEST_F(ManifestTest, ServiceApplicationElement_Type_Webapp) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->type, "webapp"); +} + +TEST_F(ManifestTest, ServiceApplicationElement_Label_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto labels = GListRange(app->label); + ASSERT_EQ(Size(&labels), 0); +} + +TEST_F(ManifestTest, ServiceApplicationElement_Label_Valid) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto labels = GListRange(app->label); + ASSERT_EQ(Size(&labels), 1); + ASSERT_CSTR_EQ((*labels.begin())->text, "label"); + ASSERT_CSTR_EQ((*labels.begin())->lang, DEFAULT_LOCALE); +} + +TEST_F(ManifestTest, ServiceApplicationElement_Label_Text_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, ServiceApplicationElement_Label_Lang_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, ServiceApplicationElement_Label_Many) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto labels = GListRange(app->label); + ASSERT_EQ(Size(&labels), 2); + ASSERT_CSTR_EQ((*labels.begin())->text, "label"); + ASSERT_CSTR_EQ((*labels.begin())->lang, DEFAULT_LOCALE); + ASSERT_CSTR_EQ((*++labels.begin())->text, "label_GB"); + ASSERT_CSTR_EQ((*++labels.begin())->lang, "en-GB"); +} + +TEST_F(ManifestTest, ServiceApplicationElement_Label_Many_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, ServiceApplicationElement_Metadata_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto labels = GListRange(app->metadata); + ASSERT_EQ(Size(&labels), 0); +} + +TEST_F(ManifestTest, ServiceApplicationElement_Metadata_Valid) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto metadata = GListRange(app->metadata); + ASSERT_EQ(Size(&metadata), 1); + ASSERT_CSTR_EQ((*metadata.begin())->key, "key"); + ASSERT_CSTR_EQ((*metadata.begin())->value, "value"); +} + +TEST_F(ManifestTest, ServiceApplicationElement_Metadata_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, ServiceApplicationElement_Metadata_Many) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto metadata = GListRange(app->metadata); + ASSERT_EQ(Size(&metadata), 2); + ASSERT_CSTR_EQ((*metadata.begin())->key, "key1"); + ASSERT_CSTR_EQ((*metadata.begin())->value, "value1"); + ASSERT_CSTR_EQ((*++metadata.begin())->key, "key2"); + ASSERT_CSTR_EQ((*++metadata.begin())->value, ""); +} + +TEST_F(ManifestTest, ServiceApplicationElement_BackgroundCategory_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto bg_categories = GListRange(app->background_category); + ASSERT_EQ(Size(&bg_categories), 0); +} + +TEST_F(ManifestTest, ServiceApplicationElement_BackgroundCategory_Valid) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto bg_categories = GListRange(app->background_category); + ASSERT_EQ(Size(&bg_categories), 1); + ASSERT_CSTR_EQ(*bg_categories.begin(), "bgcategory"); +} + +TEST_F(ManifestTest, ServiceApplicationElement_BackgroundCategory_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, ServiceApplicationElement_BackgroundCategory_Many) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto bg_categories = GListRange(app->background_category); + ASSERT_EQ(Size(&bg_categories), 2); + ASSERT_CSTR_EQ(*bg_categories.begin(), "bgcategory1"); + ASSERT_CSTR_EQ(*++bg_categories.begin(), "bgcategory2"); +} + +TEST_F(ManifestTest, ServiceApplicationElement_DataControl_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto datacontrols = GListRange(app->datacontrol); + ASSERT_EQ(Size(&datacontrols), 0); +} + +TEST_F(ManifestTest, ServiceApplicationElement_DataControl_Valid) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto datacontrols = GListRange(app->datacontrol); + ASSERT_EQ(Size(&datacontrols), 1); + ASSERT_CSTR_EQ((*datacontrols.begin())->providerid, "providerid"); + ASSERT_CSTR_EQ((*datacontrols.begin())->access, "access"); + ASSERT_CSTR_EQ((*datacontrols.begin())->type, "type"); +} + +TEST_F(ManifestTest, ServiceApplicationElement_DataControl_Many) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto datacontrols = GListRange(app->datacontrol); + ASSERT_EQ(Size(&datacontrols), 2); + ASSERT_CSTR_EQ((*datacontrols.begin())->providerid, "providerid1"); + ASSERT_CSTR_EQ((*datacontrols.begin())->access, "access1"); + ASSERT_CSTR_EQ((*datacontrols.begin())->type, "type1"); + ASSERT_CSTR_EQ((*++datacontrols.begin())->providerid, "providerid2"); + ASSERT_CSTR_EQ((*++datacontrols.begin())->access, "access2"); + ASSERT_CSTR_EQ((*++datacontrols.begin())->type, "type2"); +} + +TEST_F(ManifestTest, ServiceApplicationElement_AppControl_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto appcontrols = GListRange(app->appcontrol); + ASSERT_EQ(Size(&appcontrols), 0); +} + +TEST_F(ManifestTest, ServiceApplicationElement_AppControl_Operation_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto appcontrols = GListRange(app->appcontrol); + ASSERT_EQ(Size(&appcontrols), 0); +} + +TEST_F(ManifestTest, ServiceApplicationElement_AppControl_Operation_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, + ServiceApplicationElement_AppControl_Operation_Invalid_NotURI) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, ServiceApplicationElement_AppControl_Mime_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, ServiceApplicationElement_AppControl_Uri_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, ServiceApplicationElement_AppControl_Valid) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto appcontrols = GListRange(app->appcontrol); + ASSERT_EQ(Size(&appcontrols), 1); + ASSERT_CSTR_EQ((*appcontrols.begin())->operation, + "http://tizen.org/appcontrol/operation/compose"); + ASSERT_CSTR_EQ((*appcontrols.begin())->uri, "scheme://"); + ASSERT_CSTR_EQ((*appcontrols.begin())->mime, "application/pdf"); +} + +TEST_F(ManifestTest, ServiceApplicationElement_AppControl_Many) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto appcontrols = GListRange(app->appcontrol); + ASSERT_EQ(Size(&appcontrols), 2); + ASSERT_CSTR_EQ((*appcontrols.begin())->operation, + "http://tizen.org/appcontrol/operation/compose"); + ASSERT_CSTR_EQ((*appcontrols.begin())->uri, "scheme://"); + ASSERT_CSTR_EQ((*appcontrols.begin())->mime, "application/pdf"); + ASSERT_CSTR_EQ((*++appcontrols.begin())->operation, + "http://tizen.org/appcontrol/operation/compose2"); + ASSERT_CSTR_EQ((*++appcontrols.begin())->uri, "scheme2://"); + ASSERT_CSTR_EQ((*++appcontrols.begin())->mime, "application/text"); +} + +TEST_F(ManifestTest, ServiceApplicationElement_AppControl_SkipUri) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto appcontrols = GListRange(app->appcontrol); + ASSERT_EQ(Size(&appcontrols), 1); + ASSERT_CSTR_EQ((*appcontrols.begin())->operation, + "http://tizen.org/appcontrol/operation/compose"); + ASSERT_EQ((*appcontrols.begin())->uri, nullptr); + ASSERT_CSTR_EQ((*appcontrols.begin())->mime, "application/pdf"); +} + +TEST_F(ManifestTest, ServiceApplicationElement_AppControl_SkipMime) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto appcontrols = GListRange(app->appcontrol); + ASSERT_EQ(Size(&appcontrols), 1); + ASSERT_CSTR_EQ((*appcontrols.begin())->operation, + "http://tizen.org/appcontrol/operation/compose"); + ASSERT_CSTR_EQ((*appcontrols.begin())->uri, "scheme://"); + ASSERT_EQ((*appcontrols.begin())->mime, nullptr); +} + +TEST_F(ManifestTest, ServiceApplicationElement_AppControl_CartesianProduct) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto appcontrols = GListRange(app->appcontrol); + ASSERT_EQ(Size(&appcontrols), 8); + + std::vector> + found_app_controls; + for (auto& item : appcontrols) { + found_app_controls.emplace_back(item->operation, item->uri, item->mime); + } + + for (auto operation : {"http://tizen.org/appcontrol/operation/compose1", + "http://tizen.org/appcontrol/operation/compose2"}) { + for (auto uri : {"scheme1://", "scheme2://"}) { + for (auto mime : {"application/text", "application/pdf"}) { + ASSERT_IN(boost::make_tuple(operation, uri, mime), found_app_controls); + } + } + } +} + +TEST_F(ManifestTest, + ServiceApplicationElement_AppControl_CartesianProduct_SkipMime) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto appcontrols = GListRange(app->appcontrol); + ASSERT_EQ(Size(&appcontrols), 4); + + std::vector> + found_app_controls; + for (auto& item : appcontrols) { + ASSERT_EQ(item->mime, nullptr); + found_app_controls.emplace_back(item->operation, item->uri, ""); + } + + for (auto operation : {"http://tizen.org/appcontrol/operation/compose1", + "http://tizen.org/appcontrol/operation/compose2"}) { + for (auto uri : {"scheme1://", "scheme2://"}) { + ASSERT_IN(boost::make_tuple(operation, uri, ""), found_app_controls); + } + } +} + +TEST_F(ManifestTest, + ServiceApplicationElement_AppControl_CartesianProduct_SkipUri) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto appcontrols = GListRange(app->appcontrol); + ASSERT_EQ(Size(&appcontrols), 4); + + std::vector> + found_app_controls; + for (auto& item : appcontrols) { + ASSERT_EQ(item->uri, nullptr); + found_app_controls.emplace_back(item->operation, "", item->mime); + } + + for (auto operation : {"http://tizen.org/appcontrol/operation/compose1", + "http://tizen.org/appcontrol/operation/compose2"}) { + for (auto mime : {"application/text", "application/pdf"}) { + ASSERT_IN(boost::make_tuple(operation, "", mime), found_app_controls); + } + } +} + +TEST_F(ManifestTest, ServiceApplicationElement_Icon_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto icons = GListRange(app->icon); + ASSERT_EQ(Size(&icons), 0); +} + +TEST_F(ManifestTest, ServiceApplicationElement_Icon_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, ServiceApplicationElement_Icon_Valid) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto icons = GListRange(app->icon); + ASSERT_EQ(Size(&icons), 1); + ASSERT_EQ(bf::path((*icons.begin())->text).filename().string(), + "test_icon.png"); +} + +TEST_F(ManifestTest, ServiceApplicationElement_SetManifestXDefaults) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + ASSERT_CSTR_EQ(m->package, "package0id"); + ASSERT_CSTR_EQ(m->version, "1.0.0"); + ASSERT_CSTR_EQ(m->installlocation, "auto"); + ASSERT_CSTR_EQ(m->appsetting, "false"); + ASSERT_CSTR_EQ(m->type, "tpk"); + ASSERT_NE(m->installed_time, nullptr); + ASSERT_CSTR_EQ(m->mainapp_id, "package0id.appid"); + ASSERT_CSTR_EQ(m->nodisplay_setting, "false"); + ASSERT_CSTR_EQ(m->support_disable, "false"); + ASSERT_CSTR_EQ(m->api_version, "2.3"); + auto apps = GListRange(m->application); + ASSERT_EQ(Size(&apps), 1); + application_x* app = *apps.begin(); + ASSERT_CSTR_EQ(app->appid, "package0id.appid"); + ASSERT_NE(app->exec, nullptr); + ASSERT_CSTR_EQ(app->nodisplay, "true"); + ASSERT_CSTR_EQ(app->multiple, "false"); + ASSERT_CSTR_EQ(app->taskmanage, "true"); + ASSERT_CSTR_EQ(app->hwacceleration, "default"); + ASSERT_CSTR_EQ(app->screenreader, "use-system-setting"); + ASSERT_CSTR_EQ(app->component_type, "svcapp"); + ASSERT_CSTR_EQ(app->mainapp, "true"); + ASSERT_CSTR_EQ(app->recentimage, "false"); + ASSERT_CSTR_EQ(app->launchcondition, "false"); + ASSERT_CSTR_EQ(app->indicatordisplay, "true"); + ASSERT_CSTR_EQ(app->effectimage_type, "image"); + ASSERT_CSTR_EQ(app->guestmode_visibility, "true"); + ASSERT_CSTR_EQ(app->permission_type, "normal"); + ASSERT_CSTR_EQ(app->submode, "false"); + ASSERT_CSTR_EQ(app->process_pool, "false"); +} diff --git a/test/smoke_tests/manifest_test_ui_application.cc b/test/smoke_tests/manifest_test_ui_application.cc new file mode 100644 index 0000000..7689880 --- /dev/null +++ b/test/smoke_tests/manifest_test_ui_application.cc @@ -0,0 +1,642 @@ +// Copyright (c) 2015 Samsung Electronics Co., Ltd All Rights Reserved +// Use of this source code is governed by an apache-2.0 license that can be +// found in the LICENSE file. + +#include "smoke_tests/manifest_test.h" + +#include +#include + +#include + +namespace bf = boost::filesystem; +namespace ci = common_installer; + +TEST_F(ManifestTest, UIApplicationElement_Valid) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + ASSERT_CSTR_EQ(m->package, "package0id"); + auto apps = GListRange(m->application); + ASSERT_EQ(Size(&apps), 1); + application_x* app = *apps.begin(); + ASSERT_CSTR_EQ(app->appid, "package0id.appid"); + ASSERT_CSTR_EQ(app->component_type, "uiapp"); + ASSERT_CSTR_EQ(app->mainapp, "true"); +} + +TEST_F(ManifestTest, UIApplicationElement_MissingNoApp) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, UIApplicationElement_MissingOtherApp) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_NE(app->component_type, "uiapp"); +} + +TEST_F(ManifestTest, UIApplicationElement_Appid_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, UIApplicationElement_Appid_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, UIApplicationElement_LaunchMode_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->launch_mode, "single"); +} + +TEST_F(ManifestTest, UIApplicationElement_LaunchMode_Single) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->launch_mode, "single"); +} + +TEST_F(ManifestTest, UIApplicationElement_LaunchMode_Group) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->launch_mode, "group"); +} + +TEST_F(ManifestTest, UIApplicationElement_LaunchMode_Caller) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->launch_mode, "caller"); +} + +TEST_F(ManifestTest, UIApplicationElement_LaunchMode_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, UIApplicationElement_Multiple_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->multiple, "false"); +} + +TEST_F(ManifestTest, UIApplicationElement_Multiple_False) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr);; + ASSERT_CSTR_EQ(app->multiple, "false"); +} + +TEST_F(ManifestTest, UIApplicationElement_Multiple_True) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->multiple, "true"); +} + +TEST_F(ManifestTest, UIApplicationElement_Multiple_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, UIApplicationElement_Nodisplay_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->nodisplay, "false"); +} + +TEST_F(ManifestTest, UIApplicationElement_Nodisplay_False) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->nodisplay, "false"); +} + +TEST_F(ManifestTest, UIApplicationElement_Nodisplay_True) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->nodisplay, "true"); +} + +TEST_F(ManifestTest, UIApplicationElement_Nodisplay_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, UIApplicationElement_Taskmanage_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->taskmanage, "true"); +} + +TEST_F(ManifestTest, UIApplicationElement_Taskmanage_False) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->taskmanage, "false"); +} + +TEST_F(ManifestTest, UIApplicationElement_Taskmanage_True) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->taskmanage, "true"); +} + +TEST_F(ManifestTest, UIApplicationElement_Taskmanage_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, UIApplicationElement_HwAcceleration_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->hwacceleration, "default"); +} + +TEST_F(ManifestTest, UIApplicationElement_HwAcceleration_Default) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->hwacceleration, "default"); +} + +TEST_F(ManifestTest, UIApplicationElement_HwAcceleration_Off) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->hwacceleration, "off"); +} + +TEST_F(ManifestTest, UIApplicationElement_HwAcceleration_On) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->hwacceleration, "on"); +} + +TEST_F(ManifestTest, UIApplicationElement_Type_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, UIApplicationElement_Type_Capp) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->type, "capp"); +} + +TEST_F(ManifestTest, UIApplicationElement_Type_Webapp) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->type, "webapp"); +} + +TEST_F(ManifestTest, UIApplicationElement_Label_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto labels = GListRange(app->label); + ASSERT_EQ(Size(&labels), 0); +} + +TEST_F(ManifestTest, UIApplicationElement_Label_Valid) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto labels = GListRange(app->label); + ASSERT_EQ(Size(&labels), 1); + ASSERT_CSTR_EQ((*labels.begin())->text, "label"); + ASSERT_CSTR_EQ((*labels.begin())->lang, DEFAULT_LOCALE); +} + +TEST_F(ManifestTest, UIApplicationElement_Label_Text_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, UIApplicationElement_Label_Lang_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, UIApplicationElement_Label_Many) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto labels = GListRange(app->label); + ASSERT_EQ(Size(&labels), 2); + ASSERT_CSTR_EQ((*labels.begin())->text, "label"); + ASSERT_CSTR_EQ((*labels.begin())->lang, DEFAULT_LOCALE); + ASSERT_CSTR_EQ((*++labels.begin())->text, "label_GB"); + ASSERT_CSTR_EQ((*++labels.begin())->lang, "en-GB"); +} + +TEST_F(ManifestTest, UIApplicationElement_Label_Many_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, UIApplicationElement_Metadata_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto labels = GListRange(app->metadata); + ASSERT_EQ(Size(&labels), 0); +} + +TEST_F(ManifestTest, UIApplicationElement_Metadata_Valid) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto metadata = GListRange(app->metadata); + ASSERT_EQ(Size(&metadata), 1); + ASSERT_CSTR_EQ((*metadata.begin())->key, "key"); + ASSERT_CSTR_EQ((*metadata.begin())->value, "value"); +} + +TEST_F(ManifestTest, UIApplicationElement_Metadata_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, UIApplicationElement_Metadata_Many) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto metadata = GListRange(app->metadata); + ASSERT_EQ(Size(&metadata), 2); + ASSERT_CSTR_EQ((*metadata.begin())->key, "key1"); + ASSERT_CSTR_EQ((*metadata.begin())->value, "value1"); + ASSERT_CSTR_EQ((*++metadata.begin())->key, "key2"); + ASSERT_CSTR_EQ((*++metadata.begin())->value, ""); +} + +TEST_F(ManifestTest, UIApplicationElement_BackgroundCategory_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto bg_categories = GListRange(app->background_category); + ASSERT_EQ(Size(&bg_categories), 0); +} + +TEST_F(ManifestTest, UIApplicationElement_BackgroundCategory_Valid) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto bg_categories = GListRange(app->background_category); + ASSERT_EQ(Size(&bg_categories), 1); + ASSERT_CSTR_EQ(*bg_categories.begin(), "bgcategory"); +} + +TEST_F(ManifestTest, UIApplicationElement_BackgroundCategory_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, UIApplicationElement_BackgroundCategory_Many) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto bg_categories = GListRange(app->background_category); + ASSERT_EQ(Size(&bg_categories), 2); + ASSERT_CSTR_EQ(*bg_categories.begin(), "bgcategory1"); + ASSERT_CSTR_EQ(*++bg_categories.begin(), "bgcategory2"); +} + +TEST_F(ManifestTest, UIApplicationElement_DataControl_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto datacontrols = GListRange(app->datacontrol); + ASSERT_EQ(Size(&datacontrols), 0); +} + +TEST_F(ManifestTest, UIApplicationElement_DataControl_Valid) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto datacontrols = GListRange(app->datacontrol); + ASSERT_EQ(Size(&datacontrols), 1); + ASSERT_CSTR_EQ((*datacontrols.begin())->providerid, "providerid"); + ASSERT_CSTR_EQ((*datacontrols.begin())->access, "access"); + ASSERT_CSTR_EQ((*datacontrols.begin())->type, "type"); +} + +TEST_F(ManifestTest, UIApplicationElement_DataControl_Many) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto datacontrols = GListRange(app->datacontrol); + ASSERT_EQ(Size(&datacontrols), 2); + ASSERT_CSTR_EQ((*datacontrols.begin())->providerid, "providerid1"); + ASSERT_CSTR_EQ((*datacontrols.begin())->access, "access1"); + ASSERT_CSTR_EQ((*datacontrols.begin())->type, "type1"); + ASSERT_CSTR_EQ((*++datacontrols.begin())->providerid, "providerid2"); + ASSERT_CSTR_EQ((*++datacontrols.begin())->access, "access2"); + ASSERT_CSTR_EQ((*++datacontrols.begin())->type, "type2"); +} + +TEST_F(ManifestTest, UIApplicationElement_AppControl_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto appcontrols = GListRange(app->appcontrol); + ASSERT_EQ(Size(&appcontrols), 0); +} + +TEST_F(ManifestTest, UIApplicationElement_AppControl_Operation_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto appcontrols = GListRange(app->appcontrol); + ASSERT_EQ(Size(&appcontrols), 0); +} + +TEST_F(ManifestTest, UIApplicationElement_AppControl_Operation_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, UIApplicationElement_AppControl_Operation_Invalid_NotURI) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, UIApplicationElement_AppControl_Mime_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, UIApplicationElement_AppControl_Uri_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, UIApplicationElement_AppControl_Valid) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto appcontrols = GListRange(app->appcontrol); + ASSERT_EQ(Size(&appcontrols), 1); + ASSERT_CSTR_EQ((*appcontrols.begin())->operation, + "http://tizen.org/appcontrol/operation/compose"); + ASSERT_CSTR_EQ((*appcontrols.begin())->uri, "scheme://"); + ASSERT_CSTR_EQ((*appcontrols.begin())->mime, "application/pdf"); +} + +TEST_F(ManifestTest, UIApplicationElement_AppControl_Many) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto appcontrols = GListRange(app->appcontrol); + ASSERT_EQ(Size(&appcontrols), 2); + ASSERT_CSTR_EQ((*appcontrols.begin())->operation, + "http://tizen.org/appcontrol/operation/compose"); + ASSERT_CSTR_EQ((*appcontrols.begin())->uri, "scheme://"); + ASSERT_CSTR_EQ((*appcontrols.begin())->mime, "application/pdf"); + ASSERT_CSTR_EQ((*++appcontrols.begin())->operation, + "http://tizen.org/appcontrol/operation/compose2"); + ASSERT_CSTR_EQ((*++appcontrols.begin())->uri, "scheme2://"); + ASSERT_CSTR_EQ((*++appcontrols.begin())->mime, "application/text"); +} + +TEST_F(ManifestTest, UIApplicationElement_AppControl_SkipUri) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto appcontrols = GListRange(app->appcontrol); + ASSERT_EQ(Size(&appcontrols), 1); + ASSERT_CSTR_EQ((*appcontrols.begin())->operation, + "http://tizen.org/appcontrol/operation/compose"); + ASSERT_EQ((*appcontrols.begin())->uri, nullptr); + ASSERT_CSTR_EQ((*appcontrols.begin())->mime, "application/pdf"); +} + +TEST_F(ManifestTest, UIApplicationElement_AppControl_SkipMime) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto appcontrols = GListRange(app->appcontrol); + ASSERT_EQ(Size(&appcontrols), 1); + ASSERT_CSTR_EQ((*appcontrols.begin())->operation, + "http://tizen.org/appcontrol/operation/compose"); + ASSERT_CSTR_EQ((*appcontrols.begin())->uri, "scheme://"); + ASSERT_EQ((*appcontrols.begin())->mime, nullptr); +} + +TEST_F(ManifestTest, UIApplicationElement_AppControl_CartesianProduct) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto appcontrols = GListRange(app->appcontrol); + ASSERT_EQ(Size(&appcontrols), 8); + + std::vector> + found_app_controls; + for (auto& item : appcontrols) { + found_app_controls.emplace_back(item->operation, item->uri, item->mime); + } + + for (auto operation : {"http://tizen.org/appcontrol/operation/compose1", + "http://tizen.org/appcontrol/operation/compose2"}) { + for (auto uri : {"scheme1://", "scheme2://"}) { + for (auto mime : {"application/text", "application/pdf"}) { + ASSERT_IN(boost::make_tuple(operation, uri, mime), found_app_controls); + } + } + } +} + +TEST_F(ManifestTest, + UIApplicationElement_AppControl_CartesianProduct_SkipMime) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto appcontrols = GListRange(app->appcontrol); + ASSERT_EQ(Size(&appcontrols), 4); + + std::vector> + found_app_controls; + for (auto& item : appcontrols) { + ASSERT_EQ(item->mime, nullptr); + found_app_controls.emplace_back(item->operation, item->uri, ""); + } + + for (auto operation : {"http://tizen.org/appcontrol/operation/compose1", + "http://tizen.org/appcontrol/operation/compose2"}) { + for (auto uri : {"scheme1://", "scheme2://"}) { + ASSERT_IN(boost::make_tuple(operation, uri, ""), found_app_controls); + } + } +} + +TEST_F(ManifestTest, UIApplicationElement_AppControl_CartesianProduct_SkipUri) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto appcontrols = GListRange(app->appcontrol); + ASSERT_EQ(Size(&appcontrols), 4); + + std::vector> + found_app_controls; + for (auto& item : appcontrols) { + ASSERT_EQ(item->uri, nullptr); + found_app_controls.emplace_back(item->operation, "", item->mime); + } + + for (auto operation : {"http://tizen.org/appcontrol/operation/compose1", + "http://tizen.org/appcontrol/operation/compose2"}) { + for (auto mime : {"application/text", "application/pdf"}) { + ASSERT_IN(boost::make_tuple(operation, "", mime), found_app_controls); + } + } +} + +TEST_F(ManifestTest, UIApplicationElement_Icon_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto icons = GListRange(app->icon); + ASSERT_EQ(Size(&icons), 0); +} + +TEST_F(ManifestTest, UIApplicationElement_Icon_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, UIApplicationElement_Icon_Valid) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto icons = GListRange(app->icon); + ASSERT_EQ(Size(&icons), 1); + ASSERT_EQ(bf::path((*icons.begin())->text).filename().string(), + "test_icon.png"); +} + +TEST_F(ManifestTest, UIApplicationElement_SetManifestXDefaults) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + ASSERT_CSTR_EQ(m->package, "package0id"); + ASSERT_CSTR_EQ(m->version, "1.0.0"); + ASSERT_CSTR_EQ(m->installlocation, "auto"); + ASSERT_CSTR_EQ(m->appsetting, "false"); + ASSERT_CSTR_EQ(m->type, "tpk"); + ASSERT_NE(m->installed_time, nullptr); + ASSERT_CSTR_EQ(m->mainapp_id, "package0id.appid"); + ASSERT_CSTR_EQ(m->nodisplay_setting, "false"); + ASSERT_CSTR_EQ(m->support_disable, "false"); + ASSERT_CSTR_EQ(m->api_version, "2.3"); + auto apps = GListRange(m->application); + ASSERT_EQ(Size(&apps), 1); + application_x* app = *apps.begin(); + ASSERT_CSTR_EQ(app->appid, "package0id.appid"); + ASSERT_NE(app->exec, nullptr); + ASSERT_CSTR_EQ(app->nodisplay, "false"); + ASSERT_CSTR_EQ(app->multiple, "false"); + ASSERT_CSTR_EQ(app->taskmanage, "true"); + ASSERT_CSTR_EQ(app->hwacceleration, "default"); + ASSERT_CSTR_EQ(app->screenreader, "use-system-setting"); + ASSERT_CSTR_EQ(app->component_type, "uiapp"); + ASSERT_CSTR_EQ(app->mainapp, "true"); + ASSERT_CSTR_EQ(app->recentimage, "false"); + ASSERT_CSTR_EQ(app->launchcondition, "false"); + ASSERT_CSTR_EQ(app->indicatordisplay, "true"); + ASSERT_CSTR_EQ(app->effectimage_type, "image"); + ASSERT_CSTR_EQ(app->guestmode_visibility, "true"); + ASSERT_CSTR_EQ(app->permission_type, "normal"); + ASSERT_CSTR_EQ(app->component_type, "uiapp"); + ASSERT_CSTR_EQ(app->submode, "false"); + ASSERT_CSTR_EQ(app->process_pool, "false"); +} + +TEST_F(ManifestTest, UIApplicationElement_SplashScreens_Duplicated_Entry) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + auto apps = GListRange(m->application); + ASSERT_EQ(Size(&apps), 1); + application_x* app = *apps.begin(); + auto splashscreens = GListRange(app->splashscreens); + ASSERT_EQ(splashscreens.Size(), 2); + auto root_path = runner.GetRootApplicationPath(); + std::string pkgid = "package0id"; + auto src_directory = root_path / pkgid / "shared" / "res"; + auto test1 = src_directory / "test1.jpg"; + auto it = splashscreens.begin(); + ASSERT_CSTR_EQ((*it)->src, test1.c_str()); + ASSERT_CSTR_EQ((*it)->type, "img"); + ASSERT_CSTR_EQ((*it)->dpi, "hdpi"); + ASSERT_CSTR_EQ((*it)->orientation, "landscape"); + ASSERT_CSTR_EQ((*it)->operation, + "http://tizen.org/appcontrol/operation/default"); + it++; + ASSERT_CSTR_EQ((*it)->src, test1.c_str()); + ASSERT_CSTR_EQ((*it)->type, "img"); + ASSERT_CSTR_EQ((*it)->dpi, "hdpi"); + ASSERT_CSTR_EQ((*it)->orientation, "landscape"); + ASSERT_CSTR_EQ((*it)->operation, + "http://tizen.org/appcontrol/operation/test_operation"); +} diff --git a/test/smoke_tests/manifest_test_watch_application.cc b/test/smoke_tests/manifest_test_watch_application.cc new file mode 100644 index 0000000..398195c --- /dev/null +++ b/test/smoke_tests/manifest_test_watch_application.cc @@ -0,0 +1,148 @@ +// Copyright (c) 2015 Samsung Electronics Co., Ltd All Rights Reserved +// Use of this source code is governed by an apache-2.0 license that can be +// found in the LICENSE file. + +#include "smoke_tests/manifest_test.h" + +namespace bf = boost::filesystem; +namespace ci = common_installer; + +TEST_F(ManifestTest, WatchApplicationElement_Valid) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + ASSERT_CSTR_EQ(m->package, "package0id"); + auto apps = GListRange(m->application); + ASSERT_EQ(Size(&apps), 1); + application_x* app = *apps.begin(); + ASSERT_CSTR_EQ(app->appid, "package0id.appid"); + ASSERT_CSTR_EQ(app->component_type, "watchapp"); +} + +TEST_F(ManifestTest, WatchApplicationElement_Appid_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, WatchApplicationElement_Appid_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, WatchApplicationElement_Label_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto labels = GListRange(app->label); + ASSERT_EQ(Size(&labels), 0); +} + +TEST_F(ManifestTest, WatchApplicationElement_Label_Valid) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto labels = GListRange(app->label); + ASSERT_EQ(Size(&labels), 1); + ASSERT_CSTR_EQ((*labels.begin())->text, "label"); + ASSERT_CSTR_EQ((*labels.begin())->lang, DEFAULT_LOCALE); +} + +TEST_F(ManifestTest, WatchApplicationElement_Label_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, WatchApplicationElement_Icon_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto icons = GListRange(app->icon); + ASSERT_EQ(Size(&icons), 0); +} + +TEST_F(ManifestTest, WatchApplicationElement_Icon_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, WatchApplicationElement_Icon_Valid) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto icons = GListRange(app->icon); + ASSERT_EQ(Size(&icons), 1); + ASSERT_EQ(bf::path((*icons.begin())->text).filename().string(), + "test_icon.png"); +} + +TEST_F(ManifestTest, WatchApplicationElement_AmbientSupport_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->support_ambient, "false"); +} + +TEST_F(ManifestTest, WatchApplicationElement_AmbientSupport_False) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->support_ambient, "false"); +} + + +TEST_F(ManifestTest, WatchApplicationElement_AmbientSupport_True) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + ASSERT_CSTR_EQ(app->support_ambient, "true"); +} + +TEST_F(ManifestTest, WatchApplicationElement_AmbientSupport_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, WatchApplicationElement_SetManifestXDefaults) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + ASSERT_CSTR_EQ(m->package, "package0id"); + ASSERT_CSTR_EQ(m->version, "1.0.0"); + ASSERT_CSTR_EQ(m->installlocation, "auto"); + ASSERT_CSTR_EQ(m->appsetting, "false"); + ASSERT_CSTR_EQ(m->type, "tpk"); + ASSERT_NE(m->installed_time, nullptr); + ASSERT_CSTR_EQ(m->mainapp_id, "package0id.appid"); + ASSERT_CSTR_EQ(m->nodisplay_setting, "false"); + ASSERT_CSTR_EQ(m->support_disable, "false"); + ASSERT_CSTR_EQ(m->api_version, "2.3"); + auto apps = GListRange(m->application); + ASSERT_EQ(Size(&apps), 1); + application_x* app = *apps.begin(); + ASSERT_CSTR_EQ(app->appid, "package0id.appid"); + ASSERT_NE(app->exec, nullptr); + ASSERT_CSTR_EQ(app->nodisplay, "true"); + ASSERT_CSTR_EQ(app->multiple, "false"); + ASSERT_CSTR_EQ(app->taskmanage, "false"); + ASSERT_CSTR_EQ(app->hwacceleration, "default"); + ASSERT_CSTR_EQ(app->screenreader, "use-system-setting"); + ASSERT_CSTR_EQ(app->component_type, "watchapp"); + ASSERT_CSTR_EQ(app->mainapp, "true"); + ASSERT_CSTR_EQ(app->recentimage, "false"); + ASSERT_CSTR_EQ(app->launchcondition, "false"); + ASSERT_CSTR_EQ(app->indicatordisplay, "true"); + ASSERT_CSTR_EQ(app->effectimage_type, "image"); + ASSERT_CSTR_EQ(app->guestmode_visibility, "true"); + ASSERT_CSTR_EQ(app->permission_type, "normal"); + ASSERT_CSTR_EQ(app->submode, "false"); + ASSERT_CSTR_EQ(app->process_pool, "false"); +} diff --git a/test/smoke_tests/manifest_test_widget_application.cc b/test/smoke_tests/manifest_test_widget_application.cc new file mode 100644 index 0000000..6b9d392 --- /dev/null +++ b/test/smoke_tests/manifest_test_widget_application.cc @@ -0,0 +1,143 @@ +// Copyright (c) 2015 Samsung Electronics Co., Ltd All Rights Reserved +// Use of this source code is governed by an apache-2.0 license that can be +// found in the LICENSE file. + +#include "smoke_tests/manifest_test.h" + +namespace bf = boost::filesystem; +namespace ci = common_installer; + +TEST_F(ManifestTest, WidgetApplicationElement_Valid) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + ASSERT_CSTR_EQ(m->package, "package0id"); + auto apps = GListRange(m->application); + ASSERT_EQ(Size(&apps), 1); + application_x* app = *apps.begin(); + ASSERT_CSTR_EQ(app->appid, "package0id.appid"); + ASSERT_CSTR_EQ(app->component_type, "widgetapp"); +} + +TEST_F(ManifestTest, WidgetApplicationElement_Appid_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, WidgetApplicationElement_Appid_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, WidgetApplicationElement_Label_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto labels = GListRange(app->label); + ASSERT_EQ(Size(&labels), 0); +} + +TEST_F(ManifestTest, WidgetApplicationElement_Label_Valid) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto labels = GListRange(app->label); + ASSERT_EQ(Size(&labels), 1); + ASSERT_CSTR_EQ((*labels.begin())->text, "label"); + ASSERT_CSTR_EQ((*labels.begin())->lang, DEFAULT_LOCALE); +} + +TEST_F(ManifestTest, WidgetApplicationElement_Label_Text_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, WidgetApplicationElement_Label_Lang_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, WidgetApplicationElement_Label_Many) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto labels = GListRange(app->label); + ASSERT_EQ(Size(&labels), 2); + ASSERT_CSTR_EQ((*labels.begin())->text, "label"); + ASSERT_CSTR_EQ((*labels.begin())->lang, DEFAULT_LOCALE); + ASSERT_CSTR_EQ((*++labels.begin())->text, "label_GB"); + ASSERT_CSTR_EQ((*++labels.begin())->lang, "en-GB"); +} + +TEST_F(ManifestTest, WidgetApplicationElement_Label_Many_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, WidgetApplicationElement_Icon_Missing) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto icons = GListRange(app->icon); + ASSERT_EQ(Size(&icons), 0); +} + +TEST_F(ManifestTest, WidgetApplicationElement_Icon_Invalid) { + StepParseRunner runner(GetMyName()); + ASSERT_FALSE(runner.Run()); +} + +TEST_F(ManifestTest, WidgetApplicationElement_Icon_Valid) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + application_x* app = GetSingleApp(runner.GetManifest()); + ASSERT_NE(app, nullptr); + auto icons = GListRange(app->icon); + ASSERT_EQ(Size(&icons), 1); + ASSERT_EQ(bf::path((*icons.begin())->text).filename().string(), + "test_icon.png"); +} + +// preview, update-period, support-size are supposed to be parsed by plugin + +TEST_F(ManifestTest, WidgetApplicationElement_SetManifestXDefaults) { + StepParseRunner runner(GetMyName()); + ASSERT_TRUE(runner.Run()); + manifest_x* m = runner.GetManifest(); + ASSERT_NE(m, nullptr); + ASSERT_CSTR_EQ(m->package, "package0id"); + ASSERT_CSTR_EQ(m->version, "1.0.0"); + ASSERT_CSTR_EQ(m->installlocation, "auto"); + ASSERT_CSTR_EQ(m->appsetting, "false"); + ASSERT_CSTR_EQ(m->type, "tpk"); + ASSERT_NE(m->installed_time, nullptr); + ASSERT_CSTR_EQ(m->mainapp_id, "package0id.appid"); + ASSERT_CSTR_EQ(m->nodisplay_setting, "false"); + ASSERT_CSTR_EQ(m->support_disable, "false"); + ASSERT_CSTR_EQ(m->api_version, "2.3"); + auto apps = GListRange(m->application); + ASSERT_EQ(Size(&apps), 1); + application_x* app = *apps.begin(); + ASSERT_CSTR_EQ(app->appid, "package0id.appid"); + ASSERT_NE(app->exec, nullptr); + ASSERT_CSTR_EQ(app->nodisplay, "true"); + ASSERT_CSTR_EQ(app->multiple, "false"); + ASSERT_CSTR_EQ(app->taskmanage, "false"); + ASSERT_CSTR_EQ(app->hwacceleration, "default"); + ASSERT_CSTR_EQ(app->screenreader, "use-system-setting"); + ASSERT_CSTR_EQ(app->component_type, "widgetapp"); + ASSERT_CSTR_EQ(app->mainapp, "true"); + ASSERT_CSTR_EQ(app->recentimage, "false"); + ASSERT_CSTR_EQ(app->launchcondition, "false"); + ASSERT_CSTR_EQ(app->indicatordisplay, "false"); + ASSERT_CSTR_EQ(app->effectimage_type, "image"); + ASSERT_CSTR_EQ(app->guestmode_visibility, "true"); + ASSERT_CSTR_EQ(app->permission_type, "normal"); + ASSERT_CSTR_EQ(app->submode, "false"); + ASSERT_CSTR_EQ(app->process_pool, "false"); +} diff --git a/test/smoke_tests/recovery_test.cc b/test/smoke_tests/recovery_test.cc new file mode 100644 index 0000000..a8e2d98 --- /dev/null +++ b/test/smoke_tests/recovery_test.cc @@ -0,0 +1,468 @@ +// Copyright (c) 2019 Samsung Electronics Co., Ltd All Rights Reserved +// Use of this source code is governed by an apache-2.0 license that can be +// found in the LICENSE file. + +#include +#include + +#include +#include + +#include + +#include +#include +#include + +#include "smoke_tests/tpk_smoke_utils.h" + +namespace bf = boost::filesystem; +namespace bpo = boost::program_options; +namespace ci = common_installer; + +enum class ReqType : int { + UNKNOWN_REQ, + INSTALL_REQ, + UNINSTALL_REQ, + UPDATE_REQ, + DELTA_REQ, + MOUNT_INSTALL_REQ, + MOUNT_UPDATE_REQ, +}; + +enum class BackupType : int { + MOVE, + COPY_AND_REMOVE, +}; + +std::map install_req_filter = { + { ReqType::INSTALL_REQ, "SmokeTest.RecoveryMode_Tpk_Installation" }, + { ReqType::UNINSTALL_REQ, "SmokeTest.RecoveryMode_Tpk_Uninstallation" }, + { ReqType::UPDATE_REQ, "SmokeTest.RecoveryMode_Tpk_Update" }, + { ReqType::DELTA_REQ, "SmokeTest.RecoveryMode_ForDelta" }, + { ReqType::MOUNT_INSTALL_REQ, "SmokeTest.RecoveryMode_ForMountInstall" }, + { ReqType::MOUNT_UPDATE_REQ, "SmokeTest.RecoveryMode_ForMountUpdate" } +}; + +int delay = 1000000; +int interval = 500000; +int test_count = 0; + +namespace smoke_test { + +class SmokeEnvironment : public testing::Environment { + public: + explicit SmokeEnvironment(ci::RequestMode mode, bool no_backup, + BackupType backup_type) : + request_mode_(mode), no_backup_(no_backup), + backup_type_(backup_type) { + } + + void SetUp() override { + if (request_mode_ == ci::RequestMode::USER) { + ASSERT_TRUE(AddTestUser(&test_user)); + } + if (no_backup_) + return; + backups_ = SetupBackupDirectories(test_user.uid); + if (backup_type_ == BackupType::MOVE) { + for (auto& path : backups_) + ASSERT_TRUE(BackupPath(path)); + } else if (backup_type_ == BackupType::COPY_AND_REMOVE) { + for (auto& path : backups_) + ASSERT_TRUE(BackupPathCopyAndRemove(path)); + } + } + + void TearDown() override { + test_count++; + ASSERT_TRUE(request_mode_ == ci::RequestMode::GLOBAL || + (request_mode_ == ci::RequestMode::USER && + kGlobalUserUid != test_user.uid)); + + ci::PkgQueryInterface pkg_query("recoverypkg", test_user.uid, true); + if (pkg_query.IsPackageInstalled()) { + TpkSmokeTestHelperRunner backend; + SmokeTestHelperRunner::Result ret = + backend.UninstallWithSubprocess("recoverypkg", test_user.uid); + ASSERT_EQ(ret, SmokeTestHelperRunner::Result::SUCCESS); + } + + if (request_mode_ == ci::RequestMode::USER) { + ASSERT_TRUE(DeleteTestUser()); + } + if (no_backup_) + return; + if (backup_type_ == BackupType::MOVE) { + for (auto& path : backups_) + ASSERT_TRUE(RestorePath(path)); + } else if (backup_type_ == BackupType::COPY_AND_REMOVE) { + for (auto& path : backups_) + ASSERT_TRUE(RestorePathCopyAndRemove(path)); + } + } + + User test_user; + + private: + ci::RequestMode request_mode_; + std::vector backups_; + bool no_backup_; + BackupType backup_type_; +}; + +} // namespace smoke_test + +namespace { + +smoke_test::SmokeEnvironment *env = nullptr; + +void signalHandler(int signum) { + env->TearDown(); + exit(signum); +} + +} // namespace + +namespace smoke_test { + +class SmokeTest : public testing::Test { + public: + SmokeTest() : params{PackageType::TPK, false} { + params.test_user.uid = env->test_user.uid; + params.test_user.gid = env->test_user.gid; + } + + protected: + TpkSmokeTestHelperRunner backend; + TestParameters params; +}; + +TEST_F(SmokeTest, RecoveryMode_Tpk_Installation) { + RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); + + bf::path path = kSmokePackagesDirectory / "RecoveryPkg.tpk"; + int wait_time = delay + interval * test_count; + + SmokeTestHelperRunner::Result ret = backend.InstallWithSubprocessAndKill( + path, params.test_user.uid, wait_time); + if (ret == SmokeTestHelperRunner::Result::SUCCESS) { + std::cout << "install finished before process killed" << std::endl; + return; + } + ASSERT_EQ(ret, SmokeTestHelperRunner::Result::KILLED); + std::string pkgid = "recoverypkg"; + bf::path recovery_file = FindRecoveryFile("/tpk-recovery", + params.test_user.uid); + if (recovery_file.empty()) { + std::cout << "recovery file dosen't exist, " + "this test is skipped" << std::endl; + return; + } + ASSERT_EQ(backend.RecoveryWithSubprocess(recovery_file, params.test_user.uid), + SmokeTestHelperRunner::Result::SUCCESS); + ASSERT_TRUE(CheckPackageNonExistance(pkgid, params)); +} + +TEST_F(SmokeTest, RecoveryMode_Tpk_Uninstallation) { + RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); + bf::path path = kSmokePackagesDirectory / "RecoveryPkg.tpk"; + + SmokeTestHelperRunner::Result ret = backend.InstallWithSubprocess( + path, params.test_user.uid); + if (ret != SmokeTestHelperRunner::Result::SUCCESS) { + std::cout << "failed to install package before uninstall" << std::endl; + return; + } + + std::string pkgid = "recoverypkg"; + int wait_time = delay + interval * test_count; + ret = backend.UninstallWithSubprocessAndKill( + pkgid, params.test_user.uid, wait_time); + if (ret == SmokeTestHelperRunner::Result::SUCCESS) { + std::cout << "uninstall finished before process killed" << std::endl; + return; + } + ASSERT_EQ(ret, SmokeTestHelperRunner::Result::KILLED); + + bf::path recovery_file = FindRecoveryFile("/tpk-recovery", + params.test_user.uid); + if (recovery_file.empty()) { + std::cout << "recovery file dosen't exist, " + "this test is skipped" << std::endl; + return; + } + ASSERT_EQ(backend.RecoveryWithSubprocess(recovery_file, params.test_user.uid), + SmokeTestHelperRunner::Result::SUCCESS); + ASSERT_TRUE(CheckPackageNonExistance(pkgid, params)); +} + +TEST_F(SmokeTest, RecoveryMode_Tpk_Update) { + RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); + + bf::path path_old = kSmokePackagesDirectory / "RecoveryPkg.tpk"; + bf::path path_new = kSmokePackagesDirectory / "RecoveryPkg2.tpk"; + int wait_time = delay + interval * test_count; + + ASSERT_EQ(backend.InstallWithSubprocess(path_old, params.test_user.uid), + SmokeTestHelperRunner::Result::SUCCESS); + + SmokeTestHelperRunner::Result ret = backend.InstallWithSubprocessAndKill( + path_new, params.test_user.uid, wait_time); + if (ret == SmokeTestHelperRunner::Result::SUCCESS) { + std::cout << "update finished before process killed" << std::endl; + return; + } + ASSERT_EQ(ret, SmokeTestHelperRunner::Result::KILLED); + + std::string pkgid = "recoverypkg"; + std::string appid = "recoverypkg"; + std::string exec = "recoverypkg"; + bf::path recovery_file = FindRecoveryFile("/tpk-recovery", + params.test_user.uid); + if (recovery_file.empty()) { + std::cout << "recovery file dosen't exist, " + "this test is skipped" << std::endl; + return; + } + + std::unique_ptr recovery_info = + GetRecoverFileInfo(recovery_file); + ASSERT_EQ(backend.RecoveryWithSubprocess(recovery_file, params.test_user.uid), + SmokeTestHelperRunner::Result::SUCCESS); + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "res/VERSION", + recovery_info->cleanup() ? "2\n" : "1\n", params)); +} + +TEST_F(SmokeTest, RecoveryMode_ForDelta) { + RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); + + bf::path path_old = kSmokePackagesDirectory / "RecoveryPkg.tpk"; + bf::path path_new = kSmokePackagesDirectory / "RecoveryPkg.delta"; + int wait_time = delay + interval * test_count; + + ASSERT_EQ(backend.InstallWithSubprocess(path_old, params.test_user.uid), + SmokeTestHelperRunner::Result::SUCCESS); + + SmokeTestHelperRunner::Result ret = backend.InstallWithSubprocessAndKill( + path_new, params.test_user.uid, wait_time); + if (ret == SmokeTestHelperRunner::Result::SUCCESS) { + std::cout << "delta finished before process killed" << std::endl; + return; + } + ASSERT_EQ(ret, SmokeTestHelperRunner::Result::KILLED); + + std::string pkgid = "recoverypkg"; + std::string appid = "recoverypkg"; + std::string exec = "recoverypkg"; + bf::path recovery_file = FindRecoveryFile("/tpk-recovery", + params.test_user.uid); + bf::path root_path = ci::GetRootAppPath(params.is_readonly, + params.test_user.uid); + if (recovery_file.empty()) { + std::cout << "recovery file dosen't exist, " + "this test is skipped" << std::endl; + return; + } + + std::unique_ptr recovery_info = + GetRecoverFileInfo(recovery_file); + ASSERT_EQ(backend.RecoveryWithSubprocess(recovery_file, params.test_user.uid), + SmokeTestHelperRunner::Result::SUCCESS); + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "res/VERSION", + recovery_info->cleanup() ? "2\n" : "1\n", params)); + bool deleted_exist = bf::exists(root_path / pkgid / "res/DELETED"); + bool added_exist = bf::exists(root_path / pkgid / "res/ADDED"); + ASSERT_NE(deleted_exist, added_exist); + ASSERT_TRUE(recovery_info->cleanup() ? added_exist : deleted_exist); +} + +TEST_F(SmokeTest, RecoveryMode_ForMountInstall) { + RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); + + bf::path path = kSmokePackagesDirectory / "RecoveryPkg.tpk"; + int wait_time = delay + interval * test_count; + + SmokeTestHelperRunner::Result ret = backend.MountInstallWithSubprocessAndKill( + path, params.test_user.uid, wait_time); + if (ret == SmokeTestHelperRunner::Result::SUCCESS) { + std::cout << "mount install finished before process killed" << std::endl; + return; + } + + std::string pkgid = "recoverypkg"; + bf::path recovery_file = FindRecoveryFile("/tpk-recovery", + params.test_user.uid); + if (recovery_file.empty()) { + std::cout << "recovery file dosen't exist, " + "this test is skipped" << std::endl; + return; + } + ASSERT_EQ(backend.RecoveryWithSubprocess(recovery_file, params.test_user.uid), + SmokeTestHelperRunner::Result::SUCCESS); + + ASSERT_TRUE(CheckPackageNonExistance(pkgid, params)); +} + +TEST_F(SmokeTest, RecoveryMode_ForMountUpdate) { + RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); + + bf::path path_old = + kSmokePackagesDirectory / "RecoveryPkg.tpk"; + bf::path path_new = + kSmokePackagesDirectory / "RecoveryPkg2.tpk"; + int wait_time = delay + interval * test_count; + + ASSERT_EQ(backend.MountInstallWithSubprocess(path_old, params.test_user.uid), + SmokeTestHelperRunner::Result::SUCCESS); + + SmokeTestHelperRunner::Result ret = backend.MountInstallWithSubprocessAndKill( + path_new, params.test_user.uid, wait_time); + if (ret == SmokeTestHelperRunner::Result::SUCCESS) { + std::cout << "mount update finished before process killed" << std::endl; + return; + } + + std::string pkgid = "recoverypkg"; + std::string appid = "recoverypkg"; + std::string exec = "recoverypkg"; + bf::path recovery_file = FindRecoveryFile("/tpk-recovery", + params.test_user.uid); + if (recovery_file.empty()) { + std::cout << "recovery file dosen't exist, " + "this test is skipped" << std::endl; + return; + } + + // Filesystem may be mounted after crash + ScopedTzipInterface poweroff_unmount_interface(pkgid, params.test_user.uid); + poweroff_unmount_interface.Release(); + + ASSERT_EQ(backend.RecoveryWithSubprocess(recovery_file, params.test_user.uid), + SmokeTestHelperRunner::Result::SUCCESS); + + ScopedTzipInterface interface(pkgid, params.test_user.uid); + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + ASSERT_TRUE(ValidateFileContentInPackage(pkgid, + "res/VERSION", "1\n", params)); +} + +} // namespace smoke_test + +const int kBufSize = 1024; + +int main(int argc, char** argv) { + try { + bool no_backup = false; + int repeat_count = 10; + ReqType req_type = ReqType::UNKNOWN_REQ; + bool repeat = false; + BackupType backup_type = BackupType::MOVE; + ci::RequestMode request_mode = smoke_test::ParseRequestMode(argc, argv); + if (getuid() != 0 || request_mode != ci::RequestMode::GLOBAL) + std::cout << "Run recovery test with user request mode" << std::endl; + + bpo::options_description options("Allowed options"); + bpo::variables_map opt_map; + options.add_options() + ("help", "display this help message") + ("install", + "recovery test for forced termination " + "during package installing") + ("uninstall", + "recovery test for forced termination " + "during package uninstallation") + ("update", + "recovery test for forced termination " + "during package updating") + ("delta", + "recovery test for forced termination " + "during package delta installing") + ("mount-install", + "recovery test for forced termination " + "during package mount-installing") + ("mount-update", + "recovery test for forced termination " + "during package mount-updating") + ("delay", bpo::value(), "fixed delay for forced termination\n" + "unit : microsecond (ex. 1000000us = 1s)") + ("interval", bpo::value(), + "use with repeat option.\n" + "as it repeat the interval is added to delay\n" + "unit : microsecond (ex. 1000000us = 1s)") + ("repeat", bpo::value(), "option for performing tests repeatedly\n" + "enter -1 to test infinitely") + ("no-backup", "Do test without backup") + ("backup-type", bpo::value(), " set test's " + "backup type \'move\', \'copy and remove\'"); + bpo::store(bpo::command_line_parser(argc, argv). + options(options).allow_unregistered().run(), opt_map); + if (opt_map.count("help")) { + std::cerr << options << std::endl; + return -1; + } + + if (opt_map.count("install")) + req_type = ReqType::INSTALL_REQ; + if (opt_map.count("uninstall")) + req_type = ReqType::UNINSTALL_REQ; + else if (opt_map.count("update")) + req_type = ReqType::UPDATE_REQ; + else if (opt_map.count("delta")) + req_type = ReqType::DELTA_REQ; + else if (opt_map.count("mount-install")) + req_type = ReqType::MOUNT_INSTALL_REQ; + else if (opt_map.count("mount-update")) + req_type = ReqType::MOUNT_UPDATE_REQ; + + if (opt_map.count("delay")) + delay = opt_map["delay"].as(); + + if (opt_map.count("interval")) + interval = opt_map["interval"].as(); + + if (opt_map.count("repeat")) { + repeat = true; + repeat_count = opt_map["repeat"].as(); + } + + if (opt_map.count("no-backup")) + no_backup = true; + if (opt_map.count("backup-type")) { + if (opt_map["backup-type"].as() == "move") { + backup_type = BackupType::MOVE; + } else if (opt_map["backup-type"].as() == "copy") { + backup_type = BackupType::COPY_AND_REMOVE; + } else { + std::cerr << options << std::endl; + return -1; + } + } + bpo::notify(opt_map); + + if (req_type == ReqType::UNKNOWN_REQ) { + std::cerr << options << std::endl; + return 0; + } + + testing::GTEST_FLAG(filter) = install_req_filter[req_type]; + if (repeat) { + testing::GTEST_FLAG(repeat) = repeat_count; + testing::GTEST_FLAG(break_on_failure) = true; + } + + testing::InitGoogleTest(&argc, argv); + ::env = static_cast( + testing::AddGlobalTestEnvironment( + new smoke_test::SmokeEnvironment(request_mode, + no_backup, backup_type))); + signal(SIGINT, ::signalHandler); + signal(SIGSEGV, ::signalHandler); + return RUN_ALL_TESTS(); + } catch (...) { + std::cout << "Exception occurred during testing" << std::endl; + return 1; + } +} diff --git a/test/smoke_tests/smoke_test.cc b/test/smoke_tests/smoke_test.cc new file mode 100644 index 0000000..b4837a1 --- /dev/null +++ b/test/smoke_tests/smoke_test.cc @@ -0,0 +1,955 @@ +// Copyright (c) 2015 Samsung Electronics Co., Ltd All Rights Reserved +// Use of this source code is governed by an apache-2.0 license that can be +// found in the LICENSE file. + +#include +#include + +#include +#include +#include +#include + +#include +#include + +#include "smoke_tests/tpk_smoke_utils.h" + +namespace st = smoke_test; +namespace bf = boost::filesystem; +namespace bs = boost::system; +namespace ci = common_installer; +namespace bpo = boost::program_options; + +enum class BackupType : int { + MOVE, + COPY_AND_REMOVE, +}; + +namespace smoke_test { + +class SmokeEnvironment : public testing::Environment { + public: + explicit SmokeEnvironment(ci::RequestMode mode, bool no_backup, + BackupType backup_type) : + request_mode_(mode), no_backup_(no_backup), + backup_type_(backup_type) { + } + void SetUp() override { + if (request_mode_ == ci::RequestMode::USER) { + ASSERT_TRUE(AddTestUser(&test_user)); + } + if (no_backup_) + return; + backups_ = SetupBackupDirectories(test_user.uid); + if (backup_type_ == BackupType::MOVE) { + for (auto& path : backups_) + ASSERT_TRUE(BackupPath(path)); + } else if (backup_type_ == BackupType::COPY_AND_REMOVE) { + for (auto& path : backups_) + ASSERT_TRUE(BackupPathCopyAndRemove(path)); + } + } + void TearDown() override { + ASSERT_TRUE(request_mode_ == ci::RequestMode::GLOBAL || + (request_mode_ == ci::RequestMode::USER && + kGlobalUserUid != test_user.uid)); + TpkBackendInterface backend(std::to_string(test_user.uid)); + UninstallAllSmokeApps(request_mode_, test_user.uid, &backend); + if (request_mode_ == ci::RequestMode::USER) { + ASSERT_TRUE(DeleteTestUser()); + } + if (no_backup_) + return; + if (backup_type_ == BackupType::MOVE) { + for (auto& path : backups_) + ASSERT_TRUE(RestorePath(path)); + } else if (backup_type_ == BackupType::COPY_AND_REMOVE) { + for (auto& path : backups_) + ASSERT_TRUE(RestorePathCopyAndRemove(path)); + } + } + User test_user; + + private: + ci::RequestMode request_mode_; + std::vector backups_; + bool no_backup_; + BackupType backup_type_; +}; + +} // namespace smoke_test + +namespace { + +smoke_test::SmokeEnvironment *env = nullptr; +void signalHandler(int signum) { + env->TearDown(); + exit(signum); +} + +} // namespace + +namespace smoke_test { + +class SmokeTest : public testing::Test { + public: + SmokeTest() : backend(std::to_string(env->test_user.uid)), + params{PackageType::TPK, false} { + params.test_user.uid = env->test_user.uid; + params.test_user.gid = env->test_user.gid; + } + protected: + TpkBackendInterface backend; + TestParameters params; +}; + +class RollbackSmokeTest : public testing::Test { + public: + RollbackSmokeTest() : backend(std::to_string(env->test_user.uid), + RequestResult::FAIL), params{PackageType::TPK, false} { + params.test_user.uid = env->test_user.uid; + params.test_user.gid = env->test_user.gid; + } + protected: + TpkBackendInterface backend; + TestParameters params; +}; + +class PreloadSmokeTest : public testing::Test { + public: + PreloadSmokeTest() : backend(std::to_string(env->test_user.uid)), + params{PackageType::TPK, true} { + params.test_user.uid = env->test_user.uid; + params.test_user.gid = env->test_user.gid; + } + protected: + TpkBackendInterface backend; + TestParameters params; +}; + +// TODO(b.kunikowski): New smoke app pkgid name convention. +// Change all smokeapp pkgids to smoketpk, because now there +// may be some smoke app pkgid identical as in tpk smoke tests, and this may +// cause bad results of some smoke tests. + +TEST_F(SmokeTest, DeltaMode_Tpk) { + bf::path path = kSmokePackagesDirectory / "DeltaMode_Tpk.tpk"; + bf::path delta_package = kSmokePackagesDirectory / "DeltaMode_Tpk.delta"; + std::string pkgid = "smokeapp18"; + std::string appid = "smokeapp18.DeltaModeTpk"; + std::string exec = "native"; + ASSERT_EQ(backend.InstallSuccess(path), ci::AppInstaller::Result::OK); + ASSERT_EQ(backend.Install(delta_package), ci::AppInstaller::Result::OK); + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + + // Check delta modifications + bf::path root_path = ci::GetRootAppPath(params.is_readonly, + params.test_user.uid); + ASSERT_FALSE(bf::exists(root_path / pkgid / "DELETED")); + ASSERT_TRUE(bf::exists(root_path / pkgid / "ADDED")); + ASSERT_TRUE(bf::exists(root_path / pkgid / "bin" / "native")); + ASSERT_TRUE(bf::exists(root_path / pkgid / "shared" / "res" / "native.png")); + ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "MODIFIED", "version 2\n", + params)); +} + +TEST_F(RollbackSmokeTest, DeltaMode) { + bf::path path = kSmokePackagesDirectory / "DeltaMode_Tpk_Rollback.tpk"; + bf::path delta_package = kSmokePackagesDirectory / + "DeltaMode_Tpk_Rollback.delta"; + std::string pkgid = "smoketpk28"; + std::string appid = "smoketpk28.DeltaModeTpk_Rollback"; + std::string exec = "basicdali"; + ASSERT_EQ(backend.InstallSuccess(path), ci::AppInstaller::Result::OK); + ASSERT_EQ(backend.Install(delta_package), ci::AppInstaller::Result::ERROR); + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + + // Check delta modifications + bf::path root_path = ci::GetRootAppPath(params.is_readonly, + params.test_user.uid); + ASSERT_TRUE(bf::exists(root_path / pkgid / "res" / "DELETED")); + ASSERT_FALSE(bf::exists(root_path / pkgid / "res" / "ADDED")); + ASSERT_TRUE(bf::exists(root_path / pkgid / "bin" / "basicdali")); + ASSERT_TRUE(bf::exists(root_path / pkgid / "shared" / "res" / + "basicdali.png")); + ASSERT_TRUE(ValidateFileContentInPackage(pkgid, + "res/MODIFIED", + "version 1\n", + params)); +} + +TEST_F(SmokeTest, ReinstallMode_Tpk) { + bf::path path = kSmokePackagesDirectory / "ReinstallMode_Tpk.tpk"; + bf::path rds_directory = kSmokePackagesDirectory / "delta_dir"; + std::string pkgid = "smokeapp25"; + std::string appid = "smokeapp25.ReinstallModeTpk"; + std::string exec = "native"; + bf::path sdk_expected_directory = kSdkDirectory / "tmp" / pkgid; + ASSERT_TRUE(ci::CopyDir(rds_directory, sdk_expected_directory)); + ASSERT_EQ(backend.RDSUpdate(path, pkgid), ci::AppInstaller::Result::OK); + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + + // Check rds modifications + bf::path root_path = ci::GetRootAppPath(false, + params.test_user.uid); + ASSERT_FALSE(bf::exists(root_path / pkgid / "DELETED")); + ASSERT_TRUE(bf::exists(root_path / pkgid / "ADDED")); + ASSERT_TRUE(bf::exists(root_path / pkgid / "bin" / "native")); + ASSERT_TRUE(bf::exists(root_path / pkgid / "shared" / "res" / "native.png")); + ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "MODIFIED", "version 2\n", + params)); +} + +TEST_F(SmokeTest, InstallationMode_Tpk) { + bf::path path = kSmokePackagesDirectory / "InstallationMode_Tpk.tpk"; + std::string pkgid = "smokeapp12"; + std::string appid = "smokeapp12.InstallationModeTpk"; + std::string exec = "native"; + ASSERT_EQ(backend.Install(path), ci::AppInstaller::Result::OK); + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); +} + +TEST_F(SmokeTest, UpdateMode_Tpk) { + bf::path path_old = kSmokePackagesDirectory / "UpdateMode_Tpk.tpk"; + bf::path path_new = kSmokePackagesDirectory / "UpdateMode_Tpk_2.tpk"; + std::string pkgid = "smokeapp13"; + std::string appid = "smokeapp13.UpdateModeTpk"; + std::string exec = "native"; + ASSERT_EQ(backend.InstallSuccess(path_old), ci::AppInstaller::Result::OK); + ASSERT_EQ(backend.Install(path_new), ci::AppInstaller::Result::OK); + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + + ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "VERSION", "2\n", params)); +} + +TEST_F(SmokeTest, DeinstallationMode_Tpk) { + bf::path path = kSmokePackagesDirectory / "DeinstallationMode_Tpk.tpk"; + std::string pkgid = "smokeapp14"; + ASSERT_EQ(backend.Install(path), ci::AppInstaller::Result::OK); + ASSERT_EQ(backend.Uninstall(pkgid), ci::AppInstaller::Result::OK); + ASSERT_TRUE(CheckPackageNonExistance(pkgid, params)); +} + +TEST_F(SmokeTest, EnablePkg) { + bf::path path = kSmokePackagesDirectory / "EnablePkg.tpk"; + std::string pkgid = "smokeapp22"; + ASSERT_EQ(backend.Install(path), ci::AppInstaller::Result::OK); + ASSERT_EQ(backend.DisablePackage(pkgid), ci::AppInstaller::Result::OK); + ASSERT_EQ(backend.EnablePackage(pkgid), ci::AppInstaller::Result::OK); + ci::PkgQueryInterface pkg_query(pkgid, params.test_user.uid); + ASSERT_TRUE(pkg_query.IsPackageInstalled( + ci::GetRequestMode(params.test_user.uid))); +} + +TEST_F(SmokeTest, DisablePkg) { + bf::path path = kSmokePackagesDirectory / "DisablePkg.tpk"; + std::string pkgid = "smokeapp23"; + std::string appid = "smokeapp23.DisablePkg"; + std::string exec = "=disablepkg"; + ASSERT_EQ(backend.Install(path), ci::AppInstaller::Result::OK); + ASSERT_EQ(backend.DisablePackage(pkgid), ci::AppInstaller::Result::OK); + ASSERT_TRUE(ci::QueryIsDisabledPackage(pkgid, params.test_user.uid)); + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); +} + +TEST_F(SmokeTest, RecoveryMode_Tpk_Installation) { + bf::path path = kSmokePackagesDirectory / "RecoveryMode_Tpk_Installation.tpk"; + RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); + ci::Subprocess backend_crash("/usr/bin/tpk-installer-ut/smoke-test-helper"); + std::string test_uid_str = std::to_string(params.test_user.uid); + backend_crash.Run("-i", path.string(), "-u", test_uid_str.c_str()); + ASSERT_NE(backend_crash.Wait(), 0); + + std::string pkgid = "smokeapp15"; + bf::path recovery_file = FindRecoveryFile("/tpk-recovery", + params.test_user.uid); + ASSERT_FALSE(recovery_file.empty()); + std::unique_ptr recovery_info = + GetRecoverFileInfo(recovery_file); + ASSERT_EQ(backend.Recover(recovery_file), ci::AppInstaller::Result::OK); + ASSERT_TRUE(CheckPackageNonExistance(pkgid, params)); + ASSERT_FALSE(bf::exists(recovery_info->unpacked_dir())); +} + +TEST_F(SmokeTest, RecoveryMode_Tpk_Update) { + bf::path path_old = kSmokePackagesDirectory / "RecoveryMode_Tpk_Update.tpk"; + bf::path path_new = kSmokePackagesDirectory / "RecoveryMode_Tpk_Update_2.tpk"; + RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); + ASSERT_EQ(backend.Install(path_old), ci::AppInstaller::Result::OK); + + std::string pkgid = "smokeapp16"; + std::string appid = "smokeapp16.RecoveryModeTpkUpdate"; + std::string exec = "native"; + ci::PkgQueryInterface pkg_query(pkgid, params.test_user.uid); + std::string version_old = pkg_query.Version(); + + ci::Subprocess backend_crash("/usr/bin/tpk-installer-ut/smoke-test-helper"); + std::string test_uid_str = std::to_string(params.test_user.uid); + backend_crash.Run("-i", path_new.string(), "-u", test_uid_str.c_str()); + ASSERT_NE(backend_crash.Wait(), 0); + + bf::path recovery_file = FindRecoveryFile("/tpk-recovery", + params.test_user.uid); + ASSERT_FALSE(recovery_file.empty()); + std::unique_ptr recovery_info = + GetRecoverFileInfo(recovery_file); + ASSERT_EQ(backend.Recover(recovery_file), ci::AppInstaller::Result::OK); + + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "res/VERSION", "1", params)); + ASSERT_FALSE(bf::exists(recovery_info->unpacked_dir())); + ci::PkgQueryInterface pkg_query2(pkgid, params.test_user.uid, true); + std::string version_recovered = pkg_query2.Version(); + ASSERT_TRUE(version_old == version_recovered); +} + +TEST_F(SmokeTest, MountInstallationMode_Tpk) { + bf::path path = kSmokePackagesDirectory / "MountInstallationMode_Tpk.tpk"; + std::string pkgid = "smokeapp26"; + std::string appid = "smokeapp26.MountInstallationModeTpk"; + std::string exec = "native"; + ASSERT_EQ(backend.MountInstall(path), ci::AppInstaller::Result::OK); + ScopedTzipInterface package_mount(pkgid, params.test_user.uid); + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); +} + +TEST_F(SmokeTest, MountUpdateMode_Tpk) { + bf::path path_old = kSmokePackagesDirectory / "MountUpdateMode_Tpk.tpk"; + bf::path path_new = kSmokePackagesDirectory / "MountUpdateMode_Tpk_2.tpk"; + std::string pkgid = "smokeapp27"; + std::string appid = "smokeapp27.MountUpdateModeTpk"; + std::string exec = "native"; + ASSERT_EQ(backend.MountInstallSuccess(path_old), + ci::AppInstaller::Result::OK); + ASSERT_EQ(backend.MountInstall(path_new), ci::AppInstaller::Result::OK); + ScopedTzipInterface package_mount(pkgid, params.test_user.uid); + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + + ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "res/VERSION", "2\n", + params)); +} + +TEST_F(SmokeTest, MigrateLegacyExternalImage_Tpk) { + ASSERT_TRUE(CheckAvailableExternalPath()); + bf::path path = kSmokePackagesDirectory / "InstallExternal_Tpk_2.tpk"; + std::string pkgid = "smokeapp28"; + std::string appid = "smokeapp28.InstallExternalTpk"; + std::string exec = "smokeapp28"; + bf::path legacy_path = kSmokePackagesDirectory / kLegacyExtImageDir; + std::string test_uid_str = std::to_string(params.test_user.uid); + if (test_uid_str == kDefaultUserIdStr || + params.test_user.uid == kGlobalUserUid) { + ASSERT_EQ(backend.MigrateLegacyExternalImage(pkgid, path, legacy_path), + ci::AppInstaller::Result::OK); + ValidateExternalPackage(pkgid, {appid, exec}, params); + } else { + ASSERT_EQ(backend.MigrateLegacyExternalImage(pkgid, path, legacy_path), + ci::AppInstaller::Result::ERROR); + } +} + +TEST_F(SmokeTest, InstallExternal_Tpk) { + ASSERT_TRUE(CheckAvailableExternalPath()); + bf::path path = kSmokePackagesDirectory / "InstallExternal_Tpk.tpk"; + std::string pkgid = "smokeapp29"; + std::string appid = "smokeapp29.InstallExternalTpk"; + std::string exec = "smokeapp29"; + ASSERT_EQ(backend.InstallWithStorage(path, StorageType::EXTERNAL), + ci::AppInstaller::Result::OK); + ASSERT_TRUE(ValidateExternalPackage(pkgid, {appid, exec}, params)); +} + +#define TEP_TEST_STARTING_BLOCK(NUMBER) \ + bf::path path = kSmokePackagesDirectory / "TEP_Tpk"; \ + path += #NUMBER; \ + path += ".tpk"; \ + bf::path tep1 = kSmokePackagesDirectory / "tep1.tep"; \ + bf::path tep2 = kSmokePackagesDirectory / "tep2.tep"; \ + std::string number = std::to_string(50 + NUMBER - 1); \ + std::string pkgid = std::string("smokeapp") + number; \ + std::string appid = pkgid + ".TEP"; \ + std::string exec = "native"; \ + +TEST_F(SmokeTest, TEP_Tpk_TepInstall) { + TEP_TEST_STARTING_BLOCK(1) + ASSERT_EQ(backend.InstallWithTEP(path, tep1), ci::AppInstaller::Result::OK); + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "tep/tep1.tep", "tep1\n", + params)); +} + +TEST_F(SmokeTest, TEP_Tpk_TepInstallTepUpdate) { + TEP_TEST_STARTING_BLOCK(2) + ASSERT_EQ(backend.InstallWithTEP(path, tep1), ci::AppInstaller::Result::OK); + ASSERT_EQ(backend.InstallWithTEP(path, tep2), ci::AppInstaller::Result::OK); + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "tep/tep2.tep", "tep2\n", + params)); +} + +TEST_F(SmokeTest, TEP_Tpk_NoTepInstallTepUpdate) { + TEP_TEST_STARTING_BLOCK(3) + ASSERT_EQ(backend.Install(path), ci::AppInstaller::Result::OK); + ASSERT_EQ(backend.InstallWithTEP(path, tep2), ci::AppInstaller::Result::OK); + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "tep/tep2.tep", "tep2\n", + params)); +} + +TEST_F(SmokeTest, TEP_Tpk_TepInstallNoTepUpdate) { + TEP_TEST_STARTING_BLOCK(4) + ASSERT_EQ(backend.InstallWithTEP(path, tep1), ci::AppInstaller::Result::OK); + ASSERT_EQ(backend.Install(path), ci::AppInstaller::Result::OK); + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "tep/tep1.tep", "tep1\n", + params)); +} + +TEST_F(RollbackSmokeTest, TEP_Tpk_TepInstallTepUpdateRollback) { + TEP_TEST_STARTING_BLOCK(5) + ASSERT_EQ(backend.InstallSuccessWithTEP(path, tep1), + ci::AppInstaller::Result::OK); + ASSERT_EQ(backend.InstallWithTEP(path, tep2), + ci::AppInstaller::Result::ERROR); + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "tep/tep1.tep", "tep1\n", + params)); +} + +TEST_F(RollbackSmokeTest, TEP_Tpk_NoTepInstallTepUpdateRollback) { + TEP_TEST_STARTING_BLOCK(6) + ASSERT_EQ(backend.InstallSuccess(path), ci::AppInstaller::Result::OK); + ASSERT_EQ(backend.InstallWithTEP(path, tep2), + ci::AppInstaller::Result::ERROR); + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + bf::path root_path = ci::GetRootAppPath(params.is_readonly, + params.test_user.uid); + bf::path tep_file = root_path / pkgid / "tep" / "tep2.tep"; + ASSERT_FALSE(bf::exists(tep_file)); +} + +TEST_F(RollbackSmokeTest, TEP_Tpk_TepInstallNoTepUpdateRollback) { + TEP_TEST_STARTING_BLOCK(7) + ASSERT_EQ(backend.InstallSuccessWithTEP(path, tep1), + ci::AppInstaller::Result::OK); + ASSERT_EQ(backend.Install(path), ci::AppInstaller::Result::ERROR); + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "tep/tep1.tep", "tep1\n", + params)); +} + +TEST_F(SmokeTest, TEP_Tpk_Mount_TepInstall) { + TEP_TEST_STARTING_BLOCK(8) + ASSERT_EQ(backend.MountInstallWithTEP(path, tep1), + ci::AppInstaller::Result::OK); + ScopedTzipInterface package_mount(pkgid, params.test_user.uid); + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "tep/tep1.tep", "tep1\n", + params)); +} + +TEST_F(SmokeTest, TEP_Tpk_Mount_TepInstallTepUpdate) { + TEP_TEST_STARTING_BLOCK(9) + ASSERT_EQ(backend.MountInstallWithTEP(path, tep1), + ci::AppInstaller::Result::OK); + ASSERT_EQ(backend.MountInstallWithTEP(path, tep2), + ci::AppInstaller::Result::OK); + ScopedTzipInterface package_mount(pkgid, params.test_user.uid); + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "tep/tep2.tep", "tep2\n", + params)); +} + +TEST_F(SmokeTest, TEP_Tpk_Mount_NoTepInstallTepUpdate) { + TEP_TEST_STARTING_BLOCK(10) + ASSERT_EQ(backend.MountInstall(path), ci::AppInstaller::Result::OK); + ASSERT_EQ(backend.MountInstallWithTEP(path, tep2), + ci::AppInstaller::Result::OK); + ScopedTzipInterface package_mount(pkgid, params.test_user.uid); + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "tep/tep2.tep", "tep2\n", + params)); +} + +TEST_F(SmokeTest, TEP_Tpk_Mount_TepInstallNoTepUpdate) { + TEP_TEST_STARTING_BLOCK(11) + ASSERT_EQ(backend.MountInstallWithTEP(path, tep1), + ci::AppInstaller::Result::OK); + ASSERT_EQ(backend.MountInstall(path), ci::AppInstaller::Result::OK); + ScopedTzipInterface package_mount(pkgid, params.test_user.uid); + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "tep/tep1.tep", "tep1\n", + params)); +} + +TEST_F(RollbackSmokeTest, TEP_Tpk_Mount_TepInstallTepUpdateRollback) { + TEP_TEST_STARTING_BLOCK(12) + ASSERT_EQ(backend.MountInstallSuccessWithTEP(path, tep1), + ci::AppInstaller::Result::OK); + ASSERT_EQ(backend.MountInstallWithTEP(path, tep2), + ci::AppInstaller::Result::ERROR); + ScopedTzipInterface package_mount(pkgid, params.test_user.uid); + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "tep/tep1.tep", "tep1\n", + params)); +} + +TEST_F(RollbackSmokeTest, TEP_Tpk_Mount_NoTepInstallTepUpdateRollback) { + TEP_TEST_STARTING_BLOCK(13) + ASSERT_EQ(backend.MountInstallSuccess(path), ci::AppInstaller::Result::OK); + ASSERT_EQ(backend.MountInstallWithTEP(path, tep2), + ci::AppInstaller::Result::ERROR); + ScopedTzipInterface package_mount(pkgid, params.test_user.uid); + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + bf::path root_path = ci::GetRootAppPath(params.is_readonly, + params.test_user.uid); + bf::path tep_file = root_path / pkgid / "tep" / "tep2.tep"; + ASSERT_FALSE(bf::exists(tep_file)); +} + +TEST_F(RollbackSmokeTest, TEP_Tpk_Mount_TepInstallNoTepUpdateRollback) { + TEP_TEST_STARTING_BLOCK(14) + ASSERT_EQ(backend.MountInstallSuccessWithTEP(path, tep1), + ci::AppInstaller::Result::OK); + ASSERT_EQ(backend.MountInstall(path), ci::AppInstaller::Result::ERROR); + ScopedTzipInterface package_mount(pkgid, params.test_user.uid); + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "tep/tep1.tep", "tep1\n", + params)); +} + +TEST_F(PreloadSmokeTest, InstallationMode_Preload) { + ASSERT_EQ(getuid(), 0) << "Test cannot be run by normal user"; + bf::path path = kSmokePackagesDirectory / "InstallationMode_Preload.tpk"; + std::string pkgid = "smoketpk29"; + std::string appid = "smoketpk29.InstallationModePreload"; + std::string exec = "native"; + ASSERT_EQ(backend.InstallPreload(path), ci::AppInstaller::Result::OK); + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); +} + +TEST_F(PreloadSmokeTest, UpdateMode_Preload) { + ASSERT_EQ(getuid(), 0) << "Test cannot be run by normal user"; + bf::path path_old = kSmokePackagesDirectory / "UpdateMode_Preload.tpk"; + bf::path path_new = kSmokePackagesDirectory / "UpdateMode_Preload2.tpk"; + std::string pkgid = "smoketpk30"; + std::string appid = "smoketpk30.UpdateModePreload"; + std::string exec = "native"; + ASSERT_EQ(backend.InstallPreload(path_old), ci::AppInstaller::Result::OK); + ASSERT_EQ(backend.InstallPreload(path_new), ci::AppInstaller::Result::OK); + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + + ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "res/VERSION", "2", params)); +} + +TEST_F(PreloadSmokeTest, DeinstallationMode_Preload) { + ASSERT_EQ(getuid(), 0) << "Test cannot be run by normal user"; + bf::path path = kSmokePackagesDirectory / "DeinstallationMode_Preload.tpk"; + std::string pkgid = "smoketpk31"; + ASSERT_EQ(backend.InstallPreload(path), ci::AppInstaller::Result::OK); + ASSERT_EQ(backend.UninstallPreload(pkgid), ci::AppInstaller::Result::OK); + CheckPackageNonExistance(pkgid, params); +} + +TEST_F(SmokeTest, InstallationMode_GoodSignature) { + bf::path path = + kSmokePackagesDirectory / "InstallationMode_GoodSignature.tpk"; + ASSERT_EQ(ci::AppInstaller::Result::OK, backend.Install(path)); +} + +TEST_F(SmokeTest, InstallationMode_WrongSignature) { + bf::path path = + kSmokePackagesDirectory / "InstallationMode_WrongSignature.tpk"; + ASSERT_EQ(ci::AppInstaller::Result::ERROR, backend.Install(path)); +} + +TEST_F(RollbackSmokeTest, InstallationMode_Rollback) { + bf::path path = kSmokePackagesDirectory / "InstallationMode_Rollback.tpk"; + std::string pkgid = "smoketpk34"; + ASSERT_EQ(ci::AppInstaller::Result::ERROR, backend.Install(path)); + ASSERT_TRUE(CheckPackageNonExistance(pkgid, params)); +} + +TEST_F(SmokeTest, RecoveryMode_ForDelta) { + bf::path path_old = kSmokePackagesDirectory / "RecoveryMode_ForDelta.tpk"; + bf::path path_new = kSmokePackagesDirectory / "RecoveryMode_ForDelta.delta"; + RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); + ASSERT_EQ(ci::AppInstaller::Result::OK, backend.Install(path_old)); + ci::Subprocess backend_crash("/usr/bin/tpk-installer-ut/smoke-test-helper"); + std::string test_uid_str = std::to_string(params.test_user.uid); + backend_crash.Run("-i", path_new.string(), "-u", test_uid_str.c_str()); + ASSERT_NE(backend_crash.Wait(), 0); + + std::string pkgid = "smoketpk35"; + std::string appid = "smoketpk35.RecoveryMode_ForDelta"; + std::string exec = "smoketpk35"; + bf::path recovery_file = FindRecoveryFile("/tpk-recovery", + params.test_user.uid); + ASSERT_FALSE(recovery_file.empty()); + std::unique_ptr recovery_info = + GetRecoverFileInfo(recovery_file); + ASSERT_EQ(ci::AppInstaller::Result::OK, backend.Recover(recovery_file)); + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + + ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "res/MODIFIED", "version 1", + params)); + bf::path root_path = ci::GetRootAppPath(params.is_readonly, + params.test_user.uid); + ASSERT_TRUE(bf::exists(root_path / pkgid / "res/DELETED")); + ASSERT_FALSE(bf::exists(root_path / pkgid / "res/ADDED")); + ASSERT_FALSE(bf::exists(recovery_info->unpacked_dir())); +} + +TEST_F(RollbackSmokeTest, UpdateMode) { + bf::path old_path = kSmokePackagesDirectory / "UpdateMode_Rollback.tpk"; + bf::path new_path = kSmokePackagesDirectory / "UpdateMode_Rollback2.tpk"; + std::string pkgid = "smoketpk36"; + std::string appid = "smoketpk36.UpdateMode_Rollback"; + std::string exec = "smoketpk36"; + ASSERT_EQ(ci::AppInstaller::Result::OK, backend.InstallSuccess(old_path)); + ci::PkgQueryInterface pkg_query(pkgid, params.test_user.uid); + std::string version_old = pkg_query.Version(); + ASSERT_EQ(ci::AppInstaller::Result::ERROR, backend.Install(new_path)); + + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "res/VERSION", "1", + params)); + ci::PkgQueryInterface pkg_query2(pkgid, params.test_user.uid, true); + std::string version_rollbacked = pkg_query2.Version(); + ASSERT_TRUE(version_old == version_rollbacked); +} + +TEST_F(SmokeTest, RecoveryMode_ForMountInstall) { + bf::path path = kSmokePackagesDirectory / "RecoveryMode_ForMountInstall.tpk"; + RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); + ci::Subprocess backend_crash("/usr/bin/tpk-installer-ut/smoke-test-helper"); + std::string test_uid_str = std::to_string(params.test_user.uid); + backend_crash.Run("-w", path.string(), "-u", test_uid_str.c_str()); + ASSERT_NE(0, backend_crash.Wait()); + + std::string pkgid = "smoketpk37"; + bf::path recovery_file = FindRecoveryFile("/tpk-recovery", + params.test_user.uid); + ASSERT_FALSE(recovery_file.empty()); + std::unique_ptr recovery_info = + GetRecoverFileInfo(recovery_file); + ASSERT_EQ(ci::AppInstaller::Result::OK, backend.Recover(recovery_file)); + ASSERT_TRUE(CheckPackageNonExistance(pkgid, params)); + ASSERT_FALSE(bf::exists(recovery_info->unpacked_dir())); +} + +TEST_F(SmokeTest, RecoveryMode_ForMountUpdate) { + bf::path path_old = + kSmokePackagesDirectory / "RecoveryMode_ForMountUpdate.tpk"; + bf::path path_new = + kSmokePackagesDirectory / "RecoveryMode_ForMountUpdate2.tpk"; + RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); + ASSERT_EQ(ci::AppInstaller::Result::OK, backend.MountInstall(path_old)); + + std::string pkgid = "smoketpk38"; + std::string appid = "smoketpk38.RecoveryMode_ForMountUpdate"; + std::string exec = "smoketpk38"; + ci::PkgQueryInterface pkg_query(pkgid, params.test_user.uid); + std::string version_old = pkg_query.Version(); + + ci::Subprocess backend_crash("/usr/bin/tpk-installer-ut/smoke-test-helper"); + std::string test_uid_str = std::to_string(params.test_user.uid); + backend_crash.Run("-w", path_new.string(), "-u", test_uid_str.c_str()); + ASSERT_NE(0, backend_crash.Wait()); + + // Filesystem may be mounted after crash + ScopedTzipInterface poweroff_unmount_interface(pkgid, params.test_user.uid); + poweroff_unmount_interface.Release(); + + bf::path recovery_file = FindRecoveryFile("/tpk-recovery", + params.test_user.uid); + ASSERT_FALSE(recovery_file.empty()); + std::unique_ptr recovery_info = + GetRecoverFileInfo(recovery_file); + ASSERT_EQ(ci::AppInstaller::Result::OK, backend.Recover(recovery_file)); + ScopedTzipInterface interface(pkgid, params.test_user.uid); + + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "res/VERSION", "1", params)); + ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "shared/res/VERSION", "1", + params)); + ASSERT_FALSE(bf::exists(recovery_info->unpacked_dir())); + ci::PkgQueryInterface pkg_query2(pkgid, params.test_user.uid, true); + std::string version_recovered = pkg_query2.Version(); + ASSERT_TRUE(version_old == version_recovered); +} + +TEST_F(RollbackSmokeTest, MountInstallationMode) { + bf::path path = + kSmokePackagesDirectory / "MountInstallationMode_Rollback.tpk"; + std::string pkgid = "smoketpk39"; + ASSERT_EQ(ci::AppInstaller::Result::ERROR, backend.MountInstall(path)); + ScopedTzipInterface package_mount(pkgid, params.test_user.uid); + ASSERT_TRUE(CheckPackageNonExistance(pkgid, params)); +} + +TEST_F(RollbackSmokeTest, MountUpdateMode) { + bf::path old_path = kSmokePackagesDirectory / "MountUpdateMode_Rollback.tpk"; + bf::path new_path = kSmokePackagesDirectory / "MountUpdateMode_Rollback2.tpk"; + std::string pkgid = "smoketpk40"; + std::string appid = "smoketpk40.MountUpdateMode_Rollback"; + std::string exec = "smoketpk40"; + ASSERT_EQ(ci::AppInstaller::Result::OK, + backend.MountInstallSuccess(old_path)); + ci::PkgQueryInterface pkg_query(pkgid, params.test_user.uid); + std::string version_old = pkg_query.Version(); + ASSERT_EQ(ci::AppInstaller::Result::ERROR, backend.MountInstall(new_path)); + ScopedTzipInterface package_mount(pkgid, params.test_user.uid); + + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "res/VERSION", "1", params)); + ASSERT_TRUE(ValidateFileContentInPackage(pkgid, "shared/res/VERSION", "1", + params)); + ci::PkgQueryInterface pkg_query2(pkgid, params.test_user.uid, true); + std::string version_rollbacked = pkg_query2.Version(); + ASSERT_TRUE(version_old == version_rollbacked); +} + +TEST_F(SmokeTest, ManifestDirectInstallMode) { + ASSERT_EQ(getuid(), 0) << "Test cannot be run by normal user"; + bf::path src_path = kSmokePackagesDirectory / "ManifestDirectInstallMode"; + std::string pkgid = "smoketpk41"; + std::string appid = "smoketpk41.ManifestDirectInstallMode"; + std::string exec = "basicui"; + bf::path pkg_path = ci::GetRootAppPath(params.is_readonly, + params.test_user.uid); + + ci::CopyDir(src_path / pkgid, pkg_path / pkgid); + ci::PkgQueryInterface pkg_query(pkgid, params.test_user.uid); + ASSERT_FALSE(pkg_query.IsPackageInstalled( + ci::GetRequestMode(params.test_user.uid))); + ASSERT_EQ(backend.ManifestDirectInstall(pkgid), ci::AppInstaller::Result::OK); + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); +} + +TEST_F(SmokeTest, ManifestDirectUpdateMode) { + bf::path path = kSmokePackagesDirectory / "ManifestDirectUpdateMode.tpk"; + std::string pkgid = "smoketpk42"; + std::string appid = "smoketpk42.ManifestDirectUpdateMode"; + std::string exec = "basicui"; + + ASSERT_EQ(backend.Install(path), ci::AppInstaller::Result::OK); + int install_time = GetAppInstalledTime(appid.c_str(), params.test_user.uid); + ASSERT_EQ(backend.ManifestDirectInstall(pkgid), ci::AppInstaller::Result::OK); + ASSERT_TRUE(GetAppInstalledTime(appid.c_str(), + params.test_user.uid) > install_time) + << "Package is not updated (app installed time didn't change)."; + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); +} + +TEST_F(PreloadSmokeTest, ReadonlyUpdateInstallMode) { + ASSERT_EQ(getuid(), 0) << "Test cannot be run by normal user"; + bf::path path = kSmokePackagesDirectory / "ReadonlyUpdateInstallMode.tpk"; + std::string pkgid = "smoketpk43"; + std::string appid = "smoketpk43.ReadonlyUpdateInstallMode"; + std::string exec = "basicui"; + + ASSERT_EQ(backend.InstallPreload(path), ci::AppInstaller::Result::OK); + ASSERT_EQ(backend.Install(path), ci::AppInstaller::Result::OK); + ValidatePackage(pkgid, {appid, exec}, params); + TestParameters nonreadonly_params(params); + nonreadonly_params.is_readonly = false; + ValidatePackage(pkgid, {appid, exec}, nonreadonly_params); +} + +TEST_F(PreloadSmokeTest, ReadonlyUpdateUninstallMode) { + ASSERT_EQ(getuid(), 0) << "Test cannot be run by normal user"; + bf::path path = kSmokePackagesDirectory / "ReadonlyUpdateUninstallMode.tpk"; + std::string pkgid = "smoketpk44"; + std::string appid = "smoketpk44.ReadonlyUpdateUninstallMode"; + std::string exec = "basicui"; + + ASSERT_EQ(backend.InstallPreload(path), ci::AppInstaller::Result::OK); + ci::PkgQueryInterface pkg_query1(pkgid, params.test_user.uid); + PackageAttributes original(pkg_query1); + ASSERT_EQ(backend.Install(path), ci::AppInstaller::Result::OK); + ValidatePackage(pkgid, {appid, exec}, params); + TestParameters nonreadonly_params(params); + nonreadonly_params.is_readonly = false; + ValidatePackage(pkgid, {appid, exec}, nonreadonly_params); + ASSERT_EQ(backend.Uninstall(pkgid), ci::AppInstaller::Result::OK); + ci::PkgQueryInterface pkg_query2(pkgid, params.test_user.uid, true); + PackageAttributes restored(pkg_query2); + ASSERT_EQ(original, restored); + ValidatePackage(pkgid, {appid, exec}, params); +} + +TEST_F(SmokeTest, InstallExtended_Tpk) { + ASSERT_TRUE(CheckAvailableExtendedPath()); + bf::path path = kSmokePackagesDirectory / "InstallExtended_Tpk.tpk"; + std::string pkgid = "smoketpk45"; + std::string appid = "smoketpk45.InstallExtendedTpk"; + std::string exec = "smoketpk45.InstallExtendedTpk"; + ASSERT_EQ(backend.InstallWithStorage(path, StorageType::EXTENDED), + ci::AppInstaller::Result::OK); + ASSERT_TRUE(ValidateExtendedPackage(pkgid, {appid, exec}, params)); +} + +TEST_F(SmokeTest, RecoveryMode_CrashAfterUnzip) { + bf::path path = kSmokePackagesDirectory / "RecoveryMode_CrashAfterUnzip.tpk"; + RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); + ci::Subprocess backend_crash("/usr/bin/tpk-installer-ut/smoke-test-helper"); + std::string test_uid_str = std::to_string(params.test_user.uid); + backend_crash.Run("-i", path.string(), "-u", test_uid_str.c_str(), + "-step_name", "Unzip"); + ASSERT_NE(backend_crash.Wait(), 0); + + std::string pkgid = "smokeapp47"; + bf::path recovery_file = FindRecoveryFile("/tpk-recovery", + params.test_user.uid); + ASSERT_FALSE(recovery_file.empty()); + std::unique_ptr recovery_info = + GetRecoverFileInfo(recovery_file); + ASSERT_TRUE(recovery_info); + ASSERT_EQ(backend.Recover(recovery_file), ci::AppInstaller::Result::OK); + ASSERT_TRUE(CheckPackageNonExistance(pkgid, params)); + ASSERT_FALSE(bf::exists(recovery_info->unpacked_dir())); +} + +TEST_F(RollbackSmokeTest, UpdateMode_RollbackSharedDataUpdate) { + bf::path path_old = kSmokePackagesDirectory / "UpdateMode_SharedData.tpk"; + bf::path path_new = kSmokePackagesDirectory / "UpdateMode_SharedData_2.tpk"; + std::string pkgid = "smoketpk.shareddata"; + std::string appid = "smoketpk.shareddata"; + std::string exec = "shareddata"; + ASSERT_EQ(backend.InstallSuccess(path_old), ci::AppInstaller::Result::OK); + ASSERT_EQ(backend.Install(path_new), ci::AppInstaller::Result::ERROR); + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + ASSERT_TRUE(CheckSharedDataExistance(pkgid, params)); +} + +TEST_F(RollbackSmokeTest, UpdateMode_RollbackNonSharedDataUpdate) { + bf::path path_old = kSmokePackagesDirectory / "UpdateMode_NonSharedData.tpk"; + bf::path path_new = + kSmokePackagesDirectory / "UpdateMode_NonSharedData_2.tpk"; + std::string pkgid = "smoketpk.non-shareddata"; + std::string appid = "smoketpk.non-shareddata"; + std::string exec = "shareddata"; + ASSERT_EQ(backend.InstallSuccess(path_old), ci::AppInstaller::Result::OK); + ASSERT_EQ(backend.Install(path_new), ci::AppInstaller::Result::ERROR); + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + ASSERT_TRUE(CheckSharedDataNonExistance(pkgid, params)); +} + +TEST_F(SmokeTest, RecoveryMode_SharedDataUpdate) { + bf::path path_old = + kSmokePackagesDirectory / "RecoveryMode_SharedData.tpk"; + bf::path path_new = + kSmokePackagesDirectory / "RecoveryMode_SharedData_2.tpk"; + RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); + ASSERT_EQ(backend.Install(path_old), ci::AppInstaller::Result::OK); + ci::Subprocess backend_crash("/usr/bin/tpk-installer-ut/smoke-test-helper"); + std::string test_uid_str = std::to_string(params.test_user.uid); + backend_crash.Run("-i", path_new.string(), "-u", test_uid_str.c_str()); + ASSERT_NE(backend_crash.Wait(), 0); + + std::string pkgid = "smoketpk.recovery-shareddata"; + std::string appid = "smoketpk.recovery-shareddata"; + std::string exec = "shareddata"; + bf::path recovery_file = FindRecoveryFile("/tpk-recovery", + params.test_user.uid); + ASSERT_FALSE(recovery_file.empty()); + std::unique_ptr recovery_info = + GetRecoverFileInfo(recovery_file); + ASSERT_EQ(backend.Recover(recovery_file), ci::AppInstaller::Result::OK); + + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + ASSERT_TRUE(CheckSharedDataExistance(pkgid, params)); + ASSERT_FALSE(bf::exists(recovery_info->unpacked_dir())); +} + +TEST_F(SmokeTest, RecoveryMode_NonSharedDataUpdate) { + bf::path path_old = + kSmokePackagesDirectory / "RecoveryMode_NonSharedData.tpk"; + bf::path path_new = + kSmokePackagesDirectory / "RecoveryMode_NonSharedData_2.tpk"; + RemoveAllRecoveryFiles("/tpk-recovery", params.test_user.uid); + ASSERT_EQ(backend.Install(path_old), ci::AppInstaller::Result::OK); + ci::Subprocess backend_crash("/usr/bin/tpk-installer-ut/smoke-test-helper"); + std::string test_uid_str = std::to_string(params.test_user.uid); + backend_crash.Run("-i", path_new.string(), "-u", test_uid_str.c_str()); + ASSERT_NE(backend_crash.Wait(), 0); + + std::string pkgid = "smoketpk.recovery-non-shareddata"; + std::string appid = "smoketpk.recovery-non-shareddata"; + std::string exec = "shareddata"; + bf::path recovery_file = FindRecoveryFile("/tpk-recovery", + params.test_user.uid); + ASSERT_FALSE(recovery_file.empty()); + std::unique_ptr recovery_info = + GetRecoverFileInfo(recovery_file); + ASSERT_EQ(backend.Recover(recovery_file), ci::AppInstaller::Result::OK); + + ASSERT_TRUE(ValidatePackage(pkgid, {appid, exec}, params)); + ASSERT_TRUE(CheckSharedDataNonExistance(pkgid, params)); + ASSERT_FALSE(bf::exists(recovery_info->unpacked_dir())); +} + +} // namespace smoke_test + +int main(int argc, char** argv) { + try { + bool no_backup = false; + BackupType backup_type = BackupType::MOVE; + + ci::RequestMode request_mode = st::ParseRequestMode(argc, argv); + if (getuid() != 0 || request_mode != ci::RequestMode::GLOBAL) { + std::cout << "Skip tests for preload request" << std::endl; + ::testing::GTEST_FLAG(filter) = "SmokeTest.*"; + } + testing::InitGoogleTest(&argc, argv); + + bpo::options_description options("Allowed options"); + bpo::variables_map opt_map; + try { + options.add_options() + ("help", "display this help message") + ("no-backup", "Do test without backup") + ("backup-type", bpo::value(), " set test's " + "backup type \'move\', \'copy and remove\'"); + bpo::store(bpo::command_line_parser(argc, argv). + options(options).allow_unregistered().run(), opt_map); + if (opt_map.count("help")) { + std::cerr << options << std::endl; + return -1; + } + + if (opt_map.count("no-backup")) + no_backup = true; + if (opt_map.count("backup-type")) { + if (opt_map["backup-type"].as() == "move") { + backup_type = BackupType::MOVE; + } else if (opt_map["backup-type"].as() == "copy") { + backup_type = BackupType::COPY_AND_REMOVE; + } else { + std::cerr << options << std::endl; + return -1; + } + } + bpo::notify(opt_map); + } catch (...) { + std::cerr << "Exception occurred: " + << boost::current_exception_diagnostic_information() + << std::endl; + return -1; + } + + ::env = static_cast( + testing::AddGlobalTestEnvironment( + new smoke_test::SmokeEnvironment(request_mode, + no_backup, backup_type))); + + signal(SIGINT, ::signalHandler); + signal(SIGSEGV, ::signalHandler); + return RUN_ALL_TESTS(); + } catch (...) { + std::cout << "Exception occurred during testing" << std::endl; + return 1; + } +} diff --git a/test/smoke_tests/smoke_test_helper.cc b/test/smoke_tests/smoke_test_helper.cc new file mode 100644 index 0000000..dc3fc75 --- /dev/null +++ b/test/smoke_tests/smoke_test_helper.cc @@ -0,0 +1,89 @@ +// Copyright (c) 2015 Samsung Electronics Co., Ltd All Rights Reserved +// Use of this source code is governed by an apache-2.0 license that can be +// found in the LICENSE file. + +#include +#include + +#include "tpk/tpk_app_query_interface.h" +#include "tpk/tpk_installer.h" +#include "smoke_tests/tpk_smoke_utils.h" + +namespace ci = common_installer; + +static int RunCrashTpkInstaller(ci::PkgMgrPtr pkgmgr, + int index, + std::string step_name, + smoke_test::CrashStepType type) { + smoke_test::CrashTpkInstaller t(pkgmgr, index, step_name, type); + + if (t.Run() != ci::AppInstaller::Result::OK) { + LOG(ERROR) << "CrashTpkInstaller run failure"; + return -1; + } + return 0; +} + +static int RunTpkInstallerWithoutParserPlugins(ci::PkgMgrPtr pkgmgr) { + smoke_test::TpkInstallerWithoutPasrserPlugins t(pkgmgr); + + if (t.Run() != ci::AppInstaller::Result::OK) { + LOG(ERROR) << "TpkInstallerWithoutPasrserPlugins run failure"; + return -1; + } + return 0; +} + +// This version of backend will crash in the end +// it is used for recovery testcase +int main(const int argc, char* argv[]) { + try { + int index = -1; + int backend_argc = argc; + std::string step_name; + bool remove_plugins = false; + smoke_test::CrashStepType type = smoke_test::CrashStepType::PROCESS; + + if (!strcmp(argv[backend_argc-2], "-idx")) { + index = atoi(argv[backend_argc-1]); + backend_argc -= 2; + LOG(DEBUG) << "Step crash after " << index << " step."; + } + + if (!strcmp(argv[backend_argc-2], "-step_name")) { + step_name = argv[backend_argc-1]; + backend_argc -= 2; + LOG(DEBUG) << "Step crash after " << step_name << " step."; + } + + if (!strcmp(argv[backend_argc-1], "-remove_plugin_steps")) { + backend_argc--; + remove_plugins = true; + LOG(DEBUG) << "Remove parser plugins steps"; + } + + if (!strcmp(argv[backend_argc-1], "-type_clean")) { + backend_argc--; + type = smoke_test::CrashStepType::CLEAN; + LOG(DEBUG) << "step will be crashed in clean operation"; + } + + ci::PkgmgrInstaller pkgmgr_installer; + tpk::TpkAppQueryInterface interface; + ci::PkgMgrPtr pkgmgr = ci::PkgMgrInterface::Create(backend_argc, argv, + &pkgmgr_installer, + &interface); + if (!pkgmgr) { + LOG(ERROR) << "Failed to create pkgmgr interface"; + return -1; + } + + if (remove_plugins) + return RunTpkInstallerWithoutParserPlugins(pkgmgr); + else + return RunCrashTpkInstaller(pkgmgr, index, step_name, type); + } catch (...) { + std::cout << "Exception occurred during testing" << std::endl; + return 1; + } +} diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_Invalid_NoPKGID/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_Invalid_NoPKGID/tizen-manifest.xml new file mode 100644 index 0000000..fde3f59 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_Invalid_NoPKGID/tizen-manifest.xml @@ -0,0 +1,8 @@ + + + + + + http://package2id/appdefined/test.read + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_Invalid_NotURI/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_Invalid_NotURI/tizen-manifest.xml new file mode 100644 index 0000000..8967e25 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_Invalid_NotURI/tizen-manifest.xml @@ -0,0 +1,8 @@ + + + + + + package0id/appdefined/test.read + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_Invalid_OverLength/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_Invalid_OverLength/tizen-manifest.xml new file mode 100644 index 0000000..460ae13 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_Invalid_OverLength/tizen-manifest.xml @@ -0,0 +1,8 @@ + + + + + + http://package0id/appdefined/longnameeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee.read + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_Many/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_Many/tizen-manifest.xml new file mode 100644 index 0000000..36a626d --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_Many/tizen-manifest.xml @@ -0,0 +1,9 @@ + + + + + + http://package0id/appdefined/test.read + http://package0id/appdefined/test.write + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_Valid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_Valid/tizen-manifest.xml new file mode 100644 index 0000000..e654396 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_Valid/tizen-manifest.xml @@ -0,0 +1,8 @@ + + + + + + http://package0id/appdefined/test.read + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_WithLicenseMany/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_WithLicenseMany/tizen-manifest.xml new file mode 100644 index 0000000..f46a329 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_WithLicenseMany/tizen-manifest.xml @@ -0,0 +1,9 @@ + + + + + + http://package0id/appdefined/test.read + http://package0id/appdefined/test.write + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_WithLicenseValid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_WithLicenseValid/tizen-manifest.xml new file mode 100644 index 0000000..d5b097d --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.AppDefinedPrivilegesElement_WithLicenseValid/tizen-manifest.xml @@ -0,0 +1,8 @@ + + + + + + http://package0id/appdefined/test.read + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.AuthorElement_Email_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.AuthorElement_Email_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..b530f32 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.AuthorElement_Email_Invalid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + + Author + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.AuthorElement_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.AuthorElement_Missing/tizen-manifest.xml new file mode 100644 index 0000000..f0bba4a --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.AuthorElement_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.AuthorElement_Valid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.AuthorElement_Valid/tizen-manifest.xml new file mode 100644 index 0000000..c5bb0d0 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.AuthorElement_Valid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + + Author + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.DescriptionElement_Lang_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.DescriptionElement_Lang_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..dc63a51 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.DescriptionElement_Lang_Invalid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + + text + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.DescriptionElement_Many/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.DescriptionElement_Many/tizen-manifest.xml new file mode 100644 index 0000000..981f0c7 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.DescriptionElement_Many/tizen-manifest.xml @@ -0,0 +1,7 @@ + + + + + text + text2 + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.DescriptionElement_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.DescriptionElement_Missing/tizen-manifest.xml new file mode 100644 index 0000000..f0bba4a --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.DescriptionElement_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.DescriptionElement_Text_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.DescriptionElement_Text_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..998c058 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.DescriptionElement_Text_Invalid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.DescriptionElement_Valid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.DescriptionElement_Valid/tizen-manifest.xml new file mode 100644 index 0000000..3d06cd0 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.DescriptionElement_Valid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + + text + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_ApiVersion_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_ApiVersion_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..687b74e --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_ApiVersion_Invalid/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_ApiVersion_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_ApiVersion_Missing/tizen-manifest.xml new file mode 100644 index 0000000..298350a --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_ApiVersion_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_ApiVersion_Valid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_ApiVersion_Valid/tizen-manifest.xml new file mode 100644 index 0000000..24d6a8e --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_ApiVersion_Valid/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_DoubleRootElement/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_DoubleRootElement/tizen-manifest.xml new file mode 100644 index 0000000..1701557 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_DoubleRootElement/tizen-manifest.xml @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_InstallLocation_Auto/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_InstallLocation_Auto/tizen-manifest.xml new file mode 100644 index 0000000..d20ff21 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_InstallLocation_Auto/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_InstallLocation_InternalOnly/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_InstallLocation_InternalOnly/tizen-manifest.xml new file mode 100644 index 0000000..03324bd --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_InstallLocation_InternalOnly/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_InstallLocation_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_InstallLocation_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..10a7277 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_InstallLocation_Invalid/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_InstallLocation_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_InstallLocation_Missing/tizen-manifest.xml new file mode 100644 index 0000000..f0bba4a --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_InstallLocation_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_InstallLocation_PreferExternal/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_InstallLocation_PreferExternal/tizen-manifest.xml new file mode 100644 index 0000000..7ce8aa1 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_InstallLocation_PreferExternal/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_InvalidRootElement/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_InvalidRootElement/tizen-manifest.xml new file mode 100644 index 0000000..a24942c --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_InvalidRootElement/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_Package_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_Package_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..8bd02ad --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_Package_Invalid/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_Package_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_Package_Missing/tizen-manifest.xml new file mode 100644 index 0000000..b2ad80b --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_Package_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_Type_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_Type_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..b266445 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_Type_Invalid/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_Type_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_Type_Missing/tizen-manifest.xml new file mode 100644 index 0000000..f0bba4a --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_Type_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_Type_Rpm/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_Type_Rpm/tizen-manifest.xml new file mode 100644 index 0000000..f940316 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_Type_Rpm/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_Type_Tpk/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_Type_Tpk/tizen-manifest.xml new file mode 100644 index 0000000..0be8390 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_Type_Tpk/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_Type_Wgt/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_Type_Wgt/tizen-manifest.xml new file mode 100644 index 0000000..f8f79c4 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_Type_Wgt/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_Valid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_Valid/tizen-manifest.xml new file mode 100644 index 0000000..f0bba4a --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_Valid/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_Version_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_Version_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..25c83cd --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_Version_Invalid/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_Version_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_Version_Missing/tizen-manifest.xml new file mode 100644 index 0000000..fbd52ef --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_Version_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_Version_Valid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_Version_Valid/tizen-manifest.xml new file mode 100644 index 0000000..4698dac --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ManifestElement_Version_Valid/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.PrivilegesElement_Many/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.PrivilegesElement_Many/tizen-manifest.xml new file mode 100644 index 0000000..84fdf70 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.PrivilegesElement_Many/tizen-manifest.xml @@ -0,0 +1,10 @@ + + + + + + http://tizen.org/privilege/application.admin + http://tizen.org/privilege/appmanager.launch + http://tizen.org/privilege/account.read + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.PrivilegesElement_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.PrivilegesElement_Missing/tizen-manifest.xml new file mode 100644 index 0000000..f0bba4a --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.PrivilegesElement_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.PrivilegesElement_None/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.PrivilegesElement_None/tizen-manifest.xml new file mode 100644 index 0000000..38f049e --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.PrivilegesElement_None/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.PrivilegesElement_Valid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.PrivilegesElement_Valid/tizen-manifest.xml new file mode 100644 index 0000000..822bbef --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.PrivilegesElement_Valid/tizen-manifest.xml @@ -0,0 +1,8 @@ + + + + + + http://tizen.org/privilege/application.admin + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ProfileElement_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ProfileElement_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..f20cb15 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ProfileElement_Invalid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + + text + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ProfileElement_Many/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ProfileElement_Many/tizen-manifest.xml new file mode 100644 index 0000000..65d0db0 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ProfileElement_Many/tizen-manifest.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ProfileElement_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ProfileElement_Missing/tizen-manifest.xml new file mode 100644 index 0000000..f0bba4a --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ProfileElement_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ProfileElement_Valid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ProfileElement_Valid/tizen-manifest.xml new file mode 100644 index 0000000..cf2b074 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ProfileElement_Valid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Invalid_NoPKGID/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Invalid_NoPKGID/tizen-manifest.xml new file mode 100644 index 0000000..fd27046 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Invalid_NoPKGID/tizen-manifest.xml @@ -0,0 +1,8 @@ + + + + + + http://package2id/appdefined/test.read + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Invalid_NotURI/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Invalid_NotURI/tizen-manifest.xml new file mode 100644 index 0000000..558d917 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Invalid_NotURI/tizen-manifest.xml @@ -0,0 +1,8 @@ + + + + + + package0id/appdefined/test.read + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Invalid_OverLength/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Invalid_OverLength/tizen-manifest.xml new file mode 100644 index 0000000..7bdfe28 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Invalid_OverLength/tizen-manifest.xml @@ -0,0 +1,8 @@ + + + + + + http://package0id/appdefined/longnameeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee.read + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Many/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Many/tizen-manifest.xml new file mode 100644 index 0000000..a073f29 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Many/tizen-manifest.xml @@ -0,0 +1,9 @@ + + + + + + http://package0id/appdefined/test.read + http://package0id/appdefined/test.write + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Missing/tizen-manifest.xml new file mode 100644 index 0000000..f0bba4a --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_None/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_None/tizen-manifest.xml new file mode 100644 index 0000000..c4bb3a7 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_None/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Valid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Valid/tizen-manifest.xml new file mode 100644 index 0000000..fa4e4cb --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_Valid/tizen-manifest.xml @@ -0,0 +1,8 @@ + + + + + + http://package0id/appdefined/test.read + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_WithLicenseMany/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_WithLicenseMany/tizen-manifest.xml new file mode 100644 index 0000000..b323bcc --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_WithLicenseMany/tizen-manifest.xml @@ -0,0 +1,9 @@ + + + + + + http://package0id/appdefined/test.read + http://package0id/appdefined/test.write + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_WithLicenseValid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_WithLicenseValid/tizen-manifest.xml new file mode 100644 index 0000000..8270405 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ProvidesAppDefinedPrivilegesElement_WithLicenseValid/tizen-manifest.xml @@ -0,0 +1,8 @@ + + + + + + http://package0id/appdefined/test.read + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_CartesianProduct/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_CartesianProduct/tizen-manifest.xml new file mode 100644 index 0000000..ff306fd --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_CartesianProduct/tizen-manifest.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_CartesianProduct_SkipMime/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_CartesianProduct_SkipMime/tizen-manifest.xml new file mode 100644 index 0000000..6f7bce1 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_CartesianProduct_SkipMime/tizen-manifest.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_CartesianProduct_SkipUri/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_CartesianProduct_SkipUri/tizen-manifest.xml new file mode 100644 index 0000000..0b3078f --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_CartesianProduct_SkipUri/tizen-manifest.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Many/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Many/tizen-manifest.xml new file mode 100644 index 0000000..8cd8903 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Many/tizen-manifest.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Mime_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Mime_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..7ff32f9 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Mime_Invalid/tizen-manifest.xml @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Missing/tizen-manifest.xml new file mode 100644 index 0000000..08f42fa --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Operation_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Operation_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..a685b5d --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Operation_Invalid/tizen-manifest.xml @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Operation_Invalid_NotURI/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Operation_Invalid_NotURI/tizen-manifest.xml new file mode 100644 index 0000000..b576d97 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Operation_Invalid_NotURI/tizen-manifest.xml @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Operation_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Operation_Missing/tizen-manifest.xml new file mode 100644 index 0000000..85ae069 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Operation_Missing/tizen-manifest.xml @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_SkipMime/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_SkipMime/tizen-manifest.xml new file mode 100644 index 0000000..a1d21c9 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_SkipMime/tizen-manifest.xml @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_SkipUri/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_SkipUri/tizen-manifest.xml new file mode 100644 index 0000000..721f4ca --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_SkipUri/tizen-manifest.xml @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Uri_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Uri_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..0d216f2 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Uri_Invalid/tizen-manifest.xml @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Valid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Valid/tizen-manifest.xml new file mode 100644 index 0000000..f3417a6 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AppControl_Valid/tizen-manifest.xml @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Appid_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Appid_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..abfbe1d --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Appid_Invalid/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Appid_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Appid_Missing/tizen-manifest.xml new file mode 100644 index 0000000..d7ac4b4 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Appid_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AutoRestart_False/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AutoRestart_False/tizen-manifest.xml new file mode 100644 index 0000000..6abbc58 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AutoRestart_False/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AutoRestart_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AutoRestart_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..fc1c0ec --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AutoRestart_Invalid/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AutoRestart_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AutoRestart_Missing/tizen-manifest.xml new file mode 100644 index 0000000..08f42fa --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AutoRestart_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AutoRestart_True/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AutoRestart_True/tizen-manifest.xml new file mode 100644 index 0000000..cb9663e --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_AutoRestart_True/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_BackgroundCategory_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_BackgroundCategory_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..59846d1 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_BackgroundCategory_Invalid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_BackgroundCategory_Many/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_BackgroundCategory_Many/tizen-manifest.xml new file mode 100644 index 0000000..857d335 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_BackgroundCategory_Many/tizen-manifest.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_BackgroundCategory_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_BackgroundCategory_Missing/tizen-manifest.xml new file mode 100644 index 0000000..08f42fa --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_BackgroundCategory_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_BackgroundCategory_Valid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_BackgroundCategory_Valid/tizen-manifest.xml new file mode 100644 index 0000000..9a541fd --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_BackgroundCategory_Valid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_DataControl_Many/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_DataControl_Many/tizen-manifest.xml new file mode 100644 index 0000000..43ee407 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_DataControl_Many/tizen-manifest.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_DataControl_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_DataControl_Missing/tizen-manifest.xml new file mode 100644 index 0000000..08f42fa --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_DataControl_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_DataControl_Valid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_DataControl_Valid/tizen-manifest.xml new file mode 100644 index 0000000..7ab9e67 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_DataControl_Valid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Icon_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Icon_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..f73bd87 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Icon_Invalid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Icon_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Icon_Missing/tizen-manifest.xml new file mode 100644 index 0000000..08f42fa --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Icon_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Icon_Valid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Icon_Valid/tizen-manifest.xml new file mode 100644 index 0000000..a4f168b --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Icon_Valid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + test_icon.png + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Lang_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Lang_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..cb59a15 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Lang_Invalid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Many/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Many/tizen-manifest.xml new file mode 100644 index 0000000..e5c870f --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Many/tizen-manifest.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Many_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Many_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..28b8d87 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Many_Invalid/tizen-manifest.xml @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Missing/tizen-manifest.xml new file mode 100644 index 0000000..08f42fa --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Text_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Text_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..5636950 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Text_Invalid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Valid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Valid/tizen-manifest.xml new file mode 100644 index 0000000..806c0ec --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Label_Valid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Metadata_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Metadata_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..cba02b0 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Metadata_Invalid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Metadata_Many/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Metadata_Many/tizen-manifest.xml new file mode 100644 index 0000000..3afb02e --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Metadata_Many/tizen-manifest.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Metadata_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Metadata_Missing/tizen-manifest.xml new file mode 100644 index 0000000..08f42fa --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Metadata_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Metadata_Valid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Metadata_Valid/tizen-manifest.xml new file mode 100644 index 0000000..9082fa0 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Metadata_Valid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Multiple_False/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Multiple_False/tizen-manifest.xml new file mode 100644 index 0000000..87e7dd0 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Multiple_False/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Multiple_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Multiple_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..a3f7e1c --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Multiple_Invalid/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Multiple_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Multiple_Missing/tizen-manifest.xml new file mode 100644 index 0000000..08f42fa --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Multiple_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Multiple_True/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Multiple_True/tizen-manifest.xml new file mode 100644 index 0000000..3368f2d --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Multiple_True/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_OnBoot_False/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_OnBoot_False/tizen-manifest.xml new file mode 100644 index 0000000..7076ddf --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_OnBoot_False/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_OnBoot_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_OnBoot_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..af32fa4 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_OnBoot_Invalid/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_OnBoot_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_OnBoot_Missing/tizen-manifest.xml new file mode 100644 index 0000000..08f42fa --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_OnBoot_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_OnBoot_True/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_OnBoot_True/tizen-manifest.xml new file mode 100644 index 0000000..59d07c3 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_OnBoot_True/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_SetManifestXDefaults/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_SetManifestXDefaults/tizen-manifest.xml new file mode 100644 index 0000000..08f42fa --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_SetManifestXDefaults/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Taskmanage_False/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Taskmanage_False/tizen-manifest.xml new file mode 100644 index 0000000..f233ab3 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Taskmanage_False/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Taskmanage_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Taskmanage_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..e498b85 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Taskmanage_Invalid/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Taskmanage_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Taskmanage_Missing/tizen-manifest.xml new file mode 100644 index 0000000..08f42fa --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Taskmanage_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Taskmanage_True/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Taskmanage_True/tizen-manifest.xml new file mode 100644 index 0000000..34d5fc8 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Taskmanage_True/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Type_Capp/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Type_Capp/tizen-manifest.xml new file mode 100644 index 0000000..08f42fa --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Type_Capp/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Type_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Type_Missing/tizen-manifest.xml new file mode 100644 index 0000000..4a49cf8 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Type_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Type_Webapp/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Type_Webapp/tizen-manifest.xml new file mode 100644 index 0000000..76bb8f3 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Type_Webapp/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Valid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Valid/tizen-manifest.xml new file mode 100644 index 0000000..08f42fa --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.ServiceApplicationElement_Valid/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_CartesianProduct/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_CartesianProduct/tizen-manifest.xml new file mode 100644 index 0000000..4064781 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_CartesianProduct/tizen-manifest.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_CartesianProduct_SkipMime/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_CartesianProduct_SkipMime/tizen-manifest.xml new file mode 100644 index 0000000..1953a27 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_CartesianProduct_SkipMime/tizen-manifest.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_CartesianProduct_SkipUri/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_CartesianProduct_SkipUri/tizen-manifest.xml new file mode 100644 index 0000000..35214d9 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_CartesianProduct_SkipUri/tizen-manifest.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Many/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Many/tizen-manifest.xml new file mode 100644 index 0000000..8e169b6 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Many/tizen-manifest.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Mime_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Mime_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..638e160 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Mime_Invalid/tizen-manifest.xml @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Missing/tizen-manifest.xml new file mode 100644 index 0000000..f0bba4a --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Operation_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Operation_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..ee7dbed --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Operation_Invalid/tizen-manifest.xml @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Operation_Invalid_NotURI/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Operation_Invalid_NotURI/tizen-manifest.xml new file mode 100644 index 0000000..410d411 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Operation_Invalid_NotURI/tizen-manifest.xml @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Operation_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Operation_Missing/tizen-manifest.xml new file mode 100644 index 0000000..f92a123 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Operation_Missing/tizen-manifest.xml @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_SkipMime/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_SkipMime/tizen-manifest.xml new file mode 100644 index 0000000..dd3e21a --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_SkipMime/tizen-manifest.xml @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_SkipUri/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_SkipUri/tizen-manifest.xml new file mode 100644 index 0000000..464cb59 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_SkipUri/tizen-manifest.xml @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Uri_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Uri_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..4679cff --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Uri_Invalid/tizen-manifest.xml @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Valid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Valid/tizen-manifest.xml new file mode 100644 index 0000000..52886a5 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_AppControl_Valid/tizen-manifest.xml @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Appid_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Appid_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..669e95b --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Appid_Invalid/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Appid_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Appid_Missing/tizen-manifest.xml new file mode 100644 index 0000000..64a7774 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Appid_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_BackgroundCategory_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_BackgroundCategory_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..051dd00 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_BackgroundCategory_Invalid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_BackgroundCategory_Many/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_BackgroundCategory_Many/tizen-manifest.xml new file mode 100644 index 0000000..dffba18 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_BackgroundCategory_Many/tizen-manifest.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_BackgroundCategory_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_BackgroundCategory_Missing/tizen-manifest.xml new file mode 100644 index 0000000..f0bba4a --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_BackgroundCategory_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_BackgroundCategory_Valid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_BackgroundCategory_Valid/tizen-manifest.xml new file mode 100644 index 0000000..d8294ea --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_BackgroundCategory_Valid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_DataControl_Many/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_DataControl_Many/tizen-manifest.xml new file mode 100644 index 0000000..1242b7f --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_DataControl_Many/tizen-manifest.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_DataControl_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_DataControl_Missing/tizen-manifest.xml new file mode 100644 index 0000000..f0bba4a --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_DataControl_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_DataControl_Valid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_DataControl_Valid/tizen-manifest.xml new file mode 100644 index 0000000..ebd6b77 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_DataControl_Valid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_HwAcceleration_Default/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_HwAcceleration_Default/tizen-manifest.xml new file mode 100644 index 0000000..de30cb6 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_HwAcceleration_Default/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_HwAcceleration_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_HwAcceleration_Missing/tizen-manifest.xml new file mode 100644 index 0000000..f0bba4a --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_HwAcceleration_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_HwAcceleration_Off/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_HwAcceleration_Off/tizen-manifest.xml new file mode 100644 index 0000000..1f3ae5e --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_HwAcceleration_Off/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_HwAcceleration_On/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_HwAcceleration_On/tizen-manifest.xml new file mode 100644 index 0000000..528ba32 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_HwAcceleration_On/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Icon_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Icon_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..ea51842 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Icon_Invalid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Icon_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Icon_Missing/tizen-manifest.xml new file mode 100644 index 0000000..f0bba4a --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Icon_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Icon_Valid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Icon_Valid/tizen-manifest.xml new file mode 100644 index 0000000..127027e --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Icon_Valid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + test_icon.png + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Lang_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Lang_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..e094b67 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Lang_Invalid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Many/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Many/tizen-manifest.xml new file mode 100644 index 0000000..bdfaa9f --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Many/tizen-manifest.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Many_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Many_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..2576fc3 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Many_Invalid/tizen-manifest.xml @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Missing/tizen-manifest.xml new file mode 100644 index 0000000..f0bba4a --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Text_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Text_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..aa1a87e --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Text_Invalid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Valid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Valid/tizen-manifest.xml new file mode 100644 index 0000000..2c11e8d --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Label_Valid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_LaunchMode_Caller/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_LaunchMode_Caller/tizen-manifest.xml new file mode 100644 index 0000000..2d9b43c --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_LaunchMode_Caller/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_LaunchMode_Group/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_LaunchMode_Group/tizen-manifest.xml new file mode 100644 index 0000000..65dfbd3 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_LaunchMode_Group/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_LaunchMode_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_LaunchMode_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..a0000e7 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_LaunchMode_Invalid/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_LaunchMode_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_LaunchMode_Missing/tizen-manifest.xml new file mode 100644 index 0000000..f0bba4a --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_LaunchMode_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_LaunchMode_Single/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_LaunchMode_Single/tizen-manifest.xml new file mode 100644 index 0000000..d77c3b1 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_LaunchMode_Single/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Metadata_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Metadata_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..0c48a40 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Metadata_Invalid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Metadata_Many/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Metadata_Many/tizen-manifest.xml new file mode 100644 index 0000000..aa01815 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Metadata_Many/tizen-manifest.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Metadata_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Metadata_Missing/tizen-manifest.xml new file mode 100644 index 0000000..f0bba4a --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Metadata_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Metadata_Valid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Metadata_Valid/tizen-manifest.xml new file mode 100644 index 0000000..d194091 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Metadata_Valid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_MissingNoApp/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_MissingNoApp/tizen-manifest.xml new file mode 100644 index 0000000..8e7fef5 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_MissingNoApp/tizen-manifest.xml @@ -0,0 +1,3 @@ + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_MissingOtherApp/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_MissingOtherApp/tizen-manifest.xml new file mode 100644 index 0000000..08f42fa --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_MissingOtherApp/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Multiple_False/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Multiple_False/tizen-manifest.xml new file mode 100644 index 0000000..06a1524 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Multiple_False/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Multiple_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Multiple_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..f1cd36e --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Multiple_Invalid/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Multiple_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Multiple_Missing/tizen-manifest.xml new file mode 100644 index 0000000..f0bba4a --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Multiple_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Multiple_True/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Multiple_True/tizen-manifest.xml new file mode 100644 index 0000000..a14c47d --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Multiple_True/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Nodisplay_False/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Nodisplay_False/tizen-manifest.xml new file mode 100644 index 0000000..6880ba8 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Nodisplay_False/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Nodisplay_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Nodisplay_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..ff27582 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Nodisplay_Invalid/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Nodisplay_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Nodisplay_Missing/tizen-manifest.xml new file mode 100644 index 0000000..f0bba4a --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Nodisplay_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Nodisplay_True/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Nodisplay_True/tizen-manifest.xml new file mode 100644 index 0000000..2e451f0 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Nodisplay_True/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_SetManifestXDefaults/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_SetManifestXDefaults/tizen-manifest.xml new file mode 100644 index 0000000..f0bba4a --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_SetManifestXDefaults/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_SplashScreens_Duplicated_Entry/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_SplashScreens_Duplicated_Entry/tizen-manifest.xml new file mode 100644 index 0000000..2bca285 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_SplashScreens_Duplicated_Entry/tizen-manifest.xml @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Taskmanage_False/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Taskmanage_False/tizen-manifest.xml new file mode 100644 index 0000000..9bfa177 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Taskmanage_False/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Taskmanage_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Taskmanage_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..8fb9701 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Taskmanage_Invalid/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Taskmanage_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Taskmanage_Missing/tizen-manifest.xml new file mode 100644 index 0000000..f0bba4a --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Taskmanage_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Taskmanage_True/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Taskmanage_True/tizen-manifest.xml new file mode 100644 index 0000000..6b069cb --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Taskmanage_True/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Type_Capp/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Type_Capp/tizen-manifest.xml new file mode 100644 index 0000000..f0bba4a --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Type_Capp/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Type_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Type_Missing/tizen-manifest.xml new file mode 100644 index 0000000..d509712 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Type_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Type_Webapp/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Type_Webapp/tizen-manifest.xml new file mode 100644 index 0000000..461ee35 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Type_Webapp/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Valid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Valid/tizen-manifest.xml new file mode 100644 index 0000000..f0bba4a --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.UIApplicationElement_Valid/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_AmbientSupport_False/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_AmbientSupport_False/tizen-manifest.xml new file mode 100644 index 0000000..c4103e6 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_AmbientSupport_False/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_AmbientSupport_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_AmbientSupport_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..994105a --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_AmbientSupport_Invalid/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_AmbientSupport_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_AmbientSupport_Missing/tizen-manifest.xml new file mode 100644 index 0000000..8e9bcce --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_AmbientSupport_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_AmbientSupport_True/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_AmbientSupport_True/tizen-manifest.xml new file mode 100644 index 0000000..edc9a21 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_AmbientSupport_True/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Appid_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Appid_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..9603ec3 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Appid_Invalid/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Appid_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Appid_Missing/tizen-manifest.xml new file mode 100644 index 0000000..1d9ee66 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Appid_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Icon_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Icon_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..b5ceae8 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Icon_Invalid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Icon_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Icon_Missing/tizen-manifest.xml new file mode 100644 index 0000000..8e9bcce --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Icon_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Icon_Valid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Icon_Valid/tizen-manifest.xml new file mode 100644 index 0000000..4971e4e --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Icon_Valid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + test_icon.png + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Label_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Label_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..7c9b8d3 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Label_Invalid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Label_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Label_Missing/tizen-manifest.xml new file mode 100644 index 0000000..8e9bcce --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Label_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Label_Valid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Label_Valid/tizen-manifest.xml new file mode 100644 index 0000000..bcd1ec8 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Label_Valid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_SetManifestXDefaults/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_SetManifestXDefaults/tizen-manifest.xml new file mode 100644 index 0000000..8e9bcce --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_SetManifestXDefaults/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Valid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Valid/tizen-manifest.xml new file mode 100644 index 0000000..8e9bcce --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.WatchApplicationElement_Valid/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Appid_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Appid_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..bf08f47 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Appid_Invalid/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Appid_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Appid_Missing/tizen-manifest.xml new file mode 100644 index 0000000..da37c53 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Appid_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Icon_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Icon_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..0324d67 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Icon_Invalid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Icon_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Icon_Missing/tizen-manifest.xml new file mode 100644 index 0000000..55e6da9 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Icon_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Icon_Valid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Icon_Valid/tizen-manifest.xml new file mode 100644 index 0000000..8dfbf62 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Icon_Valid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + test_icon.png + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Lang_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Lang_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..5f9f05c --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Lang_Invalid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Many/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Many/tizen-manifest.xml new file mode 100644 index 0000000..41c4707 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Many/tizen-manifest.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Many_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Many_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..ce72881 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Many_Invalid/tizen-manifest.xml @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Missing/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Missing/tizen-manifest.xml new file mode 100644 index 0000000..55e6da9 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Missing/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Text_Invalid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Text_Invalid/tizen-manifest.xml new file mode 100644 index 0000000..4fb778f --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Text_Invalid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Valid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Valid/tizen-manifest.xml new file mode 100644 index 0000000..840b648 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Label_Valid/tizen-manifest.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_SetManifestXDefaults/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_SetManifestXDefaults/tizen-manifest.xml new file mode 100644 index 0000000..55e6da9 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_SetManifestXDefaults/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Valid/tizen-manifest.xml b/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Valid/tizen-manifest.xml new file mode 100644 index 0000000..55e6da9 --- /dev/null +++ b/test/smoke_tests/test_samples/manifest/ManifestTest.WidgetApplicationElement_Valid/tizen-manifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/test/smoke_tests/test_samples/smoke/DeinstallationMode_Preload.tpk b/test/smoke_tests/test_samples/smoke/DeinstallationMode_Preload.tpk new file mode 100644 index 0000000..52974c4 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/DeinstallationMode_Preload.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/DeinstallationMode_Tpk.tpk b/test/smoke_tests/test_samples/smoke/DeinstallationMode_Tpk.tpk new file mode 100644 index 0000000..8f66981 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/DeinstallationMode_Tpk.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/DeltaMode_Tpk.delta b/test/smoke_tests/test_samples/smoke/DeltaMode_Tpk.delta new file mode 100644 index 0000000..b0c33f2 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/DeltaMode_Tpk.delta differ diff --git a/test/smoke_tests/test_samples/smoke/DeltaMode_Tpk.tpk b/test/smoke_tests/test_samples/smoke/DeltaMode_Tpk.tpk new file mode 100644 index 0000000..89a89d1 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/DeltaMode_Tpk.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/DeltaMode_Tpk_2.tpk b/test/smoke_tests/test_samples/smoke/DeltaMode_Tpk_2.tpk new file mode 100644 index 0000000..40dc78f Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/DeltaMode_Tpk_2.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/DeltaMode_Tpk_Rollback.delta b/test/smoke_tests/test_samples/smoke/DeltaMode_Tpk_Rollback.delta new file mode 100644 index 0000000..7110a2e Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/DeltaMode_Tpk_Rollback.delta differ diff --git a/test/smoke_tests/test_samples/smoke/DeltaMode_Tpk_Rollback.tpk b/test/smoke_tests/test_samples/smoke/DeltaMode_Tpk_Rollback.tpk new file mode 100644 index 0000000..e1d0769 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/DeltaMode_Tpk_Rollback.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/DeltaMode_Tpk_Rollback_2.tpk b/test/smoke_tests/test_samples/smoke/DeltaMode_Tpk_Rollback_2.tpk new file mode 100644 index 0000000..9dd3442 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/DeltaMode_Tpk_Rollback_2.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/DisablePkg.tpk b/test/smoke_tests/test_samples/smoke/DisablePkg.tpk new file mode 100644 index 0000000..4461ea9 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/DisablePkg.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/EnablePkg.tpk b/test/smoke_tests/test_samples/smoke/EnablePkg.tpk new file mode 100644 index 0000000..0600d14 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/EnablePkg.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/InstallExtended_Tpk.tpk b/test/smoke_tests/test_samples/smoke/InstallExtended_Tpk.tpk new file mode 100644 index 0000000..a06bb03 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/InstallExtended_Tpk.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/InstallExternal_Tpk.tpk b/test/smoke_tests/test_samples/smoke/InstallExternal_Tpk.tpk new file mode 100644 index 0000000..b9f9ec1 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/InstallExternal_Tpk.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/InstallExternal_Tpk_2.tpk b/test/smoke_tests/test_samples/smoke/InstallExternal_Tpk_2.tpk new file mode 100644 index 0000000..21dce6c Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/InstallExternal_Tpk_2.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/InstallationMode_GoodSignature.tpk b/test/smoke_tests/test_samples/smoke/InstallationMode_GoodSignature.tpk new file mode 100644 index 0000000..d6969e1 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/InstallationMode_GoodSignature.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/InstallationMode_Preload.tpk b/test/smoke_tests/test_samples/smoke/InstallationMode_Preload.tpk new file mode 100644 index 0000000..03168ce Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/InstallationMode_Preload.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/InstallationMode_Rollback.tpk b/test/smoke_tests/test_samples/smoke/InstallationMode_Rollback.tpk new file mode 100644 index 0000000..983cefe Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/InstallationMode_Rollback.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/InstallationMode_Tpk.tpk b/test/smoke_tests/test_samples/smoke/InstallationMode_Tpk.tpk new file mode 100644 index 0000000..2dea339 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/InstallationMode_Tpk.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/InstallationMode_WrongSignature.tpk b/test/smoke_tests/test_samples/smoke/InstallationMode_WrongSignature.tpk new file mode 100644 index 0000000..3847f1d Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/InstallationMode_WrongSignature.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/author-signature.xml b/test/smoke_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/author-signature.xml new file mode 100644 index 0000000..45a6533 --- /dev/null +++ b/test/smoke_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/author-signature.xml @@ -0,0 +1,66 @@ + + + + + + +Yrs3GkHAMzZGL7qmFGAF7sdXg6shvOtthBSb/Hjzfjw= + + + +1d0oEZHqPn+QzNzGIHwj9ODby6x9ggFs9uOsav6jPNs= + + + +vQ+rOr8hWb4TVBijWblCSAB+8eePv+QyN6wNXzvJgSE= + + + + + + +lpo8tUDs054eLlBQXiDPVDVKfw30ZZdtkRs1jd7H5K8= + + + +ATfZj/k87yYSeapRBX0sMZ5tO6jMQDj4EWCCTLtj5cf+N1s8WCbl4sST53hWdTf+JgvAzTpF6x+t +LcwC9zQZxfYTzHu0KqyKJy6uXj6tiB85SSlYhejOtDogxvGFCnRo6RZioYzF4SDtxha9NkYyh1PF +L0UpraclVNYVc1MMfYY= + + + + +MIICnDCCAYSgAwIBAgIGAVvS9uY8MA0GCSqGSIb3DQEBBQUAMFYxGjAYBgNVBAoMEVRpemVuIEFz +c29jaWF0aW9uMRowGAYDVQQLDBFUaXplbiBBc3NvY2lhdGlvbjEcMBoGA1UEAwwTVGl6ZW4gRGV2 +ZWxvcGVycyBDQTAeFw0xMjExMDEwMDAwMDBaFw0xOTAxMDEwMDAwMDBaMBgxFjAUBgNVBAMMDUFw +cF9pbnN0YWxsZXIwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAIKgQLsl5UIJdfdaDXbY+aQ6 +VHjwTPv5+aUlF1l6G9SDZ7tmJTCO1yAudmMr6vEN+ZL/bbOEAlyhkJPTmntPesO1h/WzjIlpFzTO +UcHlEXAu1vZGTnPBoYTutBeVmbH9JY/dCSm2xFSioKaWHl+uMn0SB1DcvgIVSs4DkvO0F1+TAgMB +AAGjMjAwMAwGA1UdEwEB/wQCMAAwCwYDVR0PBAQDAgeAMBMGA1UdJQQMMAoGCCsGAQUFBwMDMA0G +CSqGSIb3DQEBBQUAA4IBAQBwNrj9b7/g4JI9K3wohRLHW5IpxOwBO9gUlkotSUNaiAvNwsQfB5pE +k+rTUa4Nwxcq6rFfne1brXP1vbl/bVGW/WJqV6dF3BL1QfwGif0vvcO1Sz2QOpoc/Jtt8zlmsRne +TIEMph6kDUT1oNUlTCGnxD24WagRxuGUe/RZ6L4y+6T8L+fBDtMyyM+GytqE72V+0KeyITJMTdzM +wRMjN3XccXemcox73isLxSXlgwrFbotkTyYPTFphiZCRU7BlA3EClIk+3To0b3irROY/iIlg6ZyY +gNbND9/aIJxqPqCghW7PMjGH/9KK2mtNhtJSFrIAvvUiW/fMrNj1opsAHGgJ + + +MIIDOTCCAiGgAwIBAgIBATANBgkqhkiG9w0BAQUFADBYMRowGAYDVQQKDBFUaXplbiBBc3NvY2lh +dGlvbjEaMBgGA1UECwwRVGl6ZW4gQXNzb2NpYXRpb24xHjAcBgNVBAMMFVRpemVuIERldmVsb3Bl +cnMgUm9vdDAeFw0xMjAxMDEwMDAwMDBaFw0yNzAxMDEwMDAwMDBaMFYxGjAYBgNVBAoMEVRpemVu +IEFzc29jaWF0aW9uMRowGAYDVQQLDBFUaXplbiBBc3NvY2lhdGlvbjEcMBoGA1UEAwwTVGl6ZW4g +RGV2ZWxvcGVycyBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANVGhRGmMIUyBA7o +PCz8Sxut6z6HNkF4oDIuzuKaMzRYPeWodwe9O0gmqAkToQHfwg2giRhE5GoPld0fq+OYMMwSasCu +g8dwODx1eDeSYVuOLWRxpAmbTXOsSFi6VoWeyaPEm18JBHvZBsU5YQtgZ6Kp7MqzvQg3pXOxtajj +vyHxiatJl+xXrHgcXC1wgyG3buty7u/Fi2mvKXJ0PRJcCjjK81dqe/Vr20sRUCrbk02zbm5ggFt/ +jIEhV8wbFRQpliobc7J4dSTKhFfrqGM8rdd54LYhD7gSI1CFSe16pUXfcVR7FhJztRaiGLnCrwBE +dyTZ248+D4L/qR/D0axb3jcCAwEAAaMQMA4wDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQUFAAOC +AQEAnOXXQ/1O/QTDHyrmQDtFziqPY3xWlJBqJtEqXiT7Y+Ljpe66e+Ee/OjQMlZe8gu21/8cKklH +95RxjopMWCVedXDUbWdvS2+CdyvVW/quT2E0tjqIzXDekUTYwwhlPWlGxvfj3VsxqSFq3p8Brl04 +1Gx5RKAGyKVsMfTLhbbwSWwApuBUxYfcNpKwLWGPXkysu+HctY03OKv4/xKBnVWiN8ex/Sgesi0M ++OBAOMdZMPK32uJBTeKFx1xZgTLIhk45V0hPOomPjZloiv0LSS11eyd451ufjW0iHRE7WlpR6EvI +W6TFyZgMpQq+kg4hWl2SBTf3s2VI8Ygz7gj8TMlClg== + + + + + \ No newline at end of file diff --git a/test/smoke_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/bin/basicui b/test/smoke_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/bin/basicui new file mode 100644 index 0000000..91135f5 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/bin/basicui differ diff --git a/test/smoke_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/lib/sth.txt b/test/smoke_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/lib/sth.txt new file mode 100644 index 0000000..a3cc0b5 --- /dev/null +++ b/test/smoke_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/lib/sth.txt @@ -0,0 +1 @@ +Needed, because empty directories are skipped when copying, and directory structure will be invalid. diff --git a/test/smoke_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/res/sth.txt b/test/smoke_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/res/sth.txt new file mode 100644 index 0000000..a3cc0b5 --- /dev/null +++ b/test/smoke_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/res/sth.txt @@ -0,0 +1 @@ +Needed, because empty directories are skipped when copying, and directory structure will be invalid. diff --git a/test/smoke_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/shared/res/basicui.png b/test/smoke_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/shared/res/basicui.png new file mode 100644 index 0000000..9765b1b Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/shared/res/basicui.png differ diff --git a/test/smoke_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/signature1.xml b/test/smoke_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/signature1.xml new file mode 100644 index 0000000..399fa19 --- /dev/null +++ b/test/smoke_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/signature1.xml @@ -0,0 +1,68 @@ + + + + + + +anhYz6XCClJebTJ+qamYS8R0Rk4xDr7LKqaWzyxvj0I= + + + +Yrs3GkHAMzZGL7qmFGAF7sdXg6shvOtthBSb/Hjzfjw= + + + +1d0oEZHqPn+QzNzGIHwj9ODby6x9ggFs9uOsav6jPNs= + + + +vQ+rOr8hWb4TVBijWblCSAB+8eePv+QyN6wNXzvJgSE= + + + + + + +u/jU3U4Zm5ihTMSjKGlGYbWzDfRkGphPPHx3gJIYEJ4= + + + +NTEUK1tZpBTxjgfGxbwc1bZr8kAG8dc2+hx2xzUFxZUgIWwIIy/SdKy7VGUCAH3y/HApfaNBL1SL +RnGoQ/R3L/eQvQnzq/iTpZcCSpYnnvH9fJHAmgSod5XgH9IS+QKU/fzJ1rhlMBMD8oGxrDa4JrQJ +65+mUCgDS7LZUp6olx8= + + + + +MIICnTCCAgYCCQDE9MbMmJ/yCzANBgkqhkiG9w0BAQUFADCBkDELMAkGA1UEBhMCS1IxDjAMBgNV +BAgMBVN1d29uMQ4wDAYDVQQHDAVTdXdvbjEWMBQGA1UECgwNVGl6ZW4gVGVzdCBDQTEiMCAGA1UE +CwwZVGl6ZW4gRGlzdHJpYnV0b3IgVGVzdCBDQTElMCMGA1UEAwwcVGl6ZW4gUGFydG5lciBEaXN0 +cmlidXRvciBDQTAeFw0xMjEwMjcwNzQ4MzNaFw0yMjEwMjUwNzQ4MzNaMIGUMQswCQYDVQQGEwJL +UjEOMAwGA1UECAwFU3V3b24xDjAMBgNVBAcMBVN1d29uMRYwFAYDVQQKDA1UaXplbiBUZXN0IENB +MSIwIAYDVQQLDBlUaXplbiBEaXN0cmlidXRvciBUZXN0IENBMSkwJwYDVQQDDCBUaXplbiBQYXJ0 +bmVyIERpc3RyaWJ1dG9yIFNpZ25lcjCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAy9mg2x4B +zxlK3LJL81GsLq/pJfK1evdCKG/IOBpdoRO0rLhYnsL5+KvToPFa5g9GTZo32LikpW1NZ7++3EHE +fnO2IGLUau4kquvhmz1LNg5xBTx7IbucmwLMRGo1BPGdsAQQLyXeQKJ5PCERmVg4MIoiL2zT/JsL +sZ9UPT6GEB8CAwEAATANBgkqhkiG9w0BAQUFAAOBgQAw5xPBFR1XKuZ8QpsCtSE0zXVHvwIa+Ha4 +YBdRtGwEoZmiKGZV/wAhPRdmR0kISkTz20kIGz/ZwRZCVGhsr5hkkpFknYlKeKkEJ/tJfZl4D7ec +GFAnynOzlWZqSIPz+yxX8ah9E6lTv4Vs9DhNb08nxVvxLqlpyVdk9RUsCx/yIA== + + +MIICtTCCAh6gAwIBAgIJAKORBcIiXygIMA0GCSqGSIb3DQEBBQUAMIGVMQswCQYDVQQGEwJLUjEO +MAwGA1UECAwFU3V3b24xDjAMBgNVBAcMBVN1d29uMRYwFAYDVQQKDA1UaXplbiBUZXN0IENBMSIw +IAYDVQQLDBlUaXplbiBEaXN0cmlidXRvciBUZXN0IENBMSowKAYDVQQDDCFUaXplbiBQYXJ0bmVy +IERpc3RyaWJ1dG9yIFJvb3QgQ0EwHhcNMTIxMDI3MDc0NTIwWhcNMjIxMDI1MDc0NTIwWjCBkDEL +MAkGA1UEBhMCS1IxDjAMBgNVBAgMBVN1d29uMQ4wDAYDVQQHDAVTdXdvbjEWMBQGA1UECgwNVGl6 +ZW4gVGVzdCBDQTEiMCAGA1UECwwZVGl6ZW4gRGlzdHJpYnV0b3IgVGVzdCBDQTElMCMGA1UEAwwc +VGl6ZW4gUGFydG5lciBEaXN0cmlidXRvciBDQTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA +2ZQrdEowjqxUmB8FX8ej19VKY6jGHKNIRE5wrhBkuZ1b0FLRPiN3/Cl9wMkCnyJui4QhC28g1aBg +w/JnaObcDqW1NgFVH3006+gZvCTDlw1nIEjvZa6P+uWOOi05xPPAE0feKPkO1POnOjnapfkkEVNU +8TXsLbLYBylWT8rxZC8CAwEAAaMQMA4wDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQUFAAOBgQBJ +yJ7p6qs0JI+1iKOk/sYWVP6dMueY72qOc/wVj5c3ejOlgJNNXDMAQ14QcRRexffc68ipTwybU/3m +tcNwydzKJe+GFa4b2zyKOvOgrfs4MKSR0T9XEPmTKeR+NDT2CbA6/kQoRYm0fSORzD2UXJzNZWe/ +WjwSA66hv4q+0QZQFQ== + + + + + \ No newline at end of file diff --git a/test/smoke_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/tizen-manifest.xml b/test/smoke_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/tizen-manifest.xml new file mode 100644 index 0000000..780b3f1 --- /dev/null +++ b/test/smoke_tests/test_samples/smoke/ManifestDirectInstallMode/smoketpk41/tizen-manifest.xml @@ -0,0 +1,8 @@ + + + + + basicui.png + + + diff --git a/test/smoke_tests/test_samples/smoke/ManifestDirectUpdateMode.tpk b/test/smoke_tests/test_samples/smoke/ManifestDirectUpdateMode.tpk new file mode 100644 index 0000000..f96ff56 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/ManifestDirectUpdateMode.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/MountInstallationMode_Rollback.tpk b/test/smoke_tests/test_samples/smoke/MountInstallationMode_Rollback.tpk new file mode 100644 index 0000000..1d371be Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/MountInstallationMode_Rollback.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/MountInstallationMode_Tpk.tpk b/test/smoke_tests/test_samples/smoke/MountInstallationMode_Tpk.tpk new file mode 100644 index 0000000..ec3f9ff Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/MountInstallationMode_Tpk.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/MountUpdateMode_Rollback.tpk b/test/smoke_tests/test_samples/smoke/MountUpdateMode_Rollback.tpk new file mode 100644 index 0000000..6586b51 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/MountUpdateMode_Rollback.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/MountUpdateMode_Rollback2.tpk b/test/smoke_tests/test_samples/smoke/MountUpdateMode_Rollback2.tpk new file mode 100644 index 0000000..b8cb1f1 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/MountUpdateMode_Rollback2.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/MountUpdateMode_Tpk.tpk b/test/smoke_tests/test_samples/smoke/MountUpdateMode_Tpk.tpk new file mode 100644 index 0000000..ea563d9 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/MountUpdateMode_Tpk.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/MountUpdateMode_Tpk_2.tpk b/test/smoke_tests/test_samples/smoke/MountUpdateMode_Tpk_2.tpk new file mode 100644 index 0000000..752d2f2 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/MountUpdateMode_Tpk_2.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/ReadonlyUpdateInstallMode.tpk b/test/smoke_tests/test_samples/smoke/ReadonlyUpdateInstallMode.tpk new file mode 100644 index 0000000..c678f07 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/ReadonlyUpdateInstallMode.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/ReadonlyUpdateUninstallMode.tpk b/test/smoke_tests/test_samples/smoke/ReadonlyUpdateUninstallMode.tpk new file mode 100644 index 0000000..ffc8dcb Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/ReadonlyUpdateUninstallMode.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/RecoveryMode_CrashAfterUnzip.tpk b/test/smoke_tests/test_samples/smoke/RecoveryMode_CrashAfterUnzip.tpk new file mode 100644 index 0000000..d46291e Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/RecoveryMode_CrashAfterUnzip.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/RecoveryMode_ForDelta.delta b/test/smoke_tests/test_samples/smoke/RecoveryMode_ForDelta.delta new file mode 100644 index 0000000..90da396 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/RecoveryMode_ForDelta.delta differ diff --git a/test/smoke_tests/test_samples/smoke/RecoveryMode_ForDelta.tpk b/test/smoke_tests/test_samples/smoke/RecoveryMode_ForDelta.tpk new file mode 100644 index 0000000..c1bf82e Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/RecoveryMode_ForDelta.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/RecoveryMode_ForMountInstall.tpk b/test/smoke_tests/test_samples/smoke/RecoveryMode_ForMountInstall.tpk new file mode 100644 index 0000000..3a33b26 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/RecoveryMode_ForMountInstall.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/RecoveryMode_ForMountUpdate.tpk b/test/smoke_tests/test_samples/smoke/RecoveryMode_ForMountUpdate.tpk new file mode 100644 index 0000000..b7f13cb Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/RecoveryMode_ForMountUpdate.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/RecoveryMode_ForMountUpdate2.tpk b/test/smoke_tests/test_samples/smoke/RecoveryMode_ForMountUpdate2.tpk new file mode 100644 index 0000000..ef80686 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/RecoveryMode_ForMountUpdate2.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/RecoveryMode_NonSharedData.tpk b/test/smoke_tests/test_samples/smoke/RecoveryMode_NonSharedData.tpk new file mode 100644 index 0000000..a7df83b Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/RecoveryMode_NonSharedData.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/RecoveryMode_NonSharedData_2.tpk b/test/smoke_tests/test_samples/smoke/RecoveryMode_NonSharedData_2.tpk new file mode 100644 index 0000000..441c58b Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/RecoveryMode_NonSharedData_2.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/RecoveryMode_SharedData.tpk b/test/smoke_tests/test_samples/smoke/RecoveryMode_SharedData.tpk new file mode 100644 index 0000000..d1dc366 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/RecoveryMode_SharedData.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/RecoveryMode_SharedData_2.tpk b/test/smoke_tests/test_samples/smoke/RecoveryMode_SharedData_2.tpk new file mode 100644 index 0000000..cf91a3a Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/RecoveryMode_SharedData_2.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/RecoveryMode_Tpk_Installation.tpk b/test/smoke_tests/test_samples/smoke/RecoveryMode_Tpk_Installation.tpk new file mode 100644 index 0000000..2b384bf Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/RecoveryMode_Tpk_Installation.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/RecoveryMode_Tpk_Update.tpk b/test/smoke_tests/test_samples/smoke/RecoveryMode_Tpk_Update.tpk new file mode 100644 index 0000000..3a04033 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/RecoveryMode_Tpk_Update.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/RecoveryMode_Tpk_Update_2.tpk b/test/smoke_tests/test_samples/smoke/RecoveryMode_Tpk_Update_2.tpk new file mode 100644 index 0000000..48c2839 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/RecoveryMode_Tpk_Update_2.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/RecoveryPkg.delta b/test/smoke_tests/test_samples/smoke/RecoveryPkg.delta new file mode 100644 index 0000000..bcdf006 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/RecoveryPkg.delta differ diff --git a/test/smoke_tests/test_samples/smoke/RecoveryPkg.tpk b/test/smoke_tests/test_samples/smoke/RecoveryPkg.tpk new file mode 100644 index 0000000..aa35c55 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/RecoveryPkg.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/RecoveryPkg2.tpk b/test/smoke_tests/test_samples/smoke/RecoveryPkg2.tpk new file mode 100644 index 0000000..2828101 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/RecoveryPkg2.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/ReinstallMode_Tpk.tpk b/test/smoke_tests/test_samples/smoke/ReinstallMode_Tpk.tpk new file mode 100644 index 0000000..37d3fa5 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/ReinstallMode_Tpk.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/TEP_Tpk1.tpk b/test/smoke_tests/test_samples/smoke/TEP_Tpk1.tpk new file mode 100644 index 0000000..f380e81 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/TEP_Tpk1.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/TEP_Tpk10.tpk b/test/smoke_tests/test_samples/smoke/TEP_Tpk10.tpk new file mode 100644 index 0000000..c059e16 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/TEP_Tpk10.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/TEP_Tpk11.tpk b/test/smoke_tests/test_samples/smoke/TEP_Tpk11.tpk new file mode 100644 index 0000000..80e3706 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/TEP_Tpk11.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/TEP_Tpk12.tpk b/test/smoke_tests/test_samples/smoke/TEP_Tpk12.tpk new file mode 100644 index 0000000..ba2574c Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/TEP_Tpk12.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/TEP_Tpk13.tpk b/test/smoke_tests/test_samples/smoke/TEP_Tpk13.tpk new file mode 100644 index 0000000..a63da3f Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/TEP_Tpk13.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/TEP_Tpk14.tpk b/test/smoke_tests/test_samples/smoke/TEP_Tpk14.tpk new file mode 100644 index 0000000..b2ad7a0 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/TEP_Tpk14.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/TEP_Tpk2.tpk b/test/smoke_tests/test_samples/smoke/TEP_Tpk2.tpk new file mode 100644 index 0000000..1aa3798 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/TEP_Tpk2.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/TEP_Tpk3.tpk b/test/smoke_tests/test_samples/smoke/TEP_Tpk3.tpk new file mode 100644 index 0000000..6d113d8 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/TEP_Tpk3.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/TEP_Tpk4.tpk b/test/smoke_tests/test_samples/smoke/TEP_Tpk4.tpk new file mode 100644 index 0000000..50a766c Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/TEP_Tpk4.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/TEP_Tpk5.tpk b/test/smoke_tests/test_samples/smoke/TEP_Tpk5.tpk new file mode 100644 index 0000000..b8bf161 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/TEP_Tpk5.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/TEP_Tpk6.tpk b/test/smoke_tests/test_samples/smoke/TEP_Tpk6.tpk new file mode 100644 index 0000000..bea5c30 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/TEP_Tpk6.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/TEP_Tpk7.tpk b/test/smoke_tests/test_samples/smoke/TEP_Tpk7.tpk new file mode 100644 index 0000000..ac4e6ea Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/TEP_Tpk7.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/TEP_Tpk8.tpk b/test/smoke_tests/test_samples/smoke/TEP_Tpk8.tpk new file mode 100644 index 0000000..8b05078 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/TEP_Tpk8.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/TEP_Tpk9.tpk b/test/smoke_tests/test_samples/smoke/TEP_Tpk9.tpk new file mode 100644 index 0000000..bcaa55e Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/TEP_Tpk9.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/UpdateMode_NonSharedData.tpk b/test/smoke_tests/test_samples/smoke/UpdateMode_NonSharedData.tpk new file mode 100644 index 0000000..1eea6e5 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/UpdateMode_NonSharedData.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/UpdateMode_NonSharedData_2.tpk b/test/smoke_tests/test_samples/smoke/UpdateMode_NonSharedData_2.tpk new file mode 100644 index 0000000..be7893d Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/UpdateMode_NonSharedData_2.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/UpdateMode_Preload.tpk b/test/smoke_tests/test_samples/smoke/UpdateMode_Preload.tpk new file mode 100644 index 0000000..0de6572 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/UpdateMode_Preload.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/UpdateMode_Preload2.tpk b/test/smoke_tests/test_samples/smoke/UpdateMode_Preload2.tpk new file mode 100644 index 0000000..54df318 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/UpdateMode_Preload2.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/UpdateMode_Rollback.tpk b/test/smoke_tests/test_samples/smoke/UpdateMode_Rollback.tpk new file mode 100644 index 0000000..e9d6f82 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/UpdateMode_Rollback.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/UpdateMode_Rollback2.tpk b/test/smoke_tests/test_samples/smoke/UpdateMode_Rollback2.tpk new file mode 100644 index 0000000..07c53a3 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/UpdateMode_Rollback2.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/UpdateMode_SharedData.tpk b/test/smoke_tests/test_samples/smoke/UpdateMode_SharedData.tpk new file mode 100644 index 0000000..9df9b8a Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/UpdateMode_SharedData.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/UpdateMode_SharedData_2.tpk b/test/smoke_tests/test_samples/smoke/UpdateMode_SharedData_2.tpk new file mode 100644 index 0000000..aa59e29 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/UpdateMode_SharedData_2.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/UpdateMode_Tpk.tpk b/test/smoke_tests/test_samples/smoke/UpdateMode_Tpk.tpk new file mode 100644 index 0000000..9224768 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/UpdateMode_Tpk.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/UpdateMode_Tpk_2.tpk b/test/smoke_tests/test_samples/smoke/UpdateMode_Tpk_2.tpk new file mode 100644 index 0000000..2df7ddc Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/UpdateMode_Tpk_2.tpk differ diff --git a/test/smoke_tests/test_samples/smoke/delta_dir/.rds_delta b/test/smoke_tests/test_samples/smoke/delta_dir/.rds_delta new file mode 100644 index 0000000..fb08dcc --- /dev/null +++ b/test/smoke_tests/test_samples/smoke/delta_dir/.rds_delta @@ -0,0 +1,6 @@ +#add +ADDED +#modify +MODIFIED +#delete +DELETED diff --git a/test/smoke_tests/test_samples/smoke/delta_dir/ADDED b/test/smoke_tests/test_samples/smoke/delta_dir/ADDED new file mode 100644 index 0000000..e69de29 diff --git a/test/smoke_tests/test_samples/smoke/delta_dir/MODIFIED b/test/smoke_tests/test_samples/smoke/delta_dir/MODIFIED new file mode 100644 index 0000000..1f7a7a4 --- /dev/null +++ b/test/smoke_tests/test_samples/smoke/delta_dir/MODIFIED @@ -0,0 +1 @@ +version 2 diff --git a/test/smoke_tests/test_samples/smoke/delta_dir/author-signature.xml b/test/smoke_tests/test_samples/smoke/delta_dir/author-signature.xml new file mode 100644 index 0000000..1936f08 --- /dev/null +++ b/test/smoke_tests/test_samples/smoke/delta_dir/author-signature.xml @@ -0,0 +1,74 @@ + + + + + + +4W8VliAYUP1KY2gLJ/YDy2TmcXYVm+PY7XikQD/bFwA= + + + +m76Dq+1hU8YC3/kYBle8rJLovpCFYy3/HQCUS74IeSY= + + + +ZmAZCVzbwHUNfKaJi3rtgc6aF+/+Qk4MoetKx2sXEsI= + + + +1d0oEZHqPn+QzNzGIHwj9ODby6x9ggFs9uOsav6jPNs= + + + +SY77G0wHiFZyXUI2qoDEbKCfT2LP1V8D+qS4ec17yWM= + + + + + + +lpo8tUDs054eLlBQXiDPVDVKfw30ZZdtkRs1jd7H5K8= + + + +C69U/+6mOukXlqpfx1KRXm8hPJ6+CAuQJBrR0thQemMBaAwt6Jzk1zgDJt+AYlenNamj24HqoULa +sl7Cibfp+FU/zeNC587JPQT/GRaErr4ifgGLDpJ41BNr62ODeMbiBgct8eX0igWl622VqZUSy1YD +SWKKkwN7OeoCUv4fKgQ= + + + + +MIIClTCCAX2gAwIBAgIGAVSVy18QMA0GCSqGSIb3DQEBBQUAMFYxGjAYBgNVBAoMEVRpemVuIEFz +c29jaWF0aW9uMRowGAYDVQQLDBFUaXplbiBBc3NvY2lhdGlvbjEcMBoGA1UEAwwTVGl6ZW4gRGV2 +ZWxvcGVycyBDQTAeFw0xMjExMDEwMDAwMDBaFw0xOTAxMDEwMDAwMDBaMBExDzANBgNVBAMMBmF1 +dGhvcjCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEArRGCnZnlc9C4Gl1ywl02AajwD/UO249R +AZHgI3IPGhbzo2XT7gWDJvh1AqS8v6lKvMwkwRoEq7kXK9oJ3u4blP+K0pAj6cLXR9kHdfY0/ZaT +ficImTEgFxSKFHLGvsDX2S3QmeHS3y4pvmLdFr+fqsvBIDz+SISMvJ8Vlemm7PkCAwEAAaMyMDAw +DAYDVR0TAQH/BAIwADALBgNVHQ8EBAMCB4AwEwYDVR0lBAwwCgYIKwYBBQUHAwMwDQYJKoZIhvcN +AQEFBQADggEBAAoIjlzjeo0hdBxhJdrTZZG29KzpBDAXEKn9JvGqAhH5UdKxnqXDn5jt+Yode2a4 +/lQq9jFnzPCr7e+uBAnpOcH/sf3sKVI1J+Ssxo4j3tOwL74wNLUSONvXrfGFtLboof5d/JdnffME +WLQTgd95k3OTQzZSLYrR9tXgpnBgDBaZpnnE7XKiAEZ1IetexkD6f78gDe/yucYO3VESzsrenLaQ +MPcTF5kzi3QZGKJDMGhzC88bKDP96ZvhY+LOAUg3WNAk8Uyqpef6GuKSBZXXURN9EJErU2KoCMkx +hQmjVgQRwHdLy5iCWMgkWr5LEUMJocOG4DozrZ5XWBPiKSoYcNc= + + +MIIDOTCCAiGgAwIBAgIBATANBgkqhkiG9w0BAQUFADBYMRowGAYDVQQKDBFUaXplbiBBc3NvY2lh +dGlvbjEaMBgGA1UECwwRVGl6ZW4gQXNzb2NpYXRpb24xHjAcBgNVBAMMFVRpemVuIERldmVsb3Bl +cnMgUm9vdDAeFw0xMjAxMDEwMDAwMDBaFw0yNzAxMDEwMDAwMDBaMFYxGjAYBgNVBAoMEVRpemVu +IEFzc29jaWF0aW9uMRowGAYDVQQLDBFUaXplbiBBc3NvY2lhdGlvbjEcMBoGA1UEAwwTVGl6ZW4g +RGV2ZWxvcGVycyBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANVGhRGmMIUyBA7o +PCz8Sxut6z6HNkF4oDIuzuKaMzRYPeWodwe9O0gmqAkToQHfwg2giRhE5GoPld0fq+OYMMwSasCu +g8dwODx1eDeSYVuOLWRxpAmbTXOsSFi6VoWeyaPEm18JBHvZBsU5YQtgZ6Kp7MqzvQg3pXOxtajj +vyHxiatJl+xXrHgcXC1wgyG3buty7u/Fi2mvKXJ0PRJcCjjK81dqe/Vr20sRUCrbk02zbm5ggFt/ +jIEhV8wbFRQpliobc7J4dSTKhFfrqGM8rdd54LYhD7gSI1CFSe16pUXfcVR7FhJztRaiGLnCrwBE +dyTZ248+D4L/qR/D0axb3jcCAwEAAaMQMA4wDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQUFAAOC +AQEAnOXXQ/1O/QTDHyrmQDtFziqPY3xWlJBqJtEqXiT7Y+Ljpe66e+Ee/OjQMlZe8gu21/8cKklH +95RxjopMWCVedXDUbWdvS2+CdyvVW/quT2E0tjqIzXDekUTYwwhlPWlGxvfj3VsxqSFq3p8Brl04 +1Gx5RKAGyKVsMfTLhbbwSWwApuBUxYfcNpKwLWGPXkysu+HctY03OKv4/xKBnVWiN8ex/Sgesi0M ++OBAOMdZMPK32uJBTeKFx1xZgTLIhk45V0hPOomPjZloiv0LSS11eyd451ufjW0iHRE7WlpR6EvI +W6TFyZgMpQq+kg4hWl2SBTf3s2VI8Ygz7gj8TMlClg== + + + + + \ No newline at end of file diff --git a/test/smoke_tests/test_samples/smoke/delta_dir/signature1.xml b/test/smoke_tests/test_samples/smoke/delta_dir/signature1.xml new file mode 100644 index 0000000..68e70cf --- /dev/null +++ b/test/smoke_tests/test_samples/smoke/delta_dir/signature1.xml @@ -0,0 +1,76 @@ + + + + + + +4W8VliAYUP1KY2gLJ/YDy2TmcXYVm+PY7XikQD/bFwA= + + + +m76Dq+1hU8YC3/kYBle8rJLovpCFYy3/HQCUS74IeSY= + + + +p2OKn1M4try6sjsAi7//u2Og5vg1yrPQ7biD4FOHnK4= + + + +ZmAZCVzbwHUNfKaJi3rtgc6aF+/+Qk4MoetKx2sXEsI= + + + +1d0oEZHqPn+QzNzGIHwj9ODby6x9ggFs9uOsav6jPNs= + + + +SY77G0wHiFZyXUI2qoDEbKCfT2LP1V8D+qS4ec17yWM= + + + + + + +u/jU3U4Zm5ihTMSjKGlGYbWzDfRkGphPPHx3gJIYEJ4= + + + +CgAdWvIj11sAxwLplwiC6UHnM2AFSqcr2tBFoLO3BRKEpCwwC1tsCG9gwQTT4BDWjMUG7f93C6kC +KyLV689eeZf5e4yk9yfvAu30kLpIXYF5fOMfmMP6LuLYOomf2u84wY9s51hzwMyL5lz2PgrQda6T +fIxSAXcOtC2vxGWsSa4= + + + + +MIICmzCCAgQCCQDXI7WLdVZwiTANBgkqhkiG9w0BAQUFADCBjzELMAkGA1UEBhMCS1IxDjAMBgNV +BAgMBVN1d29uMQ4wDAYDVQQHDAVTdXdvbjEWMBQGA1UECgwNVGl6ZW4gVGVzdCBDQTEiMCAGA1UE +CwwZVGl6ZW4gRGlzdHJpYnV0b3IgVGVzdCBDQTEkMCIGA1UEAwwbVGl6ZW4gUHVibGljIERpc3Ry +aWJ1dG9yIENBMB4XDTEyMTAyOTEzMDMwNFoXDTIyMTAyNzEzMDMwNFowgZMxCzAJBgNVBAYTAktS +MQ4wDAYDVQQIDAVTdXdvbjEOMAwGA1UEBwwFU3V3b24xFjAUBgNVBAoMDVRpemVuIFRlc3QgQ0Ex +IjAgBgNVBAsMGVRpemVuIERpc3RyaWJ1dG9yIFRlc3QgQ0ExKDAmBgNVBAMMH1RpemVuIFB1Ymxp +YyBEaXN0cmlidXRvciBTaWduZXIwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBALtMvlc5hENK +90ZdA+y66+Sy0enD1gpZDBh5T9RP0oRsptJv5jjNTseQbQi0SZOdOXb6J7iQdlBCtR343RpIEz8H +mrBy7mSY7mgwoU4EPpp4CTSUeAuKcmvrNOngTp5Hv7Ngf02TTHOLK3hZLpGayaDviyNZB5PdqQdB +hokKjzAzAgMBAAEwDQYJKoZIhvcNAQEFBQADgYEAvGp1gxxAIlFfhJH1efjb9BJK/rtRkbYn9+Ez +GEbEULg1svsgnyWisFimI3uFvgI/swzr1eKVY3Sc8MQ3+Fdy3EkbDZ2+WAubhcEkorTWjzWz2fL1 +vKaYjeIsuEX6TVRUugHWudPzcEuQRLQf8ibZWjbQdBmpeQYBMg5x+xKLCJc= + + +MIICtDCCAh2gAwIBAgIJAMDbehElPNKvMA0GCSqGSIb3DQEBBQUAMIGVMQswCQYDVQQGEwJLUjEO +MAwGA1UECAwFU3V3b24xDjAMBgNVBAcMBVN1d29uMRYwFAYDVQQKDA1UaXplbiBUZXN0IENBMSMw +IQYDVQQLDBpUVGl6ZW4gRGlzdHJpYnV0b3IgVGVzdCBDQTEpMCcGA1UEAwwgVGl6ZW4gUHVibGlj +IERpc3RyaWJ1dG9yIFJvb3QgQ0EwHhcNMTIxMDI5MTMwMjUwWhcNMjIxMDI3MTMwMjUwWjCBjzEL +MAkGA1UEBhMCS1IxDjAMBgNVBAgMBVN1d29uMQ4wDAYDVQQHDAVTdXdvbjEWMBQGA1UECgwNVGl6 +ZW4gVGVzdCBDQTEiMCAGA1UECwwZVGl6ZW4gRGlzdHJpYnV0b3IgVGVzdCBDQTEkMCIGA1UEAwwb +VGl6ZW4gUHVibGljIERpc3RyaWJ1dG9yIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDe +OTS/3nXvkDEmsFCJIvRlQ3RKDcxdWJJp625pFqHdmoJBdV+x6jl1raGK2Y1sp2Gdvpjc/z92yzAp +bE/UVLPh/tRNZPeGhzU4ejDDm7kzdr2f7Ia0U98K+OoY12ucwg7TYNItj9is7Cj4blGfuMDzd2ah +2AgnCGlwNwV/pv+uVQIDAQABoxAwDjAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBBQUAA4GBACqJ +KO33YdoGudwanZIxMdXuxnnD9R6u72ltKk1S4zPfMJJv482CRGCI4FK6djhlsI4i0Lt1SVIJEed+ +yc3qckGm19dW+4xdlkekon7pViEBWuyHw8OWv3RXtTum1+PGHjBJ2eYY4ZKIpz73U/1NC16sTB/0 +VhfnkHwPltmrpYVe + + + + + \ No newline at end of file diff --git a/test/smoke_tests/test_samples/smoke/delta_dir/tizen-manifest.xml b/test/smoke_tests/test_samples/smoke/delta_dir/tizen-manifest.xml new file mode 100644 index 0000000..4777c0c --- /dev/null +++ b/test/smoke_tests/test_samples/smoke/delta_dir/tizen-manifest.xml @@ -0,0 +1,8 @@ + + + + + + native.png + + diff --git a/test/smoke_tests/test_samples/smoke/legacy_extimage_dir/app2sd_migrate.db b/test/smoke_tests/test_samples/smoke/legacy_extimage_dir/app2sd_migrate.db new file mode 100644 index 0000000..f2f336a Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/legacy_extimage_dir/app2sd_migrate.db differ diff --git a/test/smoke_tests/test_samples/smoke/legacy_extimage_dir/smokeapp28 b/test/smoke_tests/test_samples/smoke/legacy_extimage_dir/smokeapp28 new file mode 100644 index 0000000..7f96369 Binary files /dev/null and b/test/smoke_tests/test_samples/smoke/legacy_extimage_dir/smokeapp28 differ diff --git a/test/smoke_tests/test_samples/smoke/tep1.tep b/test/smoke_tests/test_samples/smoke/tep1.tep new file mode 100644 index 0000000..e0002c8 --- /dev/null +++ b/test/smoke_tests/test_samples/smoke/tep1.tep @@ -0,0 +1 @@ +tep1 diff --git a/test/smoke_tests/test_samples/smoke/tep2.tep b/test/smoke_tests/test_samples/smoke/tep2.tep new file mode 100644 index 0000000..d7786cf --- /dev/null +++ b/test/smoke_tests/test_samples/smoke/tep2.tep @@ -0,0 +1 @@ +tep2 diff --git a/test/smoke_tests/test_samples/tpk-sample-manifest.xml b/test/smoke_tests/test_samples/tpk-sample-manifest.xml new file mode 100644 index 0000000..c661101 --- /dev/null +++ b/test/smoke_tests/test_samples/tpk-sample-manifest.xml @@ -0,0 +1,43 @@ + + + tester + This is default description + This is test description + + + + testapp.png + + + + + + + + + + + + + + + + + + testapp.png + testapp.png + + + http://tizen.org/account/capability/calendar + http://tizen.org/account/capability/photo + + + + http://tizen.org/privilege/appmanager.launch + http://tizen.org/privilege/packagemanager.info + + true + true + true + true + diff --git a/test/smoke_tests/tpk_smoke_utils.cc b/test/smoke_tests/tpk_smoke_utils.cc new file mode 100644 index 0000000..9e2fe21 --- /dev/null +++ b/test/smoke_tests/tpk_smoke_utils.cc @@ -0,0 +1,101 @@ +// Copyright (c) 2017 Samsung Electronics Co., Ltd All Rights Reserved +// Use of this source code is governed by an apache-2.0 license that can be +// found in the LICENSE file. + +#include "smoke_tests/tpk_smoke_utils.h" + +#include + +#include +#include + +#include "tpk/tpk_installer.h" + +namespace ci = common_installer; +namespace st = smoke_test; + +namespace smoke_test { + +const bf::path kSmokePackagesDirectory = + "/usr/share/tpk-installer-ut/test_samples/smoke/"; + +bool ValidatePackage(const std::string& pkgid, + const std::pair& app, + const TestParameters& params) { + return ValidatePackage(pkgid, Apps{ app }, params); +} + +bool ValidateExternalPackage(const std::string& pkgid, + const std::pair& app, + const TestParameters& params) { + return ValidateExternalPackage(pkgid, Apps{ app }, params); +} + +bool ValidateExtendedPackage(const std::string& pkgid, + const std::pair& app, + const TestParameters& params) { + return ValidateExtendedPackage(pkgid, Apps{ app }, params); +} + +TpkBackendInterface::AppQueryInterfacePtr +TpkBackendInterface::CreateQueryInterface() const { + return AppQueryInterfacePtr(new tpk::TpkAppQueryInterface()); +} + +TpkBackendInterface::AppInstallerPtr +TpkBackendInterface::CreateInstaller( + ci::PkgMgrPtr pkgmgr) const { + return AppInstallerPtr(new tpk::TpkInstaller(pkgmgr)); +} + +TpkBackendInterface::AppInstallerPtr +TpkBackendInterface::CreateFailExpectedInstaller( + ci::PkgMgrPtr pkgmgr, int fail_at) const { + return AppInstallerPtr(new FailExpectedTpkInstaller(pkgmgr, fail_at)); +} + +TpkBackendInterface::CommandResult +TpkBackendInterface::InstallWithTEP( + const bf::path& path, const bf::path& tep) const { + const char* argv[] = {"", "-i", path.c_str(), "-u", uid_str_.c_str(), + "-e", tep.c_str()}; + return CallBackend(SIZEOFARRAY(argv), argv); +} + +TpkBackendInterface::CommandResult +TpkBackendInterface::MountInstallWithTEP( + const bf::path& path, const bf::path& tep) const { + const char* argv[] = {"", "-w", path.c_str(), "-u", uid_str_.c_str(), + "-e", tep.c_str()}; + return CallBackend(SIZEOFARRAY(argv), argv); +} + +TpkBackendInterface::CommandResult +TpkBackendInterface::InstallSuccessWithTEP( + const bf::path& path, const bf::path& tep) const { + RequestResult tmp_mode = mode_; + RequestResult &original_mode = const_cast(mode_); + original_mode = RequestResult::NORMAL; + if (InstallWithTEP(path, tep) != BackendInterface::CommandResult::OK) { + LOG(ERROR) << "Failed to install application with tep. Cannot update"; + return BackendInterface::CommandResult::UNKNOWN; + } + original_mode = tmp_mode; + return BackendInterface::CommandResult::OK; +} + +TpkBackendInterface::CommandResult +TpkBackendInterface::MountInstallSuccessWithTEP( + const bf::path& path, const bf::path& tep) const { + RequestResult tmp_mode = mode_; + RequestResult &original_mode = const_cast(mode_); + original_mode = RequestResult::NORMAL; + if (MountInstallWithTEP(path, tep) != BackendInterface::CommandResult::OK) { + LOG(ERROR) << "Failed to mount install application with tep. Cannot update"; + return BackendInterface::CommandResult::UNKNOWN; + } + original_mode = tmp_mode; + return BackendInterface::CommandResult::OK; +} + +} // namespace smoke_test diff --git a/test/smoke_tests/tpk_smoke_utils.h b/test/smoke_tests/tpk_smoke_utils.h new file mode 100644 index 0000000..48a10ee --- /dev/null +++ b/test/smoke_tests/tpk_smoke_utils.h @@ -0,0 +1,197 @@ +// Copyright (c) 2017 Samsung Electronics Co., Ltd All Rights Reserved +// Use of this source code is governed by an apache-2.0 license that can be +// found in the LICENSE file. + +#ifndef SMOKE_TESTS_TPK_SMOKE_UTILS_H_ +#define SMOKE_TESTS_TPK_SMOKE_UTILS_H_ + +#include +#include +#include +#include + +#include +#include +#include + +#include "tpk/tpk_app_query_interface.h" +#include "tpk/tpk_installer.h" + +namespace smoke_test { + +extern const bf::path kSmokePackagesDirectory; + +bool ValidatePackage(const std::string& pkgid, + const std::pair& app, + const TestParameters& params); + +bool ValidateExternalPackage(const std::string& pkgid, + const std::pair& app, + const TestParameters& params); + +bool ValidateExtendedPackage(const std::string& pkgid, + const std::pair& app, + const TestParameters& params); + +class TpkBackendInterface: public BackendInterface { + public: + using BackendInterface::BackendInterface; + CommandResult InstallWithTEP(const bf::path& path, + const bf::path& tep) const; + CommandResult InstallSuccessWithTEP(const bf::path& path, + const bf::path& tep) const; + CommandResult MountInstallWithTEP(const bf::path& path, + const bf::path& tep) const; + CommandResult MountInstallSuccessWithTEP(const bf::path& path, + const bf::path& tep) const; + + AppQueryInterfacePtr CreateQueryInterface() const override; + AppInstallerPtr CreateInstaller( + common_installer::PkgMgrPtr pkgmgr) const override; + AppInstallerPtr CreateFailExpectedInstaller( + common_installer::PkgMgrPtr pkgmgr, int fail_at) const override; +}; + +class TpkSmokeTestHelperRunner : public SmokeTestHelperRunner { + private: + common_installer::Subprocess CreateSubprocess() const { + return common_installer::Subprocess( + "/usr/bin/tpk-installer-ut/smoke-test-helper"); + } +}; + +#ifdef OVERRIDE_STEPS_BLOCK +#undef OVERRIDE_STEPS_BLOCK +#endif +#define OVERRIDE_STEPS_BLOCK(STEPS) \ + void STEPS() override { \ + tpk::TpkInstaller::STEPS(); \ + if (fail_at_ > -1) \ + AddStepAtIndex(fail_at_); \ + else \ + AddStep(); \ + } \ + +class FailExpectedTpkInstaller : public tpk::TpkInstaller { + public: + explicit FailExpectedTpkInstaller( + common_installer::PkgMgrPtr pkgmgr, int fail_at) + : tpk::TpkInstaller(pkgmgr), fail_at_(fail_at) { } + + private: + OVERRIDE_STEPS_BLOCK(InstallSteps) + OVERRIDE_STEPS_BLOCK(UpdateSteps) + OVERRIDE_STEPS_BLOCK(UninstallSteps) + OVERRIDE_STEPS_BLOCK(ReinstallSteps) + OVERRIDE_STEPS_BLOCK(DeltaSteps) + OVERRIDE_STEPS_BLOCK(MoveSteps) + OVERRIDE_STEPS_BLOCK(RecoverySteps) + OVERRIDE_STEPS_BLOCK(MountInstallSteps) + OVERRIDE_STEPS_BLOCK(MountUpdateSteps) + OVERRIDE_STEPS_BLOCK(ManifestDirectInstallSteps) + OVERRIDE_STEPS_BLOCK(ManifestDirectUpdateSteps) + OVERRIDE_STEPS_BLOCK(ManifestPartialInstallSteps) + OVERRIDE_STEPS_BLOCK(ManifestPartialUpdateSteps) + OVERRIDE_STEPS_BLOCK(PartialUninstallSteps) + OVERRIDE_STEPS_BLOCK(ReadonlyUpdateInstallSteps) + OVERRIDE_STEPS_BLOCK(ReadonlyUpdateUninstallSteps) + OVERRIDE_STEPS_BLOCK(DisablePkgSteps) + OVERRIDE_STEPS_BLOCK(EnablePkgSteps) + OVERRIDE_STEPS_BLOCK(MigrateExtImgSteps) + OVERRIDE_STEPS_BLOCK(RecoverDBSteps) + + int fail_at_; +}; + +#ifdef OVERRIDE_STEPS_BLOCK +#undef OVERRIDE_STEPS_BLOCK +#endif +#define OVERRIDE_STEPS_BLOCK(STEPS) \ + void STEPS() override { \ + tpk::TpkInstaller::STEPS(); \ + if (crash_at_ > -1) \ + AddStepAtIndex(crash_at_, type_); \ + else if (step_name_.size()) \ + AddStepAfter(step_name_, type_); \ + else \ + AddStep(type_); \ + } \ + +class CrashTpkInstaller : public tpk::TpkInstaller { + public: + explicit CrashTpkInstaller(common_installer::PkgMgrPtr pkgmgr, int crash_at, + std::string step_name, CrashStepType type) : + tpk::TpkInstaller(pkgmgr), crash_at_(crash_at), + step_name_(step_name), type_(type) {} + + private: + OVERRIDE_STEPS_BLOCK(InstallSteps) + OVERRIDE_STEPS_BLOCK(UpdateSteps) + OVERRIDE_STEPS_BLOCK(UninstallSteps) + OVERRIDE_STEPS_BLOCK(ReinstallSteps) + OVERRIDE_STEPS_BLOCK(DeltaSteps) + OVERRIDE_STEPS_BLOCK(MoveSteps) + OVERRIDE_STEPS_BLOCK(RecoverySteps) + OVERRIDE_STEPS_BLOCK(MountInstallSteps) + OVERRIDE_STEPS_BLOCK(MountUpdateSteps) + OVERRIDE_STEPS_BLOCK(ManifestDirectInstallSteps) + OVERRIDE_STEPS_BLOCK(ManifestDirectUpdateSteps) + OVERRIDE_STEPS_BLOCK(ManifestPartialInstallSteps) + OVERRIDE_STEPS_BLOCK(ManifestPartialUpdateSteps) + OVERRIDE_STEPS_BLOCK(PartialUninstallSteps) + OVERRIDE_STEPS_BLOCK(ReadonlyUpdateInstallSteps) + OVERRIDE_STEPS_BLOCK(ReadonlyUpdateUninstallSteps) + OVERRIDE_STEPS_BLOCK(DisablePkgSteps) + OVERRIDE_STEPS_BLOCK(EnablePkgSteps) + OVERRIDE_STEPS_BLOCK(MigrateExtImgSteps) + OVERRIDE_STEPS_BLOCK(RecoverDBSteps) + + int crash_at_; + std::string step_name_; + CrashStepType type_; +}; + +#ifdef OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS +#undef OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS +#endif +#define OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(STEPS) \ + void STEPS() override { \ + tpk::TpkInstaller::STEPS(); \ + RemoveStep("RunParserPlugin"); \ + } \ + +class TpkInstallerWithoutPasrserPlugins : public tpk::TpkInstaller { + public: + explicit TpkInstallerWithoutPasrserPlugins( + common_installer::PkgMgrPtr pkgmgr) : tpk::TpkInstaller(pkgmgr) { } + + private: + OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(InstallSteps) + OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(UpdateSteps) + OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(UninstallSteps) + OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(ReinstallSteps) + OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(DeltaSteps) + OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(MoveSteps) + OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(MountInstallSteps) + OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(MountUpdateSteps) + OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(ManifestDirectInstallSteps) + OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(ManifestDirectUpdateSteps) + OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(ManifestPartialInstallSteps) + OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(ManifestPartialUpdateSteps) + OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(PartialUninstallSteps) + OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(ReadonlyUpdateInstallSteps) + OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(ReadonlyUpdateUninstallSteps) + OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(DisablePkgSteps) + OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(EnablePkgSteps) + OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(MigrateExtImgSteps) + OVERRIDE_STEPS_BLOCK_WITHOUT_PARSER_PLUGINS(RecoverDBSteps) + void RecoverySteps() override { + tpk::TpkInstaller::RecoverySteps(); + RemoveStep("RecoverParserPlugin"); + } +}; + +} // namespace smoke_test + + +#endif // SMOKE_TESTS_TPK_SMOKE_UTILS_H_