blob: ec2558773aa19716289d66b3c3a4e23c2fe16d78 [file] [log] [blame]
package jsonpb_gogo
import (
"testing"
"github.com/gogo/protobuf/jsonpb"
)
// customFieldMessage implements protobuf.Message but is not a normal generated message type.
type customFieldMessage struct {
someField string //this is not a proto field
}
func (m *customFieldMessage) Reset() {
m.someField = "hello"
}
func (m *customFieldMessage) String() string {
return m.someField
}
func (m *customFieldMessage) ProtoMessage() {
}
func TestUnmarshalWithJSONPBUnmarshaler(t *testing.T) {
rawJson := `{}`
marshaler := &jsonpb.Marshaler{}
msg := &customFieldMessage{someField: "Ignore me"}
str, err := marshaler.MarshalToString(msg)
if err != nil {
t.Errorf("an unexpected error occurred when marshaling message: %v", err)
}
if str != rawJson {
t.Errorf("marshaled JSON was incorrect: got %s, wanted %s", str, rawJson)
}
}