• Russ Cox's avatar
    encoding/json: additional tests and fixes for []typedByte encoding/decoding · 12610236
    Russ Cox authored
    CL 19725 changed the encoding of []typedByte to look for
    typedByte.MarshalJSON and typedByte.MarshalText.
    Previously it was handled like []byte, producing a base64 encoding of the underlying byte data.
    
    CL 19725 forgot to look for (*typedByte).MarshalJSON and (*typedByte).MarshalText,
    as the marshaling of other slices would. Add test and fix for those.
    
    This CL also adds tests that the decoder can handle both the old and new encodings.
    (This was true even in Go 1.6, which is the only reason we can consider this
    not an incompatible change.)
    
    For #13783.
    
    Change-Id: I7cab8b6c0154a7f2d09335b7fa23173bcf856c37
    Reviewed-on: https://go-review.googlesource.com/23294Reviewed-by: default avatarIan Lance Taylor <iant@golang.org>
    Run-TryBot: Russ Cox <rsc@golang.org>
    TryBot-Result: Gobot Gobot <gobot@golang.org>
    Reviewed-by: default avatarAndrew Gerrand <adg@golang.org>
    12610236
encode.go 32.9 KB