diff --git a/tests/unittests/backup_api/backup_impl/svc_death_recipient_test.cpp b/tests/unittests/backup_api/backup_impl/svc_death_recipient_test.cpp index 27cca4655154b53c066e9dc8ccab63200fb0f831..a1b1e58ebd9ceeaf5daa3836f47ac522127932b5 100644 --- a/tests/unittests/backup_api/backup_impl/svc_death_recipient_test.cpp +++ b/tests/unittests/backup_api/backup_impl/svc_death_recipient_test.cpp @@ -13,7 +13,9 @@ * limitations under the License. */ +#include #include + #include #include "iservice_registry.h" @@ -25,6 +27,8 @@ using namespace std; using namespace testing; const string FILE_NAME = "temp.json"; +static condition_variable g_cv; +static atomic g_serviceDie = false; class SvcDeathRecipientTest : public testing::Test { public: @@ -32,10 +36,15 @@ public: static void TearDownTestCase() {}; void SetUp() override {}; void TearDown() override {}; + +public: + mutex lock_; }; static void CallBack(const wptr &obj) { + g_serviceDie.store(true); + g_cv.notify_all(); GTEST_LOG_(INFO) << "SvcSessionManagerTest-CallBack success"; } @@ -57,6 +66,9 @@ HWTEST_F(SvcDeathRecipientTest, SUB_backup_sa_deathecipient_OnRemoteDied_0100, t deathRecipient->OnRemoteDied(remote); remote = nullptr; deathRecipient = nullptr; + unique_lock lk(lock_); + g_cv.wait(lk, [&] { return true; }); + ASSERT_TRUE(g_serviceDie); GTEST_LOG_(INFO) << "SvcSessionManagerTest-end SUB_backup_sa_deathecipient_OnRemoteDied_0100"; } } // namespace OHOS::FileManagement::Backup \ No newline at end of file diff --git a/tests/unittests/backup_utils/b_filesystem/b_file_test.cpp b/tests/unittests/backup_utils/b_filesystem/b_file_test.cpp index 22b7c54bf7bcad67eb5f2c3e11c0152e1654b910..813e72c0cb6d86ca7e5dc59893438d0d0f4b8224 100644 --- a/tests/unittests/backup_utils/b_filesystem/b_file_test.cpp +++ b/tests/unittests/backup_utils/b_filesystem/b_file_test.cpp @@ -93,9 +93,11 @@ HWTEST_F(BFileTest, b_file_SendFile_0100, testing::ext::TestSize.Level1) TestManager tm(__func__); const auto [filePath, content] = GetTestFile(tm); TestManager tmInFile("b_file_GetFd_0100"); - string fileInPath = tmInFile.GetRootDirCurTest().append("1.tar"); - BFile::SendFile(UniqueFd(open(filePath.data(), O_RDWR)), - UniqueFd(open(fileInPath.data(), O_RDWR | O_CREAT, S_IRWXU))); + string fileOutPath = tmInFile.GetRootDirCurTest().append("1.tar"); + BFile::SendFile(UniqueFd(open(fileOutPath.data(), O_RDWR)), + UniqueFd(open(filePath.data(), O_RDWR | O_CREAT, S_IRWXU))); + string contentTmp = BFile::ReadFile(UniqueFd(open(fileOutPath.c_str(), O_RDONLY))).get(); + EXPECT_EQ(contentTmp, content); } catch (const exception &e) { GTEST_LOG_(INFO) << "BFileTest-an exception occurred by SendFile."; e.what();