goprotobuf: Missing test data from a previous CL.
R=iant
CC=golang-dev
https://codereview.appspot.com/6883048
diff --git a/proto/testdata/test.pb.go b/proto/testdata/test.pb.go
index 67c3dc2..cfd1dfd 100644
--- a/proto/testdata/test.pb.go
+++ b/proto/testdata/test.pb.go
@@ -982,6 +982,7 @@
Bikeshed *MyMessage_Color `protobuf:"varint,7,opt,name=bikeshed,enum=testdata.MyMessage_Color" json:"bikeshed,omitempty"`
Somegroup *MyMessage_SomeGroup `protobuf:"group,8,opt,name=SomeGroup" json:"somegroup,omitempty"`
RepBytes [][]byte `protobuf:"bytes,10,rep,name=rep_bytes" json:"rep_bytes,omitempty"`
+ Bigfloat *float64 `protobuf:"fixed64,11,opt,name=bigfloat" json:"bigfloat,omitempty"`
XXX_extensions map[int32]proto.Extension `json:"-"`
XXX_unrecognized []byte `json:"-"`
}
@@ -1046,6 +1047,13 @@
return nil
}
+func (this *MyMessage) GetBigfloat() float64 {
+ if this != nil && this.Bigfloat != nil {
+ return *this.Bigfloat
+ }
+ return 0
+}
+
type MyMessage_SomeGroup struct {
GroupField *int32 `protobuf:"varint,9,opt,name=group_field" json:"group_field,omitempty"`
}
diff --git a/proto/text_parser_test.go b/proto/text_parser_test.go
index 7ae0759..0821a7d 100644
--- a/proto/text_parser_test.go
+++ b/proto/text_parser_test.go
@@ -32,6 +32,7 @@
package proto_test
import (
+ "math"
"reflect"
"testing"
@@ -194,6 +195,24 @@
},
},
+ // Floating point positive infinity
+ {
+ in: "count: 4 bigfloat: inf",
+ out: &MyMessage{
+ Count: Int32(4),
+ Bigfloat: Float64(math.Inf(1)),
+ },
+ },
+
+ // Floating point negative infinity
+ {
+ in: "count: 4 bigfloat: -inf",
+ out: &MyMessage{
+ Count: Int32(4),
+ Bigfloat: Float64(math.Inf(-1)),
+ },
+ },
+
// Number too large for float32
{
in: "others:< weight: 12345678901234567890123456789012345678901234567890 >",
@@ -296,6 +315,23 @@
},
},
+ // Semicolon between fields
+ {
+ in: `count:3;name:"Calvin"`,
+ out: &MyMessage{
+ Count: Int32(3),
+ Name: String("Calvin"),
+ },
+ },
+ // Comma between fields
+ {
+ in: `count:4,name:"Ezekiel"`,
+ out: &MyMessage{
+ Count: Int32(4),
+ Name: String("Ezekiel"),
+ },
+ },
+
// Extension
buildExtStructTest(`count: 42 [testdata.Ext.more]:<data:"Hello, world!" >`),
buildExtStructTest(`count: 42 [testdata.Ext.more] {data:"Hello, world!"}`),