1 /*
2  * Copyright (c) 2021-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 "softbus_adapter_test.h"
17 
18 #include "mock_softbus_adapter.h"
19 #include "softbus_error_code.h"
20 #include "test_log.h"
21 
22 using namespace testing;
23 using namespace testing::ext;
24 
25 namespace OHOS {
26 namespace DistributedSchedule {
27 namespace {
28 const std::string NETWORKID_01 = "networkId01";
29 }
30 
SetUpTestCase()31 void SoftbusAdapterTest::SetUpTestCase()
32 {
33     DTEST_LOG << "SoftbusAdapterTest::SetUpTestCase" << std::endl;
34 }
35 
TearDownTestCase()36 void SoftbusAdapterTest::TearDownTestCase()
37 {
38     DTEST_LOG << "SoftbusAdapterTest::TearDownTestCase" << std::endl;
39 }
40 
TearDown()41 void SoftbusAdapterTest::TearDown()
42 {
43     DTEST_LOG << "SoftbusAdapterTest::TearDown" << std::endl;
44 }
45 
SetUp()46 void SoftbusAdapterTest::SetUp()
47 {
48     DTEST_LOG << "SoftbusAdapterTest::SetUp" << std::endl;
49 }
50 
51 /**
52  * @tc.name: SendSoftbusEvent_001
53  * @tc.desc: call SendSoftbusEvent from distributedsched
54  * @tc.type: FUNC
55  */
56 HWTEST_F(SoftbusAdapterTest, SendSoftbusEvent_001, TestSize.Level3)
57 {
58     DTEST_LOG << "SoftbusAdapterTest SendSoftbusEvent_001 begin" << std::endl;
59     uint32_t sendDataLen = 1;
60     std::shared_ptr<DSchedDataBuffer> buffer = std::make_shared<DSchedDataBuffer>(sendDataLen);
61     SoftbusMock sortbusMock;
62     EXPECT_CALL(sortbusMock, SendEvent(_, _, _)).WillRepeatedly(Return(SOFTBUS_OK));
63     uint32_t result = SoftbusAdapter::GetInstance().SendSoftbusEvent(buffer);
64     EXPECT_EQ(result, SOFTBUS_OK);
65     DTEST_LOG << "SoftbusAdapterTest SendSoftbusEvent_001 end" << std::endl;
66 }
67 
68 /**
69  * @tc.name: StopSoftbusEvent_001
70  * @tc.desc: call StopSoftbusEvent from distributedsched
71  * @tc.type: FUNC
72  */
73 HWTEST_F(SoftbusAdapterTest, StopSoftbusEvent_001, TestSize.Level3)
74 {
75     DTEST_LOG << "SoftbusAdapterTest StopSoftbusEvent_001 begin" << std::endl;
76     SoftbusMock sortbusMock;
77     EXPECT_CALL(sortbusMock, StopEvent(_, _, _)).WillRepeatedly(Return(SOFTBUS_OK));
78     uint32_t result = SoftbusAdapter::GetInstance().StopSoftbusEvent();
79     EXPECT_EQ(result, SOFTBUS_OK);
80     DTEST_LOG << "SoftbusAdapterTest StopSoftbusEvent_001 end" << std::endl;
81 }
82 
83 /**
84  * @tc.name: RegisterSoftbusEventListener_001
85  * @tc.desc: call RegisterSoftbusEventListener from distributedsched
86  * @tc.type: FUNC
87  */
88 HWTEST_F(SoftbusAdapterTest, RegisterSoftbusEventListener_001, TestSize.Level3)
89 {
90     DTEST_LOG << "SoftbusAdapterTest OnBroadCastRecv_001 begin" << std::endl;
91     std::string networkId = NETWORKID_01;
92     uint8_t* sendData = nullptr;
93     uint32_t sendDataLen = 1;
94     SoftbusAdapter::GetInstance().OnBroadCastRecv(networkId, sendData, sendDataLen);
95     DTEST_LOG << "SoftbusAdapterTest OnBroadCastRecv_001 end" << std::endl;
96 
97     DTEST_LOG << "SoftbusAdapterTest RegisterSoftbusEventListener_001 begin" << std::endl;
98     std::shared_ptr<SubSoftbusAdapterListener> listener = std::make_shared<SubSoftbusAdapterListener>();
99     SoftbusMock sortbusMock;
100     EXPECT_CALL(sortbusMock, RegisterEventListener(_, _)).WillRepeatedly(Return(SOFTBUS_OK));
101     uint32_t result = SoftbusAdapter::GetInstance().RegisterSoftbusEventListener(listener);
102     EXPECT_EQ(result, SOFTBUS_OK);
103     DTEST_LOG << "SoftbusAdapterTest RegisterSoftbusEventListener_001 end" << std::endl;
104 }
105 
106 /**
107  * @tc.name: UnregisterSoftbusEventListener_001
108  * @tc.desc: call UnregisterSoftbusEventListener from distributedsched
109  * @tc.type: FUNC
110  */
111 HWTEST_F(SoftbusAdapterTest, UnregisterSoftbusEventListener_001, TestSize.Level3)
112 {
113     DTEST_LOG << "SoftbusAdapterTest UnregisterSoftbusEventListener_001 begin" << std::endl;
114     std::shared_ptr<SubSoftbusAdapterListener> listener = std::make_shared<SubSoftbusAdapterListener>();
115     SoftbusMock sortbusMock;
116     EXPECT_CALL(sortbusMock, UnregisterEventListener(_, _)).WillRepeatedly(Return(SOFTBUS_OK));
117     uint32_t result = SoftbusAdapter::GetInstance().UnregisterSoftbusEventListener(listener);
118     EXPECT_EQ(result, SOFTBUS_OK);
119     DTEST_LOG << "SoftbusAdapterTest UnregisterSoftbusEventListener_001 end" << std::endl;
120 }
121 
122 /**
123  * @tc.name: RegisterSoftbusEventListener_002
124  * @tc.desc: call RegisterSoftbusEventListener from distributedsched
125  * @tc.type: FUNC
126  */
127 HWTEST_F(SoftbusAdapterTest, RegisterSoftbusEventListener_002, TestSize.Level3)
128 {
129     DTEST_LOG << "SoftbusAdapterTest RegisterSoftbusEventListener_002 begin" << std::endl;
130     std::shared_ptr<SubSoftbusAdapterListener> listener = nullptr;
131     uint32_t result = SoftbusAdapter::GetInstance().RegisterSoftbusEventListener(listener);
132     EXPECT_EQ(result, SOFTBUS_INVALID_PARAM);
133     DTEST_LOG << "SoftbusAdapterTest RegisterSoftbusEventListener_002 end" << std::endl;
134 }
135 
136 /**
137  * @tc.name: StopSoftbusEvent_002
138  * @tc.desc: call StopSoftbusEvent from distributedsched
139  * @tc.type: FUNC
140  */
141 HWTEST_F(SoftbusAdapterTest, StopSoftbusEvent_002, TestSize.Level3)
142 {
143     DTEST_LOG << "SoftbusAdapterTest StopSoftbusEvent_002 begin" << std::endl;
144     SoftbusAdapter::GetInstance().pkgName_ = "oh";
145     SoftbusMock sortbusMock;
146     EXPECT_CALL(sortbusMock, SendEvent(_, _, _)).WillRepeatedly(Return(SOFTBUS_OK));
147     uint32_t result = SoftbusAdapter::GetInstance().StopSoftbusEvent();
148     EXPECT_EQ(result, SOFTBUS_OK);
149     DTEST_LOG << "SoftbusAdapterTest StopSoftbusEvent_002 end" << std::endl;
150 }
151 
152 /**
153  * @tc.name: RegisterSoftbusEventListener_003
154  * @tc.desc: call RegisterSoftbusEventListener from distributedsched
155  * @tc.type: FUNC
156  */
157 HWTEST_F(SoftbusAdapterTest, RegisterSoftbusEventListener_003, TestSize.Level3)
158 {
159     DTEST_LOG << "SoftbusAdapterTest RegisterSoftbusEventListener_003 begin" << std::endl;
160     std::shared_ptr<SubSoftbusAdapterListener> listener;
161     uint32_t result = SoftbusAdapter::GetInstance().RegisterSoftbusEventListener(listener);
162     EXPECT_EQ(result, SOFTBUS_INVALID_PARAM);
163     DTEST_LOG << "SoftbusAdapterTest RegisterSoftbusEventListener_003 end" << std::endl;
164 }
165 
166 /**
167  * @tc.name: RegisterSoftbusEventListener_004
168  * @tc.desc: call RegisterSoftbusEventListener from distributedsched
169  * @tc.type: FUNC
170  */
171 HWTEST_F(SoftbusAdapterTest, RegisterSoftbusEventListener_004, TestSize.Level3)
172 {
173     DTEST_LOG << "SoftbusAdapterTest RegisterSoftbusEventListener_004 begin" << std::endl;
174     std::shared_ptr<SubSoftbusAdapterListener> listener;
175     SoftbusAdapter::GetInstance().pkgName_ = "oh";
176     uint32_t result = SoftbusAdapter::GetInstance().RegisterSoftbusEventListener(listener);
177     EXPECT_EQ(result, SOFTBUS_INVALID_PARAM);
178     DTEST_LOG << "SoftbusAdapterTest RegisterSoftbusEventListener_004 end" << std::endl;
179 }
180 
181 /**
182  * @tc.name: UnregisterSoftbusEventListener_002
183  * @tc.desc: call UnregisterSoftbusEventListener from distributedsched
184  * @tc.type: FUNC
185  */
186 HWTEST_F(SoftbusAdapterTest, UnregisterSoftbusEventListener_002, TestSize.Level3)
187 {
188     DTEST_LOG << "SoftbusAdapterTest UnregisterSoftbusEventListener_002 begin" << std::endl;
189     std::shared_ptr<SubSoftbusAdapterListener> listener;
190     uint32_t result = SoftbusAdapter::GetInstance().UnregisterSoftbusEventListener(listener);
191     EXPECT_EQ(result, SOFTBUS_INVALID_PARAM);
192     DTEST_LOG << "SoftbusAdapterTest UnregisterSoftbusEventListener_002 end" << std::endl;
193 }
194 
195 /**
196  * @tc.name: UnregisterSoftbusEventListener_003
197  * @tc.desc: call UnregisterSoftbusEventListener from distributedsched
198  * @tc.type: FUNC
199  */
200 HWTEST_F(SoftbusAdapterTest, UnregisterSoftbusEventListener_003, TestSize.Level3)
201 {
202     DTEST_LOG << "SoftbusAdapterTest UnregisterSoftbusEventListener_003 begin" << std::endl;
203     std::shared_ptr<SubSoftbusAdapterListener> listener = std::make_shared<SubSoftbusAdapterListener>();
204     SoftbusAdapter::GetInstance().pkgName_ = "oh";
205     SoftbusMock sortbusMock;
206     EXPECT_CALL(sortbusMock, UnregisterEventListener(_, _)).WillRepeatedly(Return(SOFTBUS_OK));
207     uint32_t result = SoftbusAdapter::GetInstance().UnregisterSoftbusEventListener(listener);
208     EXPECT_EQ(result, SOFTBUS_OK);
209     DTEST_LOG << "SoftbusAdapterTest UnregisterSoftbusEventListener_003 end" << std::endl;
210 }
211 }
212 }