github.com/cloudwego/kitex@v0.9.0/internal/mocks/thrift_ttransport.go (about) 1 /* 2 * Copyright 2021 CloudWeGo Authors 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 package mocks 18 19 import ( 20 "context" 21 22 "github.com/apache/thrift/lib/go/thrift" 23 ) 24 25 type MockThriftTTransport struct { 26 WriteMessageBeginFunc func(name string, typeID thrift.TMessageType, seqID int32) error 27 WriteMessageEndFunc func() error 28 WriteStructBeginFunc func(name string) error 29 WriteStructEndFunc func() error 30 WriteFieldBeginFunc func(name string, typeID thrift.TType, id int16) error 31 WriteFieldEndFunc func() error 32 WriteFieldStopFunc func() error 33 WriteMapBeginFunc func(keyType, valueType thrift.TType, size int) error 34 WriteMapEndFunc func() error 35 WriteListBeginFunc func(elemType thrift.TType, size int) error 36 WriteListEndFunc func() error 37 WriteSetBeginFunc func(elemType thrift.TType, size int) error 38 WriteSetEndFunc func() error 39 WriteBoolFunc func(value bool) error 40 WriteByteFunc func(value int8) error 41 WriteI16Func func(value int16) error 42 WriteI32Func func(value int32) error 43 WriteI64Func func(value int64) error 44 WriteDoubleFunc func(value float64) error 45 WriteStringFunc func(value string) error 46 WriteBinaryFunc func(value []byte) error 47 ReadMessageBeginFunc func() (name string, typeID thrift.TMessageType, seqID int32, err error) 48 ReadMessageEndFunc func() error 49 ReadStructBeginFunc func() (name string, err error) 50 ReadStructEndFunc func() error 51 ReadFieldBeginFunc func() (name string, typeID thrift.TType, id int16, err error) 52 ReadFieldEndFunc func() error 53 ReadMapBeginFunc func() (keyType, valueType thrift.TType, size int, err error) 54 ReadMapEndFunc func() error 55 ReadListBeginFunc func() (elemType thrift.TType, size int, err error) 56 ReadListEndFunc func() error 57 ReadSetBeginFunc func() (elemType thrift.TType, size int, err error) 58 ReadSetEndFunc func() error 59 ReadBoolFunc func() (value bool, err error) 60 ReadByteFunc func() (value int8, err error) 61 ReadI16Func func() (value int16, err error) 62 ReadI32Func func() (value int32, err error) 63 ReadI64Func func() (value int64, err error) 64 ReadDoubleFunc func() (value float64, err error) 65 ReadStringFunc func() (value string, err error) 66 ReadBinaryFunc func() (value []byte, err error) 67 SkipFunc func(fieldType thrift.TType) (err error) 68 FlushFunc func(ctx context.Context) (err error) 69 TransportFunc func() thrift.TTransport 70 } 71 72 func (m *MockThriftTTransport) WriteMessageBegin(name string, typeID thrift.TMessageType, seqID int32) error { 73 if m.WriteMessageBeginFunc != nil { 74 return m.WriteMessageBeginFunc(name, typeID, seqID) 75 } 76 return nil 77 } 78 79 func (m *MockThriftTTransport) WriteMessageEnd() error { 80 if m.WriteMessageEndFunc != nil { 81 return m.WriteMessageEndFunc() 82 } 83 return nil 84 } 85 86 func (m *MockThriftTTransport) WriteStructBegin(name string) error { 87 if m.WriteStructBeginFunc != nil { 88 return m.WriteStructBeginFunc(name) 89 } 90 return nil 91 } 92 93 func (m *MockThriftTTransport) WriteStructEnd() error { 94 if m.WriteStructEndFunc != nil { 95 return m.WriteStructEndFunc() 96 } 97 return nil 98 } 99 100 func (m *MockThriftTTransport) WriteFieldBegin(name string, typeID thrift.TType, id int16) error { 101 if m.WriteFieldBeginFunc != nil { 102 return m.WriteFieldBeginFunc(name, typeID, id) 103 } 104 return nil 105 } 106 107 func (m *MockThriftTTransport) WriteFieldEnd() error { 108 if m.WriteFieldEndFunc != nil { 109 return m.WriteFieldEndFunc() 110 } 111 return nil 112 } 113 114 func (m *MockThriftTTransport) WriteFieldStop() error { 115 if m.WriteFieldStopFunc != nil { 116 return m.WriteFieldStopFunc() 117 } 118 return nil 119 } 120 121 func (m *MockThriftTTransport) WriteMapBegin(keyType, valueType thrift.TType, size int) error { 122 if m.WriteMapBeginFunc != nil { 123 return m.WriteMapBeginFunc(keyType, valueType, size) 124 } 125 return nil 126 } 127 128 func (m *MockThriftTTransport) WriteMapEnd() error { 129 if m.WriteMapEndFunc != nil { 130 return m.WriteMapEndFunc() 131 } 132 return nil 133 } 134 135 func (m *MockThriftTTransport) WriteListBegin(elemType thrift.TType, size int) error { 136 if m.WriteListBeginFunc != nil { 137 return m.WriteListBeginFunc(elemType, size) 138 } 139 return nil 140 } 141 142 func (m *MockThriftTTransport) WriteListEnd() error { 143 if m.WriteListEndFunc != nil { 144 return m.WriteListEndFunc() 145 } 146 return nil 147 } 148 149 func (m *MockThriftTTransport) WriteSetBegin(elemType thrift.TType, size int) error { 150 if m.WriteSetBeginFunc != nil { 151 return m.WriteSetBeginFunc(elemType, size) 152 } 153 return nil 154 } 155 156 func (m *MockThriftTTransport) WriteSetEnd() error { 157 if m.WriteSetEndFunc != nil { 158 return m.WriteSetEndFunc() 159 } 160 return nil 161 } 162 163 func (m *MockThriftTTransport) WriteBool(value bool) error { 164 if m.WriteBoolFunc != nil { 165 return m.WriteBoolFunc(value) 166 } 167 return nil 168 } 169 170 func (m *MockThriftTTransport) WriteByte(value int8) error { 171 if m.WriteByteFunc != nil { 172 return m.WriteByteFunc(value) 173 } 174 return nil 175 } 176 177 func (m *MockThriftTTransport) WriteI16(value int16) error { 178 if m.WriteI16Func != nil { 179 return m.WriteI16Func(value) 180 } 181 return nil 182 } 183 184 func (m *MockThriftTTransport) WriteI32(value int32) error { 185 if m.WriteI32Func != nil { 186 return m.WriteI32Func(value) 187 } 188 return nil 189 } 190 191 func (m *MockThriftTTransport) WriteI64(value int64) error { 192 if m.WriteI64Func != nil { 193 return m.WriteI64Func(value) 194 } 195 return nil 196 } 197 198 func (m *MockThriftTTransport) WriteDouble(value float64) error { 199 if m.WriteDoubleFunc != nil { 200 return m.WriteDoubleFunc(value) 201 } 202 return nil 203 } 204 205 func (m *MockThriftTTransport) WriteString(value string) error { 206 if m.WriteStringFunc != nil { 207 return m.WriteStringFunc(value) 208 } 209 return nil 210 } 211 212 func (m *MockThriftTTransport) WriteBinary(value []byte) error { 213 if m.WriteBinaryFunc != nil { 214 return m.WriteBinaryFunc(value) 215 } 216 return nil 217 } 218 219 func (m *MockThriftTTransport) ReadMessageBegin() (name string, typeID thrift.TMessageType, seqID int32, err error) { 220 if m.ReadMessageBeginFunc != nil { 221 return m.ReadMessageBeginFunc() 222 } 223 return "", thrift.INVALID_TMESSAGE_TYPE, 0, nil 224 } 225 226 func (m *MockThriftTTransport) ReadMessageEnd() error { 227 if m.ReadMessageEndFunc != nil { 228 return m.ReadMessageEndFunc() 229 } 230 return nil 231 } 232 233 func (m *MockThriftTTransport) ReadStructBegin() (name string, err error) { 234 if m.ReadStructBeginFunc != nil { 235 return m.ReadStructBeginFunc() 236 } 237 return "", nil 238 } 239 240 func (m *MockThriftTTransport) ReadStructEnd() error { 241 if m.ReadStructEndFunc != nil { 242 return m.ReadStructEndFunc() 243 } 244 return nil 245 } 246 247 func (m *MockThriftTTransport) ReadFieldBegin() (name string, typeID thrift.TType, id int16, err error) { 248 if m.ReadFieldBeginFunc != nil { 249 return m.ReadFieldBeginFunc() 250 } 251 return "", thrift.STOP, 0, nil 252 } 253 254 func (m *MockThriftTTransport) ReadFieldEnd() error { 255 if m.ReadFieldEndFunc != nil { 256 return m.ReadFieldEndFunc() 257 } 258 return nil 259 } 260 261 func (m *MockThriftTTransport) ReadMapBegin() (keyType, valueType thrift.TType, size int, err error) { 262 if m.ReadMapBeginFunc != nil { 263 return m.ReadMapBeginFunc() 264 } 265 return thrift.STOP, thrift.STOP, 0, nil 266 } 267 268 func (m *MockThriftTTransport) ReadMapEnd() error { 269 if m.ReadMapEndFunc != nil { 270 return m.ReadMapEndFunc() 271 } 272 return nil 273 } 274 275 func (m *MockThriftTTransport) ReadListBegin() (elemType thrift.TType, size int, err error) { 276 if m.ReadListBeginFunc != nil { 277 return m.ReadListBeginFunc() 278 } 279 return thrift.STOP, 0, nil 280 } 281 282 func (m *MockThriftTTransport) ReadListEnd() error { 283 if m.ReadListEndFunc != nil { 284 return m.ReadListEndFunc() 285 } 286 return nil 287 } 288 289 func (m *MockThriftTTransport) ReadSetBegin() (elemType thrift.TType, size int, err error) { 290 if m.ReadSetBeginFunc != nil { 291 return m.ReadSetBeginFunc() 292 } 293 return thrift.STOP, 0, nil 294 } 295 296 func (m *MockThriftTTransport) ReadSetEnd() error { 297 if m.ReadSetEndFunc != nil { 298 return m.ReadSetEndFunc() 299 } 300 return nil 301 } 302 303 func (m *MockThriftTTransport) ReadBool() (value bool, err error) { 304 if m.ReadBoolFunc != nil { 305 return m.ReadBoolFunc() 306 } 307 return false, nil 308 } 309 310 func (m *MockThriftTTransport) ReadByte() (value int8, err error) { 311 if m.ReadByteFunc != nil { 312 return m.ReadByteFunc() 313 } 314 return 0, nil 315 } 316 317 func (m *MockThriftTTransport) ReadI16() (value int16, err error) { 318 if m.ReadI16Func != nil { 319 return m.ReadI16Func() 320 } 321 return 0, nil 322 } 323 324 func (m *MockThriftTTransport) ReadI32() (value int32, err error) { 325 if m.ReadI32Func != nil { 326 return m.ReadI32Func() 327 } 328 return 0, nil 329 } 330 331 func (m *MockThriftTTransport) ReadI64() (value int64, err error) { 332 if m.ReadI64Func != nil { 333 return m.ReadI64Func() 334 } 335 return 0, nil 336 } 337 338 func (m *MockThriftTTransport) ReadDouble() (value float64, err error) { 339 if m.ReadDoubleFunc != nil { 340 return m.ReadDoubleFunc() 341 } 342 return 0.0, nil 343 } 344 345 func (m *MockThriftTTransport) ReadString() (value string, err error) { 346 if m.ReadStringFunc != nil { 347 return m.ReadStringFunc() 348 } 349 return "", nil 350 } 351 352 func (m *MockThriftTTransport) ReadBinary() (value []byte, err error) { 353 if m.ReadBinaryFunc != nil { 354 return m.ReadBinaryFunc() 355 } 356 return nil, nil 357 } 358 359 func (m *MockThriftTTransport) Skip(fieldType thrift.TType) (err error) { 360 if m.SkipFunc != nil { 361 return m.SkipFunc(fieldType) 362 } 363 return nil 364 } 365 366 func (m *MockThriftTTransport) Flush(ctx context.Context) (err error) { 367 if m.FlushFunc != nil { 368 return m.FlushFunc(ctx) 369 } 370 return nil 371 } 372 373 func (m *MockThriftTTransport) Transport() thrift.TTransport { 374 if m.TransportFunc != nil { 375 return m.TransportFunc() 376 } 377 return nil 378 }