diff options
| author | Dmitry Vyukov <dvyukov@google.com> | 2020-04-25 10:12:31 +0200 |
|---|---|---|
| committer | Dmitry Vyukov <dvyukov@google.com> | 2020-04-25 10:52:15 +0200 |
| commit | b3cb1996a4f40025f58ea785f1e555d851e10149 (patch) | |
| tree | d0beb0e6758dff5a36f65b7b6b2a591d63f85a82 /pkg/serializer | |
| parent | a113ba3838a191c8d2aeb531731af5cb31aa6e26 (diff) | |
pkg/serializer: test result in the test
Make the test actually test what we expect
and extend slightly for few interesting cases.
Diffstat (limited to 'pkg/serializer')
| -rw-r--r-- | pkg/serializer/serializer_test.go | 52 |
1 files changed, 49 insertions, 3 deletions
diff --git a/pkg/serializer/serializer_test.go b/pkg/serializer/serializer_test.go index c33b316a9..63ed7aa71 100644 --- a/pkg/serializer/serializer_test.go +++ b/pkg/serializer/serializer_test.go @@ -6,6 +6,8 @@ package serializer import ( "bytes" "testing" + + "github.com/google/go-cmp/cmp" ) func TestSerializer(t *testing.T) { @@ -16,12 +18,50 @@ func TestSerializer(t *testing.T) { B: true, S: "a\x09b", T: T1, + I: []interface{}{ + nil, + Y{V: 42}, + new(Y), + (*Y)(nil), + 0, + 42, + T(0), + T(42), + U(96), + false, + B(false), + "", + "foo", + S(""), + S("foo"), + }, F: nil, } + want := `&X{Y{1},&Y{2},[]Y{ +{3}, +{4}, +},true,"a\tb",1,[]{ +nil, +Y{}, +&Y{}, +nil, +0, +42, +0, +42, +96, +false, +false, +"", +"foo", +"", +"foo", +},nil}` buf := new(bytes.Buffer) Write(buf, x) - t.Logf("\n%s", buf.String()) - t.Logf("\n%#v", x) + if diff := cmp.Diff(want, buf.String()); diff != "" { + t.Fatal(diff) + } } type X struct { @@ -31,6 +71,7 @@ type X struct { B bool S string T T + I []interface{} F func() } @@ -38,7 +79,12 @@ type Y struct { V int } -type T int +type ( + S string + B bool + T int + U uint16 +) const ( _ T = iota |
