19762338dSopenharmony_ci/* 29762338dSopenharmony_ci * Copyright (c) 2021-2022 Huawei Device Co., Ltd. 39762338dSopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 49762338dSopenharmony_ci * you may not use this file except in compliance with the License. 59762338dSopenharmony_ci * You may obtain a copy of the License at 69762338dSopenharmony_ci * 79762338dSopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 89762338dSopenharmony_ci * 99762338dSopenharmony_ci * Unless required by applicable law or agreed to in writing, software 109762338dSopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 119762338dSopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 129762338dSopenharmony_ci * See the License for the specific language governing permissions and 139762338dSopenharmony_ci * limitations under the License. 149762338dSopenharmony_ci */ 159762338dSopenharmony_ci 169762338dSopenharmony_ci#include <gtest/gtest.h> 179762338dSopenharmony_ci#include <osal_mem.h> 189762338dSopenharmony_ci#include "wifi_driver_client.h" 199762338dSopenharmony_ci 209762338dSopenharmony_ciusing namespace testing::ext; 219762338dSopenharmony_ci 229762338dSopenharmony_cinamespace ClientTest { 239762338dSopenharmony_ciconst uint32_t DEFAULT_COMBO_SIZE = 10; 249762338dSopenharmony_ciconst char *WLAN_IFNAME = "wlan0"; 259762338dSopenharmony_ciconst uint32_t RESET_TIME = 20; 269762338dSopenharmony_ciclass WifiClientTest : public testing::Test { 279762338dSopenharmony_cipublic: 289762338dSopenharmony_ci static void SetUpTestCase(); 299762338dSopenharmony_ci static void TearDownTestCase(); 309762338dSopenharmony_ci void SetUp(); 319762338dSopenharmony_ci void TearDown(); 329762338dSopenharmony_ci}; 339762338dSopenharmony_ci 349762338dSopenharmony_civoid WifiClientTest::SetUpTestCase() 359762338dSopenharmony_ci{ 369762338dSopenharmony_ci} 379762338dSopenharmony_ci 389762338dSopenharmony_civoid WifiClientTest::TearDownTestCase() 399762338dSopenharmony_ci{ 409762338dSopenharmony_ci} 419762338dSopenharmony_ci 429762338dSopenharmony_civoid WifiClientTest::SetUp() 439762338dSopenharmony_ci{ 449762338dSopenharmony_ci WifiDriverClientInit(); 459762338dSopenharmony_ci} 469762338dSopenharmony_ci 479762338dSopenharmony_civoid WifiClientTest::TearDown() 489762338dSopenharmony_ci{ 499762338dSopenharmony_ci WifiDriverClientDeinit(); 509762338dSopenharmony_ci} 519762338dSopenharmony_ci 529762338dSopenharmony_ci/** 539762338dSopenharmony_ci * @tc.name: WifiClientSetCountryCode001 549762338dSopenharmony_ci * @tc.desc: Wifi client set country code function test 559762338dSopenharmony_ci * @tc.type: FUNC 569762338dSopenharmony_ci */ 579762338dSopenharmony_ciHWTEST_F(WifiClientTest, SUB_WLAN_CLIENT_SetCountryCode_0001, Function | MediumTest | Level1) 589762338dSopenharmony_ci{ 599762338dSopenharmony_ci int32_t ret; 609762338dSopenharmony_ci const char *code = "CN"; 619762338dSopenharmony_ci const char *codeDigital = "99"; 629762338dSopenharmony_ci uint32_t len = 2; 639762338dSopenharmony_ci 649762338dSopenharmony_ci ret = WifiSetCountryCode(WLAN_IFNAME, code, len); 659762338dSopenharmony_ci EXPECT_EQ(RET_CODE_SUCCESS, ret); 669762338dSopenharmony_ci ret = WifiSetCountryCode(WLAN_IFNAME, codeDigital, len); 679762338dSopenharmony_ci bool flag = (ret == HDF_SUCCESS || ret == HDF_ERR_NOT_SUPPORT); 689762338dSopenharmony_ci ASSERT_TRUE(flag); 699762338dSopenharmony_ci} 709762338dSopenharmony_ci 719762338dSopenharmony_ci/** 729762338dSopenharmony_ci * @tc.name: WifiClientGetUsableNetworkInfo001 739762338dSopenharmony_ci * @tc.desc: Wifi client get usable networkInfo function test 749762338dSopenharmony_ci * @tc.type: FUNC 759762338dSopenharmony_ci */ 769762338dSopenharmony_ciHWTEST_F(WifiClientTest, SUB_WLAN_CLIENT_GetUsableNetworkInfo_0001, Function | MediumTest | Level1) 779762338dSopenharmony_ci{ 789762338dSopenharmony_ci int32_t ret; 799762338dSopenharmony_ci struct NetworkInfoResult networkInfo; 809762338dSopenharmony_ci 819762338dSopenharmony_ci ret = GetUsableNetworkInfo(&networkInfo); 829762338dSopenharmony_ci EXPECT_EQ(RET_CODE_SUCCESS, ret); 839762338dSopenharmony_ci} 849762338dSopenharmony_ci 859762338dSopenharmony_ci/** 869762338dSopenharmony_ci * @tc.name: WifiClientIsSupportCombo001 879762338dSopenharmony_ci * @tc.desc: Wifi client is support combo function test 889762338dSopenharmony_ci * @tc.type: FUNC 899762338dSopenharmony_ci */ 909762338dSopenharmony_ciHWTEST_F(WifiClientTest, SUB_WLAN_CLIENT_IsSupportCombo_0001, Function | MediumTest | Level1) 919762338dSopenharmony_ci{ 929762338dSopenharmony_ci int32_t ret; 939762338dSopenharmony_ci uint8_t isSupportCombo; 949762338dSopenharmony_ci 959762338dSopenharmony_ci ret = IsSupportCombo(&isSupportCombo); 969762338dSopenharmony_ci EXPECT_EQ(RET_CODE_SUCCESS, ret); 979762338dSopenharmony_ci} 989762338dSopenharmony_ci 999762338dSopenharmony_ci/** 1009762338dSopenharmony_ci * @tc.name: WifiClientGetComboInfo001 1019762338dSopenharmony_ci * @tc.desc: Wifi client get combo info function test 1029762338dSopenharmony_ci * @tc.type: FUNC 1039762338dSopenharmony_ci */ 1049762338dSopenharmony_ciHWTEST_F(WifiClientTest, SUB_WLAN_CLIENT_GetComboInfo_0001, Function | MediumTest | Level1) 1059762338dSopenharmony_ci{ 1069762338dSopenharmony_ci int32_t ret; 1079762338dSopenharmony_ci uint64_t comboInfo[DEFAULT_COMBO_SIZE] = {}; 1089762338dSopenharmony_ci 1099762338dSopenharmony_ci ret = GetComboInfo(comboInfo, DEFAULT_COMBO_SIZE); 1109762338dSopenharmony_ci bool flag = (ret == RET_CODE_SUCCESS || ret == RET_CODE_NOT_SUPPORT); 1119762338dSopenharmony_ci ASSERT_TRUE(flag); 1129762338dSopenharmony_ci} 1139762338dSopenharmony_ci 1149762338dSopenharmony_ci/** 1159762338dSopenharmony_ci * @tc.name: WifiClientSetMacAddr001 1169762338dSopenharmony_ci * @tc.desc: Wifi client set mac addr function test 1179762338dSopenharmony_ci * @tc.type: FUNC 1189762338dSopenharmony_ci */ 1199762338dSopenharmony_ciHWTEST_F(WifiClientTest, SUB_WLAN_CLIENT_SetMacAddr_0001, Function | MediumTest | Level1) 1209762338dSopenharmony_ci{ 1219762338dSopenharmony_ci int32_t ret; 1229762338dSopenharmony_ci unsigned char mac[ETH_ADDR_LEN] = {0x12, 0x34, 0x56, 0x78, 0xab, 0xcd}; 1239762338dSopenharmony_ci unsigned char errorMac[ETH_ADDR_LEN] = {0x11, 0x34, 0x56, 0x78, 0xab, 0xcd}; 1249762338dSopenharmony_ci 1259762338dSopenharmony_ci ret = SetMacAddr(WLAN_IFNAME, mac, ETH_ADDR_LEN); 1269762338dSopenharmony_ci bool flag = (ret == HDF_SUCCESS || ret == HDF_ERR_NOT_SUPPORT || ret == HDF_ERR_DEVICE_BUSY); 1279762338dSopenharmony_ci ASSERT_TRUE(flag); 1289762338dSopenharmony_ci ret = SetMacAddr(WLAN_IFNAME, errorMac, ETH_ADDR_LEN); 1299762338dSopenharmony_ci EXPECT_NE(RET_CODE_SUCCESS, ret); 1309762338dSopenharmony_ci} 1319762338dSopenharmony_ci 1329762338dSopenharmony_ci/** 1339762338dSopenharmony_ci * @tc.name: WifiClientGetDevMacAddr001 1349762338dSopenharmony_ci * @tc.desc: Wifi client get mac addr function test 1359762338dSopenharmony_ci * @tc.type: FUNC 1369762338dSopenharmony_ci */ 1379762338dSopenharmony_ciHWTEST_F(WifiClientTest, SUB_WLAN_CLIENT_GetDevMacAddr_0001, Function | MediumTest | Level1) 1389762338dSopenharmony_ci{ 1399762338dSopenharmony_ci int32_t ret; 1409762338dSopenharmony_ci unsigned char mac[ETH_ADDR_LEN] = {}; 1419762338dSopenharmony_ci int32_t type = WIFI_IFTYPE_STATION; 1429762338dSopenharmony_ci 1439762338dSopenharmony_ci ret = GetDevMacAddr(WLAN_IFNAME, type, mac, ETH_ADDR_LEN); 1449762338dSopenharmony_ci EXPECT_NE(RET_CODE_FAILURE, ret); 1459762338dSopenharmony_ci} 1469762338dSopenharmony_ci 1479762338dSopenharmony_ci/** 1489762338dSopenharmony_ci * @tc.name: WifiClientGetDevMacAddr002 1499762338dSopenharmony_ci * @tc.desc: Wifi client get mac addr function test 1509762338dSopenharmony_ci * @tc.type: FUNC 1519762338dSopenharmony_ci */ 1529762338dSopenharmony_ciHWTEST_F(WifiClientTest, SUB_WLAN_CLIENT_GetDevMacAddr_0002, Function | MediumTest | Level1) 1539762338dSopenharmony_ci{ 1549762338dSopenharmony_ci int32_t ret; 1559762338dSopenharmony_ci unsigned char mac[ETH_ADDR_LEN] = {}; 1569762338dSopenharmony_ci int32_t type = WIFI_IFTYPE_AP; 1579762338dSopenharmony_ci 1589762338dSopenharmony_ci ret = GetDevMacAddr(WLAN_IFNAME, type, mac, ETH_ADDR_LEN); 1599762338dSopenharmony_ci EXPECT_NE(RET_CODE_FAILURE, ret); 1609762338dSopenharmony_ci} 1619762338dSopenharmony_ci 1629762338dSopenharmony_ci/** 1639762338dSopenharmony_ci * @tc.name: WifiClientGetValidFreqByBand001 1649762338dSopenharmony_ci * @tc.desc: Wifi client get valid freq function test 1659762338dSopenharmony_ci * @tc.type: FUNC 1669762338dSopenharmony_ci */ 1679762338dSopenharmony_ciHWTEST_F(WifiClientTest, SUB_WLAN_CLIENT_GetValidFreqByBand_0001, Function | MediumTest | Level1) 1689762338dSopenharmony_ci{ 1699762338dSopenharmony_ci int32_t ret; 1709762338dSopenharmony_ci int32_t band = IEEE80211_BAND_2GHZ; 1719762338dSopenharmony_ci int32_t bandNotSupport = IEEE80211_NUM_BANDS; 1729762338dSopenharmony_ci struct FreqInfoResult result; 1739762338dSopenharmony_ci uint32_t size = 14; 1749762338dSopenharmony_ci uint32_t i; 1759762338dSopenharmony_ci 1769762338dSopenharmony_ci result.freqs = (uint32_t *)OsalMemCalloc(35 * sizeof(uint32_t)); 1779762338dSopenharmony_ci if (result.freqs == NULL) { 1789762338dSopenharmony_ci printf("%s: OsalMemCalloc failed", __FUNCTION__); 1799762338dSopenharmony_ci return; 1809762338dSopenharmony_ci } 1819762338dSopenharmony_ci 1829762338dSopenharmony_ci result.txPower = (uint32_t *)OsalMemCalloc(35 * sizeof(uint32_t)); 1839762338dSopenharmony_ci if (result.txPower == NULL) { 1849762338dSopenharmony_ci printf("%s: OsalMemCalloc failed", __FUNCTION__); 1859762338dSopenharmony_ci OsalMemFree(result.freqs); 1869762338dSopenharmony_ci return; 1879762338dSopenharmony_ci } 1889762338dSopenharmony_ci 1899762338dSopenharmony_ci ret = GetValidFreqByBand(WLAN_IFNAME, bandNotSupport, &result, size); 1909762338dSopenharmony_ci EXPECT_NE(RET_CODE_SUCCESS, ret); 1919762338dSopenharmony_ci ret = GetValidFreqByBand(WLAN_IFNAME, band, &result, size); 1929762338dSopenharmony_ci EXPECT_EQ(RET_CODE_SUCCESS, ret); 1939762338dSopenharmony_ci if (ret == RET_CODE_SUCCESS) { 1949762338dSopenharmony_ci printf("%s: num = %u\n", __func__, result.nums); 1959762338dSopenharmony_ci for (i = 0; i < result.nums; i++) { 1969762338dSopenharmony_ci printf("%s: freq[%d] = %d\n", __func__, i, result.freqs[i]); 1979762338dSopenharmony_ci } 1989762338dSopenharmony_ci } 1999762338dSopenharmony_ci 2009762338dSopenharmony_ci OsalMemFree(result.txPower); 2019762338dSopenharmony_ci OsalMemFree(result.freqs); 2029762338dSopenharmony_ci} 2039762338dSopenharmony_ci 2049762338dSopenharmony_ci/** 2059762338dSopenharmony_ci * @tc.name: WifiClientSetTxPower001 2069762338dSopenharmony_ci * @tc.desc: Wifi client set tx power function test 2079762338dSopenharmony_ci * @tc.type: FUNC 2089762338dSopenharmony_ci */ 2099762338dSopenharmony_ciHWTEST_F(WifiClientTest, SUB_WLAN_CLIENT_SetTxPower_0001, Function | MediumTest | Level1) 2109762338dSopenharmony_ci{ 2119762338dSopenharmony_ci int32_t ret; 2129762338dSopenharmony_ci int32_t power = 10; 2139762338dSopenharmony_ci 2149762338dSopenharmony_ci ret = SetTxPower(WLAN_IFNAME, power); 2159762338dSopenharmony_ci EXPECT_EQ(RET_CODE_SUCCESS, ret); 2169762338dSopenharmony_ci} 2179762338dSopenharmony_ci 2189762338dSopenharmony_ci/** 2199762338dSopenharmony_ci * @tc.name: WifiClientGetAssociatedStas001 2209762338dSopenharmony_ci * @tc.desc: Wifi client get associated status function test 2219762338dSopenharmony_ci * @tc.type: FUNC 2229762338dSopenharmony_ci */ 2239762338dSopenharmony_ciHWTEST_F(WifiClientTest, SUB_WLAN_CLIENT_GetAssociatedStas_0001, Function | MediumTest | Level1) 2249762338dSopenharmony_ci{ 2259762338dSopenharmony_ci int32_t ret; 2269762338dSopenharmony_ci struct AssocStaInfoResult result; 2279762338dSopenharmony_ci 2289762338dSopenharmony_ci ret = GetAssociatedStas(WLAN_IFNAME, &result); 2299762338dSopenharmony_ci EXPECT_EQ(RET_CODE_SUCCESS, ret); 2309762338dSopenharmony_ci} 2319762338dSopenharmony_ci 2329762338dSopenharmony_ci/** 2339762338dSopenharmony_ci * @tc.name: WifiClientSetScanMacAddr001 2349762338dSopenharmony_ci * @tc.desc: Wifi client set scan MAC address function test 2359762338dSopenharmony_ci * @tc.type: FUNC 2369762338dSopenharmony_ci */ 2379762338dSopenharmony_ciHWTEST_F(WifiClientTest, SUB_WLAN_CLIENT_SetScanMacAddr_0001, Function | MediumTest | Level1) 2389762338dSopenharmony_ci{ 2399762338dSopenharmony_ci int32_t ret; 2409762338dSopenharmony_ci unsigned char scanMac[ETH_ADDR_LEN] = {0x12, 0x34, 0x56, 0x78, 0xab, 0xcd}; 2419762338dSopenharmony_ci 2429762338dSopenharmony_ci ret = SetScanMacAddr(WLAN_IFNAME, scanMac, ETH_ADDR_LEN); 2439762338dSopenharmony_ci bool flag = (ret == RET_CODE_SUCCESS || ret == RET_CODE_NOT_SUPPORT); 2449762338dSopenharmony_ci ASSERT_TRUE(flag); 2459762338dSopenharmony_ci} 2469762338dSopenharmony_ci 2479762338dSopenharmony_ci/** 2489762338dSopenharmony_ci * @tc.name: WifiClientAcquireChipId001 2499762338dSopenharmony_ci * @tc.desc: Wifi client get chipId function test 2509762338dSopenharmony_ci * @tc.type: FUNC 2519762338dSopenharmony_ci */ 2529762338dSopenharmony_ciHWTEST_F(WifiClientTest, SUB_WLAN_CLIENT_AcquireChipId_0001, Function | MediumTest | Level1) 2539762338dSopenharmony_ci{ 2549762338dSopenharmony_ci int32_t ret; 2559762338dSopenharmony_ci const char *ifNameInvalid = "wlanTest"; 2569762338dSopenharmony_ci uint8_t chipId = 0; 2579762338dSopenharmony_ci 2589762338dSopenharmony_ci ret = AcquireChipId(ifNameInvalid, &chipId); 2599762338dSopenharmony_ci EXPECT_NE(RET_CODE_SUCCESS, ret); 2609762338dSopenharmony_ci ret = AcquireChipId(WLAN_IFNAME, &chipId); 2619762338dSopenharmony_ci ASSERT_TRUE(chipId < MAX_WLAN_DEVICE); 2629762338dSopenharmony_ci EXPECT_EQ(RET_CODE_SUCCESS, ret); 2639762338dSopenharmony_ci} 2649762338dSopenharmony_ci 2659762338dSopenharmony_ci/** 2669762338dSopenharmony_ci * @tc.name: WifiClientGetIfNamesByChipId001 2679762338dSopenharmony_ci * @tc.desc: Wifi client get ifName by chipId function test 2689762338dSopenharmony_ci * @tc.type: FUNC 2699762338dSopenharmony_ci */ 2709762338dSopenharmony_ciHWTEST_F(WifiClientTest, SUB_WLAN_CLIENT_GetIfNamesByChipId_0001, Function | MediumTest | Level1) 2719762338dSopenharmony_ci{ 2729762338dSopenharmony_ci int32_t ret; 2739762338dSopenharmony_ci uint8_t chipId = 0; 2749762338dSopenharmony_ci uint8_t chipIdInvalid = 100; 2759762338dSopenharmony_ci char *ifNames = nullptr; 2769762338dSopenharmony_ci uint32_t num = 0; 2779762338dSopenharmony_ci 2789762338dSopenharmony_ci ret = AcquireChipId(WLAN_IFNAME, &chipId); 2799762338dSopenharmony_ci ASSERT_TRUE(chipId < MAX_WLAN_DEVICE); 2809762338dSopenharmony_ci EXPECT_EQ(RET_CODE_SUCCESS, ret); 2819762338dSopenharmony_ci ret = GetIfNamesByChipId(chipIdInvalid, &ifNames, &num); 2829762338dSopenharmony_ci EXPECT_NE(RET_CODE_SUCCESS, ret); 2839762338dSopenharmony_ci ret = GetIfNamesByChipId(chipId, &ifNames, &num); 2849762338dSopenharmony_ci EXPECT_NE(ifNames, nullptr); 2859762338dSopenharmony_ci EXPECT_EQ(RET_CODE_SUCCESS, ret); 2869762338dSopenharmony_ci free(ifNames); 2879762338dSopenharmony_ci} 2889762338dSopenharmony_ci 2899762338dSopenharmony_ci/** 2909762338dSopenharmony_ci * @tc.name: WifiClientGetNetDeviceInfo001 2919762338dSopenharmony_ci * @tc.desc: Wifi client get netDevice information function test 2929762338dSopenharmony_ci * @tc.type: FUNC 2939762338dSopenharmony_ci */ 2949762338dSopenharmony_ciHWTEST_F(WifiClientTest, SUB_WLAN_CLIENT_GetNetDeviceInfo_0001, Function | MediumTest | Level1) 2959762338dSopenharmony_ci{ 2969762338dSopenharmony_ci int32_t ret; 2979762338dSopenharmony_ci struct NetDeviceInfoResult netDeviceInfoResult; 2989762338dSopenharmony_ci 2999762338dSopenharmony_ci ret = GetNetDeviceInfo(&netDeviceInfoResult); 3009762338dSopenharmony_ci EXPECT_EQ(RET_CODE_SUCCESS, ret); 3019762338dSopenharmony_ci} 3029762338dSopenharmony_ci 3039762338dSopenharmony_ci/** 3049762338dSopenharmony_ci * @tc.name: WifiClientGetCurrentPowerMode001 3059762338dSopenharmony_ci * @tc.desc: Wifi client get current power mode function test 3069762338dSopenharmony_ci * @tc.type: FUNC 3079762338dSopenharmony_ci */ 3089762338dSopenharmony_ciHWTEST_F(WifiClientTest, SUB_WLAN_CLIENT_GetCurrentPowerMode_0001, Function | MediumTest | Level1) 3099762338dSopenharmony_ci{ 3109762338dSopenharmony_ci int32_t ret; 3119762338dSopenharmony_ci uint8_t mode = 0; 3129762338dSopenharmony_ci const char *ifNameInvalid = "wlanTest"; 3139762338dSopenharmony_ci 3149762338dSopenharmony_ci ret = GetCurrentPowerMode(ifNameInvalid, &mode); 3159762338dSopenharmony_ci EXPECT_NE(RET_CODE_SUCCESS, ret); 3169762338dSopenharmony_ci ret = GetCurrentPowerMode(WLAN_IFNAME, &mode); 3179762338dSopenharmony_ci bool flag = (ret == RET_CODE_SUCCESS || ret == RET_CODE_NOT_SUPPORT); 3189762338dSopenharmony_ci ASSERT_TRUE(flag); 3199762338dSopenharmony_ci} 3209762338dSopenharmony_ci 3219762338dSopenharmony_ci/** 3229762338dSopenharmony_ci * @tc.name: WifiClientSetPowerMode001 3239762338dSopenharmony_ci * @tc.desc: Wifi client set power mode function test 3249762338dSopenharmony_ci * @tc.type: FUNC 3259762338dSopenharmony_ci */ 3269762338dSopenharmony_ciHWTEST_F(WifiClientTest, SUB_WLAN_CLIENT_SetPowerMode_0001, Function | MediumTest | Level1) 3279762338dSopenharmony_ci{ 3289762338dSopenharmony_ci int32_t ret; 3299762338dSopenharmony_ci const char *ifNameInvalid = "wlanTest"; 3309762338dSopenharmony_ci 3319762338dSopenharmony_ci ret = SetPowerMode(ifNameInvalid, WIFI_POWER_MODE_SLEEPING); 3329762338dSopenharmony_ci EXPECT_NE(RET_CODE_SUCCESS, ret); 3339762338dSopenharmony_ci ret = SetPowerMode(WLAN_IFNAME, WIFI_POWER_MODE_SLEEPING); 3349762338dSopenharmony_ci bool flag = (ret == RET_CODE_SUCCESS || ret == RET_CODE_NOT_SUPPORT); 3359762338dSopenharmony_ci ASSERT_TRUE(flag); 3369762338dSopenharmony_ci} 3379762338dSopenharmony_ci 3389762338dSopenharmony_ci/** 3399762338dSopenharmony_ci * @tc.name: WifiClientSetPowerMode002 3409762338dSopenharmony_ci * @tc.desc: Wifi client set power mode function test 3419762338dSopenharmony_ci * @tc.type: FUNC 3429762338dSopenharmony_ci */ 3439762338dSopenharmony_ciHWTEST_F(WifiClientTest, SUB_WLAN_CLIENT_SetPowerMode_0002, Function | MediumTest | Level1) 3449762338dSopenharmony_ci{ 3459762338dSopenharmony_ci int32_t ret; 3469762338dSopenharmony_ci 3479762338dSopenharmony_ci ret = SetPowerMode(WLAN_IFNAME, WIFI_POWER_MODE_GENERAL); 3489762338dSopenharmony_ci bool flag = (ret == RET_CODE_SUCCESS || ret == RET_CODE_NOT_SUPPORT); 3499762338dSopenharmony_ci ASSERT_TRUE(flag); 3509762338dSopenharmony_ci} 3519762338dSopenharmony_ci 3529762338dSopenharmony_ci/** 3539762338dSopenharmony_ci * @tc.name: WifiClientSetPowerMode003 3549762338dSopenharmony_ci * @tc.desc: Wifi client set power mode function test 3559762338dSopenharmony_ci * @tc.type: FUNC 3569762338dSopenharmony_ci */ 3579762338dSopenharmony_ciHWTEST_F(WifiClientTest, SUB_WLAN_CLIENT_SetPowerMode_0003, Function | MediumTest | Level1) 3589762338dSopenharmony_ci{ 3599762338dSopenharmony_ci int32_t ret; 3609762338dSopenharmony_ci 3619762338dSopenharmony_ci ret = SetPowerMode(WLAN_IFNAME, WIFI_POWER_MODE_THROUGH_WALL); 3629762338dSopenharmony_ci bool flag = (ret == RET_CODE_SUCCESS || ret == RET_CODE_NOT_SUPPORT); 3639762338dSopenharmony_ci ASSERT_TRUE(flag); 3649762338dSopenharmony_ci} 3659762338dSopenharmony_ci 3669762338dSopenharmony_ci/** 3679762338dSopenharmony_ci * @tc.name: WifiClientSetPowerMode004 3689762338dSopenharmony_ci * @tc.desc: Wifi client set power mode function test 3699762338dSopenharmony_ci * @tc.type: FUNC 3709762338dSopenharmony_ci */ 3719762338dSopenharmony_ciHWTEST_F(WifiClientTest, SUB_WLAN_CLIENT_SetPowerMode_0004, Function | MediumTest | Level1) 3729762338dSopenharmony_ci{ 3739762338dSopenharmony_ci int32_t ret; 3749762338dSopenharmony_ci 3759762338dSopenharmony_ci ret = SetPowerMode(WLAN_IFNAME, WIFI_POWER_MODE_NUM); 3769762338dSopenharmony_ci EXPECT_NE(RET_CODE_SUCCESS, ret); 3779762338dSopenharmony_ci} 3789762338dSopenharmony_ci 3799762338dSopenharmony_ci/** 3809762338dSopenharmony_ci * @tc.name: WifiClientSetResetDriver001 3819762338dSopenharmony_ci * @tc.desc: Wifi client reset driver function test 3829762338dSopenharmony_ci * @tc.type: FUNC 3839762338dSopenharmony_ci */ 3849762338dSopenharmony_ciHWTEST_F(WifiClientTest, SUB_WLAN_CLIENT_SetResetDriver_0001, Function | MediumTest | Level1) 3859762338dSopenharmony_ci{ 3869762338dSopenharmony_ci int32_t ret; 3879762338dSopenharmony_ci uint8_t chipId = 0; 3889762338dSopenharmony_ci 3899762338dSopenharmony_ci ret = AcquireChipId(WLAN_IFNAME, &chipId); 3909762338dSopenharmony_ci ASSERT_TRUE(chipId < MAX_WLAN_DEVICE); 3919762338dSopenharmony_ci EXPECT_EQ(RET_CODE_SUCCESS, ret); 3929762338dSopenharmony_ci 3939762338dSopenharmony_ci ret = SetResetDriver(chipId, WLAN_IFNAME); 3949762338dSopenharmony_ci EXPECT_EQ(RET_CODE_SUCCESS, ret); 3959762338dSopenharmony_ci sleep(RESET_TIME); 3969762338dSopenharmony_ci} 3979762338dSopenharmony_ci}; 398