本文整理汇总了Golang中thrift.TType函数的典型用法代码示例。如果您正苦于以下问题:Golang TType函数的具体用法?Golang TType怎么用?Golang TType使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了TType函数的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: TestClientSeqIdMismatch
// TestCase: Mismatching sequence id has been received in the client.
func TestClientSeqIdMismatch(t *testing.T) {
mockCtrl := gomock.NewController(t)
transport := thrift.NewTMemoryBuffer()
protocol := NewMockTProtocol(mockCtrl)
gomock.InOrder(
protocol.EXPECT().WriteMessageBegin("testString", thrift.CALL, int32(1)),
protocol.EXPECT().WriteStructBegin("testString_args"),
protocol.EXPECT().WriteFieldBegin("s", thrift.TType(thrift.STRING), int16(1)),
protocol.EXPECT().WriteString("test"),
protocol.EXPECT().WriteFieldEnd(),
protocol.EXPECT().WriteFieldStop(),
protocol.EXPECT().WriteStructEnd(),
protocol.EXPECT().WriteMessageEnd(),
protocol.EXPECT().Flush(),
protocol.EXPECT().ReadMessageBegin().Return("testString", thrift.REPLY, int32(2), nil),
)
client := errortest.NewErrorTestClientProtocol(transport, protocol, protocol)
_, err := client.TestString("test")
mockCtrl.Finish()
appErr, ok := err.(thrift.TApplicationException)
if !ok {
t.Fatal("Expected TApplicationException")
}
if appErr.TypeId() != thrift.BAD_SEQUENCE_ID {
t.Fatal("Expected BAD_SEQUENCE_ID error")
}
}
示例2: TestClientWrongMessageType
// TestCase: Wrong message type has been received in the client.
func TestClientWrongMessageType(t *testing.T) {
mockCtrl := gomock.NewController(t)
transport := thrift.NewTMemoryBuffer()
protocol := NewMockTProtocol(mockCtrl)
gomock.InOrder(
protocol.EXPECT().WriteMessageBegin("testString", thrift.CALL, int32(1)),
protocol.EXPECT().WriteStructBegin("testString_args"),
protocol.EXPECT().WriteFieldBegin("s", thrift.TType(thrift.STRING), int16(1)),
protocol.EXPECT().WriteString("test"),
protocol.EXPECT().WriteFieldEnd(),
protocol.EXPECT().WriteFieldStop(),
protocol.EXPECT().WriteStructEnd(),
protocol.EXPECT().WriteMessageEnd(),
protocol.EXPECT().Flush(),
protocol.EXPECT().ReadMessageBegin().Return("testString", thrift.INVALID_TMESSAGE_TYPE, int32(1), nil),
)
client := errortest.NewErrorTestClientProtocol(transport, protocol, protocol)
_, err := client.TestString("test")
mockCtrl.Finish()
appErr, ok := err.(thrift.TApplicationException)
if !ok {
t.Fatal("Expected TApplicationException")
}
if appErr.TypeId() != thrift.INVALID_MESSAGE_TYPE_EXCEPTION {
t.Fatal("Expected INVALID_MESSAGE_TYPE_EXCEPTION error")
}
}
示例3: CompareTo
func (p *ContainerOfEnums) CompareTo(other interface{}) (int, bool) {
if other == nil {
return 1, true
}
data, ok := other.(*ContainerOfEnums)
if !ok {
return 0, false
}
return thrift.TType(thrift.STRUCT).Compare(p, data)
}
示例4: CompareTo
func (p *EchoResult) CompareTo(other interface{}) (int, bool) {
if other == nil {
return 1, true
}
data, ok := other.(*EchoResult)
if !ok {
return 0, false
}
return thrift.TType(thrift.STRUCT).Compare(p, data)
}
示例5: TestOneLSetFieldOnWire
func TestOneLSetFieldOnWire(t *testing.T) {
mockCtrl := gomock.NewController(t)
defer mockCtrl.Finish()
proto := NewMockTProtocol(mockCtrl)
gomock.InOrder(
proto.EXPECT().WriteStructBegin("all_optional").Return(nil),
proto.EXPECT().WriteFieldBegin("l", thrift.TType(thrift.LIST), int16(9)).Return(nil),
proto.EXPECT().WriteListBegin(thrift.TType(thrift.I64), 2).Return(nil),
proto.EXPECT().WriteI64(int64(1)).Return(nil),
proto.EXPECT().WriteI64(int64(2)).Return(nil),
proto.EXPECT().WriteListEnd().Return(nil),
proto.EXPECT().WriteFieldEnd().Return(nil),
proto.EXPECT().WriteFieldStop().Return(nil),
proto.EXPECT().WriteStructEnd().Return(nil),
)
ao := optionalfieldstest.NewAllOptional()
ao.L = []int64{1, 2}
ao.Write(proto)
}
示例6: TestOneEmptyBinSetFieldOnWire
func TestOneEmptyBinSetFieldOnWire(t *testing.T) {
mockCtrl := gomock.NewController(t)
defer mockCtrl.Finish()
proto := NewMockTProtocol(mockCtrl)
gomock.InOrder(
proto.EXPECT().WriteStructBegin("all_optional").Return(nil),
proto.EXPECT().WriteFieldBegin("bin", thrift.TType(thrift.STRING), int16(13)).Return(nil),
proto.EXPECT().WriteBinary([]byte{}).Return(nil),
proto.EXPECT().WriteFieldEnd().Return(nil),
proto.EXPECT().WriteFieldStop().Return(nil),
proto.EXPECT().WriteStructEnd().Return(nil),
)
ao := optionalfieldstest.NewAllOptional()
ao.Bin = []byte{}
ao.Write(proto)
}
示例7: TestOneISetFieldOnWire
//Make sure that only one field is being serialized when set to non-default
func TestOneISetFieldOnWire(t *testing.T) {
mockCtrl := gomock.NewController(t)
defer mockCtrl.Finish()
proto := NewMockTProtocol(mockCtrl)
gomock.InOrder(
proto.EXPECT().WriteStructBegin("all_optional").Return(nil),
proto.EXPECT().WriteFieldBegin("i", thrift.TType(thrift.I64), int16(2)).Return(nil),
proto.EXPECT().WriteI64(int64(123)).Return(nil),
proto.EXPECT().WriteFieldEnd().Return(nil),
proto.EXPECT().WriteFieldStop().Return(nil),
proto.EXPECT().WriteStructEnd().Return(nil),
)
ao := OptionalFieldsTest.NewAllOptional()
ao.I = 123
ao.Write(proto)
}
示例8: prepareClientCallException
// TestCase: call and reply with exception workflow in the client.
// Setup mock to fail at a certain position. Return true if position exists otherwise false.
func prepareClientCallException(protocol *MockTProtocol, failAt int, failWith error) bool {
var err error = nil
// No need to test failure in this block, because it is covered in other test cases
last := protocol.EXPECT().WriteMessageBegin("testString", thrift.CALL, int32(1))
last = protocol.EXPECT().WriteStructBegin("testString_args").After(last)
last = protocol.EXPECT().WriteFieldBegin("s", thrift.TType(thrift.STRING), int16(1)).After(last)
last = protocol.EXPECT().WriteString("test").After(last)
last = protocol.EXPECT().WriteFieldEnd().After(last)
last = protocol.EXPECT().WriteFieldStop().After(last)
last = protocol.EXPECT().WriteStructEnd().After(last)
last = protocol.EXPECT().WriteMessageEnd().After(last)
last = protocol.EXPECT().Flush().After(last)
// Reading the exception, might fail.
if failAt == 0 {
err = failWith
}
last = protocol.EXPECT().ReadMessageBegin().Return("testString", thrift.EXCEPTION, int32(1), err).After(last)
if failAt == 0 {
return true
}
if failAt == 1 {
err = failWith
}
last = protocol.EXPECT().ReadStructBegin().Return("TApplicationException", err).After(last)
if failAt == 1 {
return true
}
if failAt == 2 {
err = failWith
}
last = protocol.EXPECT().ReadFieldBegin().Return("message", thrift.TType(thrift.STRING), int16(1), err).After(last)
if failAt == 2 {
return true
}
if failAt == 3 {
err = failWith
}
last = protocol.EXPECT().ReadString().Return("test", err).After(last)
if failAt == 3 {
return true
}
if failAt == 4 {
err = failWith
}
last = protocol.EXPECT().ReadFieldEnd().Return(err).After(last)
if failAt == 4 {
return true
}
if failAt == 5 {
err = failWith
}
last = protocol.EXPECT().ReadFieldBegin().Return("type", thrift.TType(thrift.I32), int16(2), err).After(last)
if failAt == 5 {
return true
}
if failAt == 6 {
err = failWith
}
last = protocol.EXPECT().ReadI32().Return(int32(thrift.PROTOCOL_ERROR), err).After(last)
if failAt == 6 {
return true
}
if failAt == 7 {
err = failWith
}
last = protocol.EXPECT().ReadFieldEnd().Return(err).After(last)
if failAt == 7 {
return true
}
if failAt == 8 {
err = failWith
}
last = protocol.EXPECT().ReadFieldBegin().Return("_", thrift.TType(thrift.STOP), int16(2), err).After(last)
if failAt == 8 {
return true
}
if failAt == 9 {
err = failWith
}
last = protocol.EXPECT().ReadStructEnd().Return(err).After(last)
if failAt == 9 {
return true
}
if failAt == 10 {
err = failWith
}
last = protocol.EXPECT().ReadMessageEnd().Return(err).After(last)
if failAt == 10 {
return true
}
return false
}
示例9: prepareClientCallReply
// TestCase: Comprehensive call and reply workflow in the client.
// Setup mock to fail at a certain position. Return true if position exists otherwise false.
func prepareClientCallReply(protocol *MockTProtocol, failAt int, failWith error) bool {
var err error = nil
if failAt == 0 {
err = failWith
}
last := protocol.EXPECT().WriteMessageBegin("testStruct", thrift.CALL, int32(1)).Return(err)
if failAt == 0 {
return true
}
if failAt == 1 {
err = failWith
}
last = protocol.EXPECT().WriteStructBegin("testStruct_args").Return(err).After(last)
if failAt == 1 {
return true
}
if failAt == 2 {
err = failWith
}
last = protocol.EXPECT().WriteFieldBegin("thing", thrift.TType(thrift.STRUCT), int16(1)).Return(err).After(last)
if failAt == 2 {
return true
}
if failAt == 3 {
err = failWith
}
last = protocol.EXPECT().WriteStructBegin("TestStruct").Return(err).After(last)
if failAt == 3 {
return true
}
if failAt == 4 {
err = failWith
}
last = protocol.EXPECT().WriteFieldBegin("m", thrift.TType(thrift.MAP), int16(1)).Return(err).After(last)
if failAt == 4 {
return true
}
if failAt == 5 {
err = failWith
}
last = protocol.EXPECT().WriteMapBegin(thrift.TType(thrift.STRING), thrift.TType(thrift.STRING), 0).Return(err).After(last)
if failAt == 5 {
return true
}
if failAt == 6 {
err = failWith
}
last = protocol.EXPECT().WriteMapEnd().Return(err).After(last)
if failAt == 6 {
return true
}
if failAt == 7 {
err = failWith
}
last = protocol.EXPECT().WriteFieldEnd().Return(err).After(last)
if failAt == 7 {
return true
}
if failAt == 8 {
err = failWith
}
last = protocol.EXPECT().WriteFieldBegin("l", thrift.TType(thrift.LIST), int16(2)).Return(err).After(last)
if failAt == 8 {
return true
}
if failAt == 9 {
err = failWith
}
last = protocol.EXPECT().WriteListBegin(thrift.TType(thrift.STRING), 0).Return(err).After(last)
if failAt == 9 {
return true
}
if failAt == 10 {
err = failWith
}
last = protocol.EXPECT().WriteListEnd().Return(err).After(last)
if failAt == 10 {
return true
}
if failAt == 11 {
err = failWith
}
last = protocol.EXPECT().WriteFieldEnd().Return(err).After(last)
if failAt == 11 {
return true
}
if failAt == 12 {
err = failWith
}
last = protocol.EXPECT().WriteFieldBegin("s", thrift.TType(thrift.SET), int16(3)).Return(err).After(last)
if failAt == 12 {
return true
}
if failAt == 13 {
err = failWith
}
//.........这里部分代码省略.........
示例10: TestStructReadRequiredFields
func TestStructReadRequiredFields(t *testing.T) {
mockCtrl := gomock.NewController(t)
protocol := NewMockTProtocol(mockCtrl)
testStruct := optionalfieldstest.NewStructC()
// None of required fields are set
gomock.InOrder(
protocol.EXPECT().ReadStructBegin().Return("StructC", nil),
protocol.EXPECT().ReadFieldBegin().Return("_", thrift.TType(thrift.STOP), int16(1), nil),
protocol.EXPECT().ReadStructEnd().Return(nil),
)
err := testStruct.Read(protocol)
mockCtrl.Finish()
if err == nil {
t.Fatal("Expected read to fail")
}
err2, ok := err.(thrift.TProtocolException)
if !ok {
t.Fatal("Expected a TProtocolException")
}
if err2.TypeId() != thrift.INVALID_DATA {
t.Fatal("Expected INVALID_DATA TProtocolException")
}
// One of the required fields is set
gomock.InOrder(
protocol.EXPECT().ReadStructBegin().Return("StructC", nil),
protocol.EXPECT().ReadFieldBegin().Return("I", thrift.TType(thrift.I32), int16(2), nil),
protocol.EXPECT().ReadI32().Return(int32(1), nil),
protocol.EXPECT().ReadFieldEnd().Return(nil),
protocol.EXPECT().ReadFieldBegin().Return("_", thrift.TType(thrift.STOP), int16(1), nil),
protocol.EXPECT().ReadStructEnd().Return(nil),
)
err = testStruct.Read(protocol)
mockCtrl.Finish()
if err == nil {
t.Fatal("Expected read to fail")
}
err2, ok = err.(thrift.TProtocolException)
if !ok {
t.Fatal("Expected a TProtocolException")
}
if err2.TypeId() != thrift.INVALID_DATA {
t.Fatal("Expected INVALID_DATA TProtocolException")
}
// Both of the required fields are set
gomock.InOrder(
protocol.EXPECT().ReadStructBegin().Return("StructC", nil),
protocol.EXPECT().ReadFieldBegin().Return("i", thrift.TType(thrift.I32), int16(2), nil),
protocol.EXPECT().ReadI32().Return(int32(1), nil),
protocol.EXPECT().ReadFieldEnd().Return(nil),
protocol.EXPECT().ReadFieldBegin().Return("s2", thrift.TType(thrift.STRING), int16(4), nil),
protocol.EXPECT().ReadString().Return("test", nil),
protocol.EXPECT().ReadFieldEnd().Return(nil),
protocol.EXPECT().ReadFieldBegin().Return("_", thrift.TType(thrift.STOP), int16(1), nil),
protocol.EXPECT().ReadStructEnd().Return(nil),
)
err = testStruct.Read(protocol)
mockCtrl.Finish()
if err != nil {
t.Fatal("Expected read to succeed")
}
}