1 /*
2 * Copyright (c) 2021 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 "resource_manager_test.h"
17
18 #include <vector>
19
20 #include "capability_info.h"
21 #define private public
22 #include "capability_info_manager.h"
23 #undef private
24 #include "dh_context.h"
25 #include "distributed_hardware_errno.h"
26 #include "distributed_hardware_log.h"
27
28 using namespace testing::ext;
29 using namespace std;
30
31 namespace OHOS {
32 namespace DistributedHardware {
33 #undef DH_LOG_TAG
34 #define DH_LOG_TAG "ResourceManagerTest"
35
36 namespace {
37 const string DEV_ID_0 = "bb536a637105409e904d4da83790a4a7";
38 const string DEV_ID_1 = "bb536a637105409e904d4da83790a4a8";
39 const string DEV_NAME = "Dev1";
40 const string DH_ID_0 = "Camera_0";
41 const string DH_ID_1 = "Mic_0";
42 const string DH_ID_2 = "Speaker_0";
43 const string DH_ID_3 = "Display_0";
44 const string DH_ID_4 = "Input_0";
45 const string DH_ATTR_0 = "attr0";
46 const string DH_ATTR_1 = "attr1";
47 constexpr uint16_t TEST_DEV_TYPE_PAD = 0x11;
48 constexpr uint32_t TEST_DH_TYPE_CAMERA = 0x01;
49 constexpr uint32_t TEST_DH_TYPE_MIC = 0x02;
50 constexpr uint32_t TEST_DH_TYPE_SPEAKER = 0x4;
51 constexpr uint32_t TEST_DH_TYPE_DISPLAY = 0x08;
52 constexpr uint32_t TEST_DH_TYPE_BUTTON = 0x20;
53 constexpr uint32_t TEST_SIZE_0 = 0;
54 constexpr uint32_t TEST_SIZE_2 = 2;
55 constexpr uint32_t TEST_SIZE_5 = 5;
56 constexpr uint32_t TEST_SIZE_10 = 10;
57 const std::string EMPTY_PREFIX = "";
58
59 const shared_ptr<CapabilityInfo> CAP_INFO_0 =
60 make_shared<CapabilityInfo>(DH_ID_0, DEV_ID_0, DEV_NAME, TEST_DEV_TYPE_PAD, DHType::CAMERA, DH_ATTR_0);
61 const shared_ptr<CapabilityInfo> CAP_INFO_1 =
62 make_shared<CapabilityInfo>(DH_ID_1, DEV_ID_0, DEV_NAME, TEST_DEV_TYPE_PAD, DHType::MIC, DH_ATTR_0);
63 const shared_ptr<CapabilityInfo> CAP_INFO_2 =
64 make_shared<CapabilityInfo>(DH_ID_2, DEV_ID_0, DEV_NAME, TEST_DEV_TYPE_PAD, DHType::SPEAKER, DH_ATTR_0);
65 const shared_ptr<CapabilityInfo> CAP_INFO_3 =
66 make_shared<CapabilityInfo>(DH_ID_3, DEV_ID_0, DEV_NAME, TEST_DEV_TYPE_PAD, DHType::DISPLAY, DH_ATTR_0);
67 const shared_ptr<CapabilityInfo> CAP_INFO_4 =
68 make_shared<CapabilityInfo>(DH_ID_4, DEV_ID_0, DEV_NAME, TEST_DEV_TYPE_PAD, DHType::BUTTON, DH_ATTR_0);
69
70 const shared_ptr<CapabilityInfo> CAP_INFO_5 =
71 make_shared<CapabilityInfo>(DH_ID_0, DEV_ID_1, DEV_NAME, TEST_DEV_TYPE_PAD, DHType::CAMERA, DH_ATTR_1);
72 const shared_ptr<CapabilityInfo> CAP_INFO_6 =
73 make_shared<CapabilityInfo>(DH_ID_1, DEV_ID_1, DEV_NAME, TEST_DEV_TYPE_PAD, DHType::MIC, DH_ATTR_1);
74 const shared_ptr<CapabilityInfo> CAP_INFO_7 =
75 make_shared<CapabilityInfo>(DH_ID_2, DEV_ID_1, DEV_NAME, TEST_DEV_TYPE_PAD, DHType::SPEAKER, DH_ATTR_1);
76 const shared_ptr<CapabilityInfo> CAP_INFO_8 =
77 make_shared<CapabilityInfo>(DH_ID_3, DEV_ID_1, DEV_NAME, TEST_DEV_TYPE_PAD, DHType::DISPLAY, DH_ATTR_1);
78 const shared_ptr<CapabilityInfo> CAP_INFO_9 =
79 make_shared<CapabilityInfo>(DH_ID_4, DEV_ID_1, DEV_NAME, TEST_DEV_TYPE_PAD, DHType::BUTTON, DH_ATTR_1);
80 }
81
SetUpTestCase(void)82 void ResourceManagerTest::SetUpTestCase(void) {}
83
TearDownTestCase(void)84 void ResourceManagerTest::TearDownTestCase(void) {}
85
SetUp()86 void ResourceManagerTest::SetUp()
87 {
88 vector<shared_ptr<CapabilityInfo>> resInfos { CAP_INFO_0, CAP_INFO_1, CAP_INFO_2, CAP_INFO_3, CAP_INFO_4,
89 CAP_INFO_5, CAP_INFO_6, CAP_INFO_7, CAP_INFO_8, CAP_INFO_9 };
90 CapabilityInfoManager::GetInstance()->AddCapability(resInfos);
91 }
92
TearDown()93 void ResourceManagerTest::TearDown()
94 {
95 CapabilityInfoManager::GetInstance()->RemoveCapabilityInfoByKey(CAP_INFO_0->GetKey());
96 CapabilityInfoManager::GetInstance()->RemoveCapabilityInfoByKey(CAP_INFO_1->GetKey());
97 CapabilityInfoManager::GetInstance()->RemoveCapabilityInfoByKey(CAP_INFO_2->GetKey());
98 CapabilityInfoManager::GetInstance()->RemoveCapabilityInfoByKey(CAP_INFO_3->GetKey());
99 CapabilityInfoManager::GetInstance()->RemoveCapabilityInfoByKey(CAP_INFO_4->GetKey());
100 CapabilityInfoManager::GetInstance()->RemoveCapabilityInfoByKey(CAP_INFO_5->GetKey());
101 CapabilityInfoManager::GetInstance()->RemoveCapabilityInfoByKey(CAP_INFO_6->GetKey());
102 CapabilityInfoManager::GetInstance()->RemoveCapabilityInfoByKey(CAP_INFO_7->GetKey());
103 CapabilityInfoManager::GetInstance()->RemoveCapabilityInfoByKey(CAP_INFO_8->GetKey());
104 CapabilityInfoManager::GetInstance()->RemoveCapabilityInfoByKey(CAP_INFO_9->GetKey());
105 }
106
107 /**
108 * @tc.name: resource_manager_test_001
109 * @tc.desc: Verify the CapabilityInfoManager UnInit function.
110 * @tc.type: FUNC
111 * @tc.require: AR000GHSJE
112 */
113 HWTEST_F(ResourceManagerTest, resource_manager_test_001, TestSize.Level0)
114 {
115 EXPECT_EQ(CapabilityInfoManager::GetInstance()->Init(), DH_FWK_SUCCESS);
116 EXPECT_EQ(CapabilityInfoManager::GetInstance()->UnInit(), DH_FWK_SUCCESS);
117 }
118
119 /**
120 * @tc.name: resource_manager_test_002
121 * @tc.desc: Verify the CapabilityInfoManager Init function.
122 * @tc.type: FUNC
123 * @tc.require: AR000GHSCV
124 */
125 HWTEST_F(ResourceManagerTest, resource_manager_test_002, TestSize.Level0)
126 {
127 EXPECT_EQ(CapabilityInfoManager::GetInstance()->Init(), DH_FWK_SUCCESS);
128 }
129
130 /**
131 * @tc.name: resource_manager_test_003
132 * @tc.desc: Verify the CapabilityInfoManager SyncDeviceInfoFromDB function.
133 * @tc.type: FUNC
134 * @tc.require: AR000GHSJE
135 */
136 HWTEST_F(ResourceManagerTest, resource_manager_test_003, TestSize.Level0)
137 {
138 CapabilityInfoManager::GetInstance()->globalCapInfoMap_.clear();
139 EXPECT_EQ(CapabilityInfoManager::GetInstance()->SyncDeviceInfoFromDB(DEV_ID_0), DH_FWK_SUCCESS);
140 EXPECT_EQ(CapabilityInfoManager::GetInstance()->globalCapInfoMap_.size(), TEST_SIZE_5);
141 EXPECT_EQ(CapabilityInfoManager::GetInstance()->SyncDeviceInfoFromDB(DEV_ID_1), DH_FWK_SUCCESS);
142 EXPECT_EQ(CapabilityInfoManager::GetInstance()->globalCapInfoMap_.size(), TEST_SIZE_10);
143 }
144
145 /**
146 * @tc.name: resource_manager_test_004
147 * @tc.desc: Verify the CapabilityInfoManager SyncRemoteCapabilityInfos function.
148 * @tc.type: FUNC
149 * @tc.require: AR000GHSJE
150 */
151 HWTEST_F(ResourceManagerTest, resource_manager_test_004, TestSize.Level0)
152 {
153 CapabilityInfoManager::GetInstance()->globalCapInfoMap_.clear();
154 EXPECT_EQ(CapabilityInfoManager::GetInstance()->SyncRemoteCapabilityInfos(), DH_FWK_SUCCESS);
155 }
156
157 /**
158 * @tc.name: resource_manager_test_005
159 * @tc.desc: Verify the CapabilityInfoManager AddCapability function.
160 * @tc.type: FUNC
161 * @tc.require: AR000GHSCV
162 */
163 HWTEST_F(ResourceManagerTest, resource_manager_test_005, TestSize.Level0)
164 {
165 vector<shared_ptr<CapabilityInfo>> resInfos { CAP_INFO_0, CAP_INFO_1, CAP_INFO_2, CAP_INFO_3, CAP_INFO_4,
166 CAP_INFO_5, CAP_INFO_6, CAP_INFO_7, CAP_INFO_8, CAP_INFO_9 };
167 EXPECT_EQ(CapabilityInfoManager::GetInstance()->AddCapability(resInfos), DH_FWK_SUCCESS);
168 EXPECT_EQ(CapabilityInfoManager::GetInstance()->globalCapInfoMap_.size(), TEST_SIZE_10);
169 }
170
171 /**
172 * @tc.name: resource_manager_test_006
173 * @tc.desc: Verify the CapabilityInfoManager AddCapabilityInMem function.
174 * @tc.type: FUNC
175 * @tc.require: AR000GHSCV
176 */
177 HWTEST_F(ResourceManagerTest, resource_manager_test_006, TestSize.Level0)
178 {
179 vector<shared_ptr<CapabilityInfo>> resInfos { CAP_INFO_0, CAP_INFO_1, CAP_INFO_2, CAP_INFO_3, CAP_INFO_4,
180 CAP_INFO_5, CAP_INFO_6, CAP_INFO_7, CAP_INFO_8, CAP_INFO_9 };
181 EXPECT_EQ(CapabilityInfoManager::GetInstance()->AddCapabilityInMem(resInfos), DH_FWK_SUCCESS);
182 EXPECT_EQ(CapabilityInfoManager::GetInstance()->globalCapInfoMap_.size(), TEST_SIZE_10);
183 }
184
185
186 /**
187 * @tc.name: resource_manager_test_007
188 * @tc.desc: Verify the CapabilityInfoManager RemoveCapabilityInfoByKey function.
189 * @tc.type: FUNC
190 * @tc.require: AR000GHSJE
191 */
192 HWTEST_F(ResourceManagerTest, resource_manager_test_007, TestSize.Level0)
193 {
194 EXPECT_EQ(CapabilityInfoManager::GetInstance()->RemoveCapabilityInfoByKey(CAP_INFO_0->GetKey()), DH_FWK_SUCCESS);
195 EXPECT_EQ(CapabilityInfoManager::GetInstance()->RemoveCapabilityInfoByKey(CAP_INFO_1->GetKey()), DH_FWK_SUCCESS);
196 EXPECT_EQ(CapabilityInfoManager::GetInstance()->RemoveCapabilityInfoByKey(CAP_INFO_2->GetKey()), DH_FWK_SUCCESS);
197 EXPECT_EQ(CapabilityInfoManager::GetInstance()->RemoveCapabilityInfoByKey(CAP_INFO_3->GetKey()), DH_FWK_SUCCESS);
198 EXPECT_EQ(CapabilityInfoManager::GetInstance()->RemoveCapabilityInfoByKey(CAP_INFO_4->GetKey()), DH_FWK_SUCCESS);
199 EXPECT_EQ(CapabilityInfoManager::GetInstance()->RemoveCapabilityInfoByKey(CAP_INFO_5->GetKey()), DH_FWK_SUCCESS);
200 EXPECT_EQ(CapabilityInfoManager::GetInstance()->RemoveCapabilityInfoByKey(CAP_INFO_6->GetKey()), DH_FWK_SUCCESS);
201 EXPECT_EQ(CapabilityInfoManager::GetInstance()->RemoveCapabilityInfoByKey(CAP_INFO_7->GetKey()), DH_FWK_SUCCESS);
202 EXPECT_EQ(CapabilityInfoManager::GetInstance()->RemoveCapabilityInfoByKey(CAP_INFO_8->GetKey()), DH_FWK_SUCCESS);
203 EXPECT_EQ(CapabilityInfoManager::GetInstance()->RemoveCapabilityInfoByKey(CAP_INFO_9->GetKey()), DH_FWK_SUCCESS);
204 EXPECT_EQ(CapabilityInfoManager::GetInstance()->globalCapInfoMap_.size(), TEST_SIZE_0);
205 }
206
207 /**
208 * @tc.name: resource_manager_test_008
209 * @tc.desc: Verify the CapabilityInfoManager QueryCapabilityByFilters function.
210 * @tc.type: FUNC
211 * @tc.require: AR000GHSJE
212 */
213 HWTEST_F(ResourceManagerTest, resource_manager_test_008, TestSize.Level0)
214 {
215 map<CapabilityInfoFilter, string> queryMap0 { { CapabilityInfoFilter::FILTER_DEVICE_ID, DEV_ID_0 } };
216 map<CapabilityInfoFilter, string> queryMap1 { { CapabilityInfoFilter::FILTER_DEVICE_ID, DEV_ID_1 } };
217 map<CapabilityInfoFilter, string> queryMap2 { { CapabilityInfoFilter::FILTER_DEVICE_NAME, DEV_NAME } };
218 map<CapabilityInfoFilter, string> queryMap3 { { CapabilityInfoFilter::FILTER_DH_ID, DH_ID_0 } };
219 map<CapabilityInfoFilter, string> queryMap4 { { CapabilityInfoFilter::FILTER_DH_ID, DH_ID_1 } };
220 map<CapabilityInfoFilter, string> queryMap5 { { CapabilityInfoFilter::FILTER_DH_ID, DH_ID_2 } };
221 map<CapabilityInfoFilter, string> queryMap6 { { CapabilityInfoFilter::FILTER_DH_ID, DH_ID_3 } };
222 map<CapabilityInfoFilter, string> queryMap7 { { CapabilityInfoFilter::FILTER_DH_ID, DH_ID_4 } };
223 map<CapabilityInfoFilter, string> queryMap8 { { CapabilityInfoFilter::FILTER_DEVICE_TYPE,
224 to_string(TEST_DEV_TYPE_PAD) } };
225 map<CapabilityInfoFilter, string> queryMap9 { { CapabilityInfoFilter::FILTER_DH_TYPE,
226 to_string(TEST_DH_TYPE_CAMERA) } };
227 map<CapabilityInfoFilter, string> queryMap10 { { CapabilityInfoFilter::FILTER_DH_TYPE,
228 to_string(TEST_DH_TYPE_MIC) } };
229 map<CapabilityInfoFilter, string> queryMap11 { { CapabilityInfoFilter::FILTER_DH_TYPE,
230 to_string(TEST_DH_TYPE_SPEAKER) } };
231 map<CapabilityInfoFilter, string> queryMap12 { { CapabilityInfoFilter::FILTER_DH_TYPE,
232 to_string(TEST_DH_TYPE_DISPLAY) } };
233 map<CapabilityInfoFilter, string> queryMap13 { { CapabilityInfoFilter::FILTER_DH_TYPE,
234 to_string(TEST_DH_TYPE_BUTTON) } };
235 EXPECT_EQ(CapabilityInfoManager::GetInstance()->QueryCapabilityByFilters(queryMap0).size(), TEST_SIZE_5);
236 EXPECT_EQ(CapabilityInfoManager::GetInstance()->QueryCapabilityByFilters(queryMap1).size(), TEST_SIZE_5);
237 EXPECT_EQ(CapabilityInfoManager::GetInstance()->QueryCapabilityByFilters(queryMap2).size(), TEST_SIZE_10);
238 EXPECT_EQ(CapabilityInfoManager::GetInstance()->QueryCapabilityByFilters(queryMap3).size(), TEST_SIZE_2);
239 EXPECT_EQ(CapabilityInfoManager::GetInstance()->QueryCapabilityByFilters(queryMap4).size(), TEST_SIZE_2);
240 EXPECT_EQ(CapabilityInfoManager::GetInstance()->QueryCapabilityByFilters(queryMap5).size(), TEST_SIZE_2);
241 EXPECT_EQ(CapabilityInfoManager::GetInstance()->QueryCapabilityByFilters(queryMap6).size(), TEST_SIZE_2);
242 EXPECT_EQ(CapabilityInfoManager::GetInstance()->QueryCapabilityByFilters(queryMap7).size(), TEST_SIZE_2);
243 EXPECT_EQ(CapabilityInfoManager::GetInstance()->QueryCapabilityByFilters(queryMap8).size(), TEST_SIZE_10);
244 EXPECT_EQ(CapabilityInfoManager::GetInstance()->QueryCapabilityByFilters(queryMap9).size(), TEST_SIZE_2);
245 EXPECT_EQ(CapabilityInfoManager::GetInstance()->QueryCapabilityByFilters(queryMap10).size(), TEST_SIZE_2);
246 EXPECT_EQ(CapabilityInfoManager::GetInstance()->QueryCapabilityByFilters(queryMap11).size(), TEST_SIZE_2);
247 EXPECT_EQ(CapabilityInfoManager::GetInstance()->QueryCapabilityByFilters(queryMap12).size(), TEST_SIZE_2);
248 EXPECT_EQ(CapabilityInfoManager::GetInstance()->QueryCapabilityByFilters(queryMap13).size(), TEST_SIZE_2);
249 }
250
251 /**
252 * @tc.name: resource_manager_test_009
253 * @tc.desc: Verify the HasCapability function.
254 * @tc.type: FUNC
255 * @tc.require: AR000GHSCV
256 */
257 HWTEST_F(ResourceManagerTest, resource_manager_test_009, TestSize.Level0)
258 {
259 EXPECT_EQ(CapabilityInfoManager::GetInstance()->HasCapability(DEV_ID_0, DH_ID_0), true);
260 EXPECT_EQ(CapabilityInfoManager::GetInstance()->HasCapability(DEV_ID_0, DH_ID_1), true);
261 EXPECT_EQ(CapabilityInfoManager::GetInstance()->HasCapability(DEV_ID_0, DH_ID_2), true);
262 EXPECT_EQ(CapabilityInfoManager::GetInstance()->HasCapability(DEV_ID_0, DH_ID_3), true);
263 EXPECT_EQ(CapabilityInfoManager::GetInstance()->HasCapability(DEV_ID_0, DH_ID_4), true);
264 EXPECT_EQ(CapabilityInfoManager::GetInstance()->HasCapability(DEV_ID_1, DH_ID_0), true);
265 EXPECT_EQ(CapabilityInfoManager::GetInstance()->HasCapability(DEV_ID_1, DH_ID_1), true);
266 EXPECT_EQ(CapabilityInfoManager::GetInstance()->HasCapability(DEV_ID_1, DH_ID_2), true);
267 EXPECT_EQ(CapabilityInfoManager::GetInstance()->HasCapability(DEV_ID_1, DH_ID_3), true);
268 EXPECT_EQ(CapabilityInfoManager::GetInstance()->HasCapability(DEV_ID_1, DH_ID_4), true);
269 }
270
271 /**
272 * @tc.name: resource_manager_test_010
273 * @tc.desc: Verify the GetCapabilitiesByDeviceId function.
274 * @tc.type: FUNC
275 * @tc.require: AR000GHSJE
276 */
277 HWTEST_F(ResourceManagerTest, resource_manager_test_010, TestSize.Level0)
278 {
279 vector<shared_ptr<CapabilityInfo>> capInfos;
280 CapabilityInfoManager::GetInstance()->GetCapabilitiesByDeviceId(DEV_ID_0, capInfos);
281 EXPECT_EQ(capInfos.size(), TEST_SIZE_5);
282 CapabilityInfoManager::GetInstance()->GetCapabilitiesByDeviceId(DEV_ID_1, capInfos);
283 EXPECT_EQ(capInfos.size(), TEST_SIZE_10);
284 }
285
286 /**
287 * @tc.name: resource_manager_test_011
288 * @tc.desc: Verify the GetCapability function.
289 * @tc.type: FUNC
290 * @tc.require: AR000GHSJE
291 */
292 HWTEST_F(ResourceManagerTest, resource_manager_test_011, TestSize.Level0)
293 {
294 shared_ptr<CapabilityInfo> capInfo;
295 EXPECT_EQ(CapabilityInfoManager::GetInstance()->GetCapability(DEV_ID_0, DH_ID_0, capInfo), DH_FWK_SUCCESS);
296 EXPECT_EQ(CapabilityInfoManager::GetInstance()->GetCapability(DEV_ID_0, DH_ID_1, capInfo), DH_FWK_SUCCESS);
297 EXPECT_EQ(CapabilityInfoManager::GetInstance()->GetCapability(DEV_ID_0, DH_ID_2, capInfo), DH_FWK_SUCCESS);
298 EXPECT_EQ(CapabilityInfoManager::GetInstance()->GetCapability(DEV_ID_0, DH_ID_3, capInfo), DH_FWK_SUCCESS);
299 EXPECT_EQ(CapabilityInfoManager::GetInstance()->GetCapability(DEV_ID_0, DH_ID_4, capInfo), DH_FWK_SUCCESS);
300 EXPECT_EQ(CapabilityInfoManager::GetInstance()->GetCapability(DEV_ID_1, DH_ID_0, capInfo), DH_FWK_SUCCESS);
301 EXPECT_EQ(CapabilityInfoManager::GetInstance()->GetCapability(DEV_ID_1, DH_ID_1, capInfo), DH_FWK_SUCCESS);
302 EXPECT_EQ(CapabilityInfoManager::GetInstance()->GetCapability(DEV_ID_1, DH_ID_2, capInfo), DH_FWK_SUCCESS);
303 EXPECT_EQ(CapabilityInfoManager::GetInstance()->GetCapability(DEV_ID_1, DH_ID_3, capInfo), DH_FWK_SUCCESS);
304 EXPECT_EQ(CapabilityInfoManager::GetInstance()->GetCapability(DEV_ID_1, DH_ID_4, capInfo), DH_FWK_SUCCESS);
305 }
306
307 /**
308 * @tc.name: resource_manager_test_012
309 * @tc.desc: Verify the GetDataByKey function.
310 * @tc.type: FUNC
311 * @tc.require: AR000GHSJE
312 */
313 HWTEST_F(ResourceManagerTest, resource_manager_test_012, TestSize.Level0)
314 {
315 shared_ptr<CapabilityInfo> capInfo;
316 EXPECT_EQ(CapabilityInfoManager::GetInstance()->GetDataByKey(CAP_INFO_0->GetKey(), capInfo), DH_FWK_SUCCESS);
317 EXPECT_EQ(CapabilityInfoManager::GetInstance()->GetDataByKey(CAP_INFO_1->GetKey(), capInfo), DH_FWK_SUCCESS);
318 EXPECT_EQ(CapabilityInfoManager::GetInstance()->GetDataByKey(CAP_INFO_2->GetKey(), capInfo), DH_FWK_SUCCESS);
319 EXPECT_EQ(CapabilityInfoManager::GetInstance()->GetDataByKey(CAP_INFO_3->GetKey(), capInfo), DH_FWK_SUCCESS);
320 EXPECT_EQ(CapabilityInfoManager::GetInstance()->GetDataByKey(CAP_INFO_4->GetKey(), capInfo), DH_FWK_SUCCESS);
321 EXPECT_EQ(CapabilityInfoManager::GetInstance()->GetDataByKey(CAP_INFO_5->GetKey(), capInfo), DH_FWK_SUCCESS);
322 EXPECT_EQ(CapabilityInfoManager::GetInstance()->GetDataByKey(CAP_INFO_6->GetKey(), capInfo), DH_FWK_SUCCESS);
323 EXPECT_EQ(CapabilityInfoManager::GetInstance()->GetDataByKey(CAP_INFO_7->GetKey(), capInfo), DH_FWK_SUCCESS);
324 EXPECT_EQ(CapabilityInfoManager::GetInstance()->GetDataByKey(CAP_INFO_8->GetKey(), capInfo), DH_FWK_SUCCESS);
325 EXPECT_EQ(CapabilityInfoManager::GetInstance()->GetDataByKey(CAP_INFO_9->GetKey(), capInfo), DH_FWK_SUCCESS);
326 }
327
328 /**
329 * @tc.name: resource_manager_test_013
330 * @tc.desc: Verify the GetDataByKeyPrefix function.
331 * @tc.type: FUNC
332 * @tc.require: AR000GHSJE
333 */
334 HWTEST_F(ResourceManagerTest, resource_manager_test_013, TestSize.Level0)
335 {
336 CapabilityInfoMap capMap;
337 EXPECT_EQ(CapabilityInfoManager::GetInstance()->GetDataByKeyPrefix(CAP_INFO_0->GetDeviceId(), capMap),
338 DH_FWK_SUCCESS);
339 EXPECT_EQ(CapabilityInfoManager::GetInstance()->GetDataByKeyPrefix(CAP_INFO_1->GetDeviceId(), capMap),
340 DH_FWK_SUCCESS);
341 EXPECT_EQ(CapabilityInfoManager::GetInstance()->GetDataByKeyPrefix(CAP_INFO_2->GetDeviceId(), capMap),
342 DH_FWK_SUCCESS);
343 EXPECT_EQ(CapabilityInfoManager::GetInstance()->GetDataByKeyPrefix(CAP_INFO_3->GetDeviceId(), capMap),
344 DH_FWK_SUCCESS);
345 EXPECT_EQ(CapabilityInfoManager::GetInstance()->GetDataByKeyPrefix(CAP_INFO_4->GetDeviceId(), capMap),
346 DH_FWK_SUCCESS);
347 EXPECT_EQ(CapabilityInfoManager::GetInstance()->GetDataByKeyPrefix(CAP_INFO_5->GetDeviceId(), capMap),
348 DH_FWK_SUCCESS);
349 EXPECT_EQ(CapabilityInfoManager::GetInstance()->GetDataByKeyPrefix(CAP_INFO_6->GetDeviceId(), capMap),
350 DH_FWK_SUCCESS);
351 EXPECT_EQ(CapabilityInfoManager::GetInstance()->GetDataByKeyPrefix(CAP_INFO_7->GetDeviceId(), capMap),
352 DH_FWK_SUCCESS);
353 EXPECT_EQ(CapabilityInfoManager::GetInstance()->GetDataByKeyPrefix(CAP_INFO_8->GetDeviceId(), capMap),
354 DH_FWK_SUCCESS);
355 EXPECT_EQ(CapabilityInfoManager::GetInstance()->GetDataByKeyPrefix(CAP_INFO_9->GetDeviceId(), capMap),
356 DH_FWK_SUCCESS);
357 EXPECT_EQ(capMap.size(), TEST_SIZE_10);
358 }
359 }
360 }
361