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  }