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 <cstring> 17 #include <securec.h> 18 19 #include "gtest/gtest.h" 20 21 #include "disc_log.h" 22 #include "softbus_adapter_mem.h" 23 #include "softbus_ble_utils.h" 24 #include "softbus_broadcast_type.h" 25 #include "softbus_broadcast_utils.h" 26 #include "softbus_error_code.h" 27 28 using namespace testing::ext; 29 30 namespace OHOS { 31 32 /** 33 * @tc.name: SoftbusBleUtilsTest_BtStatusToSoftBus001 34 * @tc.desc: test bt status convert to softbus status 35 * @tc.type: FUNC 36 * @tc.require: 1 37 */ 38 HWTEST(SoftbusBleUtilsTest, BtStatusToSoftBus001, TestSize.Level3) 39 { 40 int32_t status = BtStatusToSoftBus(OHOS_BT_STATUS_SUCCESS); 41 EXPECT_EQ(status, SOFTBUS_BC_STATUS_SUCCESS); 42 43 status = BtStatusToSoftBus(OHOS_BT_STATUS_FAIL); 44 EXPECT_EQ(status, SOFTBUS_BC_STATUS_FAIL); 45 46 status = BtStatusToSoftBus(OHOS_BT_STATUS_NOT_READY); 47 EXPECT_EQ(status, SOFTBUS_BC_STATUS_NOT_READY); 48 49 status = BtStatusToSoftBus(OHOS_BT_STATUS_NOMEM); 50 EXPECT_EQ(status, SOFTBUS_BC_STATUS_NOMEM); 51 52 status = BtStatusToSoftBus(OHOS_BT_STATUS_BUSY); 53 EXPECT_EQ(status, SOFTBUS_BC_STATUS_BUSY); 54 55 status = BtStatusToSoftBus(OHOS_BT_STATUS_DONE); 56 EXPECT_EQ(status, SOFTBUS_BC_STATUS_DONE); 57 58 status = BtStatusToSoftBus(OHOS_BT_STATUS_UNSUPPORTED); 59 EXPECT_EQ(status, SOFTBUS_BC_STATUS_UNSUPPORTED); 60 61 status = BtStatusToSoftBus(OHOS_BT_STATUS_PARM_INVALID); 62 EXPECT_EQ(status, SOFTBUS_BC_STATUS_PARM_INVALID); 63 64 status = BtStatusToSoftBus(OHOS_BT_STATUS_UNHANDLED); 65 EXPECT_EQ(status, SOFTBUS_BC_STATUS_UNHANDLED); 66 67 status = BtStatusToSoftBus(OHOS_BT_STATUS_AUTH_FAILURE); 68 EXPECT_EQ(status, SOFTBUS_BC_STATUS_AUTH_FAILURE); 69 70 status = BtStatusToSoftBus(OHOS_BT_STATUS_RMT_DEV_DOWN); 71 EXPECT_EQ(status, SOFTBUS_BC_STATUS_RMT_DEV_DOWN); 72 73 status = BtStatusToSoftBus(OHOS_BT_STATUS_AUTH_REJECTED); 74 EXPECT_EQ(status, SOFTBUS_BC_STATUS_AUTH_REJECTED); 75 76 status = BtStatusToSoftBus(OHOS_BT_STATUS_DUPLICATED_ADDR); 77 EXPECT_EQ(status, SOFTBUS_BC_STATUS_DUPLICATED_ADDR); 78 79 int32_t invalidStatus = 100; 80 status = BtStatusToSoftBus(static_cast<BtStatus>(invalidStatus)); 81 EXPECT_EQ(status, SOFTBUS_BC_STATUS_FAIL); 82 } 83 84 /** 85 * @tc.name: SoftbusBleUtilsTest_SoftbusAdvParamToBt001 86 * @tc.desc: test softbus adv param convert to bt adv params 87 * @tc.type: FUNC 88 * @tc.require: 1 89 */ 90 HWTEST(SoftbusBleUtilsTest, SoftbusAdvParamToBt001, TestSize.Level3) 91 { 92 SoftbusBroadcastParam softbusAdvParam = {}; 93 softbusAdvParam.minInterval = 1; 94 softbusAdvParam.maxInterval = 1; 95 softbusAdvParam.advType = 1; 96 softbusAdvParam.advFilterPolicy = 1; 97 softbusAdvParam.ownAddrType = 1; 98 softbusAdvParam.peerAddrType = 1; 99 softbusAdvParam.channelMap = 1; 100 softbusAdvParam.duration = 1; 101 softbusAdvParam.txPower = 1; 102 103 BleAdvParams bleAdvParams = {}; 104 SoftbusAdvParamToBt(&softbusAdvParam, &bleAdvParams); 105 106 EXPECT_EQ(bleAdvParams.minInterval, softbusAdvParam.minInterval); 107 EXPECT_EQ(bleAdvParams.maxInterval, softbusAdvParam.maxInterval); 108 EXPECT_EQ(bleAdvParams.advType, softbusAdvParam.advType); 109 EXPECT_EQ(bleAdvParams.advFilterPolicy, softbusAdvParam.advFilterPolicy); 110 EXPECT_EQ(bleAdvParams.ownAddrType, softbusAdvParam.ownAddrType); 111 EXPECT_EQ(bleAdvParams.peerAddrType, softbusAdvParam.peerAddrType); 112 EXPECT_EQ(bleAdvParams.channelMap, softbusAdvParam.channelMap); 113 EXPECT_EQ(bleAdvParams.duration, softbusAdvParam.duration); 114 EXPECT_EQ(bleAdvParams.txPower, softbusAdvParam.txPower); 115 116 softbusAdvParam.advFilterPolicy = SOFTBUS_BC_ADV_FILTER_ALLOW_SCAN_ANY_CON_WLST; 117 softbusAdvParam.advType = SOFTBUS_BC_ADV_SCAN_IND; 118 SoftbusAdvParamToBt(&softbusAdvParam, &bleAdvParams); 119 EXPECT_EQ(static_cast<int>(bleAdvParams.advFilterPolicy), static_cast<int>(softbusAdvParam.advFilterPolicy)); 120 EXPECT_EQ(static_cast<int>(bleAdvParams.advType), static_cast<int>(softbusAdvParam.advType)); 121 122 softbusAdvParam.advFilterPolicy = SOFTBUS_BC_ADV_FILTER_ALLOW_SCAN_WLST_CON_WLST; 123 softbusAdvParam.advType = SOFTBUS_BC_ADV_DIRECT_IND_LOW; 124 SoftbusAdvParamToBt(&softbusAdvParam, &bleAdvParams); 125 EXPECT_EQ(static_cast<int>(bleAdvParams.advFilterPolicy), static_cast<int>(softbusAdvParam.advFilterPolicy)); 126 EXPECT_EQ(static_cast<int>(bleAdvParams.advType), static_cast<int>(softbusAdvParam.advType)); 127 128 softbusAdvParam.advFilterPolicy = (SOFTBUS_BC_ADV_FILTER_ALLOW_SCAN_WLST_CON_WLST 129 + SOFTBUS_BC_ADV_FILTER_ALLOW_SCAN_WLST_CON_ANY); 130 softbusAdvParam.advType = (SOFTBUS_BC_ADV_DIRECT_IND_LOW + SOFTBUS_BC_ADV_DIRECT_IND_HIGH); 131 SoftbusAdvParamToBt(&softbusAdvParam, &bleAdvParams); 132 EXPECT_EQ(static_cast<int>(bleAdvParams.advFilterPolicy), 133 static_cast<int>(SOFTBUS_BC_ADV_FILTER_ALLOW_SCAN_ANY_CON_ANY)); 134 EXPECT_EQ(static_cast<int>(bleAdvParams.advType), static_cast<int>(SOFTBUS_BC_ADV_IND)); 135 } 136 137 /** 138 * @tc.name: SoftbusBleUtilsTest_BtScanResultToSoftbus001 139 * @tc.desc: test bt scan result convert to softbus scan result 140 * @tc.type: FUNC 141 * @tc.require: 1 142 */ 143 HWTEST(SoftbusBleUtilsTest, BtScanResultToSoftbus001, TestSize.Level3) 144 { 145 BtScanResultData btScanResult = {}; 146 btScanResult.eventType = 1; 147 btScanResult.dataStatus = 1; 148 btScanResult.addrType = 1; 149 btScanResult.primaryPhy = 1; 150 btScanResult.secondaryPhy = 1; 151 btScanResult.advSid = 1; 152 btScanResult.txPower = 1; 153 btScanResult.rssi = 1; 154 155 SoftBusBcScanResult softbusScanResult = {}; 156 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 157 158 EXPECT_EQ(softbusScanResult.eventType, btScanResult.eventType); 159 EXPECT_EQ(softbusScanResult.dataStatus, btScanResult.dataStatus); 160 EXPECT_EQ(softbusScanResult.addrType, btScanResult.addrType); 161 EXPECT_EQ(softbusScanResult.primaryPhy, btScanResult.primaryPhy); 162 EXPECT_EQ(softbusScanResult.secondaryPhy, btScanResult.secondaryPhy); 163 EXPECT_EQ(softbusScanResult.advSid, btScanResult.advSid); 164 EXPECT_EQ(softbusScanResult.txPower, btScanResult.txPower); 165 EXPECT_EQ(softbusScanResult.rssi, btScanResult.rssi); 166 } 167 168 169 /** 170 * @tc.name: SoftbusBleUtilsTest_BtScanResultToSoftbus002 171 * @tc.desc: test bt scan result convert to softbus scan result for BtScanDataStatusToSoftbus 172 * @tc.type: FUNC 173 * @tc.require: 1 174 */ 175 HWTEST(SoftbusBleUtilsTest, BtScanResultToSoftbus002, TestSize.Level3) 176 { 177 BtScanResultData btScanResult = {}; 178 btScanResult.secondaryPhy = 1; 179 btScanResult.advSid = 1; 180 btScanResult.txPower = 1; 181 btScanResult.rssi = 1; 182 183 SoftBusBcScanResult softbusScanResult = {}; 184 185 btScanResult.eventType = OHOS_BLE_EVT_NON_CONNECTABLE_NON_SCANNABLE; 186 btScanResult.dataStatus = OHOS_BLE_DATA_INCOMPLETE_TRUNCATED; 187 btScanResult.addrType = OHOS_BLE_PUBLIC_DEVICE_ADDRESS; 188 btScanResult.primaryPhy = OHOS_BLE_SCAN_PHY_NO_PACKET; 189 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 190 EXPECT_EQ(softbusScanResult.eventType, btScanResult.eventType); 191 EXPECT_EQ(softbusScanResult.dataStatus, btScanResult.dataStatus); 192 EXPECT_EQ(softbusScanResult.addrType, btScanResult.addrType); 193 EXPECT_EQ(softbusScanResult.primaryPhy, btScanResult.primaryPhy); 194 195 btScanResult.eventType = OHOS_BLE_EVT_SCANNABLE; 196 btScanResult.dataStatus = (OHOS_BLE_DATA_INCOMPLETE_TRUNCATED + 197 OHOS_BLE_DATA_INCOMPLETE_MORE_TO_COME); 198 btScanResult.addrType = OHOS_BLE_PUBLIC_IDENTITY_ADDRESS; 199 btScanResult.primaryPhy = OHOS_BLE_SCAN_PHY_2M; 200 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 201 EXPECT_EQ(softbusScanResult.eventType, btScanResult.eventType); 202 EXPECT_EQ(softbusScanResult.dataStatus, SOFTBUS_BC_DATA_INCOMPLETE_TRUNCATED); 203 EXPECT_EQ(softbusScanResult.addrType, btScanResult.addrType); 204 EXPECT_EQ(softbusScanResult.primaryPhy, btScanResult.primaryPhy); 205 206 btScanResult.eventType = OHOS_BLE_EVT_NON_CONNECTABLE_NON_SCANNABLE_DIRECTED; 207 btScanResult.dataStatus = OHOS_BLE_DATA_INCOMPLETE_MORE_TO_COME; 208 btScanResult.addrType = OHOS_BLE_RANDOM_STATIC_IDENTITY_ADDRESS; 209 btScanResult.primaryPhy = OHOS_BLE_SCAN_PHY_CODED; 210 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 211 EXPECT_EQ(softbusScanResult.eventType, btScanResult.eventType); 212 EXPECT_EQ(softbusScanResult.addrType, btScanResult.addrType); 213 EXPECT_EQ(softbusScanResult.primaryPhy, btScanResult.primaryPhy); 214 215 btScanResult.eventType = OHOS_BLE_EVT_CONNECTABLE_DIRECTED; 216 btScanResult.addrType = OHOS_BLE_UNRESOLVABLE_RANDOM_DEVICE_ADDRESS; 217 btScanResult.primaryPhy = (OHOS_BLE_SCAN_PHY_CODED + OHOS_BLE_SCAN_PHY_1M); 218 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 219 EXPECT_EQ(softbusScanResult.eventType, btScanResult.eventType); 220 EXPECT_EQ(softbusScanResult.addrType, btScanResult.addrType); 221 EXPECT_EQ(softbusScanResult.primaryPhy, SOFTBUS_BC_SCAN_PHY_NO_PACKET); 222 } 223 224 /** 225 * @tc.name: SoftbusBleUtilsTest_BtScanResultToSoftbus003 226 * @tc.desc: test bt scan result convert to softbus scan result for BtScanDataStatusToSoftbus 227 * @tc.type: FUNC 228 * @tc.require: 1 229 */ 230 HWTEST(SoftbusBleUtilsTest, BtScanResultToSoftbus003, TestSize.Level3) 231 { 232 BtScanResultData btScanResult = {}; 233 btScanResult.secondaryPhy = 1; 234 btScanResult.advSid = 1; 235 btScanResult.txPower = 1; 236 btScanResult.rssi = 1; 237 238 SoftBusBcScanResult softbusScanResult = {}; 239 240 btScanResult.eventType = OHOS_BLE_EVT_SCANNABLE_DIRECTED; 241 btScanResult.addrType = OHOS_BLE_NO_ADDRESS; 242 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 243 EXPECT_EQ(softbusScanResult.eventType, btScanResult.eventType); 244 EXPECT_EQ(softbusScanResult.addrType, btScanResult.addrType); 245 246 btScanResult.eventType = OHOS_BLE_EVT_LEGACY_NON_CONNECTABLE; 247 btScanResult.addrType = (OHOS_BLE_UNRESOLVABLE_RANDOM_DEVICE_ADDRESS - 248 OHOS_BLE_RANDOM_STATIC_IDENTITY_ADDRESS); 249 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 250 EXPECT_EQ(softbusScanResult.eventType, btScanResult.eventType); 251 EXPECT_EQ(softbusScanResult.addrType, OHOS_BLE_NO_ADDRESS); 252 253 btScanResult.eventType = OHOS_BLE_EVT_LEGACY_SCANNABLE; 254 btScanResult.addrType = OHOS_BLE_RANDOM_DEVICE_ADDRESS; 255 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 256 EXPECT_EQ(softbusScanResult.eventType, btScanResult.eventType); 257 258 btScanResult.eventType = OHOS_BLE_EVT_LEGACY_CONNECTABLE_DIRECTED; 259 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 260 EXPECT_EQ(softbusScanResult.eventType, btScanResult.eventType); 261 262 btScanResult.eventType = OHOS_BLE_EVT_LEGACY_SCAN_RSP_TO_ADV_SCAN; 263 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 264 EXPECT_EQ(softbusScanResult.eventType, btScanResult.eventType); 265 266 btScanResult.eventType = OHOS_BLE_EVT_LEGACY_SCAN_RSP_TO_ADV; 267 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 268 EXPECT_EQ(softbusScanResult.eventType, btScanResult.eventType); 269 270 btScanResult.eventType = (OHOS_BLE_EVT_LEGACY_SCAN_RSP_TO_ADV + OHOS_BLE_EVT_CONNECTABLE); 271 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 272 EXPECT_EQ(softbusScanResult.eventType, SOFTBUS_BC_EVT_NON_CONNECTABLE_NON_SCANNABLE); 273 } 274 275 /** 276 * @tc.name: SoftbusBleUtilsTest_BtScanResultToSoftbus004 277 * @tc.desc: test bt scan result with invalid params 278 * @tc.type: FUNC 279 * @tc.require: 1 280 */ 281 HWTEST(SoftbusBleUtilsTest, BtScanResultToSoftbus004, TestSize.Level3) 282 { 283 BtScanResultData *src = nullptr; 284 SoftBusBcScanResult *dst = nullptr; 285 BtScanResultToSoftbus(src, dst); 286 EXPECT_EQ(dst, nullptr); 287 288 BtScanResultData btScanResult = {}; 289 BtScanResultToSoftbus(&btScanResult, dst); 290 EXPECT_EQ(dst, nullptr); 291 } 292 293 /** 294 * @tc.name: SoftbusBleUtilsTest_SoftbusFilterToBt001 295 * @tc.desc: test softbus scan filter convert to bt scan filter 296 * @tc.type: FUNC 297 * @tc.require: 1 298 */ 299 HWTEST(SoftbusBleUtilsTest, SoftbusFilterToBt001, TestSize.Level3) 300 { 301 SoftBusBcScanFilter softBusBcScanFilter = {}; 302 softBusBcScanFilter.address = (int8_t *)"address"; 303 softBusBcScanFilter.deviceName = (int8_t *)"deviceName"; 304 softBusBcScanFilter.serviceUuid = 1; 305 softBusBcScanFilter.serviceDataLength = 1; 306 softBusBcScanFilter.manufactureId = 1; 307 softBusBcScanFilter.manufactureDataLength = 1; 308 309 BleScanNativeFilter bleScanNativeFilter = {}; 310 SoftbusFilterToBt(&bleScanNativeFilter, &softBusBcScanFilter, 1); 311 SoftBusFree(bleScanNativeFilter.serviceData); 312 SoftBusFree(bleScanNativeFilter.serviceDataMask); 313 314 EXPECT_EQ(bleScanNativeFilter.address, (char *)softBusBcScanFilter.address); 315 EXPECT_EQ(bleScanNativeFilter.deviceName, (char *)softBusBcScanFilter.deviceName); 316 EXPECT_EQ(bleScanNativeFilter.manufactureId, softBusBcScanFilter.manufactureId); 317 EXPECT_EQ(bleScanNativeFilter.manufactureDataLength, softBusBcScanFilter.manufactureDataLength); 318 } 319 320 /** 321 * @tc.name: SoftbusBleUtilsTest_FreeBtFilter001 322 * @tc.desc: test free bt scan filter 323 * @tc.type: FUNC 324 * @tc.require: 1 325 */ 326 HWTEST(SoftbusBleUtilsTest, FreeBtFilter001, TestSize.Level3) 327 { 328 BleScanNativeFilter *bleScanNativeFilter = (BleScanNativeFilter *)calloc(1, sizeof(BleScanNativeFilter)); 329 FreeBtFilter(bleScanNativeFilter, 1); 330 } 331 332 /** 333 * @tc.name: SoftbusBleUtilsTest_DumpBleScanFilter001 334 * @tc.desc: test dump scan filter 335 * @tc.type: FUNC 336 * @tc.require: 1 337 */ 338 HWTEST(SoftbusBleUtilsTest, DumpBleScanFilter001, TestSize.Level3) 339 { 340 BleScanNativeFilter *bleScanNativeFilter = (BleScanNativeFilter *)calloc(1, sizeof(BleScanNativeFilter)); 341 DumpBleScanFilter(bleScanNativeFilter, 1); 342 free(bleScanNativeFilter); 343 } 344 345 /** 346 * @tc.name: SoftbusBleUtilsTest_GetBtScanMode001 347 * @tc.desc: test get bt scan mode 348 * @tc.type: FUNC 349 * @tc.require: 1 350 */ 351 HWTEST(SoftbusBleUtilsTest, GetBtScanMode001, TestSize.Level3) 352 { 353 int32_t scanMode = GetBtScanMode(SOFTBUS_BC_SCAN_INTERVAL_P2, SOFTBUS_BC_SCAN_WINDOW_P2); 354 EXPECT_EQ(scanMode, OHOS_BLE_SCAN_MODE_OP_P2_60_3000); 355 356 scanMode = GetBtScanMode(SOFTBUS_BC_SCAN_INTERVAL_P10, SOFTBUS_BC_SCAN_WINDOW_P10); 357 EXPECT_EQ(scanMode, OHOS_BLE_SCAN_MODE_OP_P10_30_300); 358 359 scanMode = GetBtScanMode(SOFTBUS_BC_SCAN_INTERVAL_P25, SOFTBUS_BC_SCAN_WINDOW_P25); 360 EXPECT_EQ(scanMode, OHOS_BLE_SCAN_MODE_OP_P25_60_240); 361 362 scanMode = GetBtScanMode(SOFTBUS_BC_SCAN_INTERVAL_P100, SOFTBUS_BC_SCAN_WINDOW_P100); 363 EXPECT_EQ(scanMode, OHOS_BLE_SCAN_MODE_OP_P100_1000_1000); 364 365 scanMode = GetBtScanMode(SOFTBUS_BC_SCAN_INTERVAL_P2, SOFTBUS_BC_SCAN_WINDOW_P100); 366 EXPECT_EQ(scanMode, OHOS_BLE_SCAN_MODE_LOW_POWER); 367 368 scanMode = GetBtScanMode(SOFTBUS_BC_SCAN_INTERVAL_P2_FAST, SOFTBUS_BC_SCAN_WINDOW_P2_FAST); 369 EXPECT_EQ(scanMode, OHOS_BLE_SCAN_MODE_OP_P2_30_1500); 370 371 scanMode = GetBtScanMode(SOFTBUS_BC_SCAN_INTERVAL_P2_FAST, SOFTBUS_BC_SCAN_WINDOW_P100); 372 EXPECT_NE(scanMode, OHOS_BLE_SCAN_MODE_OP_P2_30_1500); 373 374 scanMode = GetBtScanMode(SOFTBUS_BC_SCAN_INTERVAL_P10, SOFTBUS_BC_SCAN_WINDOW_P100); 375 EXPECT_NE(scanMode, OHOS_BLE_SCAN_MODE_OP_P10_30_300); 376 377 scanMode = GetBtScanMode(SOFTBUS_BC_SCAN_INTERVAL_P25, SOFTBUS_BC_SCAN_WINDOW_P100); 378 EXPECT_NE(scanMode, OHOS_BLE_SCAN_MODE_OP_P25_60_240); 379 380 scanMode = GetBtScanMode(SOFTBUS_BC_SCAN_INTERVAL_P50, SOFTBUS_BC_SCAN_WINDOW_P100); 381 EXPECT_NE(scanMode, OHOS_BLE_SCAN_MODE_OP_P50_30_60); 382 383 scanMode = GetBtScanMode(SOFTBUS_BC_SCAN_INTERVAL_P75, SOFTBUS_BC_SCAN_WINDOW_P100); 384 EXPECT_NE(scanMode, OHOS_BLE_SCAN_MODE_OP_P75_30_40); 385 386 scanMode = GetBtScanMode(SOFTBUS_BC_SCAN_INTERVAL_P100, SOFTBUS_BC_SCAN_WINDOW_P75); 387 EXPECT_NE(scanMode, OHOS_BLE_SCAN_MODE_OP_P75_30_40); 388 } 389 390 /** 391 * @tc.name: SoftbusBleUtilsTest_AssembleAdvData001 392 * @tc.desc: test assemble ble adv data 393 * @tc.type: FUNC 394 * @tc.require: 1 395 */ 396 HWTEST(SoftbusBleUtilsTest, AssembleAdvData001, TestSize.Level3) 397 { 398 SoftbusBroadcastData *data = (SoftbusBroadcastData *)calloc(1, sizeof(SoftbusBroadcastData)); 399 data->isSupportFlag = true; 400 data->flag = 1; 401 SoftbusBroadcastPayload bcData; 402 bcData.type = BROADCAST_DATA_TYPE_SERVICE; 403 bcData.id = 1; 404 uint8_t *payload = (uint8_t *)"00112233445566"; 405 bcData.payloadLen = 15; 406 bcData.payload = payload; 407 data->bcData = bcData; 408 uint16_t dataLen = 0; 409 uint8_t *advData = AssembleAdvData(data, &dataLen); 410 uint16_t expectedDataLen = 411 (data->isSupportFlag) ? bcData.payloadLen + BC_HEAD_LEN : bcData.payloadLen + BC_HEAD_LEN - BC_FLAG_LEN; 412 EXPECT_EQ(dataLen, expectedDataLen); 413 EXPECT_NE(advData, nullptr); 414 415 SoftBusFree(advData); 416 free(data); 417 } 418 419 /** 420 * @tc.name: SoftbusBleUtilsTest_AssembleRspData001 421 * @tc.desc: test assemble ble rsp data 422 * @tc.type: FUNC 423 * @tc.require: 1 424 */ 425 HWTEST(SoftbusBleUtilsTest, AssembleRspData001, TestSize.Level3) 426 { 427 SoftbusBroadcastPayload rspData = {}; 428 rspData.type = BROADCAST_DATA_TYPE_BUTT; 429 rspData.id = 1; 430 uint8_t *payload = (uint8_t *)"00112233445566"; 431 rspData.payloadLen = 15; 432 rspData.payload = payload; 433 uint16_t dataLen = 0; 434 435 uint8_t *data = AssembleRspData(&rspData, &dataLen); 436 EXPECT_NE(data, nullptr); 437 uint16_t expectedDataLen = rspData.payloadLen + RSP_HEAD_LEN; 438 EXPECT_EQ(dataLen, expectedDataLen); 439 SoftBusFree(data); 440 } 441 442 /** 443 * @tc.name: SoftbusBleUtilsTest_ParseScanResult001 444 * @tc.desc: test parse ble scan result as softbus scan result 445 * @tc.type: FUNC 446 * @tc.require: 1 447 */ 448 HWTEST(SoftbusBleUtilsTest, ParseScanResult001, TestSize.Level3) 449 { 450 uint8_t *advData = (uint8_t *)"00112233445566"; 451 uint8_t advLen = 23; 452 SoftBusBcScanResult softBusBcScanResult = {}; 453 int32_t ret = ParseScanResult(advData, advLen, &softBusBcScanResult); 454 EXPECT_EQ(ret, SOFTBUS_OK); 455 SoftBusFree(softBusBcScanResult.data.bcData.payload); 456 SoftBusFree(softBusBcScanResult.data.rspData.payload); 457 458 EXPECT_EQ(softBusBcScanResult.data.isSupportFlag, false); 459 EXPECT_EQ(softBusBcScanResult.data.bcData.type, BROADCAST_DATA_TYPE_SERVICE); 460 } 461 462 /** 463 * @tc.name: SoftbusBleUtilsTest_SoftbusSetManufactureFilterTest001 464 * @tc.desc: test SoftbusSetManufactureFilter when success 465 * @tc.type: FUNC 466 * @tc.require: 1 467 */ 468 HWTEST(SoftbusBleUtilsTest, SoftbusSetManufactureFilterTest001, TestSize.Level3) 469 { 470 const uint8_t filterSize = 2; 471 BleScanNativeFilter nativeFilter[filterSize]; 472 SoftbusSetManufactureFilter(nativeFilter, filterSize); 473 474 for (uint8_t i = 0; i < filterSize; i++) { 475 EXPECT_NE(nativeFilter[i].manufactureData, nullptr); 476 EXPECT_EQ(nativeFilter[i].manufactureDataLength, 1); 477 EXPECT_NE(nativeFilter[i].manufactureDataMask, nullptr); 478 EXPECT_EQ(nativeFilter[i].manufactureId, 0x027D); 479 SoftBusFree(nativeFilter[i].manufactureData); 480 SoftBusFree(nativeFilter[i].manufactureDataMask); 481 } 482 } 483 484 /** 485 * @tc.name: SoftbusBleUtilsTest_SoftbusSetManufactureFilterTest002 486 * @tc.desc: test SoftbusSetManufactureFilter when nativeFilter is nullptr 487 * @tc.type: FUNC 488 * @tc.require: 1 489 */ 490 HWTEST(SoftbusBleUtilsTest, SoftbusSetManufactureFilterTest002, TestSize.Level3) 491 { 492 const uint8_t filterSize = 2; 493 SoftbusSetManufactureFilter(nullptr, filterSize); 494 EXPECT_EQ(filterSize, 2); 495 } 496 497 /** 498 * @tc.name: SoftbusBleUtilsTest_SoftbusSetManufactureFilterTest003 499 * @tc.desc: test SoftbusSetManufactureFilter when filterSize = 0 500 * @tc.type: FUNC 501 * @tc.require: 1 502 */ 503 HWTEST(SoftbusBleUtilsTest, SoftbusSetManufactureFilterTest003, TestSize.Level3) 504 { 505 const uint8_t filterSize = 0; 506 BleScanNativeFilter nativeFilter[1]; 507 SoftbusSetManufactureFilter(nativeFilter, filterSize); 508 EXPECT_EQ(filterSize, 0); 509 } 510 511 /** 512 * @tc.name: SoftbusBleUtilsTest_SoftbusAdvDataTypeToBt001 513 * @tc.desc: test SoftbusAdvDataTypeToBt 514 * @tc.type: FUNC 515 * @tc.require: 1 516 */ 517 HWTEST(SoftbusBleUtilsTest, SoftbusAdvDataTypeToBt001, TestSize.Level3) 518 { 519 DISC_LOGI(DISC_TEST, "SoftbusAdvDataTypeToBt001 begin"); 520 521 SoftbusBroadcastPayload rspData; 522 (void)memset_s(&rspData, sizeof(SoftbusBroadcastPayload), 0, sizeof(SoftbusBroadcastPayload)); 523 rspData.type = BROADCAST_DATA_TYPE_BUTT; 524 rspData.id = 1; 525 uint8_t *payload = (uint8_t *)"00112233445566777888999"; 526 rspData.payloadLen = BC_DATA_MAX_LEN; 527 rspData.payload = payload; 528 uint16_t dataLen = 0; 529 530 uint8_t *data = AssembleRspData(nullptr, nullptr); 531 EXPECT_EQ(data, nullptr); 532 data = AssembleRspData(&rspData, nullptr); 533 EXPECT_EQ(data, nullptr); 534 535 data = AssembleRspData(&rspData, &dataLen); 536 EXPECT_NE(data, nullptr); 537 uint16_t expectedDataLen = rspData.payloadLen + RSP_HEAD_LEN; 538 EXPECT_EQ(dataLen, expectedDataLen); 539 uint16_t expectedDataType = 0x00; 540 EXPECT_EQ(data[IDX_RSP_TYPE], expectedDataType); 541 SoftBusFree(data); 542 543 DISC_LOGI(DISC_TEST, "SoftbusAdvDataTypeToBt001 end"); 544 } 545 546 /** 547 * @tc.name: SoftbusBleUtilsTest_SoftbusAdvDataTypeToBt002 548 * @tc.desc: test SoftbusAdvDataTypeToBt 549 * @tc.type: FUNC 550 * @tc.require: 1 551 */ 552 HWTEST(SoftbusBleUtilsTest, SoftbusAdvDataTypeToBt002, TestSize.Level3) 553 { 554 DISC_LOGI(DISC_TEST, "SoftbusAdvDataTypeToBt002 begin"); 555 556 SoftbusBroadcastPayload rspData; 557 (void)memset_s(&rspData, sizeof(SoftbusBroadcastPayload), 0, sizeof(SoftbusBroadcastPayload)); 558 rspData.id = 1; 559 uint8_t *payload = (uint8_t *)"00112233445566777888999"; 560 rspData.payloadLen = BC_DATA_MAX_LEN; 561 rspData.payload = payload; 562 uint16_t dataLen = 0; 563 564 rspData.type = BROADCAST_DATA_TYPE_SERVICE; 565 uint8_t *data = AssembleRspData(&rspData, &dataLen); 566 EXPECT_NE(data, nullptr); 567 uint16_t expectedDataLen = rspData.payloadLen + RSP_HEAD_LEN; 568 EXPECT_EQ(dataLen, expectedDataLen); 569 uint16_t expectedDataType = SERVICE_BC_TYPE; 570 EXPECT_EQ(data[IDX_RSP_TYPE], expectedDataType); 571 SoftBusFree(data); 572 573 rspData.type = BROADCAST_DATA_TYPE_MANUFACTURER; 574 data = AssembleRspData(&rspData, &dataLen); 575 EXPECT_NE(data, nullptr); 576 expectedDataLen = rspData.payloadLen + RSP_HEAD_LEN; 577 EXPECT_EQ(dataLen, expectedDataLen); 578 expectedDataType = MANUFACTURE_BC_TYPE; 579 EXPECT_EQ(data[IDX_RSP_TYPE], expectedDataType); 580 SoftBusFree(data); 581 582 DISC_LOGI(DISC_TEST, "SoftbusAdvDataTypeToBt002 end"); 583 } 584 585 /** 586 * @tc.name: SoftbusBleUtilsTest_SoftbusAdvFilterToBt001 587 * @tc.desc: test SoftbusAdvFilterToBt 588 * @tc.type: FUNC 589 * @tc.require: 1 590 */ 591 HWTEST(SoftbusBleUtilsTest, SoftbusAdvFilterToBt001, TestSize.Level3) 592 { 593 DISC_LOGI(DISC_TEST, "SoftbusAdvFilterToBt001 begin"); 594 595 SoftbusBroadcastParam softbusAdvParam; 596 (void)memset_s(&softbusAdvParam, sizeof(SoftbusBroadcastParam), 0, sizeof(SoftbusBroadcastParam)); 597 softbusAdvParam.minInterval = 1; 598 softbusAdvParam.maxInterval = 1; 599 softbusAdvParam.advType = 1; 600 softbusAdvParam.ownAddrType = 1; 601 softbusAdvParam.peerAddrType = 1; 602 softbusAdvParam.channelMap = 1; 603 softbusAdvParam.duration = 1; 604 softbusAdvParam.txPower = 1; 605 606 BleAdvParams bleAdvParams; 607 (void)memset_s(&bleAdvParams, sizeof(BleAdvParams), 0, sizeof(BleAdvParams)); 608 609 softbusAdvParam.advFilterPolicy = SOFTBUS_BC_ADV_FILTER_ALLOW_SCAN_ANY_CON_ANY; 610 SoftbusAdvParamToBt(&softbusAdvParam, &bleAdvParams); 611 EXPECT_EQ(bleAdvParams.advFilterPolicy, OHOS_BLE_ADV_FILTER_ALLOW_SCAN_ANY_CON_ANY); 612 613 softbusAdvParam.advFilterPolicy = SOFTBUS_BC_ADV_FILTER_ALLOW_SCAN_WLST_CON_ANY; 614 SoftbusAdvParamToBt(&softbusAdvParam, &bleAdvParams); 615 EXPECT_EQ(bleAdvParams.advFilterPolicy, OHOS_BLE_ADV_FILTER_ALLOW_SCAN_WLST_CON_ANY); 616 617 softbusAdvParam.advFilterPolicy = SOFTBUS_BC_ADV_FILTER_ALLOW_SCAN_ANY_CON_WLST; 618 SoftbusAdvParamToBt(&softbusAdvParam, &bleAdvParams); 619 EXPECT_EQ(bleAdvParams.advFilterPolicy, OHOS_BLE_ADV_FILTER_ALLOW_SCAN_ANY_CON_WLST); 620 621 softbusAdvParam.advFilterPolicy = SOFTBUS_BC_ADV_FILTER_ALLOW_SCAN_WLST_CON_WLST; 622 SoftbusAdvParamToBt(&softbusAdvParam, &bleAdvParams); 623 EXPECT_EQ(bleAdvParams.advFilterPolicy, OHOS_BLE_ADV_FILTER_ALLOW_SCAN_WLST_CON_WLST); 624 625 softbusAdvParam.advFilterPolicy = SOFTBUS_BC_ADV_DIRECT_IND_LOW; 626 SoftbusAdvParamToBt(&softbusAdvParam, &bleAdvParams); 627 EXPECT_EQ(bleAdvParams.advFilterPolicy, OHOS_BLE_ADV_FILTER_ALLOW_SCAN_ANY_CON_ANY); 628 629 DISC_LOGI(DISC_TEST, "SoftbusAdvFilterToBt001 end"); 630 } 631 632 /** 633 * @tc.name: SoftbusBleUtilsTest_SoftbusAdvTypeToBt001 634 * @tc.desc: test SoftbusAdvTypeToBt 635 * @tc.type: FUNC 636 * @tc.require: 1 637 */ 638 HWTEST(SoftbusBleUtilsTest, SoftbusAdvTypeToBt001, TestSize.Level3) 639 { 640 DISC_LOGI(DISC_TEST, "SoftbusAdvTypeToBt001 begin"); 641 642 SoftbusBroadcastParam softbusAdvParam; 643 (void)memset_s(&softbusAdvParam, sizeof(SoftbusBroadcastParam), 0, sizeof(SoftbusBroadcastParam)); 644 softbusAdvParam.minInterval = 1; 645 softbusAdvParam.maxInterval = 1; 646 softbusAdvParam.advFilterPolicy = 1; 647 softbusAdvParam.ownAddrType = 1; 648 softbusAdvParam.peerAddrType = 1; 649 softbusAdvParam.channelMap = 1; 650 softbusAdvParam.duration = 1; 651 softbusAdvParam.txPower = 1; 652 653 BleAdvParams bleAdvParams; 654 (void)memset_s(&bleAdvParams, sizeof(BleAdvParams), 0, sizeof(BleAdvParams)); 655 656 softbusAdvParam.advType = SOFTBUS_BC_ADV_IND; 657 SoftbusAdvParamToBt(&softbusAdvParam, &bleAdvParams); 658 EXPECT_EQ(bleAdvParams.advType, OHOS_BLE_ADV_IND); 659 660 softbusAdvParam.advType = SOFTBUS_BC_ADV_DIRECT_IND_HIGH; 661 SoftbusAdvParamToBt(&softbusAdvParam, &bleAdvParams); 662 EXPECT_EQ(bleAdvParams.advType, OHOS_BLE_ADV_DIRECT_IND_HIGH); 663 664 softbusAdvParam.advType = SOFTBUS_BC_ADV_SCAN_IND; 665 SoftbusAdvParamToBt(&softbusAdvParam, &bleAdvParams); 666 EXPECT_EQ(bleAdvParams.advType, OHOS_BLE_ADV_SCAN_IND); 667 668 softbusAdvParam.advType = SOFTBUS_BC_ADV_NONCONN_IND; 669 SoftbusAdvParamToBt(&softbusAdvParam, &bleAdvParams); 670 EXPECT_EQ(bleAdvParams.advType, OHOS_BLE_ADV_NONCONN_IND); 671 672 softbusAdvParam.advType = SOFTBUS_BC_ADV_DIRECT_IND_LOW; 673 SoftbusAdvParamToBt(&softbusAdvParam, &bleAdvParams); 674 EXPECT_EQ(bleAdvParams.advType, OHOS_BLE_ADV_DIRECT_IND_LOW); 675 676 softbusAdvParam.advType = SOFTBUS_BC_NO_ADDRESS; 677 SoftbusAdvParamToBt(&softbusAdvParam, &bleAdvParams); 678 EXPECT_EQ(bleAdvParams.advType, OHOS_BLE_ADV_IND); 679 680 DISC_LOGI(DISC_TEST, "SoftbusAdvTypeToBt001 end"); 681 } 682 683 /** 684 * @tc.name: SoftbusBleUtilsTest_BtScanPhyTypeToSoftbus001 685 * @tc.desc: test BtScanPhyTypeToSoftbus 686 * @tc.type: FUNC 687 * @tc.require: 1 688 */ 689 HWTEST(SoftbusBleUtilsTest, BtScanPhyTypeToSoftbus001, TestSize.Level3) 690 { 691 DISC_LOGI(DISC_TEST, "BtScanPhyTypeToSoftbus001 begin"); 692 693 BtScanResultData btScanResult; 694 (void)memset_s(&btScanResult, sizeof(BtScanResultData), 0, sizeof(BtScanResultData)); 695 btScanResult.eventType = 1; 696 btScanResult.dataStatus = 1; 697 btScanResult.addrType = 1; 698 btScanResult.secondaryPhy = 1; 699 btScanResult.advSid = 1; 700 btScanResult.txPower = 1; 701 btScanResult.rssi = 1; 702 703 SoftBusBcScanResult softbusScanResult; 704 (void)memset_s(&softbusScanResult, sizeof(SoftBusBcScanResult), 0, sizeof(SoftBusBcScanResult)); 705 706 btScanResult.primaryPhy = OHOS_BLE_SCAN_PHY_NO_PACKET; 707 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 708 EXPECT_EQ(softbusScanResult.primaryPhy, SOFTBUS_BC_SCAN_PHY_NO_PACKET); 709 710 btScanResult.primaryPhy = OHOS_BLE_SCAN_PHY_1M; 711 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 712 EXPECT_EQ(softbusScanResult.primaryPhy, SOFTBUS_BC_SCAN_PHY_1M); 713 714 btScanResult.primaryPhy = OHOS_BLE_SCAN_PHY_2M; 715 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 716 EXPECT_EQ(softbusScanResult.primaryPhy, SOFTBUS_BC_SCAN_PHY_2M); 717 718 btScanResult.primaryPhy = OHOS_BLE_SCAN_PHY_CODED; 719 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 720 EXPECT_EQ(softbusScanResult.primaryPhy, SOFTBUS_BC_SCAN_PHY_CODED); 721 722 btScanResult.primaryPhy = OHOS_BLE_NO_ADDRESS; 723 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 724 EXPECT_EQ(softbusScanResult.primaryPhy, SOFTBUS_BC_SCAN_PHY_NO_PACKET); 725 726 DISC_LOGI(DISC_TEST, "BtScanPhyTypeToSoftbus001 end"); 727 } 728 729 /** 730 * @tc.name: SoftbusBleUtilsTest_BtScanAddrTypeToSoftbus001 731 * @tc.desc: test BtScanAddrTypeToSoftbus 732 * @tc.type: FUNC 733 * @tc.require: 1 734 */ 735 HWTEST(SoftbusBleUtilsTest, BtScanAddrTypeToSoftbus001, TestSize.Level3) 736 { 737 DISC_LOGI(DISC_TEST, "BtScanAddrTypeToSoftbus001 begin"); 738 739 BtScanResultData btScanResult; 740 (void)memset_s(&btScanResult, sizeof(BtScanResultData), 0, sizeof(BtScanResultData)); 741 btScanResult.eventType = 1; 742 btScanResult.dataStatus = 1; 743 btScanResult.primaryPhy = 1; 744 btScanResult.secondaryPhy = 1; 745 btScanResult.advSid = 1; 746 btScanResult.txPower = 1; 747 btScanResult.rssi = 1; 748 749 SoftBusBcScanResult softbusScanResult; 750 (void)memset_s(&softbusScanResult, sizeof(SoftBusBcScanResult), 0, sizeof(SoftBusBcScanResult)); 751 752 btScanResult.addrType = OHOS_BLE_PUBLIC_DEVICE_ADDRESS; 753 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 754 EXPECT_EQ(softbusScanResult.addrType, SOFTBUS_BC_PUBLIC_DEVICE_ADDRESS); 755 756 btScanResult.addrType = OHOS_BLE_RANDOM_DEVICE_ADDRESS; 757 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 758 EXPECT_EQ(softbusScanResult.addrType, SOFTBUS_BC_RANDOM_DEVICE_ADDRESS); 759 760 btScanResult.addrType = OHOS_BLE_PUBLIC_IDENTITY_ADDRESS; 761 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 762 EXPECT_EQ(softbusScanResult.addrType, SOFTBUS_BC_PUBLIC_IDENTITY_ADDRESS); 763 764 btScanResult.addrType = OHOS_BLE_RANDOM_STATIC_IDENTITY_ADDRESS; 765 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 766 EXPECT_EQ(softbusScanResult.addrType, SOFTBUS_BC_RANDOM_STATIC_IDENTITY_ADDRESS); 767 768 btScanResult.addrType = OHOS_BLE_UNRESOLVABLE_RANDOM_DEVICE_ADDRESS; 769 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 770 EXPECT_EQ(softbusScanResult.addrType, SOFTBUS_BC_UNRESOLVABLE_RANDOM_DEVICE_ADDRESS); 771 772 btScanResult.addrType = OHOS_BLE_NO_ADDRESS; 773 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 774 EXPECT_EQ(softbusScanResult.addrType, SOFTBUS_BC_NO_ADDRESS); 775 776 btScanResult.addrType = OHOS_BLE_EVT_LEGACY_SCAN_RSP_TO_ADV; 777 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 778 EXPECT_EQ(softbusScanResult.addrType, SOFTBUS_BC_NO_ADDRESS); 779 780 DISC_LOGI(DISC_TEST, "BtScanAddrTypeToSoftbus001 end"); 781 } 782 783 /** 784 * @tc.name: SoftbusBleUtilsTest_BtScanDataStatusToSoftbus001 785 * @tc.desc: test BtScanDataStatusToSoftbus 786 * @tc.type: FUNC 787 * @tc.require: 1 788 */ 789 HWTEST(SoftbusBleUtilsTest, BtScanDataStatusToSoftbus001, TestSize.Level3) 790 { 791 DISC_LOGI(DISC_TEST, "BtScanDataStatusToSoftbus001 begin"); 792 793 BtScanResultData btScanResult; 794 (void)memset_s(&btScanResult, sizeof(BtScanResultData), 0, sizeof(BtScanResultData)); 795 btScanResult.eventType = 1; 796 btScanResult.addrType = 1; 797 btScanResult.primaryPhy = 1; 798 btScanResult.secondaryPhy = 1; 799 btScanResult.advSid = 1; 800 btScanResult.txPower = 1; 801 btScanResult.rssi = 1; 802 803 SoftBusBcScanResult softbusScanResult; 804 (void)memset_s(&softbusScanResult, sizeof(SoftBusBcScanResult), 0, sizeof(SoftBusBcScanResult)); 805 806 btScanResult.dataStatus = OHOS_BLE_DATA_COMPLETE; 807 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 808 EXPECT_EQ(softbusScanResult.dataStatus, SOFTBUS_BC_DATA_COMPLETE); 809 810 btScanResult.dataStatus = OHOS_BLE_DATA_INCOMPLETE_MORE_TO_COME; 811 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 812 EXPECT_EQ(softbusScanResult.dataStatus, SOFTBUS_BC_DATA_INCOMPLETE_MORE_TO_COME); 813 814 btScanResult.dataStatus = OHOS_BLE_DATA_INCOMPLETE_TRUNCATED; 815 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 816 EXPECT_EQ(softbusScanResult.dataStatus, SOFTBUS_BC_DATA_INCOMPLETE_TRUNCATED); 817 818 btScanResult.dataStatus = OHOS_BLE_EVT_LEGACY_SCAN_RSP_TO_ADV; 819 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 820 EXPECT_EQ(softbusScanResult.dataStatus, SOFTBUS_BC_DATA_INCOMPLETE_TRUNCATED); 821 822 DISC_LOGI(DISC_TEST, "BtScanDataStatusToSoftbus001 end"); 823 } 824 825 /** 826 * @tc.name: SoftbusBleUtilsTest_BtScanAddrTypeToSoftbus001 827 * @tc.desc: test BtScanEventTypeToSoftbus 828 * @tc.type: FUNC 829 * @tc.require: 1 830 */ 831 HWTEST(SoftbusBleUtilsTest, BtScanEventTypeToSoftbus001, TestSize.Level3) 832 { 833 DISC_LOGI(DISC_TEST, "BtScanAddrTypeToSoftbus001 begin"); 834 835 BtScanResultData btScanResult; 836 (void)memset_s(&btScanResult, sizeof(BtScanResultData), 0, sizeof(BtScanResultData)); 837 btScanResult.dataStatus = 1; 838 btScanResult.addrType = 1; 839 btScanResult.primaryPhy = 1; 840 btScanResult.secondaryPhy = 1; 841 btScanResult.advSid = 1; 842 btScanResult.txPower = 1; 843 btScanResult.rssi = 1; 844 845 SoftBusBcScanResult softbusScanResult; 846 (void)memset_s(&softbusScanResult, sizeof(SoftBusBcScanResult), 0, sizeof(SoftBusBcScanResult)); 847 848 btScanResult.eventType = OHOS_BLE_EVT_NON_CONNECTABLE_NON_SCANNABLE; 849 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 850 EXPECT_EQ(softbusScanResult.eventType, SOFTBUS_BC_EVT_NON_CONNECTABLE_NON_SCANNABLE); 851 852 btScanResult.eventType = OHOS_BLE_EVT_NON_CONNECTABLE_NON_SCANNABLE_DIRECTED; 853 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 854 EXPECT_EQ(softbusScanResult.eventType, SOFTBUS_BC_EVT_NON_CONNECTABLE_NON_SCANNABLE_DIRECTED); 855 856 btScanResult.eventType = OHOS_BLE_EVT_CONNECTABLE; 857 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 858 EXPECT_EQ(softbusScanResult.eventType, SOFTBUS_BC_EVT_CONNECTABLE); 859 860 btScanResult.eventType = OHOS_BLE_EVT_CONNECTABLE_DIRECTED; 861 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 862 EXPECT_EQ(softbusScanResult.eventType, SOFTBUS_BC_EVT_CONNECTABLE_DIRECTED); 863 864 btScanResult.eventType = OHOS_BLE_EVT_SCANNABLE; 865 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 866 EXPECT_EQ(softbusScanResult.eventType, SOFTBUS_BC_EVT_SCANNABLE); 867 868 btScanResult.eventType = OHOS_BLE_EVT_SCANNABLE_DIRECTED; 869 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 870 EXPECT_EQ(softbusScanResult.eventType, SOFTBUS_BC_EVT_SCANNABLE_DIRECTED); 871 872 btScanResult.eventType = OHOS_BLE_EVT_LEGACY_NON_CONNECTABLE; 873 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 874 EXPECT_EQ(softbusScanResult.eventType, SOFTBUS_BC_EVT_LEGACY_NON_CONNECTABLE); 875 876 DISC_LOGI(DISC_TEST, "BtScanAddrTypeToSoftbus001 end"); 877 } 878 879 /** 880 * @tc.name: SoftbusBleUtilsTest_BtScanAddrTypeToSoftbus002 881 * @tc.desc: test BtScanEventTypeToSoftbus 882 * @tc.type: FUNC 883 * @tc.require: 1 884 */ 885 HWTEST(SoftbusBleUtilsTest, BtScanEventTypeToSoftbus002, TestSize.Level3) 886 { 887 DISC_LOGI(DISC_TEST, "BtScanAddrTypeToSoftbus002 begin"); 888 889 BtScanResultData btScanResult; 890 (void)memset_s(&btScanResult, sizeof(BtScanResultData), 0, sizeof(BtScanResultData)); 891 btScanResult.dataStatus = 1; 892 btScanResult.addrType = 1; 893 btScanResult.primaryPhy = 1; 894 btScanResult.secondaryPhy = 1; 895 btScanResult.advSid = 1; 896 btScanResult.txPower = 1; 897 btScanResult.rssi = 1; 898 899 SoftBusBcScanResult softbusScanResult; 900 (void)memset_s(&softbusScanResult, sizeof(SoftBusBcScanResult), 0, sizeof(SoftBusBcScanResult)); 901 902 btScanResult.eventType = OHOS_BLE_EVT_LEGACY_SCANNABLE; 903 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 904 EXPECT_EQ(softbusScanResult.eventType, SOFTBUS_BC_EVT_LEGACY_SCANNABLE); 905 906 btScanResult.eventType = OHOS_BLE_EVT_LEGACY_CONNECTABLE; 907 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 908 EXPECT_EQ(softbusScanResult.eventType, SOFTBUS_BC_EVT_LEGACY_CONNECTABLE); 909 910 btScanResult.eventType = OHOS_BLE_EVT_LEGACY_CONNECTABLE_DIRECTED; 911 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 912 EXPECT_EQ(softbusScanResult.eventType, SOFTBUS_BC_EVT_LEGACY_CONNECTABLE_DIRECTED); 913 914 btScanResult.eventType = OHOS_BLE_EVT_LEGACY_SCAN_RSP_TO_ADV_SCAN; 915 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 916 EXPECT_EQ(softbusScanResult.eventType, SOFTBUS_BC_EVT_LEGACY_SCAN_RSP_TO_ADV_SCAN); 917 918 btScanResult.eventType = OHOS_BLE_EVT_LEGACY_SCAN_RSP_TO_ADV; 919 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 920 EXPECT_EQ(softbusScanResult.eventType, SOFTBUS_BC_EVT_LEGACY_SCAN_RSP_TO_ADV); 921 922 btScanResult.eventType = OHOS_BLE_SCAN_MODE_OP_P50_30_60; 923 BtScanResultToSoftbus(&btScanResult, &softbusScanResult); 924 EXPECT_EQ(softbusScanResult.eventType, SOFTBUS_BC_EVT_NON_CONNECTABLE_NON_SCANNABLE); 925 926 DISC_LOGI(DISC_TEST, "BtScanAddrTypeToSoftbus002 end"); 927 } 928 } // namespace OHOS 929