• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2024 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 <gtest/gtest.h>
17 #include <hdf_log.h>
18 #include "../../../chip/hdi_service/wifi_p2p_iface.h"
19 
20 using namespace testing::ext;
21 using namespace OHOS::HDI::Wlan::Chip::V2_0;
22 
23 namespace WifiP2pIfaceTest {
24 const std::string P2P_IFNAME = "P2P0";
25 const std::string TEST_MAC = "000000";
26 
27 class WifiP2pIfaceTest : public testing::Test {
28 public:
SetUpTestCase()29     static void SetUpTestCase() {}
TearDownTestCase()30     static void TearDownTestCase() {}
SetUp()31     void SetUp()
32     {
33         std::weak_ptr<IfaceTool> ifaceTool = std::make_shared<IfaceTool>();
34         WifiHalFn fn;
35         std::weak_ptr<WifiVendorHal> vendorHal = std::make_shared<WifiVendorHal>(ifaceTool, fn, true);
36         p2pIface = new (std::nothrow) WifiP2pIface(P2P_IFNAME, vendorHal,
37             std::make_shared<IfaceUtil>(ifaceTool));
38     }
TearDown()39     void TearDown()
40     {
41         HDF_LOGE("iface teardown");
42     }
43 
44 public:
45     sptr<WifiP2pIface> p2pIface;
46 };
47 
48 /**
49  * @tc.name: WifiP2pIfaceTest
50  * @tc.desc: WifiP2pIface
51  * @tc.type: FUNC
52  * @tc.require:
53  */
54 HWTEST_F(WifiP2pIfaceTest, WifiP2pIfaceTest, TestSize.Level1)
55 {
56     HDF_LOGI("WifiP2pIfaceTest started");
57     p2pIface->Invalidate();
58     EXPECT_FALSE(p2pIface->IsValid());
59     EXPECT_TRUE(p2pIface->GetName() == P2P_IFNAME);
60     IfaceType type = IfaceType::STA;
61     EXPECT_TRUE(p2pIface->GetIfaceType(type) == HDF_SUCCESS);
62     EXPECT_TRUE(type == IfaceType::P2P);
63     std::string name;
64     EXPECT_TRUE(p2pIface->GetIfaceName(name) == HDF_SUCCESS);
65     EXPECT_TRUE(name == P2P_IFNAME);
66     std::vector<uint32_t> frequencies;
67     if (p2pIface->vendorHal_.lock() != nullptr) {
68         EXPECT_TRUE(p2pIface->GetSupportFreqs(1, frequencies) == HDF_SUCCESS);
69     }
70 }
71 
72 HWTEST_F(WifiP2pIfaceTest, SetMacAddressTest, TestSize.Level1)
73 {
74     HDF_LOGI("SetMacAddressTest started");
75     EXPECT_TRUE(p2pIface->SetMacAddress(TEST_MAC) == HDF_ERR_NOT_SUPPORT);
76 }
77 
78 HWTEST_F(WifiP2pIfaceTest, SetCountryCodeTest, TestSize.Level1)
79 {
80     HDF_LOGI("SetCountryCodeTest started");
81     EXPECT_TRUE(p2pIface->SetCountryCode("CN") == HDF_ERR_NOT_SUPPORT);
82 }
83 
84 HWTEST_F(WifiP2pIfaceTest, GetPowerModeTest, TestSize.Level1)
85 {
86     HDF_LOGI("GetPowerModeTest started");
87     int32_t mode;
88     EXPECT_TRUE(p2pIface->GetPowerMode(mode) == HDF_ERR_NOT_SUPPORT);
89 }
90 
91 HWTEST_F(WifiP2pIfaceTest, SetPowerModeTest, TestSize.Level1)
92 {
93     HDF_LOGI("SetPowerModeTest started");
94     EXPECT_TRUE(p2pIface->SetPowerMode(0) == HDF_ERR_NOT_SUPPORT);
95 }
96 
97 HWTEST_F(WifiP2pIfaceTest, GetIfaceCapTest, TestSize.Level1)
98 {
99     HDF_LOGI("GetIfaceCapTest started");
100     uint32_t cap;
101     EXPECT_TRUE(p2pIface->GetIfaceCap(cap) == HDF_SUCCESS);
102 }
103 
104 HWTEST_F(WifiP2pIfaceTest, StartScanTest, TestSize.Level1)
105 {
106     HDF_LOGI("StartScanTest started");
107     ScanParams scanParam;
108     scanParam.bssid = TEST_MAC;
109     EXPECT_TRUE(p2pIface->StartScan(scanParam) == HDF_ERR_NOT_SUPPORT);
110 }
111 
112 HWTEST_F(WifiP2pIfaceTest, GetScanInfosTest, TestSize.Level1)
113 {
114     HDF_LOGI("GetScanInfosTest started");
115     std::vector<ScanResultsInfo> scanResult;
116     EXPECT_TRUE(p2pIface->GetScanInfos(scanResult) == HDF_ERR_NOT_SUPPORT);
117 }
118 
119 HWTEST_F(WifiP2pIfaceTest, StartPnoScanTest, TestSize.Level1)
120 {
121     HDF_LOGI("StartPnoScanTest started");
122     PnoScanParams pnoParam;
123     pnoParam.min2gRssi = 1;
124     EXPECT_TRUE(p2pIface->StartPnoScan(pnoParam) == HDF_ERR_NOT_SUPPORT);
125 }
126 
127 HWTEST_F(WifiP2pIfaceTest, StopPnoScanTest, TestSize.Level1)
128 {
129     HDF_LOGI("StopPnoScanTest started");
130     EXPECT_TRUE(p2pIface->StopPnoScan() == HDF_ERR_NOT_SUPPORT);
131 }
132 
133 HWTEST_F(WifiP2pIfaceTest, GetSignalPollInfoTest, TestSize.Level1)
134 {
135     HDF_LOGI("GetSignalPollInfoTest started");
136     SignalPollResult info;
137     EXPECT_TRUE(p2pIface->GetSignalPollInfo(info) == HDF_ERR_NOT_SUPPORT);
138 }
139 
140 HWTEST_F(WifiP2pIfaceTest, SetDpiMarkRuleTest, TestSize.Level1)
141 {
142     HDF_LOGI("SetDpiMarkRuleTest started");
143     EXPECT_TRUE(p2pIface->SetDpiMarkRule(0, 0, 0) == HDF_ERR_NOT_SUPPORT);
144 }
145 
146 HWTEST_F(WifiP2pIfaceTest, EnablePowerModeTest, TestSize.Level1)
147 {
148     HDF_LOGI("EnablePowerModeTest started");
149     EXPECT_TRUE(p2pIface->EnablePowerMode(0) == HDF_ERR_NOT_SUPPORT);
150 }
151 }