1
0
mirror of https://github.com/json-iterator/go.git synced 2025-06-06 22:36:25 +02:00
This commit is contained in:
Tao Wen 2018-02-24 22:04:41 +08:00
parent 8d6662b81b
commit fff342fd04
72 changed files with 165 additions and 176 deletions

4
any.go
View File

@ -3,11 +3,11 @@ package jsoniter
import ( import (
"errors" "errors"
"fmt" "fmt"
"github.com/v2pro/plz/reflect2"
"io" "io"
"reflect" "reflect"
"unsafe"
"github.com/v2pro/plz/reflect2"
"strconv" "strconv"
"unsafe"
) )
// Any generic object representation. // Any generic object representation.

View File

@ -3,8 +3,8 @@ package any_tests
import ( import (
"testing" "testing"
"github.com/stretchr/testify/require"
"github.com/json-iterator/go" "github.com/json-iterator/go"
"github.com/stretchr/testify/require"
) )
func Test_read_empty_array_as_any(t *testing.T) { func Test_read_empty_array_as_any(t *testing.T) {

View File

@ -4,8 +4,8 @@ import (
"fmt" "fmt"
"testing" "testing"
"github.com/stretchr/testify/require"
"github.com/json-iterator/go" "github.com/json-iterator/go"
"github.com/stretchr/testify/require"
) )
var boolConvertMap = map[string]bool{ var boolConvertMap = map[string]bool{

View File

@ -3,8 +3,8 @@ package any_tests
import ( import (
"testing" "testing"
"github.com/stretchr/testify/require"
"github.com/json-iterator/go" "github.com/json-iterator/go"
"github.com/stretchr/testify/require"
) )
var floatConvertMap = map[string]float64{ var floatConvertMap = map[string]float64{

View File

@ -4,8 +4,8 @@ import (
"fmt" "fmt"
"testing" "testing"
"github.com/stretchr/testify/require"
"github.com/json-iterator/go" "github.com/json-iterator/go"
"github.com/stretchr/testify/require"
) )
var intConvertMap = map[string]int{ var intConvertMap = map[string]int{

View File

@ -1,9 +1,9 @@
package any_tests package any_tests
import ( import (
"github.com/json-iterator/go"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"testing" "testing"
"github.com/json-iterator/go"
) )
func Test_wrap_map(t *testing.T) { func Test_wrap_map(t *testing.T) {

View File

@ -1,9 +1,9 @@
package any_tests package any_tests
import ( import (
"github.com/json-iterator/go"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"testing" "testing"
"github.com/json-iterator/go"
) )
func Test_read_null_as_any(t *testing.T) { func Test_read_null_as_any(t *testing.T) {

View File

@ -3,8 +3,8 @@ package any_tests
import ( import (
"testing" "testing"
"github.com/stretchr/testify/require"
"github.com/json-iterator/go" "github.com/json-iterator/go"
"github.com/stretchr/testify/require"
) )
func Test_read_object_as_any(t *testing.T) { func Test_read_object_as_any(t *testing.T) {

View File

@ -3,8 +3,8 @@ package any_tests
import ( import (
"testing" "testing"
"github.com/stretchr/testify/require"
"github.com/json-iterator/go" "github.com/json-iterator/go"
"github.com/stretchr/testify/require"
) )
var stringConvertMap = map[string]string{ var stringConvertMap = map[string]string{

View File

@ -3,8 +3,8 @@ package any_tests
import ( import (
"testing" "testing"
"github.com/stretchr/testify/require"
"github.com/json-iterator/go" "github.com/json-iterator/go"
"github.com/stretchr/testify/require"
) )
// if must be valid is useless, just drop this test // if must be valid is useless, just drop this test

View File

@ -3,8 +3,8 @@ package any_tests
import ( import (
"testing" "testing"
"github.com/stretchr/testify/require"
"github.com/json-iterator/go" "github.com/json-iterator/go"
"github.com/stretchr/testify/require"
) )
func Test_wrap_and_valuetype_everything(t *testing.T) { func Test_wrap_and_valuetype_everything(t *testing.T) {

View File

@ -1,10 +1,10 @@
package test package test
import ( import (
"testing"
"github.com/stretchr/testify/require"
"github.com/json-iterator/go"
"encoding/json" "encoding/json"
"github.com/json-iterator/go"
"github.com/stretchr/testify/require"
"testing"
) )
func Test_use_number_for_unmarshal(t *testing.T) { func Test_use_number_for_unmarshal(t *testing.T) {
@ -23,7 +23,6 @@ func Test_customize_float_marshal(t *testing.T) {
should.Equal("1.234568", str) should.Equal("1.234568", str)
} }
func Test_customize_tag_key(t *testing.T) { func Test_customize_tag_key(t *testing.T) {
type TestObject struct { type TestObject struct {

View File

@ -2,11 +2,11 @@ package test
import ( import (
"bytes" "bytes"
"github.com/stretchr/testify/require"
"testing"
"github.com/json-iterator/go"
"io/ioutil"
"encoding/json" "encoding/json"
"github.com/json-iterator/go"
"github.com/stretchr/testify/require"
"io/ioutil"
"testing"
) )
func Test_disallowUnknownFields(t *testing.T) { func Test_disallowUnknownFields(t *testing.T) {
@ -18,7 +18,6 @@ func Test_disallowUnknownFields(t *testing.T) {
should.Error(decoder.Decode(&obj)) should.Error(decoder.Decode(&obj))
} }
func Test_new_decoder(t *testing.T) { func Test_new_decoder(t *testing.T) {
should := require.New(t) should := require.New(t)
decoder1 := json.NewDecoder(bytes.NewBufferString(`[1][2]`)) decoder1 := json.NewDecoder(bytes.NewBufferString(`[1][2]`))

View File

@ -8,8 +8,8 @@ import (
"testing" "testing"
"unicode/utf8" "unicode/utf8"
"github.com/stretchr/testify/require"
"github.com/json-iterator/go" "github.com/json-iterator/go"
"github.com/stretchr/testify/require"
) )
func Test_new_encoder(t *testing.T) { func Test_new_encoder(t *testing.T) {

View File

@ -1,11 +1,11 @@
package test package test
import ( import (
"testing"
"github.com/stretchr/testify/require"
"bytes" "bytes"
"github.com/json-iterator/go"
"encoding/json" "encoding/json"
"github.com/json-iterator/go"
"github.com/stretchr/testify/require"
"testing"
) )
// Standard Encoder has trailing newline. // Standard Encoder has trailing newline.

View File

@ -2,9 +2,9 @@ package test
import ( import (
"encoding/json" "encoding/json"
"github.com/json-iterator/go"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"testing" "testing"
"github.com/json-iterator/go"
) )
func Test_marshal_indent(t *testing.T) { func Test_marshal_indent(t *testing.T) {

View File

@ -2,10 +2,10 @@ package test
import ( import (
"encoding/json" "encoding/json"
"github.com/json-iterator/go"
"io/ioutil" "io/ioutil"
"os" "os"
"testing" "testing"
"github.com/json-iterator/go"
) )
//func Test_large_file(t *testing.T) { //func Test_large_file(t *testing.T) {

View File

@ -2,10 +2,10 @@ package jsoniter
import ( import (
"encoding/json" "encoding/json"
"io"
"unsafe"
"github.com/v2pro/plz/reflect2" "github.com/v2pro/plz/reflect2"
"io"
"sync" "sync"
"unsafe"
) )
// Config customize how the API should behave. // Config customize how the API should behave.

View File

@ -111,7 +111,6 @@ func ExampleMapKey() {
type MyKey string type MyKey string
func (m *MyKey) MarshalText() ([]byte, error) { func (m *MyKey) MarshalText() ([]byte, error) {
return []byte(strings.Replace(string(*m), "h", "H", -1)), nil return []byte(strings.Replace(string(*m), "h", "H", -1)), nil
} }
@ -120,4 +119,3 @@ func (m *MyKey) UnmarshalText(text []byte) error {
*m = MyKey(text[:3]) *m = MyKey(text[:3])
return nil return nil
} }

View File

@ -1,12 +1,12 @@
package test package test
import ( import (
"testing"
"unsafe"
"time"
"github.com/json-iterator/go" "github.com/json-iterator/go"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"strconv" "strconv"
"testing"
"time"
"unsafe"
) )
func Test_customize_type_decoder(t *testing.T) { func Test_customize_type_decoder(t *testing.T) {
@ -61,7 +61,6 @@ func Test_customize_field_decoder(t *testing.T) {
} }
} }
func Test_recursive_empty_interface_customization(t *testing.T) { func Test_recursive_empty_interface_customization(t *testing.T) {
t.Skip() t.Skip()
var obj interface{} var obj interface{}

View File

@ -1,13 +1,13 @@
package test package test
import ( import (
"unsafe"
"strconv"
"testing"
"github.com/stretchr/testify/require"
"github.com/json-iterator/go" "github.com/json-iterator/go"
"github.com/stretchr/testify/require"
"github.com/v2pro/plz/reflect2" "github.com/v2pro/plz/reflect2"
"reflect" "reflect"
"strconv"
"testing"
"unsafe"
) )
type TestObject1 struct { type TestObject1 struct {

View File

@ -3,9 +3,9 @@ package misc_tests
import ( import (
"bytes" "bytes"
"encoding/json" "encoding/json"
"github.com/json-iterator/go"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"testing" "testing"
"github.com/json-iterator/go"
) )
func Test_empty_array(t *testing.T) { func Test_empty_array(t *testing.T) {

View File

@ -4,8 +4,8 @@ import (
"bytes" "bytes"
"testing" "testing"
"github.com/stretchr/testify/require"
"github.com/json-iterator/go" "github.com/json-iterator/go"
"github.com/stretchr/testify/require"
) )
func Test_true(t *testing.T) { func Test_true(t *testing.T) {

View File

@ -4,8 +4,8 @@ import (
"encoding/json" "encoding/json"
"testing" "testing"
"github.com/stretchr/testify/require"
"github.com/json-iterator/go" "github.com/json-iterator/go"
"github.com/stretchr/testify/require"
) )
func Test_read_big_float(t *testing.T) { func Test_read_big_float(t *testing.T) {

View File

@ -9,8 +9,8 @@ import (
"strconv" "strconv"
"testing" "testing"
"github.com/stretchr/testify/require"
"github.com/json-iterator/go" "github.com/json-iterator/go"
"github.com/stretchr/testify/require"
) )
func Test_read_uint64_invalid(t *testing.T) { func Test_read_uint64_invalid(t *testing.T) {

View File

@ -2,10 +2,10 @@ package misc_tests
import ( import (
"encoding/json" "encoding/json"
"testing"
"github.com/stretchr/testify/require"
"github.com/json-iterator/go" "github.com/json-iterator/go"
"github.com/stretchr/testify/require"
"io" "io"
"testing"
) )
func Test_nil_non_empty_interface(t *testing.T) { func Test_nil_non_empty_interface(t *testing.T) {

View File

@ -7,8 +7,8 @@ import (
"strconv" "strconv"
"testing" "testing"
"github.com/stretchr/testify/require"
"github.com/json-iterator/go" "github.com/json-iterator/go"
"github.com/stretchr/testify/require"
) )
func Test_bad_case(t *testing.T) { func Test_bad_case(t *testing.T) {

View File

@ -5,9 +5,9 @@ import (
"math/big" "math/big"
"testing" "testing"
"github.com/json-iterator/go"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"strings" "strings"
"github.com/json-iterator/go"
) )
func Test_decode_TextMarshaler_key_map(t *testing.T) { func Test_decode_TextMarshaler_key_map(t *testing.T) {

View File

@ -2,9 +2,9 @@ package misc_tests
import ( import (
"encoding/json" "encoding/json"
"github.com/json-iterator/go"
"reflect" "reflect"
"testing" "testing"
"github.com/json-iterator/go"
) )
type Level1 struct { type Level1 struct {

View File

@ -5,8 +5,8 @@ import (
"io" "io"
"testing" "testing"
"github.com/stretchr/testify/require"
"github.com/json-iterator/go" "github.com/json-iterator/go"
"github.com/stretchr/testify/require"
) )
func Test_read_null(t *testing.T) { func Test_read_null(t *testing.T) {

View File

@ -4,10 +4,10 @@ import (
"bytes" "bytes"
"testing" "testing"
"github.com/stretchr/testify/require"
"github.com/json-iterator/go" "github.com/json-iterator/go"
"time" "github.com/stretchr/testify/require"
"strings" "strings"
"time"
) )
func Test_empty_object(t *testing.T) { func Test_empty_object(t *testing.T) {

View File

@ -2,10 +2,10 @@ package misc_tests
import ( import (
"encoding/json" "encoding/json"
"github.com/json-iterator/go"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"strings" "strings"
"testing" "testing"
"github.com/json-iterator/go"
) )
func Test_jsoniter_RawMessage(t *testing.T) { func Test_jsoniter_RawMessage(t *testing.T) {

View File

@ -2,9 +2,9 @@ package jsoniter
import ( import (
"fmt" "fmt"
"github.com/v2pro/plz/reflect2"
"reflect" "reflect"
"unsafe" "unsafe"
"github.com/v2pro/plz/reflect2"
) )
// ValDecoder is an internal type registered to cache as needed. // ValDecoder is an internal type registered to cache as needed.

View File

@ -2,9 +2,9 @@ package jsoniter
import ( import (
"fmt" "fmt"
"github.com/v2pro/plz/reflect2"
"io" "io"
"unsafe" "unsafe"
"github.com/v2pro/plz/reflect2"
) )
func decoderOfArray(ctx *ctx, typ reflect2.Type) ValDecoder { func decoderOfArray(ctx *ctx, typ reflect2.Type) ValDecoder {

View File

@ -2,8 +2,8 @@ package jsoniter
import ( import (
"github.com/v2pro/plz/reflect2" "github.com/v2pro/plz/reflect2"
"unsafe"
"reflect" "reflect"
"unsafe"
) )
type dynamicEncoder struct { type dynamicEncoder struct {

View File

@ -2,12 +2,12 @@ package jsoniter
import ( import (
"fmt" "fmt"
"github.com/v2pro/plz/reflect2"
"reflect" "reflect"
"sort" "sort"
"strings" "strings"
"unicode" "unicode"
"unsafe" "unsafe"
"github.com/v2pro/plz/reflect2"
) )
var typeDecoders = map[string]ValDecoder{} var typeDecoders = map[string]ValDecoder{}

View File

@ -2,9 +2,9 @@ package jsoniter
import ( import (
"encoding/json" "encoding/json"
"github.com/v2pro/plz/reflect2"
"strconv" "strconv"
"unsafe" "unsafe"
"github.com/v2pro/plz/reflect2"
) )
type Number string type Number string

View File

@ -1,9 +1,9 @@
package jsoniter package jsoniter
import ( import (
"unsafe"
"encoding/json" "encoding/json"
"github.com/v2pro/plz/reflect2" "github.com/v2pro/plz/reflect2"
"unsafe"
) )
var jsonRawMessageType = reflect2.TypeOfPtr((*json.RawMessage)(nil)).Elem() var jsonRawMessageType = reflect2.TypeOfPtr((*json.RawMessage)(nil)).Elem()

View File

@ -1,11 +1,11 @@
package jsoniter package jsoniter
import ( import (
"fmt"
"github.com/v2pro/plz/reflect2"
"reflect" "reflect"
"sort" "sort"
"unsafe" "unsafe"
"github.com/v2pro/plz/reflect2"
"fmt"
) )
func decoderOfMap(ctx *ctx, typ reflect2.Type) ValDecoder { func decoderOfMap(ctx *ctx, typ reflect2.Type) ValDecoder {

View File

@ -1,10 +1,10 @@
package jsoniter package jsoniter
import ( import (
"github.com/v2pro/plz/reflect2"
"unsafe"
"encoding" "encoding"
"encoding/json" "encoding/json"
"github.com/v2pro/plz/reflect2"
"unsafe"
) )
var marshalerType = reflect2.TypeOfPtr((*json.Marshaler)(nil)).Elem() var marshalerType = reflect2.TypeOfPtr((*json.Marshaler)(nil)).Elem()

View File

@ -2,10 +2,10 @@ package jsoniter
import ( import (
"encoding/base64" "encoding/base64"
"reflect"
"unsafe"
"github.com/v2pro/plz/reflect2" "github.com/v2pro/plz/reflect2"
"reflect"
"strconv" "strconv"
"unsafe"
) )
const ptrSize = 32 << uintptr(^uintptr(0)>>63) const ptrSize = 32 << uintptr(^uintptr(0)>>63)

View File

@ -1,9 +1,9 @@
package jsoniter package jsoniter
import ( import (
"github.com/v2pro/plz/reflect2"
"reflect" "reflect"
"unsafe" "unsafe"
"github.com/v2pro/plz/reflect2"
) )
func decoderOfOptional(ctx *ctx, typ reflect2.Type) ValDecoder { func decoderOfOptional(ctx *ctx, typ reflect2.Type) ValDecoder {

View File

@ -2,9 +2,9 @@ package jsoniter
import ( import (
"fmt" "fmt"
"github.com/v2pro/plz/reflect2"
"io" "io"
"unsafe" "unsafe"
"github.com/v2pro/plz/reflect2"
) )
func decoderOfSlice(ctx *ctx, typ reflect2.Type) ValDecoder { func decoderOfSlice(ctx *ctx, typ reflect2.Type) ValDecoder {

View File

@ -2,10 +2,10 @@ package jsoniter
import ( import (
"fmt" "fmt"
"github.com/v2pro/plz/reflect2"
"io" "io"
"strings" "strings"
"unsafe" "unsafe"
"github.com/v2pro/plz/reflect2"
) )
func decoderOfStruct(ctx *ctx, typ reflect2.Type) ValDecoder { func decoderOfStruct(ctx *ctx, typ reflect2.Type) ValDecoder {

View File

@ -2,10 +2,10 @@ package jsoniter
import ( import (
"fmt" "fmt"
"github.com/v2pro/plz/reflect2"
"io" "io"
"reflect" "reflect"
"unsafe" "unsafe"
"github.com/v2pro/plz/reflect2"
) )
func encoderOfStruct(ctx *ctx, typ reflect2.Type) ValEncoder { func encoderOfStruct(ctx *ctx, typ reflect2.Type) ValEncoder {

View File

@ -5,8 +5,8 @@ import (
"encoding/json" "encoding/json"
"testing" "testing"
"github.com/stretchr/testify/require"
"github.com/json-iterator/go" "github.com/json-iterator/go"
"github.com/stretchr/testify/require"
) )
func Test_skip_number_in_array(t *testing.T) { func Test_skip_number_in_array(t *testing.T) {

View File

@ -6,8 +6,8 @@ import (
"github.com/json-iterator/go" "github.com/json-iterator/go"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"io" "io"
"testing"
"reflect" "reflect"
"testing"
) )
type testCase struct { type testCase struct {

View File

@ -1,8 +1,8 @@
package test package test
import ( import (
"strings"
"encoding" "encoding"
"strings"
) )
func init() { func init() {
@ -26,7 +26,6 @@ func (k *stringKeyType) UnmarshalText(text []byte) error {
var _ encoding.TextMarshaler = stringKeyType("") var _ encoding.TextMarshaler = stringKeyType("")
var _ encoding.TextUnmarshaler = new(stringKeyType) var _ encoding.TextUnmarshaler = new(stringKeyType)
type structKeyType struct { type structKeyType struct {
X string X string
} }

View File

@ -3,8 +3,8 @@ package test
import ( import (
"bytes" "bytes"
"encoding/base64" "encoding/base64"
"strings"
"encoding/json" "encoding/json"
"strings"
) )
type StringMarshaler string type StringMarshaler string

View File

@ -1,10 +1,10 @@
package test package test
import ( import (
"strings"
"encoding/base64"
"bytes" "bytes"
"encoding/base64"
"encoding/json" "encoding/json"
"strings"
) )
type structMarshaler struct { type structMarshaler struct {

View File

@ -91,7 +91,6 @@ func (p *jsonMarshaler) UnmarshalJSON(input []byte) error {
return nil return nil
} }
type jsonMarshalerMap map[int]int type jsonMarshalerMap map[int]int
func (p *jsonMarshalerMap) MarshalJSON() ([]byte, error) { func (p *jsonMarshalerMap) MarshalJSON() ([]byte, error) {
@ -117,7 +116,6 @@ func (p *textMarshaler) UnmarshalText(input []byte) error {
type textMarshalerMap map[int]int type textMarshalerMap map[int]int
func (p *textMarshalerMap) MarshalText() ([]byte, error) { func (p *textMarshalerMap) MarshalText() ([]byte, error) {
return []byte(`{}`), nil return []byte(`{}`), nil
} }

View File

@ -1,10 +1,10 @@
package test package test
import ( import (
"strings"
"encoding"
"bytes" "bytes"
"encoding"
"encoding/base64" "encoding/base64"
"strings"
) )
func init() { func init() {

View File

@ -2,9 +2,9 @@ package test
import ( import (
"bytes" "bytes"
"encoding"
"encoding/base64" "encoding/base64"
"strings" "strings"
"encoding"
) )
func init() { func init() {

View File

@ -1,15 +1,15 @@
package test package test
import ( import (
"testing"
"reflect"
"fmt"
"github.com/google/gofuzz"
"strings"
"github.com/json-iterator/go"
"encoding/json"
"bytes" "bytes"
"encoding/json"
"fmt"
"github.com/davecgh/go-spew/spew" "github.com/davecgh/go-spew/spew"
"github.com/google/gofuzz"
"github.com/json-iterator/go"
"reflect"
"strings"
"testing"
) )
var testCases []interface{} var testCases []interface{}

View File

@ -1,13 +1,13 @@
package test package test
import ( import (
"bytes"
"encoding/json"
"fmt" "fmt"
"testing" "github.com/json-iterator/go"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"strconv" "strconv"
"bytes" "testing"
"github.com/json-iterator/go"
"encoding/json"
) )
func Test_read_float(t *testing.T) { func Test_read_float(t *testing.T) {
@ -50,7 +50,6 @@ func Test_read_float(t *testing.T) {
} }
} }
func Test_write_float32(t *testing.T) { func Test_write_float32(t *testing.T) {
vals := []float32{0, 1, -1, 99, 0xff, 0xfff, 0xffff, 0xfffff, 0xffffff, 0x4ffffff, 0xfffffff, vals := []float32{0, 1, -1, 99, 0xff, 0xfff, 0xffff, 0xfffff, 0xffffff, 0x4ffffff, 0xfffffff,
-0x4ffffff, -0xfffffff, 1.2345, 1.23456, 1.234567, 1.001} -0x4ffffff, -0xfffffff, 1.2345, 1.23456, 1.234567, 1.001}

View File

@ -1,12 +1,12 @@
package test package test
import ( import (
"bytes"
"fmt"
"github.com/json-iterator/go"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"strconv" "strconv"
"fmt"
"testing" "testing"
"bytes"
"github.com/json-iterator/go"
) )
func init() { func init() {
@ -158,7 +158,6 @@ func Test_read_int64(t *testing.T) {
} }
} }
func Test_write_uint8(t *testing.T) { func Test_write_uint8(t *testing.T) {
vals := []uint8{0, 1, 11, 111, 255} vals := []uint8{0, 1, 11, 111, 255}
for _, val := range vals { for _, val := range vals {

View File

@ -3,11 +3,11 @@ package test
import ( import (
"bytes" "bytes"
"encoding/json" "encoding/json"
"github.com/json-iterator/go"
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"io" "io"
"testing" "testing"
"github.com/json-iterator/go"
) )
func Test_missing_object_end(t *testing.T) { func Test_missing_object_end(t *testing.T) {

View File

@ -1,8 +1,8 @@
package test package test
import ( import (
"math/big"
"encoding/json" "encoding/json"
"math/big"
) )
func init() { func init() {

View File

@ -1,8 +1,8 @@
package test package test
import ( import (
"encoding/json"
"encoding" "encoding"
"encoding/json"
) )
func init() { func init() {
@ -17,10 +17,10 @@ func init() {
tmOfStructInt{}, tmOfStructInt{},
&tm2, &tm2,
map[tmOfStruct]int{ map[tmOfStruct]int{
tmOfStruct{}: 100, {}: 100,
}, },
map[*tmOfStruct]int{ map[*tmOfStruct]int{
&tmOfStruct{}: 100, {}: 100,
}, },
map[encoding.TextMarshaler]int{ map[encoding.TextMarshaler]int{
tm1: 100, tm1: 100,
@ -47,7 +47,6 @@ func (q *jmOfStruct) UnmarshalJSON(value []byte) error {
return nil return nil
} }
type tmOfStruct struct { type tmOfStruct struct {
F2 chan []byte F2 chan []byte
} }

View File

@ -1,9 +1,9 @@
package test package test
import ( import (
"testing"
"github.com/json-iterator/go"
"encoding/json" "encoding/json"
"github.com/json-iterator/go"
"testing"
"unicode/utf8" "unicode/utf8"
) )

View File

@ -1,9 +1,9 @@
package test package test
import ( import (
"time"
"encoding/json"
"bytes" "bytes"
"encoding/json"
"time"
) )
func init() { func init() {

View File

@ -1,12 +1,12 @@
package test package test
import ( import (
"testing"
"encoding/json" "encoding/json"
"github.com/stretchr/testify/require"
"github.com/json-iterator/go"
"fmt" "fmt"
"github.com/json-iterator/go"
"github.com/stretchr/testify/require"
"github.com/v2pro/plz/reflect2" "github.com/v2pro/plz/reflect2"
"testing"
) )
type unmarshalCase struct { type unmarshalCase struct {