瀏覽代碼

Uncommit files accidentally added

Tim Hockin 8 年之前
父節點
當前提交
7fa780bd5d

+ 0 - 152
output_tests/_json_test.go

@@ -1,152 +0,0 @@
-package test
-
-import (
-	"bytes"
-	"encoding/json"
-	"fmt"
-	"strings"
-	"testing"
-
-	"github.com/davecgh/go-spew/spew"
-	fuzz "github.com/google/gofuzz"
-	jsoniter "github.com/json-iterator/go"
-)
-
-func Test_Roundtrip(t *testing.T) {
-	fz := fuzz.New().MaxDepth(10).NilChance(0.3)
-	for i := 0; i < 1000; i++ {
-		var before T
-		fz.Fuzz(&before)
-
-		jbStd, err := json.Marshal(before)
-		if err != nil {
-			t.Fatalf("failed to marshal with stdlib: %v", err)
-		}
-		if len(strings.TrimSpace(string(jbStd))) == 0 {
-			t.Fatal("stdlib marshal produced empty result and no error")
-		}
-		jbIter, err := jsoniter.ConfigCompatibleWithStandardLibrary.Marshal(before)
-		if err != nil {
-			t.Fatalf("failed to marshal with jsoniter: %v", err)
-		}
-		if len(strings.TrimSpace(string(jbIter))) == 0 {
-			t.Fatal("jsoniter marshal produced empty result and no error")
-		}
-		if string(jbStd) != string(jbIter) {
-			t.Fatalf("marshal expected:\n    %s\ngot:\n    %s\nobj:\n    %s",
-				indent(jbStd, "    "), indent(jbIter, "    "), dump(before))
-		}
-
-		var afterStd T
-		err = json.Unmarshal(jbIter, &afterStd)
-		if err != nil {
-			t.Fatalf("failed to unmarshal with stdlib: %v\nvia:\n    %s",
-				err, indent(jbIter, "    "))
-		}
-		var afterIter T
-		err = jsoniter.ConfigCompatibleWithStandardLibrary.Unmarshal(jbIter, &afterIter)
-		if err != nil {
-			t.Fatalf("failed to unmarshal with jsoniter: %v\nvia:\n    %s",
-				err, indent(jbIter, "    "))
-		}
-		if fingerprint(afterStd) != fingerprint(afterIter) {
-			t.Fatalf("unmarshal expected:\n    %s\ngot:\n    %s\nvia:\n    %s",
-				dump(afterStd), dump(afterIter), indent(jbIter, "    "))
-		}
-	}
-}
-
-const indentStr = ">  "
-
-func fingerprint(obj interface{}) string {
-	c := spew.ConfigState{
-		SortKeys: true,
-		SpewKeys: true,
-	}
-	return c.Sprintf("%v", obj)
-}
-
-func dump(obj interface{}) string {
-	cfg := spew.ConfigState{
-		Indent: indentStr,
-	}
-	return cfg.Sdump(obj)
-}
-
-func indent(src []byte, prefix string) string {
-	var buf bytes.Buffer
-	err := json.Indent(&buf, src, prefix, indentStr)
-	if err != nil {
-		return fmt.Sprintf("!!! %v", err)
-	}
-	return buf.String()
-}
-
-func benchmarkMarshal(t *testing.B, name string, fn func(interface{}) ([]byte, error)) {
-	t.ReportAllocs()
-	t.ResetTimer()
-
-	var obj T
-	fz := fuzz.NewWithSeed(0).MaxDepth(10).NilChance(0.3)
-	fz.Fuzz(&obj)
-	for i := 0; i < t.N; i++ {
-		jb, err := fn(obj)
-		if err != nil {
-			t.Fatalf("%s failed to marshal:\n input: %s\n  error: %v", name, dump(obj), err)
-		}
-		_ = jb
-	}
-}
-
-func benchmarkUnmarshal(t *testing.B, name string, fn func(data []byte, v interface{}) error) {
-	t.ReportAllocs()
-	t.ResetTimer()
-
-	var before T
-	fz := fuzz.NewWithSeed(0).MaxDepth(10).NilChance(0.3)
-	fz.Fuzz(&before)
-	jb, err := json.Marshal(before)
-	if err != nil {
-		t.Fatalf("failed to marshal: %v", err)
-	}
-
-	for i := 0; i < t.N; i++ {
-		var after T
-		err = fn(jb, &after)
-		if err != nil {
-			t.Fatalf("%s failed to unmarshal:\n  input: %q\n  error: %v", name, string(jb), err)
-		}
-	}
-}
-
-func BenchmarkStandardMarshal(t *testing.B) {
-	benchmarkMarshal(t, "stdlib", json.Marshal)
-}
-
-func BenchmarkStandardUnmarshal(t *testing.B) {
-	benchmarkUnmarshal(t, "stdlib", json.Unmarshal)
-}
-
-func BenchmarkJSONIterMarshalFastest(t *testing.B) {
-	benchmarkMarshal(t, "jsoniter-fastest", jsoniter.ConfigFastest.Marshal)
-}
-
-func BenchmarkJSONIterUnmarshalFastest(t *testing.B) {
-	benchmarkUnmarshal(t, "jsoniter-fastest", jsoniter.ConfigFastest.Unmarshal)
-}
-
-func BenchmarkJSONIterMarshalDefault(t *testing.B) {
-	benchmarkMarshal(t, "jsoniter-default", jsoniter.Marshal)
-}
-
-func BenchmarkJSONIterUnmarshalDefault(t *testing.B) {
-	benchmarkUnmarshal(t, "jsoniter-default", jsoniter.Unmarshal)
-}
-
-func BenchmarkJSONIterMarshalCompatible(t *testing.B) {
-	benchmarkMarshal(t, "jsoniter-compat", jsoniter.ConfigCompatibleWithStandardLibrary.Marshal)
-}
-
-func BenchmarkJSONIterUnmarshalCompatible(t *testing.B) {
-	benchmarkUnmarshal(t, "jsoniter-compat", jsoniter.ConfigCompatibleWithStandardLibrary.Unmarshal)
-}

+ 0 - 3
output_tests/_not_done/TODO

@@ -1,3 +0,0 @@
-arrays
-interfaces
-complex

+ 0 - 152
output_tests/_not_done/structs/everything/json_test.go

@@ -1,152 +0,0 @@
-package test
-
-import (
-	"bytes"
-	"encoding/json"
-	"fmt"
-	"strings"
-	"testing"
-
-	"github.com/davecgh/go-spew/spew"
-	fuzz "github.com/google/gofuzz"
-	jsoniter "github.com/json-iterator/go"
-)
-
-func Test_Roundtrip(t *testing.T) {
-	fz := fuzz.New().MaxDepth(10).NilChance(0.3)
-	for i := 0; i < 1000; i++ {
-		var before T
-		fz.Fuzz(&before)
-
-		jbStd, err := json.Marshal(before)
-		if err != nil {
-			t.Fatalf("failed to marshal with stdlib: %v", err)
-		}
-		if len(strings.TrimSpace(string(jbStd))) == 0 {
-			t.Fatal("stdlib marshal produced empty result and no error")
-		}
-		jbIter, err := jsoniter.ConfigCompatibleWithStandardLibrary.Marshal(before)
-		if err != nil {
-			t.Fatalf("failed to marshal with jsoniter: %v", err)
-		}
-		if len(strings.TrimSpace(string(jbIter))) == 0 {
-			t.Fatal("jsoniter marshal produced empty result and no error")
-		}
-		if string(jbStd) != string(jbIter) {
-			t.Fatalf("marshal expected:\n    %s\ngot:\n    %s\nobj:\n    %s",
-				indent(jbStd, "    "), indent(jbIter, "    "), dump(before))
-		}
-
-		var afterStd T
-		err = json.Unmarshal(jbIter, &afterStd)
-		if err != nil {
-			t.Fatalf("failed to unmarshal with stdlib: %v\nvia:\n    %s",
-				err, indent(jbIter, "    "))
-		}
-		var afterIter T
-		err = jsoniter.ConfigCompatibleWithStandardLibrary.Unmarshal(jbIter, &afterIter)
-		if err != nil {
-			t.Fatalf("failed to unmarshal with jsoniter: %v\nvia:\n    %s",
-				err, indent(jbIter, "    "))
-		}
-		if fingerprint(afterStd) != fingerprint(afterIter) {
-			t.Fatalf("unmarshal expected:\n    %s\ngot:\n    %s\nvia:\n    %s",
-				dump(afterStd), dump(afterIter), indent(jbIter, "    "))
-		}
-	}
-}
-
-const indentStr = ">  "
-
-func fingerprint(obj interface{}) string {
-	c := spew.ConfigState{
-		SortKeys: true,
-		SpewKeys: true,
-	}
-	return c.Sprintf("%v", obj)
-}
-
-func dump(obj interface{}) string {
-	cfg := spew.ConfigState{
-		Indent: indentStr,
-	}
-	return cfg.Sdump(obj)
-}
-
-func indent(src []byte, prefix string) string {
-	var buf bytes.Buffer
-	err := json.Indent(&buf, src, prefix, indentStr)
-	if err != nil {
-		return fmt.Sprintf("!!! %v", err)
-	}
-	return buf.String()
-}
-
-func benchmarkMarshal(t *testing.B, name string, fn func(interface{}) ([]byte, error)) {
-	t.ReportAllocs()
-	t.ResetTimer()
-
-	var obj T
-	fz := fuzz.NewWithSeed(0).MaxDepth(10).NilChance(0.3)
-	fz.Fuzz(&obj)
-	for i := 0; i < t.N; i++ {
-		jb, err := fn(obj)
-		if err != nil {
-			t.Fatalf("%s failed to marshal:\n input: %s\n  error: %v", name, dump(obj), err)
-		}
-		_ = jb
-	}
-}
-
-func benchmarkUnmarshal(t *testing.B, name string, fn func(data []byte, v interface{}) error) {
-	t.ReportAllocs()
-	t.ResetTimer()
-
-	var before T
-	fz := fuzz.NewWithSeed(0).MaxDepth(10).NilChance(0.3)
-	fz.Fuzz(&before)
-	jb, err := json.Marshal(before)
-	if err != nil {
-		t.Fatalf("failed to marshal: %v", err)
-	}
-
-	for i := 0; i < t.N; i++ {
-		var after T
-		err = fn(jb, &after)
-		if err != nil {
-			t.Fatalf("%s failed to unmarshal:\n  input: %q\n  error: %v", name, string(jb), err)
-		}
-	}
-}
-
-func BenchmarkStandardMarshal(t *testing.B) {
-	benchmarkMarshal(t, "stdlib", json.Marshal)
-}
-
-func BenchmarkStandardUnmarshal(t *testing.B) {
-	benchmarkUnmarshal(t, "stdlib", json.Unmarshal)
-}
-
-func BenchmarkJSONIterMarshalFastest(t *testing.B) {
-	benchmarkMarshal(t, "jsoniter-fastest", jsoniter.ConfigFastest.Marshal)
-}
-
-func BenchmarkJSONIterUnmarshalFastest(t *testing.B) {
-	benchmarkUnmarshal(t, "jsoniter-fastest", jsoniter.ConfigFastest.Unmarshal)
-}
-
-func BenchmarkJSONIterMarshalDefault(t *testing.B) {
-	benchmarkMarshal(t, "jsoniter-default", jsoniter.Marshal)
-}
-
-func BenchmarkJSONIterUnmarshalDefault(t *testing.B) {
-	benchmarkUnmarshal(t, "jsoniter-default", jsoniter.Unmarshal)
-}
-
-func BenchmarkJSONIterMarshalCompatible(t *testing.B) {
-	benchmarkMarshal(t, "jsoniter-compat", jsoniter.ConfigCompatibleWithStandardLibrary.Marshal)
-}
-
-func BenchmarkJSONIterUnmarshalCompatible(t *testing.B) {
-	benchmarkUnmarshal(t, "jsoniter-compat", jsoniter.ConfigCompatibleWithStandardLibrary.Unmarshal)
-}

+ 0 - 204
output_tests/_not_done/structs/everything/types.go

@@ -1,204 +0,0 @@
-package test
-
-type ByteAlias byte
-
-type BoolAlias bool
-
-type Int32Alias int32
-
-type Float32Alias float32
-
-type StringAlias string
-
-type SliceStringAlias []string
-
-type SlicePtrStringAlias []*string
-
-type MapStringStringAlias map[string]string
-
-type Inner struct {
-	Byte            byte
-	BytePtr         *byte
-	ByteAlias       ByteAlias
-	ByteAliasPtr    *ByteAlias
-	Bool            bool
-	BoolPtr         *bool
-	BoolAlias       BoolAlias
-	BoolAliasPtr    *BoolAlias
-	Int8            int8
-	Int8Ptr         *int8
-	Int16           int16
-	Int16Ptr        *int16
-	Int32           int32
-	Int32Ptr        *int32
-	Int32Alias      Int32Alias
-	Int32AliasPtr   *Int32Alias
-	Uint8           uint8
-	Uint8Ptr        *uint8
-	Uint16          uint16
-	Uint16Ptr       *uint16
-	Uint32          uint32
-	Uint32Ptr       *uint32
-	Float32         float32
-	Float32Ptr      *float32
-	Float32Alias    Float32Alias
-	Float32AliasPtr *Float32Alias
-	Float64         float64
-	Float64Ptr      *float64
-	String          string
-	StringPtr       *string
-	StringAlias     StringAlias
-	StringAliasPtr  *StringAlias
-	Struct          struct {
-		Byte                byte
-		BytePtr             *byte
-		ByteAlias           ByteAlias
-		ByteAliasPtr        *ByteAlias
-		Bool                bool
-		BoolPtr             *bool
-		BoolAlias           BoolAlias
-		BoolAliasPtr        *BoolAlias
-		Int8                int8
-		Int8Ptr             *int8
-		Int16               int16
-		Int16Ptr            *int16
-		Int32               int32
-		Int32Ptr            *int32
-		Int32Alias          Int32Alias
-		Int32AliasPtr       *Int32Alias
-		Uint8               uint8
-		Uint8Ptr            *uint8
-		Uint16              uint16
-		Uint16Ptr           *uint16
-		Uint32              uint32
-		Uint32Ptr           *uint32
-		Float32             float32
-		Float32Ptr          *float32
-		Float32Alias        Float32Alias
-		Float32AliasPtr     *Float32Alias
-		Float64             float64
-		Float64Ptr          *float64
-		String              string
-		StringPtr           *string
-		StringAlias         StringAlias
-		StringAliasPtr      *StringAlias
-		Struct              struct{}
-		StructPtr           *Inner
-		SliceString         []string
-		SliceStringAlias    SliceStringAlias
-		SlicePtrString      []*string
-		SliceStringPtrAlias SlicePtrStringAlias
-		SliceStringPtr      *[]string
-		SliceByte           []byte
-	}
-	StructPtr *struct {
-		Byte                    byte
-		BytePtr                 *byte
-		ByteAlias               ByteAlias
-		ByteAliasPtr            *ByteAlias
-		Bool                    bool
-		BoolPtr                 *bool
-		BoolAlias               BoolAlias
-		BoolAliasPtr            *BoolAlias
-		Int8                    int8
-		Int8Ptr                 *int8
-		Int16                   int16
-		Int16Ptr                *int16
-		Int32                   int32
-		Int32Ptr                *int32
-		Int32Alias              Int32Alias
-		Int32AliasPtr           *Int32Alias
-		Uint8                   uint8
-		Uint8Ptr                *uint8
-		Uint16                  uint16
-		Uint16Ptr               *uint16
-		Uint32                  uint32
-		Uint32Ptr               *uint32
-		Float32                 float32
-		Float32Ptr              *float32
-		Float32Alias            Float32Alias
-		Float32AliasPtr         *Float32Alias
-		Float64                 float64
-		Float64Ptr              *float64
-		String                  string
-		StringPtr               *string
-		StringAlias             StringAlias
-		StringAliasPtr          *StringAlias
-		Struct                  struct{}
-		StructPtr               *Inner
-		SliceString             []string
-		SliceStringAlias        SliceStringAlias
-		SlicePtrString          []*string
-		SliceStringPtrAlias     SlicePtrStringAlias
-		SliceStringPtr          *[]string
-		SliceByte               []byte
-		MapStringString         map[string]string
-		MapStringStringPtr      *map[string]string
-		MapStringStringAlias    MapStringStringAlias
-		MapStringStringAliasPtr *MapStringStringAlias
-	}
-	SliceString             []string
-	SliceStringAlias        SliceStringAlias
-	SlicePtrString          []*string
-	SliceStringPtrAlias     SlicePtrStringAlias
-	SliceStringPtr          *[]string
-	SliceByte               []byte
-	MapStringString         map[string]string
-	MapStringStringPtr      *map[string]string
-	MapStringStringAlias    MapStringStringAlias
-	MapStringStringAliasPtr *MapStringStringAlias
-}
-
-type T struct {
-	Byte            byte
-	BytePtr         *byte
-	ByteAlias       ByteAlias
-	ByteAliasPtr    *ByteAlias
-	Bool            bool
-	BoolPtr         *bool
-	BoolAlias       BoolAlias
-	BoolAliasPtr    *BoolAlias
-	Int8            int8
-	Int8Ptr         *int8
-	Int16           int16
-	Int16Ptr        *int16
-	Int32           int32
-	Int32Ptr        *int32
-	Int32Alias      Int32Alias
-	Int32AliasPtr   *Int32Alias
-	Uint8           uint8
-	Uint8Ptr        *uint8
-	Uint16          uint16
-	Uint16Ptr       *uint16
-	Uint32          uint32
-	Uint32Ptr       *uint32
-	Float32         float32
-	Float32Ptr      *float32
-	Float32Alias    Float32Alias
-	Float32AliasPtr *Float32Alias
-	Float64         float64
-	Float64Ptr      *float64
-	String          string
-	StringPtr       *string
-	StringAlias     StringAlias
-	StringAliasPtr  *StringAlias
-	StructPtr       *Inner
-	Struct          struct {
-		Struct struct {
-			Struct struct {
-				Struct struct {
-					String string
-				}
-			}
-		}
-	}
-	SliceString             []string
-	SliceStringAlias        SliceStringAlias
-	SlicePtrString          []*string
-	SliceStringPtrAlias     SlicePtrStringAlias
-	SliceStringPtr          *[]string
-	MapStringString         map[string]string
-	MapStringStringPtr      *map[string]string
-	MapStringStringAlias    MapStringStringAlias
-	MapStringStringAliasPtr *MapStringStringAlias
-}