From a8c186e2d60e062c555ae69d0bc69363201807c6 Mon Sep 17 00:00:00 2001 From: liyuhang Date: Tue, 17 Jun 2025 08:45:10 +0000 Subject: [PATCH 1/7] Add ut Signed-off-by: liyuhang Change-Id: Id5a93505e12b05697adae8e9a255e7296f42a981 --- .../src/audio_capturer_unit_test.cpp | 25 ++++++++++ .../audio_core_service_private_unit_test.cpp | 28 +++++++++++ .../src/audio_core_service_unit_test.cpp | 46 +++++++++++++++++++ .../src/audio_pipe_manager_unit_test.cpp | 2 + .../client/fast_audio_stream_unit_test.cpp | 18 ++++++++ 5 files changed, 119 insertions(+) diff --git a/frameworks/native/audiocapturer/test/unittest/capturer_test/src/audio_capturer_unit_test.cpp b/frameworks/native/audiocapturer/test/unittest/capturer_test/src/audio_capturer_unit_test.cpp index 130e34c41d..cef2555a4f 100644 --- a/frameworks/native/audiocapturer/test/unittest/capturer_test/src/audio_capturer_unit_test.cpp +++ b/frameworks/native/audiocapturer/test/unittest/capturer_test/src/audio_capturer_unit_test.cpp @@ -2339,6 +2339,31 @@ HWTEST(AudioCapturerUnitTest, IsDeviceChanged_001, TestSize.Level1) EXPECT_EQ(ret, true); } +/** +* @tc.name : Test AudioCapturePrivate. +* @tc.number: GetStreamDescBySwitchInfo_001 +* @tc.desc : Test GetStreamDescBySwitchInfo - switchInfo to streamDesc. +*/ +HWTEST(AudioCapturerUnitTest, GetStreamDescBySwitchInfo_001, TestSize.Level1) +{ + AppInfo appInfo = {}; + std::shared_ptr capture = std::make_shared(STREAM_MUSIC, appInfo, true); + std::shared_ptr streamDesc = std:make_shared(); + + IAudioStream::SwitchInfo switchInfo; + switchInfo.params.format = 1; + switchInfo.params.samplingRate = 48000; + switchInfo.params.channels = 2; + switchInfo.params.encoding = 0; + switchInfo.params.channelLayout = 0; + + EXPECT_EQ(streamDesc->streamInfo_.format, static_cast(switchInfo.params.format)); + EXPECT_EQ(streamDesc->streamInfo_.samplingRate, static_cast(switchInfo.params.samplingRate)); + EXPECT_EQ(streamDesc->streamInfo_.channels, static_cast(switchInfo.params.channels)); + EXPECT_EQ(streamDesc->streamInfo_.encoding, static_cast(switchInfo.params.encoding)); + EXPECT_EQ(streamDesc->streamInfo_.channelLayout, static_cast(switchInfo.params.format)); +} + /** * @tc.name : Test RemoveCapturerPolicyServiceDiedCallback. * @tc.number: RemoveCapturerPolicyServiceDiedCallback diff --git a/services/audio_policy/test/unittest/audio_core_service_private_unit_test/src/audio_core_service_private_unit_test.cpp b/services/audio_policy/test/unittest/audio_core_service_private_unit_test/src/audio_core_service_private_unit_test.cpp index 48b829f81d..7805500a09 100644 --- a/services/audio_policy/test/unittest/audio_core_service_private_unit_test/src/audio_core_service_private_unit_test.cpp +++ b/services/audio_policy/test/unittest/audio_core_service_private_unit_test/src/audio_core_service_private_unit_test.cpp @@ -1928,5 +1928,33 @@ HWTEST(AudioCoreServicePrivateTest, AudioCoreServicePrivate_121, TestSize.Level1 EXPECT_EQ(device->deviceType_ != DEVICE_TYPE_MIC, true); } } + +/** + * @tc.name : Test AudioCoreService. + * @tc.number: IsFastAllowedTest_001 + * @tc.desc : Test AudioCoreService::IsFastAllowed, return true when bundleName is null. + */ +HWTEST(AudioCoreServicePrivateTest, IsFastAllowedTest_001, TestSize.Level1) +{ + auto audioCoreService = std::make_shared(); + ASSERT_NE(audioCoreService, nullptr); + std::string bundleName = ""; + EXPECT_EQ(audioCoreService->IsFastAllowed(bundleName), true); +} + +/** + * @tc.name : Test AudioCoreService. + * @tc.number: IsFastAllowedTest_002 + * @tc.desc : Test AudioCoreService::IsFastAllowed, return true when bundleName is normal app. + */ +HWTEST(AudioCoreServicePrivateTest, IsFastAllowedTest_002, TestSize.Level1) +{ + auto audioCoreService = std::make_shared(); + ASSERT_NE(audioCoreService, nullptr); + std::shared_ptr streamDesc = std::make_shared(); + std::string bundleName = "com.example.app"; + streamDesc->SetBunduleName(bundleName); + EXPECT_EQ(audioCoreService->IsFastAllowed(streamDesc->bundleName_), true); +} } // namespace AudioStandard } // namespace OHOS \ No newline at end of file diff --git a/services/audio_policy/test/unittest/audio_core_service_unit_test/src/audio_core_service_unit_test.cpp b/services/audio_policy/test/unittest/audio_core_service_unit_test/src/audio_core_service_unit_test.cpp index bba542db05..6fc06adbca 100644 --- a/services/audio_policy/test/unittest/audio_core_service_unit_test/src/audio_core_service_unit_test.cpp +++ b/services/audio_policy/test/unittest/audio_core_service_unit_test/src/audio_core_service_unit_test.cpp @@ -779,6 +779,52 @@ HWTEST_F(AudioCoreServiceUnitTest, GetAvailableMicrophones_001, TestSize.Level1) } } +/** + * @tc.name : Test AudioCoreServiceUnit + * @tc.number : IsStreamSupportMultiChannel_001 + * @tc.desc : Test IsStreamSupportMultiChannel interface - device type is not speaker/a2dp_offload, return false. + */ +HWTEST_F(AudioCoreServiceUnitTest, IsStreamSupportMultiChannel_001, TestSize.Level1) +{ + ASSERT_NE(nullptr, GetServerPtr()); + std::shared_ptr streamDesc = std::make_shared(); + std::shared_ptr deviceDesc = std::make_shared(); + deviceDesc->deviceType_ = DEVICE_TYPE_BLUETOOTH_A2DP; + deviceDesc->a2dpOffloadFlag_ = A2DP_NOT_OFFLOAD; + streamDesc->newDeviceDescs_.push_back(deviceDesc); + EXPECT_EQ(GetServerPtr()->coreService_->IsStreamSupportMultiChannel(streamDesc), false); +} + +/** + * @tc.name : Test AudioCoreServiceUnit + * @tc.number : IsStreamSupportMultiChannel_002 + * @tc.desc : Test IsStreamSupportMultiChannel interface - channel count <= 2, return false. + */ +HWTEST_F(AudioCoreServiceUnitTest, IsStreamSupportMultiChannel_002, TestSize.Level1) +{ + ASSERT_NE(nullptr, GetServerPtr()); + std::shared_ptr streamDesc = std::make_shared(); + std::shared_ptr deviceDesc = std::make_shared(); + deviceDesc->deviceType_ = DEVICE_TYPE_SPEAKER; + streamDesc->newDeviceDescs_.push_back(deviceDesc); + streamDesc->streamInfo_.channels = STEREO; + EXPECT_EQ(GetServerPtr()->coreService_->IsStreamSupportMultiChannel(streamDesc), false); +} + +/** + * @tc.name : Test AudioCoreServiceUnit + * @tc.number : SetFlagForSpecialStream_001 + * @tc.desc : Test SetFlagForSpecialStream interface - when streamDesc is null, return flag normal. + */ +HWTEST_F(AudioCoreServiceUnitTest, SetFlagForSpecialStream_001, TestSize.Level1) +{ + ASSERT_NE(nullptr, GetServerPtr()); + std::shared_ptr streamDesc = nullptr; + bool isCreateProcess = true; + AudioFlag result = SetFlagForSpecialStream(streamDesc, isCreateProcess); + EXPECT_EQ(result, AUDIO_OUTPUT_FLAG_NORMAL); +} + /** * @tc.name : Test AudioCoreServiceUnit * @tc.number: AddAudioCapturerMicrophoneDescriptor_001 diff --git a/services/audio_policy/test/unittest/audio_pipe_manager_unit_test/src/audio_pipe_manager_unit_test.cpp b/services/audio_policy/test/unittest/audio_pipe_manager_unit_test/src/audio_pipe_manager_unit_test.cpp index afe45e4a8b..bd09cea532 100644 --- a/services/audio_policy/test/unittest/audio_pipe_manager_unit_test/src/audio_pipe_manager_unit_test.cpp +++ b/services/audio_policy/test/unittest/audio_pipe_manager_unit_test/src/audio_pipe_manager_unit_test.cpp @@ -322,6 +322,8 @@ HWTEST_F(AudioPipeManagerUnitTest, GetUnusedPipe_003, TestSize.Level1) EXPECT_EQ(unusedPipes.size(), 0); } + + /** * @tc.name: IsSpecialPipe_001 * @tc.desc: Test IsSpecialPipe when routeFlag includes AUDIO_OUTPUT_FLAG_FAST. diff --git a/services/audio_service/test/unittest/client/fast_audio_stream_unit_test.cpp b/services/audio_service/test/unittest/client/fast_audio_stream_unit_test.cpp index 66975a32e8..476011071a 100644 --- a/services/audio_service/test/unittest/client/fast_audio_stream_unit_test.cpp +++ b/services/audio_service/test/unittest/client/fast_audio_stream_unit_test.cpp @@ -1560,5 +1560,23 @@ HWTEST(FastSystemStreamUnitTest, RestoreAudioStream_002, TestSize.Level1) fastAudioStream->state_ = RUNNING; fastAudioStream->RestoreAudioStream(); } + +/** + * @tc.name : Test CheckRestoreStatus API + * @tc.type : FUNC + * @tc.number: CheckRestoreStatus_001 + * @tc.desc : Test CheckRestoreStatus interface. - return RESTORE_TO_NORMAL when spkProcClientCb_ is null + */ +HWTEST(FastSystemStreamUnitTest, CheckRestoreStatus_001, TestSize.Level1) +{ + std::shared_ptr fastAudioStream = + std::make_shared(STREAM_MUSIC, AUDIO_MODE_PLAYBACK, appUid); + EXPECT_NE(fastAudioStream, nullptr); + + fastAudioStream->spkProcClientCb_ = nullptr; + fastAudioStream->micProcClientCb_ = nullptr; + RestoreStatus status = fastAudioStream->CheckRestoreStatus(); + EXPECT_EQ(status, NEED_RESTORE_TO_NORMAL); +} } // namespace AudioStandard } // namespace OHOS -- Gitee From 72c79e67cbe93c4b75762a186244b2e49b5cc9da Mon Sep 17 00:00:00 2001 From: Li Yuhang Date: Tue, 17 Jun 2025 15:26:16 +0000 Subject: [PATCH 2/7] code check Signed-off-by: Li Yuhang --- .../src/audio_pipe_manager_unit_test.cpp | 2 -- 1 file changed, 2 deletions(-) diff --git a/services/audio_policy/test/unittest/audio_pipe_manager_unit_test/src/audio_pipe_manager_unit_test.cpp b/services/audio_policy/test/unittest/audio_pipe_manager_unit_test/src/audio_pipe_manager_unit_test.cpp index bd09cea532..afe45e4a8b 100644 --- a/services/audio_policy/test/unittest/audio_pipe_manager_unit_test/src/audio_pipe_manager_unit_test.cpp +++ b/services/audio_policy/test/unittest/audio_pipe_manager_unit_test/src/audio_pipe_manager_unit_test.cpp @@ -322,8 +322,6 @@ HWTEST_F(AudioPipeManagerUnitTest, GetUnusedPipe_003, TestSize.Level1) EXPECT_EQ(unusedPipes.size(), 0); } - - /** * @tc.name: IsSpecialPipe_001 * @tc.desc: Test IsSpecialPipe when routeFlag includes AUDIO_OUTPUT_FLAG_FAST. -- Gitee From d2e59c6a3d8fe0b189d00b173745569064d4b0d4 Mon Sep 17 00:00:00 2001 From: Li Yuhang Date: Tue, 17 Jun 2025 15:27:56 +0000 Subject: [PATCH 3/7] Code check Signed-off-by: Li Yuhang --- .../src/audio_core_service_unit_test.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/services/audio_policy/test/unittest/audio_core_service_unit_test/src/audio_core_service_unit_test.cpp b/services/audio_policy/test/unittest/audio_core_service_unit_test/src/audio_core_service_unit_test.cpp index 6fc06adbca..b81cc592c5 100644 --- a/services/audio_policy/test/unittest/audio_core_service_unit_test/src/audio_core_service_unit_test.cpp +++ b/services/audio_policy/test/unittest/audio_core_service_unit_test/src/audio_core_service_unit_test.cpp @@ -821,7 +821,7 @@ HWTEST_F(AudioCoreServiceUnitTest, SetFlagForSpecialStream_001, TestSize.Level1) ASSERT_NE(nullptr, GetServerPtr()); std::shared_ptr streamDesc = nullptr; bool isCreateProcess = true; - AudioFlag result = SetFlagForSpecialStream(streamDesc, isCreateProcess); + AudioFlag result = GetServerPtr()->coreService_->SetFlagForSpecialStream(streamDesc, isCreateProcess); EXPECT_EQ(result, AUDIO_OUTPUT_FLAG_NORMAL); } -- Gitee From d392ab42d5a1c66a3dc065d20150e38d355a6247 Mon Sep 17 00:00:00 2001 From: Li Yuhang Date: Tue, 17 Jun 2025 15:29:19 +0000 Subject: [PATCH 4/7] code check Signed-off-by: Li Yuhang --- .../test/unittest/client/fast_audio_stream_unit_test.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/services/audio_service/test/unittest/client/fast_audio_stream_unit_test.cpp b/services/audio_service/test/unittest/client/fast_audio_stream_unit_test.cpp index 476011071a..dbf699f851 100644 --- a/services/audio_service/test/unittest/client/fast_audio_stream_unit_test.cpp +++ b/services/audio_service/test/unittest/client/fast_audio_stream_unit_test.cpp @@ -1569,6 +1569,7 @@ HWTEST(FastSystemStreamUnitTest, RestoreAudioStream_002, TestSize.Level1) */ HWTEST(FastSystemStreamUnitTest, CheckRestoreStatus_001, TestSize.Level1) { + int32_t appUid = static_cast(getuid()); std::shared_ptr fastAudioStream = std::make_shared(STREAM_MUSIC, AUDIO_MODE_PLAYBACK, appUid); EXPECT_NE(fastAudioStream, nullptr); -- Gitee From 45d25fa0ed921a3c76895502019c651a188be78f Mon Sep 17 00:00:00 2001 From: Li Yuhang Date: Tue, 17 Jun 2025 15:54:50 +0000 Subject: [PATCH 5/7] code check Signed-off-by: Li Yuhang --- .../capturer_test/src/audio_capturer_unit_test.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/frameworks/native/audiocapturer/test/unittest/capturer_test/src/audio_capturer_unit_test.cpp b/frameworks/native/audiocapturer/test/unittest/capturer_test/src/audio_capturer_unit_test.cpp index cef2555a4f..6d415b8b51 100644 --- a/frameworks/native/audiocapturer/test/unittest/capturer_test/src/audio_capturer_unit_test.cpp +++ b/frameworks/native/audiocapturer/test/unittest/capturer_test/src/audio_capturer_unit_test.cpp @@ -2346,10 +2346,6 @@ HWTEST(AudioCapturerUnitTest, IsDeviceChanged_001, TestSize.Level1) */ HWTEST(AudioCapturerUnitTest, GetStreamDescBySwitchInfo_001, TestSize.Level1) { - AppInfo appInfo = {}; - std::shared_ptr capture = std::make_shared(STREAM_MUSIC, appInfo, true); - std::shared_ptr streamDesc = std:make_shared(); - IAudioStream::SwitchInfo switchInfo; switchInfo.params.format = 1; switchInfo.params.samplingRate = 48000; @@ -2357,6 +2353,10 @@ HWTEST(AudioCapturerUnitTest, GetStreamDescBySwitchInfo_001, TestSize.Level1) switchInfo.params.encoding = 0; switchInfo.params.channelLayout = 0; + AppInfo appInfo = {}; + std::shared_ptr capture = std::make_shared(STREAM_MUSIC, appInfo, true); + std::shared_ptr streamDesc = capture->GetStreamDescBySwitchInfo(switchInfo); + EXPECT_EQ(streamDesc->streamInfo_.format, static_cast(switchInfo.params.format)); EXPECT_EQ(streamDesc->streamInfo_.samplingRate, static_cast(switchInfo.params.samplingRate)); EXPECT_EQ(streamDesc->streamInfo_.channels, static_cast(switchInfo.params.channels)); -- Gitee From b9e4c8b0a0402b5362e6996f0d23798f8bd7a6a1 Mon Sep 17 00:00:00 2001 From: Li Yuhang Date: Tue, 17 Jun 2025 15:59:13 +0000 Subject: [PATCH 6/7] code check Signed-off-by: Li Yuhang --- .../unittest/capturer_test/src/audio_capturer_unit_test.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/frameworks/native/audiocapturer/test/unittest/capturer_test/src/audio_capturer_unit_test.cpp b/frameworks/native/audiocapturer/test/unittest/capturer_test/src/audio_capturer_unit_test.cpp index 6d415b8b51..e4f03b7506 100644 --- a/frameworks/native/audiocapturer/test/unittest/capturer_test/src/audio_capturer_unit_test.cpp +++ b/frameworks/native/audiocapturer/test/unittest/capturer_test/src/audio_capturer_unit_test.cpp @@ -2354,8 +2354,9 @@ HWTEST(AudioCapturerUnitTest, GetStreamDescBySwitchInfo_001, TestSize.Level1) switchInfo.params.channelLayout = 0; AppInfo appInfo = {}; + RestoreInfo restoreInfo = {}; std::shared_ptr capture = std::make_shared(STREAM_MUSIC, appInfo, true); - std::shared_ptr streamDesc = capture->GetStreamDescBySwitchInfo(switchInfo); + std::shared_ptr streamDesc = capture->GetStreamDescBySwitchInfo(switchInfo, restoreInfo); EXPECT_EQ(streamDesc->streamInfo_.format, static_cast(switchInfo.params.format)); EXPECT_EQ(streamDesc->streamInfo_.samplingRate, static_cast(switchInfo.params.samplingRate)); -- Gitee From 57ed360295496d3c543b8e396abd664243fd5e51 Mon Sep 17 00:00:00 2001 From: Li Yuhang Date: Tue, 17 Jun 2025 16:03:19 +0000 Subject: [PATCH 7/7] code check Signed-off-by: Li Yuhang --- .../src/audio_capturer_unit_test.cpp | 26 ------------------- 1 file changed, 26 deletions(-) diff --git a/frameworks/native/audiocapturer/test/unittest/capturer_test/src/audio_capturer_unit_test.cpp b/frameworks/native/audiocapturer/test/unittest/capturer_test/src/audio_capturer_unit_test.cpp index e4f03b7506..130e34c41d 100644 --- a/frameworks/native/audiocapturer/test/unittest/capturer_test/src/audio_capturer_unit_test.cpp +++ b/frameworks/native/audiocapturer/test/unittest/capturer_test/src/audio_capturer_unit_test.cpp @@ -2339,32 +2339,6 @@ HWTEST(AudioCapturerUnitTest, IsDeviceChanged_001, TestSize.Level1) EXPECT_EQ(ret, true); } -/** -* @tc.name : Test AudioCapturePrivate. -* @tc.number: GetStreamDescBySwitchInfo_001 -* @tc.desc : Test GetStreamDescBySwitchInfo - switchInfo to streamDesc. -*/ -HWTEST(AudioCapturerUnitTest, GetStreamDescBySwitchInfo_001, TestSize.Level1) -{ - IAudioStream::SwitchInfo switchInfo; - switchInfo.params.format = 1; - switchInfo.params.samplingRate = 48000; - switchInfo.params.channels = 2; - switchInfo.params.encoding = 0; - switchInfo.params.channelLayout = 0; - - AppInfo appInfo = {}; - RestoreInfo restoreInfo = {}; - std::shared_ptr capture = std::make_shared(STREAM_MUSIC, appInfo, true); - std::shared_ptr streamDesc = capture->GetStreamDescBySwitchInfo(switchInfo, restoreInfo); - - EXPECT_EQ(streamDesc->streamInfo_.format, static_cast(switchInfo.params.format)); - EXPECT_EQ(streamDesc->streamInfo_.samplingRate, static_cast(switchInfo.params.samplingRate)); - EXPECT_EQ(streamDesc->streamInfo_.channels, static_cast(switchInfo.params.channels)); - EXPECT_EQ(streamDesc->streamInfo_.encoding, static_cast(switchInfo.params.encoding)); - EXPECT_EQ(streamDesc->streamInfo_.channelLayout, static_cast(switchInfo.params.format)); -} - /** * @tc.name : Test RemoveCapturerPolicyServiceDiedCallback. * @tc.number: RemoveCapturerPolicyServiceDiedCallback -- Gitee