From 0dce72b365cea4f9be0f412ca198924d5e707d2d Mon Sep 17 00:00:00 2001 From: w30042960 Date: Wed, 17 Jan 2024 21:08:19 +0800 Subject: [PATCH] add UT Signed-off-by: w30042960 --- .../spkclient/src/dspeaker_client_test.cpp | 2 +- .../managersink/src/daudio_sink_dev_test.cpp | 14 +++ .../src/daudio_sink_manager_test.cpp | 103 ++++++++++++++++++ 3 files changed, 118 insertions(+), 1 deletion(-) diff --git a/services/audioclient/test/unittest/spkclient/src/dspeaker_client_test.cpp b/services/audioclient/test/unittest/spkclient/src/dspeaker_client_test.cpp index e0a128fb..18804a94 100644 --- a/services/audioclient/test/unittest/spkclient/src/dspeaker_client_test.cpp +++ b/services/audioclient/test/unittest/spkclient/src/dspeaker_client_test.cpp @@ -106,7 +106,7 @@ HWTEST_F(DSpeakerClientTest, SetUp_001, TestSize.Level1) EXPECT_EQ(ERR_DH_AUDIO_NULLPTR, speakerClient_->SetUp(audioParam)); EXPECT_EQ(DH_SUCCESS, speakerClient_->Release()); speakerClient_->clientStatus_ = AudioStatus::STATUS_READY; - EXPECT_EQ(ERR_DH_AUDIO_CLIENT_RENDER_RELEASE_FAILED, speakerClient_->Release()); + EXPECT_EQ(DH_SUCCESS, speakerClient_->Release()); } /** diff --git a/services/audiomanager/test/unittest/managersink/src/daudio_sink_dev_test.cpp b/services/audiomanager/test/unittest/managersink/src/daudio_sink_dev_test.cpp index b55b93d8..2a1bfd3e 100644 --- a/services/audiomanager/test/unittest/managersink/src/daudio_sink_dev_test.cpp +++ b/services/audiomanager/test/unittest/managersink/src/daudio_sink_dev_test.cpp @@ -398,5 +398,19 @@ HWTEST_F(DAudioSinkDevTest, SendAudioEventToRemote_002, TestSize.Level1) sinkDev_->spkClientMap_.insert(std::make_pair(DEFAULT_RENDER_ID, spkClient)); EXPECT_EQ(ERR_DH_AUDIO_NULLPTR, sinkDev_->SendAudioEventToRemote(event)); } + +/** + * @tc.name: PauseDistributedHardware_001 + * @tc.desc: Verify the PauseDistributedHardware function. + * @tc.type: FUNC + * @tc.require: AR000H0E5F + */ +HWTEST_F(DAudioSinkDevTest, PauseDistributedHardware_001, TestSize.Level1) +{ + std::string networkId = "networkId"; + EXPECT_EQ(ERR_DH_AUDIO_NULLPTR, sinkDev_->PauseDistributedHardware(networkId)); + EXPECT_EQ(ERR_DH_AUDIO_NULLPTR, sinkDev_->ResumeDistributedHardware(networkId)); + EXPECT_EQ(DH_SUCCESS, sinkDev_->StopDistributedHardware(networkId)); +} } // DistributedHardware } // OHOS diff --git a/services/audiomanager/test/unittest/managersink/src/daudio_sink_manager_test.cpp b/services/audiomanager/test/unittest/managersink/src/daudio_sink_manager_test.cpp index cd2d833b..a1715fbc 100644 --- a/services/audiomanager/test/unittest/managersink/src/daudio_sink_manager_test.cpp +++ b/services/audiomanager/test/unittest/managersink/src/daudio_sink_manager_test.cpp @@ -20,6 +20,7 @@ #include "if_system_ability_manager.h" #include "iservice_registry.h" #include "daudio_sink_ipc_callback_proxy.h" +#include "daudio_sink_load_callback.h" using namespace testing::ext; @@ -70,6 +71,30 @@ HWTEST_F(DAudioSinkManagerTest, DAudioNotify_001, TestSize.Level1) const std::string eventContent = "eventContent"; EXPECT_EQ(ERR_DH_AUDIO_NULLPTR, daudioSinkManager.DAudioNotify(devId, dhId, eventType, eventContent)); + auto samgr = SystemAbilityManagerClient::GetInstance().GetSystemAbilityManager(); + auto remoteObject = samgr->GetSystemAbility(DISTRIBUTED_HARDWARE_AUDIO_SOURCE_SA_ID, devId); + sptr remoteSvrProxy = iface_cast(remoteObject); + daudioSinkManager.sourceServiceMap_[devId] = remoteSvrProxy; + EXPECT_EQ(ERR_DH_AUDIO_NULLPTR, daudioSinkManager.DAudioNotify(devId, dhId, eventType, eventContent)); +} + +/** + * @tc.name: CreateAudioDevice_001 + * @tc.desc: Verify the CreateAudioDevice function. + * @tc.type: FUNC + * @tc.require: AR000H0E5F + */ +HWTEST_F(DAudioSinkManagerTest, CreateAudioDevice_001, TestSize.Level1) +{ + std::string devId = "devId"; + EXPECT_EQ(ERR_DH_AUDIO_FAILED, daudioSinkManager.CreateAudioDevice(devId)); + daudioSinkManager.audioDevMap_.emplace(devId, nullptr); + EXPECT_EQ(ERR_DH_AUDIO_FAILED, daudioSinkManager.CreateAudioDevice(devId)); + daudioSinkManager.channelState_ = ChannelState::SPK_CONTROL_OPENED; + EXPECT_EQ(ERR_DH_AUDIO_FAILED, daudioSinkManager.CreateAudioDevice(devId)); + daudioSinkManager.ClearAudioDev(devId); + daudioSinkManager.channelState_ = ChannelState::MIC_CONTROL_OPENED; + EXPECT_EQ(ERR_DH_AUDIO_FAILED, daudioSinkManager.CreateAudioDevice(devId)); } /** @@ -95,9 +120,87 @@ HWTEST_F(DAudioSinkManagerTest, LoadAVSenderEngineProvider_001, TestSize.Level1) HWTEST_F(DAudioSinkManagerTest, PauseDistributedHardware_001, TestSize.Level1) { std::string networkId = "networkId"; + std::string devId = "devId"; + std::string params = "params"; + auto samgr = SystemAbilityManagerClient::GetInstance().GetSystemAbilityManager(); + if (samgr == nullptr) { + return; + } + sptr loadCallback(new DAudioSinkLoadCallback(params)); + samgr->LoadSystemAbility(DISTRIBUTED_HARDWARE_AUDIO_SINK_SA_ID, loadCallback); + sptr remoteObject = samgr->GetSystemAbility(DISTRIBUTED_HARDWARE_AUDIO_SINK_SA_ID); + if (remoteObject == nullptr) { + return; + } + sptr dAudioSinkIpcCallbackProxy(new DAudioSinkIpcCallbackProxy(remoteObject)); + auto dev = std::make_shared(networkId, dAudioSinkIpcCallbackProxy); + daudioSinkManager.audioDevMap_.emplace(devId, dev); EXPECT_EQ(DH_SUCCESS, daudioSinkManager.PauseDistributedHardware(networkId)); EXPECT_EQ(DH_SUCCESS, daudioSinkManager.ResumeDistributedHardware(networkId)); EXPECT_EQ(DH_SUCCESS, daudioSinkManager.StopDistributedHardware(networkId)); } + +/** + * @tc.name: VerifySecurityLevel_001 + * @tc.desc: Verify the VerifySecurityLevel function. + * @tc.type: FUNC + * @tc.require: AR000H0E5F + */ +HWTEST_F(DAudioSinkManagerTest, VerifySecurityLevel_001, TestSize.Level1) +{ + std::string devId = "devId"; + std::string networkId = "networkId"; + std::string params = "params"; + auto samgr = SystemAbilityManagerClient::GetInstance().GetSystemAbilityManager(); + if (samgr == nullptr) { + return; + } + sptr loadCallback(new DAudioSinkLoadCallback(params)); + samgr->LoadSystemAbility(DISTRIBUTED_HARDWARE_AUDIO_SINK_SA_ID, loadCallback); + sptr remoteObject = samgr->GetSystemAbility(DISTRIBUTED_HARDWARE_AUDIO_SINK_SA_ID); + if (remoteObject == nullptr) { + return; + } + sptr dAudioSinkIpcCallbackProxy(new DAudioSinkIpcCallbackProxy(remoteObject)); + daudioSinkManager.ipcSinkCallback_ = dAudioSinkIpcCallbackProxy; + EXPECT_NE(DH_SUCCESS, daudioSinkManager.VerifySecurityLevel(devId)); + daudioSinkManager.isSensitive_ = true; + daudioSinkManager.isSameAccount_ = false; + EXPECT_NE(DH_SUCCESS, daudioSinkManager.VerifySecurityLevel(devId)); + daudioSinkManager.isSameAccount_ = true; + EXPECT_NE(DH_SUCCESS, daudioSinkManager.VerifySecurityLevel(devId)); +} + +/** + * @tc.name: GetDeviceSecurityLevel_001 + * @tc.desc: Verify the GetDeviceSecurityLevel function. + * @tc.type: FUNC + * @tc.require: AR000H0E5F + */ +HWTEST_F(DAudioSinkManagerTest, GetDeviceSecurityLevel_001, TestSize.Level1) +{ + std::string udid = "udid"; + std::string content = ""; + int32_t ret = -1; + daudioSinkManager.SetChannelState(content); + content = "ohos.dhardware.daudio.dmic"; + daudioSinkManager.SetChannelState(content); + content = "ohos.dhardware.daudio.dspeaker"; + daudioSinkManager.SetChannelState(content); + EXPECT_EQ(ret, daudioSinkManager.GetDeviceSecurityLevel(udid)); +} + +/** + * @tc.name: CheckDeviceSecurityLevel_001 + * @tc.desc: Verify the CheckDeviceSecurityLevel function. + * @tc.type: FUNC + * @tc.require: AR000H0E5F + */ +HWTEST_F(DAudioSinkManagerTest, CheckDeviceSecurityLevel_001, TestSize.Level1) +{ + std::string srcDeviceId = "srcDeviceId"; + std::string dstDeviceId = "dstDeviceId"; + EXPECT_EQ(false, daudioSinkManager.CheckDeviceSecurityLevel(srcDeviceId, dstDeviceId)); +} } // DistributedHardware } // OHOS -- Gitee