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 "connection_ble_client_mock.h"
17 #include "softbus_adapter_mem.h"
18
19 using namespace testing;
20 using namespace testing::ext;
21
22 namespace OHOS {
23 void *g_connectionBleClientInterface;
ConnectionBleClientInterfaceMock()24 ConnectionBleClientInterfaceMock::ConnectionBleClientInterfaceMock()
25 {
26 g_connectionBleClientInterface = reinterpret_cast<void *>(this);
27 }
28
~ConnectionBleClientInterfaceMock()29 ConnectionBleClientInterfaceMock::~ConnectionBleClientInterfaceMock()
30 {
31 g_connectionBleClientInterface = nullptr;
32 }
33
ConnGattTransRecvReturnConnModule(uint32_t connectionId,uint8_t * data,uint32_t dataLen,ConnBleReadBuffer * buffer,uint32_t * outLen)34 uint8_t *ConnectionBleClientInterfaceMock::ConnGattTransRecvReturnConnModule(uint32_t connectionId,
35 uint8_t *data, uint32_t dataLen, ConnBleReadBuffer *buffer, uint32_t *outLen)
36 {
37 ConnPktHead *head = reinterpret_cast<ConnPktHead *>(SoftBusCalloc(sizeof(*head)));
38 head->flag = 0;
39 head->module = MODULE_CONNECTION;
40 int64_t seq = 10;
41 head->seq = seq;
42 *outLen = sizeof((*head));
43 return reinterpret_cast<uint8_t *>(head);
44 }
45
ConnGattTransRecvReturnConnModule1(uint32_t connectionId,uint8_t * data,uint32_t dataLen,ConnBleReadBuffer * buffer,uint32_t * outLen)46 uint8_t *ConnectionBleClientInterfaceMock::ConnGattTransRecvReturnConnModule1(uint32_t connectionId,
47 uint8_t *data, uint32_t dataLen, ConnBleReadBuffer *buffer, uint32_t *outLen)
48 {
49 ConnPktHead *head = reinterpret_cast<ConnPktHead *>(SoftBusCalloc(sizeof(*head)));
50 head->magic = 1;
51 head->flag = 1;
52 head->module = MODULE_CONNECTION;
53 int64_t seq = 10;
54 head->seq = seq;
55 *outLen = sizeof((*head));
56 return reinterpret_cast<uint8_t *>(head);
57 }
58
ConnGattTransRecvReturnOldNearby(uint32_t connectionId,uint8_t * data,uint32_t dataLen,ConnBleReadBuffer * buffer,uint32_t * outLen)59 uint8_t *ConnectionBleClientInterfaceMock::ConnGattTransRecvReturnOldNearby(uint32_t connectionId,
60 uint8_t *data, uint32_t dataLen, ConnBleReadBuffer *buffer, uint32_t *outLen)
61 {
62 ConnPktHead *head = reinterpret_cast<ConnPktHead *>(SoftBusCalloc(sizeof(*head)));
63 head->flag = 0;
64 head->module = MODULE_OLD_NEARBY;
65 int64_t seq = 10;
66 head->seq = seq;
67 *outLen = sizeof((*head));
68 return reinterpret_cast<uint8_t *>(head);
69 }
70
ConnGattTransRecvReturnDefult(uint32_t connectionId,uint8_t * data,uint32_t dataLen,ConnBleReadBuffer * buffer,uint32_t * outLen)71 uint8_t *ConnectionBleClientInterfaceMock::ConnGattTransRecvReturnDefult(uint32_t connectionId,
72 uint8_t *data, uint32_t dataLen, ConnBleReadBuffer *buffer, uint32_t *outLen)
73 {
74 ConnPktHead *head = reinterpret_cast<ConnPktHead *>(SoftBusCalloc(sizeof(*head)));
75 head->flag = 0;
76 head->module = MODULE_AUTH_CHANNEL;
77 int64_t seq = 10;
78 head->seq = seq;
79 *outLen = sizeof((*head));
80 return reinterpret_cast<uint8_t *>(head);
81 }
82
ActionOfConnGattTransRecv(uint32_t connectionId,uint8_t * data,uint32_t dataLen,ConnBleReadBuffer * buffer,uint32_t * outLen)83 uint8_t *ConnectionBleClientInterfaceMock::ActionOfConnGattTransRecv(uint32_t connectionId,
84 uint8_t *data, uint32_t dataLen, ConnBleReadBuffer *buffer, uint32_t *outLen)
85 {
86 ConnPktHead *head = reinterpret_cast<ConnPktHead *>(SoftBusCalloc(sizeof(*head)));
87 head->flag = 0;
88 head->module = MODULE_AUTH_CHANNEL;
89 int64_t seq = 10;
90 head->seq = seq;
91 uint32_t len = 4;
92 *outLen = len;
93 return reinterpret_cast<uint8_t *>(head);
94 }
95
GetConnectionBleClientInterface()96 static ConnectionBleClientInterface *GetConnectionBleClientInterface()
97 {
98 return reinterpret_cast<ConnectionBleClientInterface *>(g_connectionBleClientInterface);
99 }
100
101 extern "C" {
SoftbusGattcSetFastestConn(int32_t clientId)102 int32_t SoftbusGattcSetFastestConn(int32_t clientId)
103 {
104 return GetConnectionBleClientInterface()->SoftbusGattcSetFastestConn(clientId);
105 }
106
SoftbusGattcRefreshServices(int32_t clientId)107 int32_t SoftbusGattcRefreshServices(int32_t clientId)
108 {
109 return GetConnectionBleClientInterface()->SoftbusGattcRefreshServices(clientId);
110 }
111
SoftbusGattcConnect(int32_t clientId,SoftBusBtAddr * addr)112 int32_t SoftbusGattcConnect(int32_t clientId, SoftBusBtAddr *addr)
113 {
114 return GetConnectionBleClientInterface()->SoftbusGattcConnect(clientId, addr);
115 }
116
ConnGattTransRecv(uint32_t connectionId,uint8_t * data,uint32_t dataLen,ConnBleReadBuffer * buffer,uint32_t * outLen)117 uint8_t *ConnGattTransRecv(uint32_t connectionId, uint8_t *data,
118 uint32_t dataLen, ConnBleReadBuffer *buffer, uint32_t *outLen)
119 {
120 return GetConnectionBleClientInterface()->ConnGattTransRecv(connectionId, data, dataLen, buffer, outLen);
121 }
122
SoftbusGattcSearchServices(int32_t clientId)123 int32_t SoftbusGattcSearchServices(int32_t clientId)
124 {
125 return GetConnectionBleClientInterface()->SoftbusGattcSearchServices(clientId);
126 }
127
SoftbusGattcRegisterNotification(int32_t clientId,SoftBusBtUuid * serverUuid,SoftBusBtUuid * charaUuid,SoftBusBtUuid * descriptorUuid)128 int32_t SoftbusGattcRegisterNotification(int32_t clientId, SoftBusBtUuid *serverUuid,
129 SoftBusBtUuid *charaUuid, SoftBusBtUuid *descriptorUuid)
130 {
131 return GetConnectionBleClientInterface()->SoftbusGattcRegisterNotification(clientId,
132 serverUuid, charaUuid, descriptorUuid);
133 }
134
SoftbusGattcConfigureMtuSize(int32_t clientId,int mtuSize)135 int32_t SoftbusGattcConfigureMtuSize(int32_t clientId, int mtuSize)
136 {
137 return GetConnectionBleClientInterface()->SoftbusGattcConfigureMtuSize(clientId, mtuSize);
138 }
139
SoftbusGattcGetService(int32_t clientId,SoftBusBtUuid * serverUuid)140 int32_t SoftbusGattcGetService(int32_t clientId, SoftBusBtUuid *serverUuid)
141 {
142 return GetConnectionBleClientInterface()->SoftbusGattcGetService(clientId, serverUuid);
143 }
144
SoftbusBleGattcDisconnect(int32_t clientId,bool refreshGatt)145 int32_t SoftbusBleGattcDisconnect(int32_t clientId, bool refreshGatt)
146 {
147 return GetConnectionBleClientInterface()->SoftbusBleGattcDisconnect(clientId, refreshGatt);
148 }
149
SoftbusGattcWriteCharacteristic(int32_t clientId,SoftBusGattcData * clientData)150 int32_t SoftbusGattcWriteCharacteristic(int32_t clientId, SoftBusGattcData *clientData)
151 {
152 return GetConnectionBleClientInterface()->SoftbusGattcWriteCharacteristic(clientId, clientData);
153 }
154
SoftbusGattcSetPriority(int32_t clientId,SoftBusBtAddr * addr,SoftbusBleGattPriority priority)155 int32_t SoftbusGattcSetPriority(int32_t clientId, SoftBusBtAddr *addr, SoftbusBleGattPriority priority)
156 {
157 return GetConnectionBleClientInterface()->SoftbusGattcSetPriority(clientId, addr, priority);
158 }
159
LnnGetLocalStrInfo(InfoKey key,char * info,uint32_t len)160 int32_t LnnGetLocalStrInfo(InfoKey key, char *info, uint32_t len)
161 {
162 return GetConnectionBleClientInterface()->LnnGetLocalStrInfo(key, info, len);
163 }
164
LnnGetLocalNumInfo(InfoKey key,int32_t * info)165 int32_t LnnGetLocalNumInfo(InfoKey key, int32_t *info)
166 {
167 return GetConnectionBleClientInterface()->LnnGetLocalNumInfo(key, info);
168 }
169
ConnBlePostBytesInner(uint32_t connectionId,uint8_t * data,uint32_t len,int32_t pid,int32_t flag,int32_t module,int64_t seq,PostBytesFinishAction postBytesFinishAction)170 int32_t ConnBlePostBytesInner(uint32_t connectionId, uint8_t *data, uint32_t len,
171 int32_t pid, int32_t flag, int32_t module, int64_t seq, PostBytesFinishAction postBytesFinishAction)
172 {
173 return GetConnectionBleClientInterface()->ConnBlePostBytesInner(connectionId,
174 data, len, pid, flag, module, seq, postBytesFinishAction);
175 }
176 }
177 }
178