• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 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 
16 #include <gtest/gtest.h>
17 
18 #ifdef GTEST_API_
19 #define private public
20 #define protected public
21 #endif
22 
23 #include "common_net_stats_callback_test.h"
24 
25 namespace OHOS {
26 namespace NetManagerStandard {
27 namespace {
28 constexpr uint64_t OUTOFFRANGECODE = 100;
29 } // namespace
30 
31 using namespace testing::ext;
32 class NetStatsCallbackStubTest : public testing::Test {
33 public:
34     static void SetUpTestCase();
35     static void TearDownTestCase();
36     void SetUp();
37     void TearDown();
38     static inline std::shared_ptr<NetStatsCallbackStub> instance_ = std::make_shared<NetStatsCallbackTestCb>();
39 };
40 
SetUpTestCase()41 void NetStatsCallbackStubTest::SetUpTestCase() {}
42 
TearDownTestCase()43 void NetStatsCallbackStubTest::TearDownTestCase() {}
44 
SetUp()45 void NetStatsCallbackStubTest::SetUp() {}
46 
TearDown()47 void NetStatsCallbackStubTest::TearDown() {}
48 
49 /**
50  * @tc.name: OnRemoteRequestTest001
51  * @tc.desc: Test NetStatsCallbackStub OnRemoteRequest.
52  * @tc.type: FUNC
53  */
54 HWTEST_F(NetStatsCallbackStubTest, OnRemoteRequestTest001, TestSize.Level1)
55 {
56     MessageParcel data;
57     MessageParcel reply;
58     MessageOption option;
59     int32_t ret = instance_->OnRemoteRequest(OUTOFFRANGECODE, data, reply, option);
60     EXPECT_EQ(ret, NETMANAGER_ERR_DESCRIPTOR_MISMATCH);
61 }
62 
63 /**
64  * @tc.name: OnRemoteRequestTest002
65  * @tc.desc: Test NetStatsCallbackStub OnRemoteRequest.
66  * @tc.type: FUNC
67  */
68 HWTEST_F(NetStatsCallbackStubTest, OnRemoteRequestTest002, TestSize.Level1)
69 {
70     MessageParcel data;
71     if (!data.WriteInterfaceToken(NetStatsCallbackStub::GetDescriptor())) {
72         return;
73     }
74     MessageParcel reply;
75     MessageOption option;
76     int32_t ret = instance_->OnRemoteRequest(OUTOFFRANGECODE, data, reply, option);
77     EXPECT_EQ(ret, IPC_STUB_UNKNOW_TRANS_ERR);
78 }
79 
80 /**
81  * @tc.name: OnRemoteRequestTest003
82  * @tc.desc: Test NetStatsCallbackStub OnRemoteRequest.
83  * @tc.type: FUNC
84  */
85 HWTEST_F(NetStatsCallbackStubTest, OnRemoteRequestTest003, TestSize.Level1)
86 {
87     MessageParcel data;
88     if (!data.WriteInterfaceToken(NetStatsCallbackStub::GetDescriptor())) {
89         return;
90     }
91     if (!data.WriteString("test")) {
92         return;
93     }
94     MessageParcel reply;
95     MessageOption option;
96     int32_t ret = instance_->OnRemoteRequest(static_cast<uint32_t>(StatsCallBackInterfaceCode::NET_STATS_IFACE_CHANGED),
97                                              data, reply, option);
98     EXPECT_EQ(ret, 0);
99 }
100 
101 /**
102  * @tc.name: OnNetIfaceStatsChangedTest001
103  * @tc.desc: Test NetStatsCallbackStub OnNetIfaceStatsChanged.
104  * @tc.type: FUNC
105  */
106 HWTEST_F(NetStatsCallbackStubTest, OnNetIfaceStatsChangedTest001, TestSize.Level1)
107 {
108     MessageParcel data;
109     if (!data.WriteInterfaceToken(NetStatsCallbackStub::GetDescriptor())) {
110         return;
111     }
112     MessageParcel reply;
113     MessageOption option;
114     int32_t ret = instance_->OnRemoteRequest(static_cast<uint32_t>(StatsCallBackInterfaceCode::NET_STATS_IFACE_CHANGED),
115                                              data, reply, option);
116     EXPECT_EQ(ret, NETMANAGER_ERR_READ_DATA_FAIL);
117 }
118 
119 /**
120  * @tc.name: OnNetIfaceStatsChangedTest002
121  * @tc.desc: Test NetStatsCallbackStub OnNetIfaceStatsChanged.
122  * @tc.type: FUNC
123  */
124 HWTEST_F(NetStatsCallbackStubTest, OnNetIfaceStatsChangedTest002, TestSize.Level1)
125 {
126     MessageParcel data;
127     if (!data.WriteInterfaceToken(NetStatsCallbackStub::GetDescriptor())) {
128         return;
129     }
130     if (!data.WriteString("test")) {
131         return;
132     }
133     MessageParcel reply;
134     MessageOption option;
135     int32_t ret = instance_->OnRemoteRequest(static_cast<uint32_t>(StatsCallBackInterfaceCode::NET_STATS_IFACE_CHANGED),
136                                              data, reply, option);
137     EXPECT_EQ(ret, NETMANAGER_SUCCESS);
138 }
139 
140 /**
141  * @tc.name: OnNetUidStatsChangedTest001
142  * @tc.desc: Test NetStatsCallbackStub OnNetUidStatsChanged.
143  * @tc.type: FUNC
144  */
145 HWTEST_F(NetStatsCallbackStubTest, OnNetUidStatsChangedTest001, TestSize.Level1)
146 {
147     MessageParcel data;
148     if (!data.WriteInterfaceToken(NetStatsCallbackStub::GetDescriptor())) {
149         return;
150     }
151     MessageParcel reply;
152     MessageOption option;
153     int32_t ret = instance_->OnRemoteRequest(static_cast<uint32_t>(StatsCallBackInterfaceCode::NET_STATS_UID_CHANGED),
154                                              data, reply, option);
155     EXPECT_EQ(ret, NETMANAGER_ERR_READ_DATA_FAIL);
156 }
157 
158 /**
159  * @tc.name: OnNetUidStatsChangedTest002
160  * @tc.desc: Test NetStatsCallbackStub OnNetUidStatsChanged.
161  * @tc.type: FUNC
162  */
163 HWTEST_F(NetStatsCallbackStubTest, OnNetUidStatsChangedTest002, TestSize.Level1)
164 {
165     MessageParcel data;
166     if (!data.WriteInterfaceToken(NetStatsCallbackStub::GetDescriptor())) {
167         return;
168     }
169     if (!data.WriteString("test")) {
170         return;
171     }
172     MessageParcel reply;
173     MessageOption option;
174     int32_t ret = instance_->OnRemoteRequest(static_cast<uint32_t>(StatsCallBackInterfaceCode::NET_STATS_UID_CHANGED),
175                                              data, reply, option);
176     EXPECT_EQ(ret, NETMANAGER_ERR_READ_DATA_FAIL);
177 }
178 
179 /**
180  * @tc.name: OnNetUidStatsChangedTest003
181  * @tc.desc: Test NetStatsCallbackStub OnNetUidStatsChanged.
182  * @tc.type: FUNC
183  */
184 HWTEST_F(NetStatsCallbackStubTest, OnNetUidStatsChangedTest003, TestSize.Level1)
185 {
186     MessageParcel data;
187     if (!data.WriteInterfaceToken(NetStatsCallbackStub::GetDescriptor())) {
188         return;
189     }
190     if (!data.WriteString("test")) {
191         return;
192     }
193     if (!data.WriteUint32(1)) {
194         return;
195     }
196     MessageParcel reply;
197     MessageOption option;
198     int32_t ret = instance_->OnRemoteRequest(static_cast<uint32_t>(StatsCallBackInterfaceCode::NET_STATS_UID_CHANGED),
199                                              data, reply, option);
200     EXPECT_EQ(ret, NETMANAGER_SUCCESS);
201 }
202 } // namespace NetManagerStandard
203 } // namespace OHOS