1 /*
2 * Copyright (c) 2021-2025 Huawei Device Co., Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 * http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15
16 #include "audio_device_descriptor.h"
17 #include "audio_device_manager_unit_test.h"
18
19 using namespace testing::ext;
20
21 namespace OHOS {
22 namespace AudioStandard {
23
SetUpTestCase(void)24 void AudioDeviceManagerUnitTest::SetUpTestCase(void) {}
TearDownTestCase(void)25 void AudioDeviceManagerUnitTest::TearDownTestCase(void) {}
SetUp(void)26 void AudioDeviceManagerUnitTest::SetUp(void) {}
TearDown(void)27 void AudioDeviceManagerUnitTest::TearDown(void) {}
28
29 /**
30 * @tc.name : Test AudioDeviceManager.
31 * @tc.number: AudioDeviceManagerUnitTest_001.
32 * @tc.desc : Test GetActiveScoDevice.
33 */
34 HWTEST_F(AudioDeviceManagerUnitTest, AudioDeviceManagerUnitTest_001, TestSize.Level1)
35 {
36 std::shared_ptr<AudioDeviceDescriptor> desc = std::make_shared<AudioDeviceDescriptor>(
37 DeviceType::DEVICE_TYPE_BLUETOOTH_SCO, DeviceRole::OUTPUT_DEVICE);
38 desc->macAddress_ = "00:11:22:33:44:55";
39 AudioDeviceManager::GetAudioDeviceManager().AddConnectedDevices(desc);
40 std::string scoMac = "00:11:22:33:44:55";
41 auto result = AudioDeviceManager::GetAudioDeviceManager().GetActiveScoDevice(scoMac,
42 DeviceRole::OUTPUT_DEVICE);
43 ASSERT_NE(result, nullptr);
44 EXPECT_EQ(result->deviceType_, DeviceType::DEVICE_TYPE_BLUETOOTH_SCO);
45 EXPECT_EQ(result->macAddress_, scoMac);
46 EXPECT_EQ(result->deviceRole_, DeviceRole::OUTPUT_DEVICE);
47 }
48
49 /**
50 * @tc.name : Test AudioDeviceManager.
51 * @tc.number: AudioDeviceManagerUnitTest_002.
52 * @tc.desc : Test GetActiveScoDevice.
53 */
54 HWTEST_F(AudioDeviceManagerUnitTest, AudioDeviceManagerUnitTest_002, TestSize.Level1)
55 {
56 std::shared_ptr<AudioDeviceDescriptor> desc = std::make_shared<AudioDeviceDescriptor>(
57 DeviceType::DEVICE_TYPE_BLUETOOTH_SCO, DeviceRole::OUTPUT_DEVICE);
58 desc->macAddress_ = "00:11:22:33:44:55";
59 AudioDeviceManager::GetAudioDeviceManager().AddConnectedDevices(desc);
60 std::string scoMac = "00:11:22:33:44:66";
61 auto result = AudioDeviceManager::GetAudioDeviceManager().GetActiveScoDevice(scoMac,
62 DeviceRole::OUTPUT_DEVICE);
63 ASSERT_NE(result, nullptr);
64 EXPECT_EQ(result->macAddress_, "");
65 }
66
67 /**
68 * @tc.name : Test AudioDeviceManager.
69 * @tc.number: AudioDeviceManagerUnitTest_003.
70 * @tc.desc : Test GetActiveScoDevice.
71 */
72 HWTEST_F(AudioDeviceManagerUnitTest, AudioDeviceManagerUnitTest_003, TestSize.Level1)
73 {
74 std::shared_ptr<AudioDeviceDescriptor> desc = std::make_shared<AudioDeviceDescriptor>(
75 DeviceType::DEVICE_TYPE_BLUETOOTH_SCO, DeviceRole::OUTPUT_DEVICE);
76 desc->macAddress_ = "00:11:22:33:44:55";
77 AudioDeviceManager::GetAudioDeviceManager().AddConnectedDevices(desc);
78 std::string scoMac = "00:11:22:33:44:55";
79 auto result = AudioDeviceManager::GetAudioDeviceManager().GetActiveScoDevice(scoMac,
80 DeviceRole::INPUT_DEVICE);
81 ASSERT_NE(result, nullptr);
82 EXPECT_EQ(result->macAddress_, "");
83 }
84
85 /**
86 * @tc.name : Test AudioDeviceManager.
87 * @tc.number: AudioDeviceManagerUnitTest_004.
88 * @tc.desc : Test GetActiveScoDevice.
89 */
90 HWTEST_F(AudioDeviceManagerUnitTest, AudioDeviceManagerUnitTest_004, TestSize.Level1)
91 {
92 std::shared_ptr<AudioDeviceDescriptor> desc = std::make_shared<AudioDeviceDescriptor>(
93 DeviceType::DEVICE_TYPE_BLUETOOTH_A2DP, DeviceRole::OUTPUT_DEVICE);
94 desc->macAddress_ = "00:11:22:33:44:55";
95 AudioDeviceManager::GetAudioDeviceManager().AddConnectedDevices(desc);
96 std::string scoMac = "00:11:22:33:44:55";
97 auto result = AudioDeviceManager::GetAudioDeviceManager().GetActiveScoDevice(scoMac,
98 DeviceRole::OUTPUT_DEVICE);
99 ASSERT_NE(result, nullptr);
100 EXPECT_EQ(result->macAddress_, scoMac);
101 }
102
103 /**
104 * @tc.name : Test AudioDeviceManager.
105 * @tc.number: AudioDeviceManagerUnitTest_005.
106 * @tc.desc : Test GetActiveScoDevice.
107 */
108 HWTEST_F(AudioDeviceManagerUnitTest, AudioDeviceManagerUnitTest_005, TestSize.Level1)
109 {
110 std::shared_ptr<AudioDeviceDescriptor> desc = std::make_shared<AudioDeviceDescriptor>(
111 DeviceType::DEVICE_TYPE_BLUETOOTH_A2DP, DeviceRole::OUTPUT_DEVICE);
112 desc->macAddress_ = "00:11:22:33:44:55";
113 AudioDeviceManager::GetAudioDeviceManager().AddConnectedDevices(desc);
114 std::string scoMac = "00:11:22:33:44:55";
115 auto result = AudioDeviceManager::GetAudioDeviceManager().GetActiveScoDevice(scoMac,
116 DeviceRole::INPUT_DEVICE);
117 ASSERT_NE(result, nullptr);
118 EXPECT_EQ(result->macAddress_, "");
119 }
120
121 /**
122 * @tc.name : Test AudioDeviceManager.
123 * @tc.number: AudioDeviceManagerUnitTest_006.
124 * @tc.desc : Test GetActiveScoDevice.
125 */
126 HWTEST_F(AudioDeviceManagerUnitTest, AudioDeviceManagerUnitTest_006, TestSize.Level1)
127 {
128 std::shared_ptr<AudioDeviceDescriptor> desc = std::make_shared<AudioDeviceDescriptor>(
129 DeviceType::DEVICE_TYPE_BLUETOOTH_SCO, DeviceRole::OUTPUT_DEVICE);
130 desc->macAddress_ = "00:11:22:33:44:55";
131 AudioDeviceManager::GetAudioDeviceManager().AddConnectedDevices(desc);
132 std::string scoMac = "00:11:22:33:44:66";
133 auto result = AudioDeviceManager::GetAudioDeviceManager().GetActiveScoDevice(scoMac,
134 DeviceRole::INPUT_DEVICE);
135 ASSERT_NE(result, nullptr);
136 EXPECT_EQ(result->macAddress_, "");
137 }
138
139 /**
140 * @tc.name : Test AudioDeviceManager.
141 * @tc.number: AudioDeviceManagerUnitTest_007.
142 * @tc.desc : Test GetActiveScoDevice.
143 */
144 HWTEST_F(AudioDeviceManagerUnitTest, AudioDeviceManagerUnitTest_007, TestSize.Level1)
145 {
146 std::shared_ptr<AudioDeviceDescriptor> desc = std::make_shared<AudioDeviceDescriptor>(
147 DeviceType::DEVICE_TYPE_BLUETOOTH_A2DP, DeviceRole::OUTPUT_DEVICE);
148 desc->macAddress_ = "00:11:22:33:44:55";
149 AudioDeviceManager::GetAudioDeviceManager().AddConnectedDevices(desc);
150 std::string scoMac = "00:11:22:33:44:66";
151 auto result = AudioDeviceManager::GetAudioDeviceManager().GetActiveScoDevice(scoMac,
152 DeviceRole::OUTPUT_DEVICE);
153 ASSERT_NE(result, nullptr);
154 EXPECT_EQ(result->macAddress_, "");
155 }
156
157 /**
158 * @tc.name : Test AudioDeviceManager.
159 * @tc.number: AudioDeviceManagerUnitTest_008.
160 * @tc.desc : Test GetActiveScoDevice.
161 */
162 HWTEST_F(AudioDeviceManagerUnitTest, AudioDeviceManagerUnitTest_008, TestSize.Level1)
163 {
164 std::shared_ptr<AudioDeviceDescriptor> desc = std::make_shared<AudioDeviceDescriptor>(
165 DeviceType::DEVICE_TYPE_BLUETOOTH_A2DP, DeviceRole::OUTPUT_DEVICE);
166 desc->macAddress_ = "00:11:22:33:44:55";
167 AudioDeviceManager::GetAudioDeviceManager().AddConnectedDevices(desc);
168 std::string scoMac = "00:11:22:33:44:66";
169 auto result = AudioDeviceManager::GetAudioDeviceManager().GetActiveScoDevice(scoMac,
170 DeviceRole::INPUT_DEVICE);
171 ASSERT_NE(result, nullptr);
172 EXPECT_EQ(result->macAddress_, "");
173 }
174 } // namespace AudioStandard
175 } // namespace OHOS