• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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_connected_device_unit_test.h"
18 
19 using namespace testing::ext;
20 
21 namespace OHOS {
22 namespace AudioStandard {
23 
SetUpTestCase(void)24 void AudioConnectedDeviceUnitTest::SetUpTestCase(void) {}
TearDownTestCase(void)25 void AudioConnectedDeviceUnitTest::TearDownTestCase(void) {}
SetUp(void)26 void AudioConnectedDeviceUnitTest::SetUp(void) {}
TearDown(void)27 void AudioConnectedDeviceUnitTest::TearDown(void) {}
28 
29 /**
30 * @tc.name  : Test AudioConnectedDevice.
31 * @tc.number: AudioConnectedDeviceUnitTest_001.
32 * @tc.desc  : Test IsConnectedOutputDevice.
33 */
34 HWTEST_F(AudioConnectedDeviceUnitTest, AudioConnectedDeviceUnitTest_001, TestSize.Level1)
35 {
36     auto desc = std::make_shared<AudioDeviceDescriptor>(DeviceType::DEVICE_TYPE_FILE_SINK,
37         DeviceRole::OUTPUT_DEVICE);
38     AudioConnectedDevice::GetInstance().connectedDevices_.push_back(desc);
39     bool result = AudioConnectedDevice::GetInstance().IsConnectedOutputDevice(desc);
40     EXPECT_EQ(result, false);
41 }
42 
43 /**
44 * @tc.name  : Test AudioConnectedDevice.
45 * @tc.number: AudioConnectedDeviceUnitTest_002.
46 * @tc.desc  : Test IsConnectedOutputDevice.
47 */
48 HWTEST_F(AudioConnectedDeviceUnitTest, AudioConnectedDeviceUnitTest_002, TestSize.Level1)
49 {
50     auto desc = std::make_shared<AudioDeviceDescriptor>(DeviceType::DEVICE_TYPE_EARPIECE,
51         DeviceRole::OUTPUT_DEVICE);
52     AudioConnectedDevice::GetInstance().connectedDevices_.push_back(desc);
53     bool result = AudioConnectedDevice::GetInstance().IsConnectedOutputDevice(desc);
54     EXPECT_EQ(result, true);
55 }
56 
57 /**
58 * @tc.name  : Test AudioConnectedDevice.
59 * @tc.number: AudioConnectedDeviceUnitTest_003.
60 * @tc.desc  : Test CheckExistOutputDevice.
61 */
62 HWTEST_F(AudioConnectedDeviceUnitTest, AudioConnectedDeviceUnitTest_003, TestSize.Level1)
63 {
64     std::string macAddress = "test";
65     auto audioConnectedDevice = std::make_shared<AudioConnectedDevice>();
66     auto desc = std::make_shared<AudioDeviceDescriptor>(DeviceType::DEVICE_TYPE_EARPIECE,
67         DeviceRole::OUTPUT_DEVICE);
68     audioConnectedDevice->connectedDevices_.push_back(desc);
69     auto result = audioConnectedDevice->CheckExistOutputDevice(DeviceType::DEVICE_TYPE_EARPIECE, macAddress);
70     EXPECT_NE(result, nullptr);
71 }
72 
73 /**
74 * @tc.name  : Test AudioConnectedDevice.
75 * @tc.number: AudioConnectedDeviceUnitTest_004.
76 * @tc.desc  : Test CheckExistOutputDevice.
77 */
78 HWTEST_F(AudioConnectedDeviceUnitTest, AudioConnectedDeviceUnitTest_004, TestSize.Level1)
79 {
80     std::string macAddress = "test";
81     auto audioConnectedDevice = std::make_shared<AudioConnectedDevice>();
82     auto desc = std::make_shared<AudioDeviceDescriptor>(DeviceType::DEVICE_TYPE_BLUETOOTH_A2DP,
83         DeviceRole::OUTPUT_DEVICE);
84     desc->macAddress_ = macAddress;
85     audioConnectedDevice->connectedDevices_.push_back(desc);
86     auto result = audioConnectedDevice->CheckExistOutputDevice(DeviceType::DEVICE_TYPE_BLUETOOTH_A2DP, macAddress);
87     EXPECT_NE(result, nullptr);
88 }
89 
90 /**
91 * @tc.name  : Test AudioConnectedDevice.
92 * @tc.number: AudioConnectedDeviceUnitTest_005.
93 * @tc.desc  : Test CheckExistOutputDevice.
94 */
95 HWTEST_F(AudioConnectedDeviceUnitTest, AudioConnectedDeviceUnitTest_005, TestSize.Level1)
96 {
97     std::string macAddress = "test";
98     auto audioConnectedDevice = std::make_shared<AudioConnectedDevice>();
99     auto desc = std::make_shared<AudioDeviceDescriptor>(DeviceType::DEVICE_TYPE_BLUETOOTH_A2DP,
100         DeviceRole::INPUT_DEVICE);
101     audioConnectedDevice->connectedDevices_.push_back(desc);
102     auto result = audioConnectedDevice->CheckExistOutputDevice(DeviceType::DEVICE_TYPE_BLUETOOTH_A2DP, macAddress);
103     EXPECT_EQ(result, nullptr);
104 
105     result = audioConnectedDevice->CheckExistOutputDevice(DeviceType::DEVICE_TYPE_DP, macAddress);
106     EXPECT_EQ(result, nullptr);
107 }
108 
109 /**
110 * @tc.name  : Test AudioConnectedDevice.
111 * @tc.number: AudioConnectedDeviceUnitTest_006.
112 * @tc.desc  : Test CheckExistOutputDevice.
113 */
114 HWTEST_F(AudioConnectedDeviceUnitTest, AudioConnectedDeviceUnitTest_006, TestSize.Level1)
115 {
116     std::string macAddress = "test";
117     auto audioConnectedDevice = std::make_shared<AudioConnectedDevice>();
118     auto desc = std::make_shared<AudioDeviceDescriptor>(DeviceType::DEVICE_TYPE_BLUETOOTH_A2DP,
119         DeviceRole::OUTPUT_DEVICE);
120     audioConnectedDevice->connectedDevices_.push_back(desc);
121     auto result = audioConnectedDevice->CheckExistOutputDevice(DeviceType::DEVICE_TYPE_BLUETOOTH_A2DP, macAddress);
122     EXPECT_EQ(result, nullptr);
123 }
124 
125 /**
126 * @tc.name  : Test AudioConnectedDevice.
127 * @tc.number: AudioConnectedDeviceUnitTest_007.
128 * @tc.desc  : Test CheckExistInputDevice.
129 */
130 HWTEST_F(AudioConnectedDeviceUnitTest, AudioConnectedDeviceUnitTest_007, TestSize.Level1)
131 {
132     auto audioConnectedDevice = std::make_shared<AudioConnectedDevice>();
133     auto desc = std::make_shared<AudioDeviceDescriptor>(DeviceType::DEVICE_TYPE_BLUETOOTH_SCO,
134         DeviceRole::INPUT_DEVICE);
135     audioConnectedDevice->connectedDevices_.push_back(desc);
136     auto result = audioConnectedDevice->CheckExistInputDevice(DeviceType::DEVICE_TYPE_DP);
137     EXPECT_EQ(result, nullptr);
138 
139     result = audioConnectedDevice->CheckExistInputDevice(DeviceType::DEVICE_TYPE_BLUETOOTH_SCO);
140     EXPECT_NE(result, nullptr);
141 }
142 
143 /**
144 * @tc.name  : Test AudioConnectedDevice.
145 * @tc.number: AudioConnectedDeviceUnitTest_008.
146 * @tc.desc  : Test GetConnectedDeviceByType.
147 */
148 HWTEST_F(AudioConnectedDeviceUnitTest, AudioConnectedDeviceUnitTest_008, TestSize.Level1)
149 {
150     std::string networkId = "test";
151     auto audioConnectedDevice = std::make_shared<AudioConnectedDevice>();
152     auto desc = std::make_shared<AudioDeviceDescriptor>(DeviceType::DEVICE_TYPE_DP, DeviceRole::OUTPUT_DEVICE);
153     desc->networkId_ = networkId;
154     audioConnectedDevice->connectedDevices_.push_back(desc);
155     auto result = audioConnectedDevice->GetConnectedDeviceByType(networkId, DeviceType::DEVICE_TYPE_DP);
156     EXPECT_NE(result, nullptr);
157 
158     result = audioConnectedDevice->GetConnectedDeviceByType(networkId, DeviceType::DEVICE_TYPE_EARPIECE);
159     EXPECT_EQ(result, nullptr);
160 }
161 
162 /**
163 * @tc.name  : Test AudioConnectedDevice.
164 * @tc.number: AudioConnectedDeviceUnitTest_009.
165 * @tc.desc  : Test GetConnectedDeviceByType.
166 */
167 HWTEST_F(AudioConnectedDeviceUnitTest, AudioConnectedDeviceUnitTest_009, TestSize.Level1)
168 {
169     std::string networkId = "test";
170     auto audioConnectedDevice = std::make_shared<AudioConnectedDevice>();
171     auto desc = std::make_shared<AudioDeviceDescriptor>(DeviceType::DEVICE_TYPE_DP, DeviceRole::OUTPUT_DEVICE);
172     desc->networkId_ = "networkId";
173     audioConnectedDevice->connectedDevices_.push_back(desc);
174     auto result = audioConnectedDevice->GetConnectedDeviceByType(networkId, DeviceType::DEVICE_TYPE_DP);
175     EXPECT_EQ(result, nullptr);
176 
177     result = audioConnectedDevice->GetConnectedDeviceByType(networkId, DeviceType::DEVICE_TYPE_EARPIECE);
178     EXPECT_EQ(result, nullptr);
179 }
180 
181 /**
182 * @tc.name  : Test AudioConnectedDevice.
183 * @tc.number: AudioConnectedDeviceUnitTest_010.
184 * @tc.desc  : Test GetConnectedDeviceByType.
185 */
186 HWTEST_F(AudioConnectedDeviceUnitTest, AudioConnectedDeviceUnitTest_010, TestSize.Level1)
187 {
188     std::string networkId = "test";
189     std::string macAddress = "macAddress";
190     auto audioConnectedDevice = std::make_shared<AudioConnectedDevice>();
191     auto desc = std::make_shared<AudioDeviceDescriptor>(DeviceType::DEVICE_TYPE_DP, DeviceRole::OUTPUT_DEVICE);
192     desc->networkId_ = "networkId";
193     desc->macAddress_ = macAddress;
194     audioConnectedDevice->connectedDevices_.push_back(desc);
195     auto result = audioConnectedDevice->GetConnectedDeviceByType(networkId, DeviceType::DEVICE_TYPE_DP, macAddress);
196     EXPECT_EQ(result, nullptr);
197 
198     result = audioConnectedDevice->GetConnectedDeviceByType(networkId, DeviceType::DEVICE_TYPE_EARPIECE, macAddress);
199     EXPECT_EQ(result, nullptr);
200 
201     result = audioConnectedDevice->GetConnectedDeviceByType(networkId, DeviceType::DEVICE_TYPE_DP, macAddress);
202     EXPECT_EQ(result, nullptr);
203 }
204 
205 /**
206 * @tc.name  : Test AudioConnectedDevice.
207 * @tc.number: AudioConnectedDeviceUnitTest_011.
208 * @tc.desc  : Test GetConnectedDeviceByType.
209 */
210 HWTEST_F(AudioConnectedDeviceUnitTest, AudioConnectedDeviceUnitTest_011, TestSize.Level1)
211 {
212     std::string networkId = "test";
213     std::string macAddress = "macAddress";
214     auto audioConnectedDevice = std::make_shared<AudioConnectedDevice>();
215     auto desc = std::make_shared<AudioDeviceDescriptor>(DeviceType::DEVICE_TYPE_DP, DeviceRole::OUTPUT_DEVICE);
216     desc->networkId_ = networkId;
217     desc->macAddress_ = "test1";
218     audioConnectedDevice->connectedDevices_.push_back(desc);
219     auto result = audioConnectedDevice->GetConnectedDeviceByType(networkId, DeviceType::DEVICE_TYPE_DP, macAddress);
220     EXPECT_EQ(result, nullptr);
221 
222     result = audioConnectedDevice->GetConnectedDeviceByType(networkId, DeviceType::DEVICE_TYPE_EARPIECE, macAddress);
223     EXPECT_EQ(result, nullptr);
224 }
225 
226 /**
227 * @tc.name  : Test AudioConnectedDevice.
228 * @tc.number: AudioConnectedDeviceUnitTest_012.
229 * @tc.desc  : Test GetConnectedDeviceByType.
230 */
231 HWTEST_F(AudioConnectedDeviceUnitTest, AudioConnectedDeviceUnitTest_012, TestSize.Level1)
232 {
233     std::string networkId = "test";
234     std::string macAddress = "macAddress";
235     auto audioConnectedDevice = std::make_shared<AudioConnectedDevice>();
236     auto desc = std::make_shared<AudioDeviceDescriptor>(DeviceType::DEVICE_TYPE_DP, DeviceRole::OUTPUT_DEVICE);
237     desc->networkId_ = "networkId";
238     desc->macAddress_ = "test1";
239     audioConnectedDevice->connectedDevices_.push_back(desc);
240     auto result = audioConnectedDevice->GetConnectedDeviceByType(networkId, DeviceType::DEVICE_TYPE_DP, macAddress);
241     EXPECT_EQ(result, nullptr);
242 
243     result = audioConnectedDevice->GetConnectedDeviceByType(networkId, DeviceType::DEVICE_TYPE_EARPIECE,
244         macAddress);
245     EXPECT_EQ(result, nullptr);
246 }
247 
248 /**
249 * @tc.name  : Test AudioConnectedDevice.
250 * @tc.number: AudioConnectedDeviceUnitTest_013.
251 * @tc.desc  : Test UpdateConnectDevice.
252 */
253 HWTEST_F(AudioConnectedDeviceUnitTest, AudioConnectedDeviceUnitTest_013, TestSize.Level1)
254 {
255     std::string macAddress = "macAddress";
256     std::string deviceName = "deviceName";
257     AudioStreamInfo streamInfo;
258     auto audioConnectedDevice = std::make_shared<AudioConnectedDevice>();
259     audioConnectedDevice->UpdateConnectDevice(DeviceType::DEVICE_TYPE_DP, macAddress, deviceName, streamInfo);
260     EXPECT_NE(audioConnectedDevice, nullptr);
261 
262     auto desc = std::make_shared<AudioDeviceDescriptor>(DeviceType::DEVICE_TYPE_DP, DeviceRole::OUTPUT_DEVICE);
263     desc->macAddress_ = macAddress;
264     audioConnectedDevice->connectedDevices_.push_back(desc);
265     audioConnectedDevice->UpdateConnectDevice(DeviceType::DEVICE_TYPE_DP, macAddress, deviceName, streamInfo);
266     EXPECT_NE(audioConnectedDevice, nullptr);
267 }
268 
269 /**
270 * @tc.name  : Test AudioConnectedDevice.
271 * @tc.number: AudioConnectedDeviceUnitTest_014.
272 * @tc.desc  : Test GetUsbDeviceDescriptor.
273 */
274 HWTEST_F(AudioConnectedDeviceUnitTest, AudioConnectedDeviceUnitTest_014, TestSize.Level1)
275 {
276     std::string address = "test";
277     auto audioConnectedDevice = std::make_shared<AudioConnectedDevice>();
278     auto result = audioConnectedDevice->GetUsbDeviceDescriptor(address, DeviceRole::INPUT_DEVICE);
279     EXPECT_NE(audioConnectedDevice, nullptr);
280 }
281 } // namespace AudioStandard
282 } // namespace OHOS