• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2022 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 <string>
17 #include <gtest/gtest.h>
18 
19 #include "softbus_error_code.h"
20 #include "softbus_adapter_mem.h"
21 #include "softbus_common.h"
22 #include "legacy/softbus_hisysevt_bus_center.h"
23 #include "securec.h"
24 #include "legacy/softbus_hisysevt_discreporter.h"
25 #include "legacy/softbus_hisysevt_connreporter.h"
26 #include "legacy/softbus_adapter_hisysevent.h"
27 #include "legacy/softbus_hisysevt_common.h"
28 
29 using namespace std;
30 using namespace testing::ext;
31 
32 static const char *g_moduleNameOne = "testModule1";
33 static const char *g_moduleNameTwo = "testModule2";
34 
35 namespace OHOS {
36 class DiscConnDfxTest : public testing::Test {
37 public:
38     static void SetUpTestCase();
39     static void TearDownTestCase();
40     void SetUp();
41     void TearDown();
42 };
43 
SetUpTestCase(void)44 void DiscConnDfxTest::SetUpTestCase(void)
45 {
46     InitSoftbusSysEvt();
47 }
48 
TearDownTestCase(void)49 void DiscConnDfxTest::TearDownTestCase(void)
50 {
51 }
52 
SetUp(void)53 void DiscConnDfxTest::SetUp(void)
54 {
55 }
56 
TearDown(void)57 void DiscConnDfxTest::TearDown(void)
58 {
59 }
60 
61 /**
62  * @tc.name: SoftbusRecordFirstDiscTime
63  * @tc.desc: Verify SoftBus Record first Discovery time function.
64  * @tc.type: FUNC
65  * @tc.require:
66  */
67 HWTEST_F(DiscConnDfxTest, SoftbusRecordFirstDiscTime_001, TestSize.Level0)
68 {
69     int32_t ret = SOFTBUS_ERR;
70 
71     ret = SoftbusRecordFirstDiscTime(SOFTBUS_HISYSEVT_DISC_MEDIUM_BLE, 1000);
72     EXPECT_EQ(SOFTBUS_OK, ret);
73     ret = SoftbusRecordFirstDiscTime(SOFTBUS_HISYSEVT_DISC_MEDIUM_BLE, 2000);
74     EXPECT_EQ(SOFTBUS_OK, ret);
75     ret = SoftbusRecordFirstDiscTime(SOFTBUS_HISYSEVT_DISC_MEDIUM_BLE, 3000);
76     EXPECT_EQ(SOFTBUS_OK, ret);
77     ret = SoftbusRecordFirstDiscTime(SOFTBUS_HISYSEVT_DISC_MEDIUM_BLE, UINT64_MAX - 1);
78     EXPECT_EQ(SOFTBUS_OK, ret);
79 
80     ret = SoftbusRecordFirstDiscTime(SOFTBUS_HISYSEVT_DISC_MEDIUM_COAP, 1000);
81     EXPECT_EQ(SOFTBUS_OK, ret);
82     ret = SoftbusRecordFirstDiscTime(SOFTBUS_HISYSEVT_DISC_MEDIUM_COAP, 2000);
83     EXPECT_EQ(SOFTBUS_OK, ret);
84     ret = SoftbusRecordFirstDiscTime(SOFTBUS_HISYSEVT_DISC_MEDIUM_COAP, 3000);
85     EXPECT_EQ(SOFTBUS_OK, ret);
86     ret = SoftbusRecordFirstDiscTime(SOFTBUS_HISYSEVT_DISC_MEDIUM_COAP, UINT64_MAX - 1);
87     EXPECT_EQ(SOFTBUS_OK, ret);
88 
89     StatisticEvtReportFunc reportFunc = GetStatisticEvtReportFunc(SOFTBUS_STATISTIC_EVT_FIRST_DISC_DURATION);
90     ret = reportFunc();
91     EXPECT_EQ(SOFTBUS_OK, ret);
92 }
93 
94 /**
95  * @tc.name: SoftbusRecordBleDiscDetails001
96  * @tc.desc: Verify SoftbusRecordBleDiscDetails function.
97  * @tc.type: FUNC
98  * @tc.require:
99  */
100 
101 HWTEST_F(DiscConnDfxTest, SoftbusRecordBleDiscDetails_001, TestSize.Level0)
102 {
103     int32_t ret = SOFTBUS_ERR;
104 
105     ret = SoftbusRecordBleDiscDetails(const_cast<char *>(g_moduleNameOne), 1000, 3, 2, 1);
106     EXPECT_EQ(SOFTBUS_OK, ret);
107     ret = SoftbusRecordBleDiscDetails(const_cast<char *>(g_moduleNameOne), 2000, 3, 2, 1);
108     EXPECT_EQ(SOFTBUS_OK, ret);
109     ret = SoftbusRecordBleDiscDetails(const_cast<char *>(g_moduleNameOne), 3000, 3, 2, 1);
110     EXPECT_EQ(SOFTBUS_OK, ret);
111 
112     ret = SoftbusRecordBleDiscDetails(const_cast<char *>(g_moduleNameTwo), 1000, 3, 2, 1);
113     EXPECT_EQ(SOFTBUS_OK, ret);
114     ret = SoftbusRecordBleDiscDetails(const_cast<char *>(g_moduleNameTwo), 2000, 3, 2, 1);
115     EXPECT_EQ(SOFTBUS_OK, ret);
116     ret = SoftbusRecordBleDiscDetails(const_cast<char *>(g_moduleNameTwo), 3000, 3, 2, 1);
117     EXPECT_EQ(SOFTBUS_OK, ret);
118 
119     StatisticEvtReportFunc reportFunc = GetStatisticEvtReportFunc(SOFTBUS_STATISTIC_EVT_DISC_DETAILS);
120     ret = reportFunc();
121     EXPECT_EQ(SOFTBUS_OK, ret);
122 }
123 
124 /**
125  * @tc.name: SoftbusRecordDiscBleRssi001
126  * @tc.desc: Verify SoftbusRecordDiscBleRssi function.
127  * @tc.type: FUNC
128  * @tc.require:
129  */
130 
131 HWTEST_F(DiscConnDfxTest, SoftbusRecordDiscBleRssi_001, TestSize.Level0)
132 {
133     int32_t ret = SOFTBUS_ERR;
134 
135     ret = SoftbusRecordDiscBleRssi(-30);
136     EXPECT_EQ(SOFTBUS_OK, ret);
137     ret = SoftbusRecordDiscBleRssi(-20);
138     EXPECT_EQ(SOFTBUS_OK, ret);
139     ret = SoftbusRecordDiscBleRssi(20);
140     EXPECT_EQ(SOFTBUS_OK, ret);
141     ret = SoftbusRecordDiscBleRssi(30);
142     EXPECT_EQ(SOFTBUS_OK, ret);
143 
144     StatisticEvtReportFunc reportFunc = GetStatisticEvtReportFunc(SOFTBUS_STATISTIC_EVT_DISC_BLE_RSSI);
145     ret = reportFunc();
146     EXPECT_EQ(SOFTBUS_OK, ret);
147 }
148 
149 /**
150  * @tc.name: SoftbusRecordConnResult_001
151  * @tc.desc: Verify SoftbusRecordConnResult function.
152  * @tc.type: FUNC
153  * @tc.require:
154  */
155 HWTEST_F(DiscConnDfxTest, SoftbusRecordConnResult_001, TestSize.Level0)
156 {
157     int32_t ret = SOFTBUS_ERR;
158 
159     ret = SoftbusRecordConnResult(DEFAULT_PID, SOFTBUS_HISYSEVT_CONN_TYPE_BR, SOFTBUS_EVT_CONN_SUCC,
160                             1000, SOFTBUS_HISYSEVT_CONN_OK);
161     EXPECT_EQ(SOFTBUS_OK, ret);
162     ret = SoftbusRecordConnResult(DEFAULT_PID, SOFTBUS_HISYSEVT_CONN_TYPE_BR, SOFTBUS_EVT_CONN_SUCC,
163                             2000, SOFTBUS_HISYSEVT_CONN_OK);
164     EXPECT_EQ(SOFTBUS_OK, ret);
165     ret = SoftbusRecordConnResult(DEFAULT_PID, SOFTBUS_HISYSEVT_CONN_TYPE_BR, SOFTBUS_EVT_CONN_SUCC,
166                             3000, SOFTBUS_HISYSEVT_CONN_OK);
167     EXPECT_EQ(SOFTBUS_OK, ret);
168     ret = SoftbusRecordConnResult(DEFAULT_PID, SOFTBUS_HISYSEVT_CONN_TYPE_BLE, SOFTBUS_EVT_CONN_SUCC,
169                             3000, SOFTBUS_HISYSEVT_CONN_OK);
170     EXPECT_EQ(SOFTBUS_OK, ret);
171     ret = SoftbusRecordConnResult(DEFAULT_PID, SOFTBUS_HISYSEVT_CONN_TYPE_TCP, SOFTBUS_EVT_CONN_SUCC,
172                             3000, SOFTBUS_HISYSEVT_CONN_OK);
173     EXPECT_EQ(SOFTBUS_OK, ret);
174     ret = SoftbusRecordConnResult(DEFAULT_PID, SOFTBUS_HISYSEVT_CONN_TYPE_P2P, SOFTBUS_EVT_CONN_SUCC,
175                             3000, SOFTBUS_HISYSEVT_CONN_OK);
176     EXPECT_EQ(SOFTBUS_OK, ret);
177     ret = SoftbusRecordConnResult(DEFAULT_PID, SOFTBUS_HISYSEVT_CONN_TYPE_BR, SOFTBUS_EVT_CONN_FAIL,
178                             3000, SOFTBUS_ERR);
179     EXPECT_EQ(SOFTBUS_OK, ret);
180     ret = SoftbusRecordConnResult(DEFAULT_PID, SOFTBUS_HISYSEVT_CONN_TYPE_BR, SOFTBUS_EVT_CONN_FAIL,
181                             2000, SOFTBUS_ERR);
182     EXPECT_EQ(SOFTBUS_OK, ret);
183     StatisticEvtReportFunc reportFunc = GetStatisticEvtReportFunc(SOFTBUS_STATISTIC_EVT_CONN_DURATION);
184     ret = reportFunc();
185     EXPECT_EQ(SOFTBUS_OK, ret);
186 }
187 
188 /**
189  * @tc.name: SoftbusRecordConnResult_001
190  * @tc.desc: Verify SoftbusRecordConnResult function.
191  * @tc.type: FUNC
192  * @tc.require:
193  */
194 HWTEST_F(DiscConnDfxTest, SoftbusRecordProccessDuration_001, TestSize.Level0)
195 {
196     int32_t ret = SOFTBUS_ERR;
197     ProcessStepTime processStepTime = {
198         .totalTime = 3000,
199         .negotiationTime = 1000,
200         .groupCreateTime = 1000,
201         .connGroupTime = 1000,
202     };
203     ret = SoftbusRecordProccessDuration(DEFAULT_PID, SOFTBUS_HISYSEVT_CONN_TYPE_P2P, SOFTBUS_EVT_CONN_SUCC,
204                                         &processStepTime, SOFTBUS_HISYSEVT_CONN_OK);
205     EXPECT_EQ(SOFTBUS_OK, ret);
206 
207     StatisticEvtReportFunc reportFunc = GetStatisticEvtReportFunc(SOFTBUS_STATISTIC_EVT_PROCESS_STEP_DURATION);
208     ret = reportFunc();
209     EXPECT_EQ(SOFTBUS_OK, ret);
210 }
211 
212 /**
213  * @tc.name: SoftbusReportDiscFault_001
214  * @tc.desc: Verify SoftbusReportDiscFault function.
215  * @tc.type: FUNC
216  * @tc.require:
217  */
218 HWTEST_F(DiscConnDfxTest, SoftbusReportDiscFault_001, TestSize.Level0)
219 {
220     int32_t ret = SOFTBUS_ERR;
221     ret = SoftbusReportDiscFault(SOFTBUS_HISYSEVT_DISC_MEDIUM_BLE, -100);
222     EXPECT_EQ(SOFTBUS_OK, ret);
223 
224     ret = SoftbusReportDiscFault(SOFTBUS_HISYSEVT_DISC_MEDIUM_COAP, -100);
225     EXPECT_EQ(SOFTBUS_OK, ret);
226 }
227 
228 /**
229  * @tc.name: InitBusCenterDfx001
230  * @tc.desc: Verify InitBusCenterDfx function.
231  * @tc.type: FUNC
232  * @tc.require:
233  */
234 
235 HWTEST_F(DiscConnDfxTest, InitDiscConnDfx001, TestSize.Level0)
236 {
237     int32_t ret = InitConnStatisticSysEvt();
238     EXPECT_EQ(SOFTBUS_OK, ret);
239     DeinitConnStatisticSysEvt();
240 
241     ret = InitDiscStatisticSysEvt();
242     EXPECT_EQ(SOFTBUS_OK, ret);
243     DeinitDiscStatisticSysEvt();
244 }
245 } // namespace OHOS
246