diff --git a/frameworks/native/player/test/unittest/src/player_unit_test.cpp b/frameworks/native/player/test/unittest/src/player_unit_test.cpp index e8a75c839c16c38fac3a2a23a43abfd621849c04..8315d4876666868911d5aeda30a5a5628712d792 100644 --- a/frameworks/native/player/test/unittest/src/player_unit_test.cpp +++ b/frameworks/native/player/test/unittest/src/player_unit_test.cpp @@ -4741,5 +4741,320 @@ HWTEST_F(PlayerUnitTest, Player_EnableReportMediaProgress_004, TestSize.Level0) ASSERT_EQ(MSERR_OK, player_->EnableReportMediaProgress(true)); EXPECT_EQ(MSERR_OK, player_->Play()); } + +/** + * @tc.name : Test SetReopenFd API + * @tc.number: Player_SetReopenFd_001 + * @tc.desc : Test Player SetReopenFd API before playing + */ +HWTEST_F(PlayerUnitTest, Player_SetReopenFd_001, TestSize.Level0) +{ + int32_t fd = 50; + ASSERT_EQ(MSERR_OK, player_->SetSource(VIDEO_FILE1)); + sptr videoSurface = player_->GetVideoSurface(); + ASSERT_NE(nullptr, videoSurface); + EXPECT_EQ(MSERR_OK, player_->SetVideoSurface(videoSurface)); + EXPECT_EQ(MSERR_OK, player_->Prepare()); + ASSERT_EQ(MSERR_OK, player_->SetReopenFd(fd)); + EXPECT_EQ(MSERR_OK, player_->Play()); +} + +/** + * @tc.name : Test SetReopenFd API + * @tc.number: Player_SetReopenFd_002 + * @tc.desc : Test Player SetReopenFd API during playing + * */ +HWTEST_F(PlayerUnitTest, Player_SetReopenFd_002, TestSize.Level0) +{ + int32_t fd = 50; + ASSERT_EQ(MSERR_OK, player_->SetSource(VIDEO_FILE1)); + sptr videoSurface = player_->GetVideoSurface(); + ASSERT_NE(nullptr, videoSurface); + EXPECT_EQ(MSERR_OK, player_->SetVideoSurface(videoSurface)); + EXPECT_EQ(MSERR_OK, player_->Prepare()); + EXPECT_EQ(MSERR_OK, player_->Play()); + ASSERT_EQ(MSERR_OK, player_->SetReopenFd(fd)); + EXPECT_EQ(MSERR_OK, player_->Pause()); + EXPECT_EQ(MSERR_OK, player_->Play()); +} + +/** + * @tc.name : Test SetReopenFd API + * @tc.number: Player_SetReopenFd_003 + * @tc.desc : Test Player SetReopenFd API when seek in playing + * */ +HWTEST_F(PlayerUnitTest, Player_SetReopenFd_003, TestSize.Level0) +{ + int32_t duration = 0; + int32_t fd = 50; + ASSERT_EQ(MSERR_OK, player_->SetSource(VIDEO_FILE1)); + sptr videoSurface = player_->GetVideoSurface(); + ASSERT_NE(nullptr, videoSurface); + EXPECT_EQ(MSERR_OK, player_->SetVideoSurface(videoSurface)); + EXPECT_EQ(MSERR_OK, player_->Prepare()); + EXPECT_EQ(MSERR_OK, player_->Play()); + EXPECT_EQ(MSERR_OK, player_->GetDuration(duration)); + EXPECT_EQ(MSERR_OK, player_->Pause()); + EXPECT_EQ(MSERR_OK, player_->Seek(duration, SEEK_NEXT_SYNC)); + ASSERT_EQ(MSERR_OK, player_->SetReopenFd(fd)); + EXPECT_EQ(MSERR_OK, player_->Play()); +} + +/** + * @tc.name : Test SetReopenFd API + * @tc.number: Player_SetReopenFd_004 + * @tc.desc : Test Player SetReopenFd API when playing is looping + * */ +HWTEST_F(PlayerUnitTest, Player_SetReopenFd_004, TestSize.Level0) +{ + int32_t fd = 50; + ASSERT_EQ(MSERR_OK, player_->SetSource(VIDEO_FILE1)); + sptr videoSurface = player_->GetVideoSurface(); + ASSERT_NE(nullptr, videoSurface); + EXPECT_EQ(MSERR_OK, player_->SetVideoSurface(videoSurface)); + EXPECT_EQ(MSERR_OK, player_->Prepare()); + EXPECT_EQ(MSERR_OK, player_->SetLooping(true)); + EXPECT_EQ(true, player_->IsLooping()); + ASSERT_EQ(MSERR_OK, player_->SetReopenFd(fd)); + EXPECT_EQ(MSERR_OK, player_->Play()); +} + +/** + * @tc.name : Test SetReopenFd API + * @tc.number: Player_SetReopenFd_005 + * @tc.desc : Test Player SetReopenFd API with an invalid fd + * */ +HWTEST_F(PlayerUnitTest, Player_SetReopenFd_004, TestSize.Level0) +{ + int32_t fd = -1; + ASSERT_EQ(MSERR_OK, player_->SetSource(VIDEO_FILE1)); + sptr videoSurface = player_->GetVideoSurface(); + ASSERT_NE(nullptr, videoSurface); + EXPECT_EQ(MSERR_OK, player_->SetVideoSurface(videoSurface)); + EXPECT_EQ(MSERR_OK, player_->Prepare()); + ASSERT_EQ(MSERR_INVALID_VAL, player_->SetReopenFd(fd)); +} + + +/** + * @tc.name : Test EnableCameraPostprocessing API + * @tc.number: Player_EnableCameraPostprocessing_001 + * @tc.desc : Test Player EnableCameraPostprocessing API before playing + */ +HWTEST_F(PlayerUnitTest, Player_EnableCameraPostprocessing_001, TestSize.Level0) +{ + ASSERT_EQ(MSERR_OK, player_->SetSource(VIDEO_FILE1)); + sptr videoSurface = player_->GetVideoSurface(); + ASSERT_NE(nullptr, videoSurface); + EXPECT_EQ(MSERR_OK, player_->SetVideoSurface(videoSurface)); + EXPECT_EQ(MSERR_OK, player_->Prepare()); + ASSERT_EQ(MSERR_OK, player_->EnableCameraPostprocessing()); + EXPECT_EQ(MSERR_OK, player_->Play()); +} + +/** + * @tc.name : Test EnableCameraPostprocessing API + * @tc.number: Player_EnableCameraPostprocessing_002 + * @tc.desc : Test Player EnableCameraPostprocessing API during playing + * */ +HWTEST_F(PlayerUnitTest, Player_EnableCameraPostprocessing_002, TestSize.Level0) +{ + ASSERT_EQ(MSERR_OK, player_->SetSource(VIDEO_FILE1)); + sptr videoSurface = player_->GetVideoSurface(); + ASSERT_NE(nullptr, videoSurface); + EXPECT_EQ(MSERR_OK, player_->SetVideoSurface(videoSurface)); + EXPECT_EQ(MSERR_OK, player_->Prepare()); + EXPECT_EQ(MSERR_OK, player_->Play()); + ASSERT_EQ(MSERR_OK, player_->EnableCameraPostprocessing()); + EXPECT_EQ(MSERR_OK, player_->Pause()); + EXPECT_EQ(MSERR_OK, player_->Play()); +} + +/** + * @tc.name : Test EnableCameraPostprocessing API + * @tc.number: Player_EnableCameraPostprocessing_003 + * @tc.desc : Test Player EnableCameraPostprocessing API when seek in playing + * */ +HWTEST_F(PlayerUnitTest, Player_EnableCameraPostprocessing_003, TestSize.Level0) +{ + int32_t duration = 0; + ASSERT_EQ(MSERR_OK, player_->SetSource(VIDEO_FILE1)); + sptr videoSurface = player_->GetVideoSurface(); + ASSERT_NE(nullptr, videoSurface); + EXPECT_EQ(MSERR_OK, player_->SetVideoSurface(videoSurface)); + EXPECT_EQ(MSERR_OK, player_->Prepare()); + EXPECT_EQ(MSERR_OK, player_->Play()); + EXPECT_EQ(MSERR_OK, player_->GetDuration(duration)); + EXPECT_EQ(MSERR_OK, player_->Pause()); + EXPECT_EQ(MSERR_OK, player_->Seek(duration, SEEK_NEXT_SYNC)); + ASSERT_EQ(MSERR_OK, player_->EnableCameraPostprocessing()); + EXPECT_EQ(MSERR_OK, player_->Play()); +} + +/** + * @tc.name : Test EnableCameraPostprocessing API + * @tc.number: Player_EnableCameraPostprocessing_004 + * @tc.desc : Test Player EnableCameraPostprocessing API when playing is looping + * */ +HWTEST_F(PlayerUnitTest, Player_EnableCameraPostprocessing_004, TestSize.Level0) +{ + ASSERT_EQ(MSERR_OK, player_->SetSource(VIDEO_FILE1)); + sptr videoSurface = player_->GetVideoSurface(); + ASSERT_NE(nullptr, videoSurface); + EXPECT_EQ(MSERR_OK, player_->SetVideoSurface(videoSurface)); + EXPECT_EQ(MSERR_OK, player_->Prepare()); + EXPECT_EQ(MSERR_OK, player_->SetLooping(true)); + EXPECT_EQ(true, player_->IsLooping()); + ASSERT_EQ(MSERR_OK, player_->EnableCameraPostprocessing()); + EXPECT_EQ(MSERR_OK, player_->Play()); +} + +/** + * @tc.name : Test SetCameraPostprocessing API + * @tc.number: Player_SetCameraPostprocessing_001 + * @tc.desc : Test Player SetCameraPostprocessing API before playing + */ +HWTEST_F(PlayerUnitTest, Player_SetCameraPostprocessing_001, TestSize.Level0) +{ + ASSERT_EQ(MSERR_OK, player_->SetSource(VIDEO_FILE1)); + sptr videoSurface = player_->GetVideoSurface(); + ASSERT_NE(nullptr, videoSurface); + EXPECT_EQ(MSERR_OK, player_->SetVideoSurface(videoSurface)); + EXPECT_EQ(MSERR_OK, player_->Prepare()); + ASSERT_EQ(MSERR_OK, player_->SetCameraPostprocessing(true)); + EXPECT_EQ(MSERR_OK, player_->Play()); +} + +/** + * @tc.name : Test SetCameraPostprocessing API + * @tc.number: Player_SetCameraPostprocessing_002 + * @tc.desc : Test Player SetCameraPostprocessing API during playing + * */ +HWTEST_F(PlayerUnitTest, Player_SetCameraPostprocessing_002, TestSize.Level0) +{ + ASSERT_EQ(MSERR_OK, player_->SetSource(VIDEO_FILE1)); + sptr videoSurface = player_->GetVideoSurface(); + ASSERT_NE(nullptr, videoSurface); + EXPECT_EQ(MSERR_OK, player_->SetVideoSurface(videoSurface)); + EXPECT_EQ(MSERR_OK, player_->Prepare()); + EXPECT_EQ(MSERR_OK, player_->Play()); + ASSERT_EQ(MSERR_OK, player_->SetCameraPostprocessing(true)); + EXPECT_EQ(MSERR_OK, player_->Pause()); + EXPECT_EQ(MSERR_OK, player_->Play()); + ASSERT_EQ(MSERR_OK, player_->SetCameraPostprocessing(false)); +} + +/** + * @tc.name : Test SetCameraPostprocessing API + * @tc.number: Player_SetCameraPostprocessing_003 + * @tc.desc : Test Player SetCameraPostprocessing API when seek in playing + * */ +HWTEST_F(PlayerUnitTest, Player_SetCameraPostprocessing_003, TestSize.Level0) +{ + int32_t duration = 0; + ASSERT_EQ(MSERR_OK, player_->SetSource(VIDEO_FILE1)); + sptr videoSurface = player_->GetVideoSurface(); + ASSERT_NE(nullptr, videoSurface); + EXPECT_EQ(MSERR_OK, player_->SetVideoSurface(videoSurface)); + EXPECT_EQ(MSERR_OK, player_->Prepare()); + EXPECT_EQ(MSERR_OK, player_->Play()); + EXPECT_EQ(MSERR_OK, player_->GetDuration(duration)); + EXPECT_EQ(MSERR_OK, player_->Pause()); + EXPECT_EQ(MSERR_OK, player_->Seek(duration, SEEK_NEXT_SYNC)); + ASSERT_EQ(MSERR_OK, player_->SetCameraPostprocessing(true)); + EXPECT_EQ(MSERR_OK, player_->Play()); +} + +/** + * @tc.name : Test SetCameraPostprocessing API + * @tc.number: Player_SetCameraPostprocessing_004 + * @tc.desc : Test Player SetCameraPostprocessing API when playing is looping + * */ +HWTEST_F(PlayerUnitTest, Player_SetCameraPostprocessing_004, TestSize.Level0) +{ + ASSERT_EQ(MSERR_OK, player_->SetSource(VIDEO_FILE1)); + sptr videoSurface = player_->GetVideoSurface(); + ASSERT_NE(nullptr, videoSurface); + EXPECT_EQ(MSERR_OK, player_->SetVideoSurface(videoSurface)); + EXPECT_EQ(MSERR_OK, player_->Prepare()); + EXPECT_EQ(MSERR_OK, player_->SetLooping(true)); + EXPECT_EQ(true, player_->IsLooping()); + ASSERT_EQ(MSERR_OK, player_->SetCameraPostprocessing(true)); + EXPECT_EQ(MSERR_OK, player_->Play()); +} + +/** + * @tc.name : Test ForceLoadVideo API + * @tc.number: Player_ForceLoadVideo_001 + * @tc.desc : Test Player ForceLoadVideo API before playing + */ +HWTEST_F(PlayerUnitTest, Player_ForceLoadVideo_001, TestSize.Level0) +{ + ASSERT_EQ(MSERR_OK, player_->SetSource(VIDEO_FILE1)); + sptr videoSurface = player_->GetVideoSurface(); + ASSERT_NE(nullptr, videoSurface); + EXPECT_EQ(MSERR_OK, player_->SetVideoSurface(videoSurface)); + EXPECT_EQ(MSERR_OK, player_->Prepare()); + ASSERT_EQ(MSERR_OK, player_->ForceLoadVideo(true)); + EXPECT_EQ(MSERR_OK, player_->Play()); +} + +/** + * @tc.name : Test ForceLoadVideo API + * @tc.number: Player_ForceLoadVideo_002 + * @tc.desc : Test Player ForceLoadVideo API during playing + * */ +HWTEST_F(PlayerUnitTest, Player_ForceLoadVideo_002, TestSize.Level0) +{ + ASSERT_EQ(MSERR_OK, player_->SetSource(VIDEO_FILE1)); + sptr videoSurface = player_->GetVideoSurface(); + ASSERT_NE(nullptr, videoSurface); + EXPECT_EQ(MSERR_OK, player_->SetVideoSurface(videoSurface)); + EXPECT_EQ(MSERR_OK, player_->Prepare()); + EXPECT_EQ(MSERR_OK, player_->Play()); + ASSERT_EQ(MSERR_OK, player_->ForceLoadVideo(true)); + EXPECT_EQ(MSERR_OK, player_->Pause()); + EXPECT_EQ(MSERR_OK, player_->Play()); + ASSERT_EQ(MSERR_OK, player_->ForceLoadVideo(false)); +} + +/** + * @tc.name : Test ForceLoadVideo API + * @tc.number: Player_ForceLoadVideo_003 + * @tc.desc : Test Player ForceLoadVideo API when seek in playing + * */ +HWTEST_F(PlayerUnitTest, Player_ForceLoadVideo_003, TestSize.Level0) +{ + int32_t duration = 0; + ASSERT_EQ(MSERR_OK, player_->SetSource(VIDEO_FILE1)); + sptr videoSurface = player_->GetVideoSurface(); + ASSERT_NE(nullptr, videoSurface); + EXPECT_EQ(MSERR_OK, player_->SetVideoSurface(videoSurface)); + EXPECT_EQ(MSERR_OK, player_->Prepare()); + EXPECT_EQ(MSERR_OK, player_->Play()); + EXPECT_EQ(MSERR_OK, player_->GetDuration(duration)); + EXPECT_EQ(MSERR_OK, player_->Pause()); + EXPECT_EQ(MSERR_OK, player_->Seek(duration, SEEK_NEXT_SYNC)); + ASSERT_EQ(MSERR_OK, player_->ForceLoadVideo(true)); + EXPECT_EQ(MSERR_OK, player_->Play()); +} + +/** + * @tc.name : Test ForceLoadVideo API + * @tc.number: Player_ForceLoadVideo_004 + * @tc.desc : Test Player ForceLoadVideo API when playing is looping + * */ +HWTEST_F(PlayerUnitTest, Player_ForceLoadVideo_004, TestSize.Level0) +{ + ASSERT_EQ(MSERR_OK, player_->SetSource(VIDEO_FILE1)); + sptr videoSurface = player_->GetVideoSurface(); + ASSERT_NE(nullptr, videoSurface); + EXPECT_EQ(MSERR_OK, player_->SetVideoSurface(videoSurface)); + EXPECT_EQ(MSERR_OK, player_->Prepare()); + EXPECT_EQ(MSERR_OK, player_->SetLooping(true)); + EXPECT_EQ(true, player_->IsLooping()); + ASSERT_EQ(MSERR_OK, player_->ForceLoadVideo(true)); + EXPECT_EQ(MSERR_OK, player_->Play()); +} } // namespace Media } // namespace OHOS