12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- // Copyright 2019 The Go Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style.
- // license that can be found in the LICENSE file.
- package proto_test
- import (
- "testing"
- "google.golang.org/protobuf/proto"
- testpb "google.golang.org/protobuf/internal/testprotos/test"
- )
- func TestReset(t *testing.T) {
- m := &testpb.TestAllTypes{
- OptionalSfixed64: proto.Int64(5),
- RepeatedInt32: []int32{},
- RepeatedFloat: []float32{1.234, 5.678},
- MapFixed64Fixed64: map[uint64]uint64{5: 7},
- MapStringString: map[string]string{},
- OptionalForeignMessage: &testpb.ForeignMessage{},
- OneofField: (*testpb.TestAllTypes_OneofUint32)(nil),
- OneofOptional: (*testpb.TestAllTypes_OneofOptionalUint32)(nil),
- }
- m.ProtoReflect().SetUnknown([]byte{})
- proto.Reset(m)
- if m.OptionalSfixed64 != nil {
- t.Errorf("m.OptionalSfixed64 = %p, want nil", m.OptionalSfixed64)
- }
- if m.RepeatedInt32 != nil {
- t.Errorf("m.RepeatedInt32 = %p, want nil", m.RepeatedInt32)
- }
- if m.RepeatedFloat != nil {
- t.Errorf("m.RepeatedFloat = %p, want nil", m.RepeatedFloat)
- }
- if m.MapFixed64Fixed64 != nil {
- t.Errorf("m.MapFixed64Fixed64 = %p, want nil", m.MapFixed64Fixed64)
- }
- if m.MapStringString != nil {
- t.Errorf("m.MapStringString = %p, want nil", m.MapStringString)
- }
- if m.OptionalForeignMessage != nil {
- t.Errorf("m.OptionalForeignMessage = %p, want nil", m.OptionalForeignMessage)
- }
- if m.OneofField != nil {
- t.Errorf("m.OneofField = %p, want nil", m.OneofField)
- }
- if m.OneofOptional != nil {
- t.Errorf("m.OneofOptional = %p, want nil", m.OneofOptional)
- }
- if got := m.ProtoReflect().GetUnknown(); got != nil {
- t.Errorf("m.ProtoReflect().GetUnknown() = %d, want nil", got)
- }
- }
|