1 /*
2 * Copyright (c) 2021-2023 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 #include <gtest/gtest.h>
16 #include <servmgr_hdi.h>
17 #include <osal_mem.h>
18 #include "v1_1/iwpa_interface.h"
19 #include "wpa_callback_impl.h"
20 #include "securec.h"
21
22 #define IFNAME "wlan0"
23 #define CONFNAME "/data/service/el1/public/wifi/wpa_supplicant/wpa_supplicant.conf"
24
25 #define HDF_LOG_TAG service_manager_test
26 using namespace testing::ext;
27
28 namespace HdiTest {
29 const char *g_wlanServiceNameWpa = "wpa_interface_service";
30
31 class HdfWpaHostCTest : public testing::Test {
32 public:
33 static void SetUpTestCase();
34 static void TearDownTestCase();
35 void SetUp();
36 void TearDown();
37 };
38
39 static struct IWpaInterface *g_wpaObj = nullptr;
40 struct IWpaCallback *g_wpaCallbackObj = nullptr;
SetUpTestCase()41 void HdfWpaHostCTest::SetUpTestCase()
42 {
43 g_wpaObj = IWpaInterfaceGetInstance(g_wlanServiceNameWpa, false);
44 g_wpaCallbackObj = WpaCallbackServiceGet();
45 ASSERT_TRUE(g_wpaObj != nullptr);
46 ASSERT_TRUE(g_wpaCallbackObj != nullptr);
47 }
48
TearDownTestCase()49 void HdfWpaHostCTest::TearDownTestCase()
50 {
51 IWpaInterfaceReleaseInstance(g_wlanServiceNameWpa, g_wpaObj, false);
52 WpaCallbackServiceRelease(g_wpaCallbackObj);
53 }
54
SetUp()55 void HdfWpaHostCTest::SetUp()
56 {
57 int32_t rc = g_wpaObj->Start(g_wpaObj);
58 ASSERT_EQ(rc, HDF_SUCCESS);
59 }
60
TearDown()61 void HdfWpaHostCTest::TearDown()
62 {
63 int32_t rc = g_wpaObj->Stop(g_wpaObj);
64 ASSERT_EQ(rc, HDF_SUCCESS);
65 }
66
67 HWTEST_F(HdfWpaHostCTest, AddWpaIfaceTest_001, TestSize.Level1)
68 {
69 int32_t rc = g_wpaObj->AddWpaIface(g_wpaObj, IFNAME, CONFNAME);
70 ASSERT_EQ(rc, HDF_SUCCESS);
71 if (rc == HDF_SUCCESS) {
72 rc = g_wpaObj->RemoveWpaIface(g_wpaObj, IFNAME);
73 ASSERT_EQ(rc, HDF_SUCCESS);
74 }
75 }
76
77 HWTEST_F(HdfWpaHostCTest, ScanTest_002, TestSize.Level1)
78 {
79 int32_t rc = g_wpaObj->AddWpaIface(g_wpaObj, IFNAME, CONFNAME);
80 ASSERT_EQ(rc, HDF_SUCCESS);
81 if (rc == HDF_SUCCESS) {
82 rc = g_wpaObj->Scan(g_wpaObj, IFNAME);
83 ASSERT_EQ(rc, HDF_SUCCESS);
84 rc = g_wpaObj->RemoveWpaIface(g_wpaObj, IFNAME);
85 ASSERT_EQ(rc, HDF_SUCCESS);
86 }
87 }
88
89 HWTEST_F(HdfWpaHostCTest, ScanResultTest_003, TestSize.Level1)
90 {
91 unsigned char *resultBuf = (unsigned char *)calloc(4096 * 10, sizeof(unsigned char));
92 uint32_t resultBufLen = 4096 * 10;
93 int32_t rc = g_wpaObj->AddWpaIface(g_wpaObj, IFNAME, CONFNAME);
94 ASSERT_EQ(rc, HDF_SUCCESS);
95 if (rc == HDF_SUCCESS) {
96 rc = g_wpaObj->ScanResult(g_wpaObj, IFNAME, resultBuf, &resultBufLen);
97 ASSERT_EQ(rc, HDF_SUCCESS);
98 rc = g_wpaObj->RemoveWpaIface(g_wpaObj, IFNAME);
99 ASSERT_EQ(rc, HDF_SUCCESS);
100 }
101 free(resultBuf);
102 }
103
104 HWTEST_F(HdfWpaHostCTest, AddNetworkTest_004, TestSize.Level1)
105 {
106 int networkId = 0;
107 int32_t rc = g_wpaObj->AddWpaIface(g_wpaObj, IFNAME, CONFNAME);
108 ASSERT_EQ(rc, HDF_SUCCESS);
109 if (rc == HDF_SUCCESS) {
110 rc = g_wpaObj->AddNetwork(g_wpaObj, IFNAME, &networkId);
111 printf("networkId = %d\n", networkId);
112 ASSERT_EQ(rc, HDF_SUCCESS);
113 rc = g_wpaObj->RemoveWpaIface(g_wpaObj, IFNAME);
114 ASSERT_EQ(rc, HDF_SUCCESS);
115 }
116 }
117
118 HWTEST_F(HdfWpaHostCTest, RemoveNetworkTest_005, TestSize.Level1)
119 {
120 int networkId = 0;
121 int32_t rc = g_wpaObj->AddWpaIface(g_wpaObj, IFNAME, CONFNAME);
122 ASSERT_EQ(rc, HDF_SUCCESS);
123 if (rc == HDF_SUCCESS) {
124 rc = g_wpaObj->AddNetwork(g_wpaObj, IFNAME, &networkId);
125 printf("networkId = %d\n", networkId);
126 ASSERT_EQ(rc, HDF_SUCCESS);
127 rc = g_wpaObj->RemoveNetwork(g_wpaObj, IFNAME, networkId);
128 ASSERT_EQ(rc, HDF_SUCCESS);
129 rc = g_wpaObj->RemoveWpaIface(g_wpaObj, IFNAME);
130 ASSERT_EQ(rc, HDF_SUCCESS);
131 }
132 }
133
134 HWTEST_F(HdfWpaHostCTest, DisableNetworkTest_006, TestSize.Level1)
135 {
136 int networkId = 0;
137 int32_t rc = g_wpaObj->AddWpaIface(g_wpaObj, IFNAME, CONFNAME);
138 ASSERT_EQ(rc, HDF_SUCCESS);
139 if (rc == HDF_SUCCESS) {
140 rc = g_wpaObj->AddNetwork(g_wpaObj, IFNAME, &networkId);
141 printf("networkId = %d\n", networkId);
142 ASSERT_EQ(rc, HDF_SUCCESS);
143 rc = g_wpaObj->DisableNetwork(g_wpaObj, IFNAME, networkId);
144 ASSERT_EQ(rc, HDF_SUCCESS);
145 rc = g_wpaObj->RemoveWpaIface(g_wpaObj, IFNAME);
146 ASSERT_EQ(rc, HDF_SUCCESS);
147 }
148 }
149
150 HWTEST_F(HdfWpaHostCTest, SetNetworkTest_007, TestSize.Level1)
151 {
152 int networkId = 0;
153
154 int32_t rc = g_wpaObj->AddWpaIface(g_wpaObj, IFNAME, CONFNAME);
155 ASSERT_EQ(rc, HDF_SUCCESS);
156 if (rc == HDF_SUCCESS) {
157 rc = g_wpaObj->AddNetwork(g_wpaObj, IFNAME, &networkId);
158 printf("networkId = %d\n", networkId);
159 ASSERT_EQ(rc, HDF_SUCCESS);
160 rc = g_wpaObj->SetNetwork(g_wpaObj, IFNAME, networkId, "ssid", "WIFI_5G");
161 ASSERT_EQ(rc, HDF_SUCCESS);
162 rc = g_wpaObj->SetNetwork(g_wpaObj, IFNAME, networkId, "key_mgmt", "WPA-PSK");
163 ASSERT_EQ(rc, HDF_SUCCESS);
164 rc = g_wpaObj->SetNetwork(g_wpaObj, IFNAME, networkId, "psk", "123456789");
165 ASSERT_EQ(rc, HDF_SUCCESS);
166 rc = g_wpaObj->RemoveWpaIface(g_wpaObj, IFNAME);
167 ASSERT_EQ(rc, HDF_SUCCESS);
168 }
169 }
170
171 HWTEST_F(HdfWpaHostCTest, ListNetworksTest_008, TestSize.Level1)
172 {
173 int networkId = 0;
174 struct HdiWifiWpaNetworkInfo networkInfo;
175 (void)memset_s(
176 &networkInfo, sizeof(struct HdiWifiWpaNetworkInfo), 0, sizeof(struct HdiWifiWpaNetworkInfo));
177 const char *ifNameInvalid = "wlanTest";
178 uint32_t networkInfoLen = 0;
179 int32_t rc = g_wpaObj->AddWpaIface(g_wpaObj, IFNAME, CONFNAME);
180 ASSERT_EQ(rc, HDF_SUCCESS);
181 if (rc == HDF_SUCCESS) {
182 rc = g_wpaObj->AddNetwork(g_wpaObj, IFNAME, &networkId);
183 printf("networkId = %d\n", networkId);
184 ASSERT_EQ(rc, HDF_SUCCESS);
185 rc = g_wpaObj->ListNetworks(g_wpaObj, ifNameInvalid, (struct HdiWifiWpaNetworkInfo *)&networkInfo,
186 &networkInfoLen);
187 ASSERT_EQ(rc, HDF_SUCCESS);
188 rc = g_wpaObj->ListNetworks(g_wpaObj, IFNAME, (struct HdiWifiWpaNetworkInfo *)&networkInfo, &networkInfoLen);
189 ASSERT_EQ(rc, HDF_SUCCESS);
190 rc = g_wpaObj->RemoveWpaIface(g_wpaObj, IFNAME);
191 ASSERT_EQ(rc, HDF_SUCCESS);
192 }
193 }
194
195 HWTEST_F(HdfWpaHostCTest, SelectNetworkTest_009, TestSize.Level1)
196 {
197 int networkId = 0;
198
199 int32_t rc = g_wpaObj->AddWpaIface(g_wpaObj, IFNAME, CONFNAME);
200 ASSERT_EQ(rc, HDF_SUCCESS);
201 if (rc == HDF_SUCCESS) {
202 rc = g_wpaObj->AddNetwork(g_wpaObj, IFNAME, &networkId);
203 printf("networkId = %d\n", networkId);
204 ASSERT_EQ(rc, HDF_SUCCESS);
205 rc = g_wpaObj->SetNetwork(g_wpaObj, IFNAME, networkId, "ssid", "WIFI_5G");
206 ASSERT_EQ(rc, HDF_SUCCESS);
207 rc = g_wpaObj->SetNetwork(g_wpaObj, IFNAME, networkId, "key_mgmt", "WPA-PSK");
208 ASSERT_EQ(rc, HDF_SUCCESS);
209 rc = g_wpaObj->SetNetwork(g_wpaObj, IFNAME, networkId, "psk", "123456789");
210 ASSERT_EQ(rc, HDF_SUCCESS);
211 rc = g_wpaObj->SelectNetwork(g_wpaObj, IFNAME, networkId);
212 ASSERT_EQ(rc, HDF_SUCCESS);
213 rc = g_wpaObj->RemoveWpaIface(g_wpaObj, IFNAME);
214 ASSERT_EQ(rc, HDF_SUCCESS);
215 }
216 }
217
218 HWTEST_F(HdfWpaHostCTest, EnableNetworkTest_010, TestSize.Level1)
219 {
220 int networkId = 0;
221 int32_t rc = g_wpaObj->AddWpaIface(g_wpaObj, IFNAME, CONFNAME);
222 ASSERT_EQ(rc, HDF_SUCCESS);
223 if (rc == HDF_SUCCESS) {
224 rc = g_wpaObj->AddNetwork(g_wpaObj, IFNAME, &networkId);
225 printf("networkId = %d\n", networkId);
226 ASSERT_EQ(rc, HDF_SUCCESS);
227 rc = g_wpaObj->DisableNetwork(g_wpaObj, IFNAME, networkId);
228 ASSERT_EQ(rc, HDF_SUCCESS);
229 rc = g_wpaObj->EnableNetwork(g_wpaObj, IFNAME, networkId);
230 ASSERT_EQ(rc, HDF_SUCCESS);
231 rc = g_wpaObj->RemoveWpaIface(g_wpaObj, IFNAME);
232 ASSERT_EQ(rc, HDF_SUCCESS);
233 }
234 }
235
236 HWTEST_F(HdfWpaHostCTest, ReconnectTest_011, TestSize.Level1)
237 {
238 int networkId = 0;
239
240 int32_t rc = g_wpaObj->AddWpaIface(g_wpaObj, IFNAME, CONFNAME);
241 ASSERT_EQ(rc, HDF_SUCCESS);
242 if (rc == HDF_SUCCESS) {
243 rc = g_wpaObj->AddNetwork(g_wpaObj, IFNAME, &networkId);
244 printf("networkId = %d\n", networkId);
245 ASSERT_EQ(rc, HDF_SUCCESS);
246 rc = g_wpaObj->SetNetwork(g_wpaObj, IFNAME, networkId, "ssid", "WIFI_5G");
247 ASSERT_EQ(rc, HDF_SUCCESS);
248 rc = g_wpaObj->SetNetwork(g_wpaObj, IFNAME, networkId, "key_mgmt", "WPA-PSK");
249 ASSERT_EQ(rc, HDF_SUCCESS);
250 rc = g_wpaObj->SetNetwork(g_wpaObj, IFNAME, networkId, "psk", "123456789");
251 ASSERT_EQ(rc, HDF_SUCCESS);
252 rc = g_wpaObj->SelectNetwork(g_wpaObj, IFNAME, networkId);
253 ASSERT_EQ(rc, HDF_SUCCESS);
254 rc = g_wpaObj->Reconnect(g_wpaObj, IFNAME);
255 ASSERT_EQ(rc, HDF_SUCCESS);
256 rc = g_wpaObj->RemoveWpaIface(g_wpaObj, IFNAME);
257 ASSERT_EQ(rc, HDF_SUCCESS);
258 }
259 }
260
261 HWTEST_F(HdfWpaHostCTest, DisconnectTest_012, TestSize.Level1)
262 {
263 int networkId = 0;
264
265 int32_t rc = g_wpaObj->AddWpaIface(g_wpaObj, IFNAME, CONFNAME);
266 ASSERT_EQ(rc, HDF_SUCCESS);
267 if (rc == HDF_SUCCESS) {
268 rc = g_wpaObj->AddNetwork(g_wpaObj, IFNAME, &networkId);
269 printf("networkId = %d\n", networkId);
270 ASSERT_EQ(rc, HDF_SUCCESS);
271 rc = g_wpaObj->SetNetwork(g_wpaObj, IFNAME, networkId, "ssid", "WIFI_5G");
272 ASSERT_EQ(rc, HDF_SUCCESS);
273 rc = g_wpaObj->SetNetwork(g_wpaObj, IFNAME, networkId, "key_mgmt", "WPA-PSK");
274 ASSERT_EQ(rc, HDF_SUCCESS);
275 rc = g_wpaObj->SetNetwork(g_wpaObj, IFNAME, networkId, "psk", "123456789");
276 ASSERT_EQ(rc, HDF_SUCCESS);
277 rc = g_wpaObj->SelectNetwork(g_wpaObj, IFNAME, networkId);
278 ASSERT_EQ(rc, HDF_SUCCESS);
279 rc = g_wpaObj->Disconnect(g_wpaObj, IFNAME);
280 ASSERT_EQ(rc, HDF_SUCCESS);
281 rc = g_wpaObj->RemoveWpaIface(g_wpaObj, IFNAME);
282 ASSERT_EQ(rc, HDF_SUCCESS);
283 }
284 }
285
286 HWTEST_F(HdfWpaHostCTest, SaveConfigTest_013, TestSize.Level1)
287 {
288 int32_t rc = g_wpaObj->AddWpaIface(g_wpaObj, IFNAME, CONFNAME);
289 ASSERT_EQ(rc, HDF_SUCCESS);
290 if (rc == HDF_SUCCESS) {
291 rc = g_wpaObj->SaveConfig(g_wpaObj, IFNAME);
292 ASSERT_EQ(rc, HDF_SUCCESS);
293 rc = g_wpaObj->RemoveWpaIface(g_wpaObj, IFNAME);
294 ASSERT_EQ(rc, HDF_SUCCESS);
295 }
296 }
297
298 HWTEST_F(HdfWpaHostCTest, SetPowerSaveTest_014, TestSize.Level1)
299 {
300 int32_t rc = g_wpaObj->AddWpaIface(g_wpaObj, IFNAME, CONFNAME);
301 ASSERT_EQ(rc, HDF_SUCCESS);
302 if (rc == HDF_SUCCESS) {
303 rc = g_wpaObj->SetPowerSave(g_wpaObj, IFNAME, 0);
304 ASSERT_EQ(rc, HDF_SUCCESS);
305 rc = g_wpaObj->SetPowerSave(g_wpaObj, IFNAME, 1);
306 ASSERT_EQ(rc, HDF_SUCCESS);
307 rc = g_wpaObj->RemoveWpaIface(g_wpaObj, IFNAME);
308 ASSERT_EQ(rc, HDF_SUCCESS);
309 }
310 }
311
312 HWTEST_F(HdfWpaHostCTest, AutoConnectTest_015, TestSize.Level1)
313 {
314 int32_t rc = g_wpaObj->AddWpaIface(g_wpaObj, IFNAME, CONFNAME);
315 ASSERT_EQ(rc, HDF_SUCCESS);
316 if (rc == HDF_SUCCESS) {
317 rc = g_wpaObj->AutoConnect(g_wpaObj, IFNAME, 0);
318 ASSERT_EQ(rc, HDF_SUCCESS);
319 rc = g_wpaObj->AutoConnect(g_wpaObj, IFNAME, 1);
320 ASSERT_EQ(rc, HDF_SUCCESS);
321 rc = g_wpaObj->RemoveWpaIface(g_wpaObj, IFNAME);
322 ASSERT_EQ(rc, HDF_SUCCESS);
323 }
324 }
325
326 HWTEST_F(HdfWpaHostCTest, WifiStatusTest_016, TestSize.Level1)
327 {
328 struct HdiWpaCmdStatus wifiStatus;
329 (void)memset_s(
330 &wifiStatus, sizeof(struct HdiWpaCmdStatus), 0, sizeof(struct HdiWpaCmdStatus));
331
332 int32_t rc = g_wpaObj->AddWpaIface(g_wpaObj, IFNAME, CONFNAME);
333 ASSERT_EQ(rc, HDF_SUCCESS);
334 if (rc == HDF_SUCCESS) {
335 rc = g_wpaObj->WifiStatus(g_wpaObj, IFNAME, &wifiStatus);
336 ASSERT_EQ(rc, HDF_SUCCESS);
337 rc = g_wpaObj->RemoveWpaIface(g_wpaObj, IFNAME);
338 ASSERT_EQ(rc, HDF_SUCCESS);
339 }
340 }
341
342 HWTEST_F(HdfWpaHostCTest, WpsPbcModeTest_017, TestSize.Level1)
343 {
344 struct HdiWifiWpsParam wpsParam;
345 (void)memset_s(&wpsParam, sizeof(struct HdiWifiWpsParam), 0, sizeof(struct HdiWifiWpsParam));
346 wpsParam.anyFlag = 1;
347 wpsParam.multiAp = 1;
348 wpsParam.bssidLen = 6;
349 wpsParam.bssid = (uint8_t *)OsalMemCalloc(sizeof(uint8_t) * (wpsParam.bssidLen));
350 wpsParam.bssid[0] = 0x12;
351 wpsParam.bssid[1] = 0x34;
352 wpsParam.bssid[2] = 0x56;
353 wpsParam.bssid[3] = 0x78;
354 wpsParam.bssid[4] = 0xab;
355 wpsParam.bssid[5] = 0xcd;
356
357 int32_t rc = g_wpaObj->AddWpaIface(g_wpaObj, IFNAME, CONFNAME);
358 ASSERT_EQ(rc, HDF_SUCCESS);
359 if (rc == HDF_SUCCESS) {
360 rc = g_wpaObj->WpsPbcMode(g_wpaObj, IFNAME, &wpsParam);
361 ASSERT_EQ(rc, HDF_SUCCESS);
362 rc = g_wpaObj->WpsPbcMode(g_wpaObj, IFNAME, NULL);
363 ASSERT_EQ(rc, HDF_FAILURE);
364 rc = g_wpaObj->RemoveWpaIface(g_wpaObj, IFNAME);
365 ASSERT_EQ(rc, HDF_SUCCESS);
366 }
367 OsalMemFree(wpsParam.bssid);
368 }
369
370 HWTEST_F(HdfWpaHostCTest, WpsPinModeTest_018, TestSize.Level1)
371 {
372 struct HdiWifiWpsParam wpsParam;
373 (void)memset_s(&wpsParam, sizeof(struct HdiWifiWpsParam), 0, sizeof(struct HdiWifiWpsParam));
374 wpsParam.anyFlag = 1;
375 wpsParam.multiAp = 1;
376 wpsParam.bssidLen = 6;
377 wpsParam.bssid = (uint8_t *)OsalMemCalloc(sizeof(uint8_t) * (wpsParam.bssidLen));
378 wpsParam.bssid[0] = 0x12;
379 wpsParam.bssid[1] = 0x34;
380 wpsParam.bssid[2] = 0x56;
381 wpsParam.bssid[3] = 0x78;
382 wpsParam.bssid[4] = 0xab;
383 wpsParam.bssid[5] = 0xcd;
384
385 int pinCode = 0;
386 int32_t rc = g_wpaObj->AddWpaIface(g_wpaObj, IFNAME, CONFNAME);
387 ASSERT_EQ(rc, HDF_SUCCESS);
388 if (rc == HDF_SUCCESS) {
389 rc = g_wpaObj->WpsPinMode(g_wpaObj, IFNAME, &wpsParam, &pinCode);
390 ASSERT_EQ(rc, HDF_SUCCESS);
391 rc = g_wpaObj->WpsPinMode(g_wpaObj, IFNAME, NULL, &pinCode);
392 ASSERT_EQ(rc, HDF_FAILURE);
393 rc = g_wpaObj->RemoveWpaIface(g_wpaObj, IFNAME);
394 ASSERT_EQ(rc, HDF_SUCCESS);
395 }
396 OsalMemFree(wpsParam.bssid);
397 }
398
399 HWTEST_F(HdfWpaHostCTest, WpsCancelTest_019, TestSize.Level1)
400 {
401 int32_t rc = g_wpaObj->AddWpaIface(g_wpaObj, IFNAME, CONFNAME);
402 ASSERT_EQ(rc, HDF_SUCCESS);
403 if (rc == HDF_SUCCESS) {
404 rc = g_wpaObj->WpsCancel(g_wpaObj, IFNAME);
405 ASSERT_EQ(rc, HDF_SUCCESS);
406 rc = g_wpaObj->RemoveWpaIface(g_wpaObj, IFNAME);
407 ASSERT_EQ(rc, HDF_SUCCESS);
408 }
409 }
410
411 HWTEST_F(HdfWpaHostCTest, GetCountryCodeTest_020, TestSize.Level1)
412 {
413 char countryCode[3] = {0};
414 int32_t rc = g_wpaObj->AddWpaIface(g_wpaObj, IFNAME, CONFNAME);
415 ASSERT_EQ(rc, HDF_SUCCESS);
416 if (rc == HDF_SUCCESS) {
417 rc = g_wpaObj->GetCountryCode(g_wpaObj, IFNAME, countryCode, 3);
418 ASSERT_EQ(rc, HDF_SUCCESS);
419 rc = g_wpaObj->RemoveWpaIface(g_wpaObj, IFNAME);
420 ASSERT_EQ(rc, HDF_SUCCESS);
421 }
422 }
423
424 HWTEST_F(HdfWpaHostCTest, GetNetworkTest_021, TestSize.Level1)
425 {
426 int networkId = 0;
427 char value[32] = {0};
428 int32_t rc = g_wpaObj->AddWpaIface(g_wpaObj, IFNAME, CONFNAME);
429 ASSERT_EQ(rc, HDF_SUCCESS);
430 if (rc == HDF_SUCCESS) {
431 rc = g_wpaObj->AddNetwork(g_wpaObj, IFNAME, &networkId);
432 printf("networkId = %d\n", networkId);
433 ASSERT_EQ(rc, HDF_SUCCESS);
434 rc = g_wpaObj->GetNetwork(g_wpaObj, IFNAME, networkId, "ssid", value, 32);
435 ASSERT_EQ(rc, HDF_SUCCESS);
436 rc = g_wpaObj->RemoveWpaIface(g_wpaObj, IFNAME);
437 ASSERT_EQ(rc, HDF_SUCCESS);
438 }
439 }
440
441 HWTEST_F(HdfWpaHostCTest, BlocklistClearTest_022, TestSize.Level1)
442 {
443 int32_t rc = g_wpaObj->AddWpaIface(g_wpaObj, IFNAME, CONFNAME);
444 ASSERT_EQ(rc, HDF_SUCCESS);
445 if (rc == HDF_SUCCESS) {
446 rc = g_wpaObj->BlocklistClear(g_wpaObj, IFNAME);
447 ASSERT_EQ(rc, HDF_SUCCESS);
448 rc = g_wpaObj->RemoveWpaIface(g_wpaObj, IFNAME);
449 ASSERT_EQ(rc, HDF_SUCCESS);
450 }
451 }
452
453 HWTEST_F(HdfWpaHostCTest, SetSuspendModeTest_023, TestSize.Level1)
454 {
455 int32_t rc = g_wpaObj->AddWpaIface(g_wpaObj, IFNAME, CONFNAME);
456 ASSERT_EQ(rc, HDF_SUCCESS);
457 if (rc == HDF_SUCCESS) {
458 rc = g_wpaObj->SetSuspendMode(g_wpaObj, IFNAME, 0);
459 ASSERT_EQ(rc, HDF_SUCCESS);
460 rc = g_wpaObj->SetSuspendMode(g_wpaObj, IFNAME, 1);
461 ASSERT_EQ(rc, HDF_SUCCESS);
462 rc = g_wpaObj->RemoveWpaIface(g_wpaObj, IFNAME);
463 ASSERT_EQ(rc, HDF_SUCCESS);
464 }
465 }
466
467 HWTEST_F(HdfWpaHostCTest, RegisterEventCallbackTest_024, TestSize.Level1)
468 {
469 int32_t rc = g_wpaObj->RegisterEventCallback(g_wpaObj, g_wpaCallbackObj, IFNAME);
470 ASSERT_EQ(rc, HDF_SUCCESS);
471 }
472
473 HWTEST_F(HdfWpaHostCTest, UnregisterEventCallbackTest_025, TestSize.Level1)
474 {
475 int32_t rc = g_wpaObj->UnregisterEventCallback(g_wpaObj, g_wpaCallbackObj, IFNAME);
476 ASSERT_EQ(rc, HDF_SUCCESS);
477 }
478
479 HWTEST_F(HdfWpaHostCTest, GetConnectionCapabilitiesTest_026, TestSize.Level1)
480 {
481 struct ConnectionCapabilities connectionCap;
482 (void)memset_s(
483 &connectionCap, sizeof(struct ConnectionCapabilities), 0, sizeof(struct ConnectionCapabilities));
484 int32_t rc = g_wpaObj->AddWpaIface(g_wpaObj, IFNAME, CONFNAME);
485 ASSERT_EQ(rc, HDF_SUCCESS);
486 if (rc == HDF_SUCCESS) {
487 rc = g_wpaObj->GetConnectionCapabilities(g_wpaObj, IFNAME, &connectionCap);
488 ASSERT_EQ(rc, HDF_SUCCESS);
489 rc = g_wpaObj->RemoveWpaIface(g_wpaObj, IFNAME);
490 ASSERT_EQ(rc, HDF_SUCCESS);
491 }
492 }
493
494 HWTEST_F(HdfWpaHostCTest, GetScanSsidTest_027, TestSize.Level1)
495 {
496 int enable = 0;
497
498 int32_t rc = g_wpaObj->AddWpaIface(g_wpaObj, IFNAME, CONFNAME);
499 ASSERT_EQ(rc, HDF_SUCCESS);
500 if (rc == HDF_SUCCESS) {
501 rc = g_wpaObj->GetScanSsid(g_wpaObj, IFNAME, &enable);
502 ASSERT_EQ(rc, HDF_SUCCESS);
503 rc = g_wpaObj->RemoveWpaIface(g_wpaObj, IFNAME);
504 ASSERT_EQ(rc, HDF_SUCCESS);
505 }
506 }
507
508 HWTEST_F(HdfWpaHostCTest, GetPskPassphraseTest_028, TestSize.Level1)
509 {
510 char psk[32] = {0};
511
512 int32_t rc = g_wpaObj->AddWpaIface(g_wpaObj, IFNAME, CONFNAME);
513 ASSERT_EQ(rc, HDF_SUCCESS);
514 if (rc == HDF_SUCCESS) {
515 rc = g_wpaObj->GetPskPassphrase(g_wpaObj, IFNAME, psk, 32);
516 ASSERT_EQ(rc, HDF_SUCCESS);
517 rc = g_wpaObj->RemoveWpaIface(g_wpaObj, IFNAME);
518 ASSERT_EQ(rc, HDF_SUCCESS);
519 }
520 }
521
522 HWTEST_F(HdfWpaHostCTest, GetPskTest_029, TestSize.Level1)
523 {
524 uint8_t psk[32] = {0};
525 uint32_t pskLen = 32;
526 int32_t rc = g_wpaObj->AddWpaIface(g_wpaObj, IFNAME, CONFNAME);
527 ASSERT_EQ(rc, HDF_SUCCESS);
528 if (rc == HDF_SUCCESS) {
529 rc = g_wpaObj->GetPsk(g_wpaObj, IFNAME, psk, &pskLen);
530 ASSERT_EQ(rc, HDF_SUCCESS);
531 rc = g_wpaObj->RemoveWpaIface(g_wpaObj, IFNAME);
532 ASSERT_EQ(rc, HDF_SUCCESS);
533 }
534 }
535
536 HWTEST_F(HdfWpaHostCTest, GetWepKeyTest_030, TestSize.Level1)
537 {
538 uint8_t wepKey[16] = {0};
539 uint32_t wepKeyLen = 16;
540 int32_t rc = g_wpaObj->AddWpaIface(g_wpaObj, IFNAME, CONFNAME);
541 ASSERT_EQ(rc, HDF_SUCCESS);
542 if (rc == HDF_SUCCESS) {
543 rc = g_wpaObj->GetWepKey(g_wpaObj, IFNAME, 0, wepKey, &wepKeyLen);
544 ASSERT_EQ(rc, HDF_SUCCESS);
545 rc = g_wpaObj->GetWepKey(g_wpaObj, IFNAME, 1, wepKey, &wepKeyLen);
546 ASSERT_EQ(rc, HDF_SUCCESS);
547 rc = g_wpaObj->RemoveWpaIface(g_wpaObj, IFNAME);
548 ASSERT_EQ(rc, HDF_SUCCESS);
549 }
550 }
551
552 HWTEST_F(HdfWpaHostCTest, GetWepTxKeyIdxTest_031, TestSize.Level1)
553 {
554 int32_t keyIdx = 0;
555
556 int32_t rc = g_wpaObj->AddWpaIface(g_wpaObj, IFNAME, CONFNAME);
557 ASSERT_EQ(rc, HDF_SUCCESS);
558 if (rc == HDF_SUCCESS) {
559 rc = g_wpaObj->GetWepTxKeyIdx(g_wpaObj, IFNAME, &keyIdx);
560 ASSERT_EQ(rc, HDF_SUCCESS);
561 rc = g_wpaObj->RemoveWpaIface(g_wpaObj, IFNAME);
562 ASSERT_EQ(rc, HDF_SUCCESS);
563 }
564 }
565
566 HWTEST_F(HdfWpaHostCTest, GetRequirePmfTest_032, TestSize.Level1)
567 {
568 int32_t enable = 0;
569
570 int32_t rc = g_wpaObj->AddWpaIface(g_wpaObj, IFNAME, CONFNAME);
571 ASSERT_EQ(rc, HDF_SUCCESS);
572 if (rc == HDF_SUCCESS) {
573 rc = g_wpaObj->GetRequirePmf(g_wpaObj, IFNAME, &enable);
574 ASSERT_EQ(rc, HDF_SUCCESS);
575 rc = g_wpaObj->RemoveWpaIface(g_wpaObj, IFNAME);
576 ASSERT_EQ(rc, HDF_SUCCESS);
577 }
578 }
579
580 HWTEST_F(HdfWpaHostCTest, SetCountryCodeTest_033, TestSize.Level1)
581 {
582 int32_t rc = g_wpaObj->AddWpaIface(g_wpaObj, IFNAME, CONFNAME);
583 ASSERT_EQ(rc, HDF_SUCCESS);
584 if (rc == HDF_SUCCESS) {
585 rc = g_wpaObj->SetCountryCode(g_wpaObj, IFNAME, "00");
586 ASSERT_EQ(rc, HDF_SUCCESS);
587 rc = g_wpaObj->SetCountryCode(g_wpaObj, IFNAME, "01");
588 ASSERT_EQ(rc, HDF_SUCCESS);
589 rc = g_wpaObj->RemoveWpaIface(g_wpaObj, IFNAME);
590 ASSERT_EQ(rc, HDF_SUCCESS);
591 }
592 }
593
594 HWTEST_F(HdfWpaHostCTest, ReassociateTest_034, TestSize.Level1)
595 {
596 int networkId = 0;
597
598 int32_t rc = g_wpaObj->AddWpaIface(g_wpaObj, IFNAME, CONFNAME);
599 ASSERT_EQ(rc, HDF_SUCCESS);
600 if (rc == HDF_SUCCESS) {
601 rc = g_wpaObj->AddNetwork(g_wpaObj, IFNAME, &networkId);
602 printf("networkId = %d\n", networkId);
603 ASSERT_EQ(rc, HDF_SUCCESS);
604 rc = g_wpaObj->SetNetwork(g_wpaObj, IFNAME, networkId, "ssid", "WIFI_5G");
605 ASSERT_EQ(rc, HDF_SUCCESS);
606 rc = g_wpaObj->SetNetwork(g_wpaObj, IFNAME, networkId, "key_mgmt", "WPA-PSK");
607 ASSERT_EQ(rc, HDF_SUCCESS);
608 rc = g_wpaObj->SetNetwork(g_wpaObj, IFNAME, networkId, "psk", "123456789");
609 ASSERT_EQ(rc, HDF_SUCCESS);
610 rc = g_wpaObj->SelectNetwork(g_wpaObj, IFNAME, networkId);
611 ASSERT_EQ(rc, HDF_SUCCESS);
612 rc = g_wpaObj->Reassociate(g_wpaObj, IFNAME);
613 ASSERT_EQ(rc, HDF_SUCCESS);
614 rc = g_wpaObj->RemoveWpaIface(g_wpaObj, IFNAME);
615 ASSERT_EQ(rc, HDF_SUCCESS);
616 }
617 }
618
619 HWTEST_F(HdfWpaHostCTest, StaShellCmdTest_035, TestSize.Level1)
620 {
621 const char *cmd = "SET external_sim 1";
622 int32_t rc = g_wpaObj->AddWpaIface(g_wpaObj, IFNAME, CONFNAME);
623 ASSERT_EQ(rc, HDF_SUCCESS);
624 if (rc == HDF_SUCCESS) {
625 rc = g_wpaObj->StaShellCmd(g_wpaObj, IFNAME, cmd);
626 ASSERT_EQ(rc, HDF_SUCCESS);
627 }
628 }
629 };
630