diff --git a/services/audioclient/test/unittest/micclient/src/dmic_client_test.cpp b/services/audioclient/test/unittest/micclient/src/dmic_client_test.cpp index 09a15faed963dab3e540e367e4c979384eced950..3be1d2607accda3346d27d66534ca80d3df53584 100644 --- a/services/audioclient/test/unittest/micclient/src/dmic_client_test.cpp +++ b/services/audioclient/test/unittest/micclient/src/dmic_client_test.cpp @@ -124,6 +124,8 @@ HWTEST_F(DMicClientTest, StartCapture001, TestSize.Level1) }; micClient_->audioCapturer_ = AudioStandard::AudioCapturer::Create(capturerOptions); micClient_->micTrans_ = std::make_shared(); + micClient_->clientStatus_ = AudioStatus::STATUS_STOP; + EXPECT_EQ(ERR_DH_AUDIO_SA_STATUS_ERR, micClient_->StartCapture()); micClient_->clientStatus_ = AudioStatus::STATUS_READY; EXPECT_NE(nullptr, micClient_->audioCapturer_); EXPECT_EQ(DH_SUCCESS, micClient_->StartCapture()); @@ -193,6 +195,12 @@ HWTEST_F(DMicClientTest, Release001, TestSize.Level1) micClient_->audioCapturer_ = AudioStandard::AudioCapturer::Create(capturerOptions); EXPECT_NE(nullptr, micClient_->audioCapturer_); EXPECT_EQ(DH_SUCCESS, micClient_->Release()); + micClient_->audioCapturer_ = nullptr; + micClient_->micTrans_ = std::make_shared(); + micClient_->clientStatus_ = AudioStatus::STATUS_STOP; + EXPECT_EQ(ERR_DH_AUDIO_FAILED, micClient_->Release()); + micClient_->clientStatus_ = AudioStatus::STATUS_IDLE; + EXPECT_EQ(ERR_DH_AUDIO_SA_STATUS_ERR, micClient_->Release()); } /** 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 18804a94dc7de7c64fee71df109c0d436d794cf7..cfbd8d54c5a18482a4db16369ad001317de4c7dc 100644 --- a/services/audioclient/test/unittest/spkclient/src/dspeaker_client_test.cpp +++ b/services/audioclient/test/unittest/spkclient/src/dspeaker_client_test.cpp @@ -185,6 +185,11 @@ HWTEST_F(DSpeakerClientTest, OnDecodeTransDataDone001, TestSize.Level1) */ HWTEST_F(DSpeakerClientTest, Release001, TestSize.Level1) { + speakerClient_->speakerTrans_ = std::make_shared(); + std::string args = "{\"ChangeType\":\"restart\"}"; + speakerClient_->PlayStatusChange(args); + args = "{\"ChangeType\":\"pause\"}"; + speakerClient_->PlayStatusChange(args); speakerClient_->Pause(); EXPECT_EQ(ERR_DH_AUDIO_SA_STATUS_ERR, speakerClient_->Release()); } @@ -215,6 +220,9 @@ HWTEST_F(DSpeakerClientTest, SendMessage_001, TestSize.Level1) { std::string content = "content"; std::string dstDevId = "dstDevId"; + audioParam_.renderOpts.renderFlags = MMAP_MODE; + speakerClient_->speakerTrans_ = std::make_shared(); + speakerClient_->Pause(); EXPECT_EQ(ERR_DH_AUDIO_NULLPTR, speakerClient_->SendMessage(EVENT_UNKNOWN, content, dstDevId)); EXPECT_EQ(DH_SUCCESS, speakerClient_->SendMessage(NOTIFY_OPEN_SPEAKER_RESULT, content, dstDevId)); speakerClient_->speakerTrans_ = nullptr; diff --git a/services/audiomanager/test/unittest/servicesink/src/daudio_sink_service_test.cpp b/services/audiomanager/test/unittest/servicesink/src/daudio_sink_service_test.cpp index 37d9af0a13e8d2c4d8655e86a4609bc51a7043ca..d65a408a789c894d1f677178dc7cd7f41aeed90a 100644 --- a/services/audiomanager/test/unittest/servicesink/src/daudio_sink_service_test.cpp +++ b/services/audiomanager/test/unittest/servicesink/src/daudio_sink_service_test.cpp @@ -122,5 +122,18 @@ HWTEST_F(DAudioSinkServiceTest, UnsubscribeLocalHardware_001, TestSize.Level1) EXPECT_EQ(DH_SUCCESS, sinkSrv_->UnsubscribeLocalHardware(dhId)); sinkSrv_->ReleaseSink(); } + +/** + * @tc.name: Dump_001 + * @tc.desc: Verify the Dump function. + * @tc.type: FUNC + * @tc.require: AR000H0E5F + */ +HWTEST_F(DAudioSinkServiceTest, Dump_001, TestSize.Level1) +{ + int32_t fd = 1; + std::vector args; + EXPECT_EQ(DH_SUCCESS, sinkSrv_->Dump(fd, args)); +} } // DistributedHardware } // OHOS diff --git a/services/audiomanager/test/unittest/servicesource/src/daudio_source_service_test.cpp b/services/audiomanager/test/unittest/servicesource/src/daudio_source_service_test.cpp index 178c5442c1a234887cb4aa3ea04a088c6c45f739..21ff2f13f99fc2ca87956123466026a2d0e7b27b 100644 --- a/services/audiomanager/test/unittest/servicesource/src/daudio_source_service_test.cpp +++ b/services/audiomanager/test/unittest/servicesource/src/daudio_source_service_test.cpp @@ -92,5 +92,18 @@ HWTEST_F(DAudioSourceServiceTest, ConfigDistributedHardware_001, TestSize.Level1 EXPECT_EQ(DH_SUCCESS, sourceSrv_->ConfigDistributedHardware(devId, dhId, key, value)); } + +/** + * @tc.name: Dump_001 + * @tc.desc: Verify the Dump function. + * @tc.type: FUNC + * @tc.require: AR000H0E5F + */ +HWTEST_F(DAudioSourceServiceTest, Dump_001, TestSize.Level1) +{ + int32_t fd = 1; + std::vector args; + EXPECT_EQ(DH_SUCCESS, sourceSrv_->Dump(fd, args)); +} } // DistributedHardware } // OHOS diff --git a/services/audiomanager/test/unittest/sourcedevice/BUILD.gn b/services/audiomanager/test/unittest/sourcedevice/BUILD.gn index 6fafdd8458bf7ced9e32d3cde248fe1fe338643d..24583124fe2c8bec64f02aa27dc904751e7e104d 100644 --- a/services/audiomanager/test/unittest/sourcedevice/BUILD.gn +++ b/services/audiomanager/test/unittest/sourcedevice/BUILD.gn @@ -76,6 +76,7 @@ ohos_unittest("DaudioSourceDevTest") { "distributed_hardware_fwk:distributed_av_sender", "drivers_interface_distributed_audio:libdaudioext_proxy_1.0", "dsoftbus:softbus_client", + "eventhandler:libeventhandler", "ipc:ipc_core", "samgr:samgr_proxy", ] diff --git a/services/audiomanager/test/unittest/sourcedevice/src/daudio_source_dev_test.cpp b/services/audiomanager/test/unittest/sourcedevice/src/daudio_source_dev_test.cpp index e14e6a3c6dc01092104f2c47d277391ad7f56daf..f9101afe9266127c3dbc89b731f1e7bc61f28f66 100644 --- a/services/audiomanager/test/unittest/sourcedevice/src/daudio_source_dev_test.cpp +++ b/services/audiomanager/test/unittest/sourcedevice/src/daudio_source_dev_test.cpp @@ -28,6 +28,12 @@ const std::string DH_ID_SPK = "1"; const std::string DH_ID_UNKNOWN = "0"; const int32_t TASK_QUEUE_LEN = 20; const size_t AUDIO_DATA_CAP = 1; +constexpr uint32_t EVENT_MMAP_SPK_START = 81; +constexpr uint32_t EVENT_MMAP_SPK_STOP = 82; +constexpr uint32_t EVENT_MMAP_MIC_START = 83; +constexpr uint32_t EVENT_MMAP_MIC_STOP = 84; +constexpr uint32_t EVENT_DMIC_CLOSED = 24; +constexpr uint32_t EVENT_OPEN_MIC = 21; void DAudioSourceDevTest::SetUpTestCase(void) {} @@ -969,5 +975,131 @@ HWTEST_F(DAudioSourceDevTest, SendAudioEventToRemote_002, TestSize.Level1) sourceDev_->speaker_ = std::make_shared(DEV_ID, sourceDev_); EXPECT_EQ(ERR_DH_AUDIO_NULLPTR, sourceDev_->SendAudioEventToRemote(event)); } + +/** + * @tc.name: TaskDMicClosed_003 + * @tc.desc: Verify the TaskDMicClosed function. + * @tc.type: FUNC + * @tc.require: AR000H0E5F + */ +HWTEST_F(DAudioSourceDevTest, TaskDMicClosed_003, TestSize.Level1) +{ + std::string args = ""; + sourceDev_->AwakeAudioDev(); + AudioEvent event; + auto eventParam = std::make_shared(event); + auto msgEvent = AppExecFwk::InnerEvent::Get(EVENT_OPEN_MIC, eventParam, 0); + sourceDev_->handler_->ProcessEvent(msgEvent); + sourceDev_->handler_->OpenDSpeakerCallback(msgEvent); + sourceDev_->handler_->CloseDSpeakerCallback(msgEvent); + sourceDev_->handler_->OpenDMicCallback(msgEvent); + sourceDev_->handler_->CloseDMicCallback(msgEvent); + sourceDev_->SleepAudioDev(); + EXPECT_EQ(ERR_DH_AUDIO_SA_PARAM_INVALID, sourceDev_->TaskDMicClosed(args)); +} + +/** + * @tc.name: TaskDMicClosed_004 + * @tc.desc: Verify the TaskDMicClosed function. + * @tc.type: FUNC + * @tc.require: AR000H0E5F + */ +HWTEST_F(DAudioSourceDevTest, TaskDMicClosed_004, TestSize.Level1) +{ + std::string devId = "1"; + int32_t dhId = 1; + std::string args = "{\"dhId\":\"1\"}"; + sourceDev_->AwakeAudioDev(); + AudioEvent event = AudioEvent(MIC_CLOSED, args); + auto eventParam = std::make_shared(event); + auto mic = std::make_shared(devId, sourceDev_); + sourceDev_->deviceMap_.insert(std::make_pair(dhId, mic)); + auto msgEvent = AppExecFwk::InnerEvent::Get(EVENT_MMAP_MIC_START, eventParam, 0); + sourceDev_->handler_->MicMmapStartCallback(msgEvent); + auto msgEvent1 = AppExecFwk::InnerEvent::Get(EVENT_MMAP_MIC_STOP, eventParam, 0); + sourceDev_->handler_->MicMmapStartCallback(msgEvent1); + dhId = 2; + args = "{\"dhId\":\"2\"}"; + AudioEvent event1 = AudioEvent(SPEAKER_CLOSED, args); + auto eventParam2 = std::make_shared(event1); + auto speaker = std::make_shared(devId, sourceDev_); + sourceDev_->deviceMap_.insert(std::make_pair(dhId, mic)); + auto msgEvent3 = AppExecFwk::InnerEvent::Get(EVENT_MMAP_SPK_START, eventParam2, 0); + sourceDev_->handler_->MicMmapStartCallback(msgEvent3); + auto msgEvent4 = AppExecFwk::InnerEvent::Get(EVENT_MMAP_SPK_STOP, eventParam2, 0); + sourceDev_->handler_->MicMmapStartCallback(msgEvent4); + sourceDev_->SleepAudioDev(); + EXPECT_EQ(DH_SUCCESS, sourceDev_->TaskDMicClosed(args)); + args = "{\"dhId\":\"-1\"}"; + EXPECT_EQ(ERR_DH_AUDIO_FAILED, sourceDev_->TaskDMicClosed(args)); +} + +/** + * @tc.name: EnableDMic_002 + * @tc.desc: Verify the EnableDMic function. + * @tc.type: FUNC + * @tc.require: AR000H0E5F + */ +HWTEST_F(DAudioSourceDevTest, EnableDMic_002, TestSize.Level1) +{ + int32_t dhId = 1; + std::string devId = "123"; + std::string attrs = "1234"; + sourceDev_->AwakeAudioDev(); + AudioEvent event = AudioEvent(MIC_CLOSED, "{\"dhId\":\"1\"}"); + auto eventParam = std::make_shared(event); + auto msgEvent = AppExecFwk::InnerEvent::Get(EVENT_DMIC_CLOSED, eventParam, 0); + sourceDev_->handler_->DMicClosedCallback(msgEvent); + sourceDev_->SleepAudioDev(); + auto mic = std::make_shared(devId, sourceDev_); + sourceDev_->deviceMap_.insert(std::make_pair(dhId, mic)); + EXPECT_EQ(DH_SUCCESS, sourceDev_->EnableDMic(dhId, attrs)); +} + +/** + * @tc.name: EnableDMic_003 + * @tc.desc: Verify the EnableDMic function. + * @tc.type: FUNC + * @tc.require: AR000H0E5F + */ +HWTEST_F(DAudioSourceDevTest, EnableDMic_003, TestSize.Level1) +{ + int32_t dhId = 1; + sourceDev_->AwakeAudioDev(); + AudioEvent event; + auto eventParam = std::make_shared(event); + auto msgEvent = AppExecFwk::InnerEvent::Get(EVENT_DMIC_CLOSED, eventParam, 0); + sourceDev_->handler_->DMicClosedCallback(msgEvent); + sourceDev_->handler_->SetVolumeCallback(msgEvent); + sourceDev_->handler_->ChangeVolumeCallback(msgEvent); + sourceDev_->handler_->ChangeFocusCallback(msgEvent); + sourceDev_->handler_->ChangeRenderStateCallback(msgEvent); + sourceDev_->handler_->PlayStatusChangeCallback(msgEvent); + sourceDev_->handler_->SpkMmapStartCallback(msgEvent); + sourceDev_->handler_->SpkMmapStopCallback(msgEvent); + sourceDev_->handler_->MicMmapStartCallback(msgEvent); + sourceDev_->handler_->MicMmapStopCallback(msgEvent); + sourceDev_->handler_->SetThreadStatusFlagTrue(msgEvent); + sourceDev_->SleepAudioDev(); + EXPECT_EQ(ERR_DH_AUDIO_FAILED, sourceDev_->EnableDMic(dhId, ATTRS)); +} + +/** + * @tc.name: HandleDSpeakerClosed_002 + * @tc.desc: Verify the HandleDSpeakerClosed function. + * @tc.type: FUNC + * @tc.require: AR000H0E5F + */ +HWTEST_F(DAudioSourceDevTest, HandleDSpeakerClosed_002, TestSize.Level1) +{ + AudioEvent event = AudioEvent(SPEAKER_CLOSED, "{\"dhId\":\"-1\"}"); + sourceDev_->AwakeAudioDev(); + EXPECT_EQ(ERR_DH_AUDIO_FAILED, sourceDev_->HandleDSpeakerClosed(event)); + EXPECT_EQ(ERR_DH_AUDIO_NOT_SUPPORT, sourceDev_->DisableDAudio(event.content)); + EXPECT_EQ(ERR_DH_AUDIO_FAILED, sourceDev_->TaskOpenDSpeaker(event.content)); + std::string args = "{\"dhId\":\"10\"}"; + EXPECT_EQ(ERR_DH_AUDIO_NOT_SUPPORT, sourceDev_->DisableDAudio(event.content)); + sourceDev_->SleepAudioDev(); +} } // namespace DistributedHardware } // namespace OHOS