2021-03-11 13:29:35 +03:00
package json_test
import (
"bytes"
2021-11-27 20:14:57 +03:00
"fmt"
2021-03-11 13:29:35 +03:00
"testing"
"github.com/goccy/go-json"
)
type coverMarshalText struct {
A int
}
func ( c coverMarshalText ) MarshalText ( ) ( [ ] byte , error ) {
return [ ] byte ( ` "hello" ` ) , nil
}
type coverPtrMarshalText struct {
B int
}
func ( c * coverPtrMarshalText ) MarshalText ( ) ( [ ] byte , error ) {
return [ ] byte ( ` "hello" ` ) , nil
}
func TestCoverMarshalText ( t * testing . T ) {
type structMarshalText struct {
A coverMarshalText ` json:"a" `
}
type structMarshalTextOmitEmpty struct {
A coverMarshalText ` json:"a,omitempty" `
}
type structMarshalTextString struct {
A coverMarshalText ` json:"a,string" `
}
type structPtrMarshalText struct {
A coverPtrMarshalText ` json:"a" `
}
type structPtrMarshalTextOmitEmpty struct {
A coverPtrMarshalText ` json:"a,omitempty" `
}
type structPtrMarshalTextString struct {
A coverPtrMarshalText ` json:"a,string" `
}
type structMarshalTextPtr struct {
A * coverMarshalText ` json:"a" `
}
type structMarshalTextPtrOmitEmpty struct {
A * coverMarshalText ` json:"a,omitempty" `
}
type structMarshalTextPtrString struct {
A * coverMarshalText ` json:"a,string" `
}
type structPtrMarshalTextPtr struct {
A * coverPtrMarshalText ` json:"a" `
}
type structPtrMarshalTextPtrOmitEmpty struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
}
type structPtrMarshalTextPtrString struct {
A * coverPtrMarshalText ` json:"a,string" `
}
tests := [ ] struct {
name string
data interface { }
} {
// HeadMarshalTextZero
{
name : "HeadMarshalTextZero" ,
data : struct {
A coverMarshalText ` json:"a" `
} { } ,
} ,
{
name : "HeadMarshalTextZeroOmitEmpty" ,
data : struct {
A coverMarshalText ` json:"a,omitempty" `
} { } ,
} ,
{
name : "HeadMarshalTextZeroString" ,
data : struct {
A coverMarshalText ` json:"a,string" `
} { } ,
} ,
{
name : "HeadPtrMarshalTextZero" ,
data : struct {
A coverPtrMarshalText ` json:"a" `
} { } ,
} ,
{
name : "HeadPtrMarshalTextZeroOmitEmpty" ,
data : struct {
A coverPtrMarshalText ` json:"a,omitempty" `
} { } ,
} ,
{
name : "HeadPtrMarshalTextZeroString" ,
data : struct {
A coverPtrMarshalText ` json:"a,string" `
} { } ,
} ,
// HeadMarshalText
{
name : "HeadMarshalText" ,
data : struct {
A coverMarshalText ` json:"a" `
} { A : coverMarshalText { } } ,
} ,
{
name : "HeadMarshalTextOmitEmpty" ,
data : struct {
A coverMarshalText ` json:"a,omitempty" `
} { A : coverMarshalText { } } ,
} ,
{
name : "HeadMarshalTextString" ,
data : struct {
A coverMarshalText ` json:"a,string" `
} { A : coverMarshalText { } } ,
} ,
{
name : "HeadPtrMarshalText" ,
data : struct {
A coverPtrMarshalText ` json:"a" `
} { A : coverPtrMarshalText { } } ,
} ,
{
name : "HeadPtrMarshalTextOmitEmpty" ,
data : struct {
A coverPtrMarshalText ` json:"a,omitempty" `
} { A : coverPtrMarshalText { } } ,
} ,
{
name : "HeadPtrMarshalTextString" ,
data : struct {
A coverPtrMarshalText ` json:"a,string" `
} { A : coverPtrMarshalText { } } ,
} ,
// HeadMarshalTextPtr
{
name : "HeadMarshalTextPtr" ,
data : struct {
A * coverMarshalText ` json:"a" `
} { A : & coverMarshalText { } } ,
} ,
{
name : "HeadMarshalTextPtrOmitEmpty" ,
data : struct {
A * coverMarshalText ` json:"a,omitempty" `
} { A : & coverMarshalText { } } ,
} ,
{
name : "HeadMarshalTextPtrString" ,
data : struct {
A * coverMarshalText ` json:"a,string" `
} { A : & coverMarshalText { } } ,
} ,
{
name : "HeadPtrMarshalTextPtr" ,
data : struct {
A * coverPtrMarshalText ` json:"a" `
} { A : & coverPtrMarshalText { } } ,
} ,
{
name : "HeadPtrMarshalTextPtrOmitEmpty" ,
data : struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
} { A : & coverPtrMarshalText { } } ,
} ,
{
name : "HeadPtrMarshalTextPtrString" ,
data : struct {
A * coverPtrMarshalText ` json:"a,string" `
} { A : & coverPtrMarshalText { } } ,
} ,
// HeadMarshalTextPtrNil
{
name : "HeadMarshalTextPtrNil" ,
data : struct {
A * coverMarshalText ` json:"a" `
} { A : nil } ,
} ,
{
name : "HeadMarshalTextPtrNilOmitEmpty" ,
data : struct {
A * coverMarshalText ` json:"a,omitempty" `
} { A : nil } ,
} ,
{
name : "HeadMarshalTextPtrNilString" ,
data : struct {
A * coverMarshalText ` json:"a,string" `
} { A : nil } ,
} ,
{
name : "HeadPtrMarshalTextPtrNil" ,
data : struct {
A * coverPtrMarshalText ` json:"a" `
} { A : nil } ,
} ,
{
name : "HeadPtrMarshalTextPtrNilOmitEmpty" ,
data : struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
} { A : nil } ,
} ,
{
name : "HeadPtrMarshalTextPtrNilString" ,
data : struct {
A * coverPtrMarshalText ` json:"a,string" `
} { A : nil } ,
} ,
// PtrHeadMarshalTextZero
{
name : "PtrHeadMarshalTextZero" ,
data : & struct {
A coverMarshalText ` json:"a" `
} { } ,
} ,
{
name : "PtrHeadMarshalTextZeroOmitEmpty" ,
data : & struct {
A coverMarshalText ` json:"a,omitempty" `
} { } ,
} ,
{
name : "PtrHeadMarshalTextZeroString" ,
data : & struct {
A coverMarshalText ` json:"a,string" `
} { } ,
} ,
{
name : "PtrHeadPtrMarshalTextZero" ,
data : & struct {
A coverPtrMarshalText ` json:"a" `
} { } ,
} ,
{
name : "PtrHeadPtrMarshalTextZeroOmitEmpty" ,
data : & struct {
A coverPtrMarshalText ` json:"a,omitempty" `
} { } ,
} ,
{
name : "PtrHeadPtrMarshalTextZeroString" ,
data : & struct {
A coverPtrMarshalText ` json:"a,string" `
} { } ,
} ,
// PtrHeadMarshalText
{
name : "PtrHeadMarshalText" ,
data : & struct {
A coverMarshalText ` json:"a" `
} { A : coverMarshalText { } } ,
} ,
{
name : "PtrHeadMarshalTextOmitEmpty" ,
data : & struct {
A coverMarshalText ` json:"a,omitempty" `
} { A : coverMarshalText { } } ,
} ,
{
name : "PtrHeadMarshalTextString" ,
data : & struct {
A coverMarshalText ` json:"a,string" `
} { A : coverMarshalText { } } ,
} ,
{
name : "PtrHeadPtrMarshalText" ,
data : & struct {
A coverPtrMarshalText ` json:"a" `
} { A : coverPtrMarshalText { } } ,
} ,
{
name : "PtrHeadPtrMarshalTextOmitEmpty" ,
data : & struct {
A coverPtrMarshalText ` json:"a,omitempty" `
} { A : coverPtrMarshalText { } } ,
} ,
{
name : "PtrHeadPtrMarshalTextString" ,
data : & struct {
A coverPtrMarshalText ` json:"a,string" `
} { A : coverPtrMarshalText { } } ,
} ,
// PtrHeadMarshalTextPtr
{
name : "PtrHeadMarshalTextPtr" ,
data : & struct {
A * coverMarshalText ` json:"a" `
} { A : & coverMarshalText { } } ,
} ,
{
name : "PtrHeadMarshalTextPtrOmitEmpty" ,
data : & struct {
A * coverMarshalText ` json:"a,omitempty" `
} { A : & coverMarshalText { } } ,
} ,
{
name : "PtrHeadMarshalTextPtrString" ,
data : & struct {
A * coverMarshalText ` json:"a,string" `
} { A : & coverMarshalText { } } ,
} ,
{
name : "PtrHeadPtrMarshalTextPtr" ,
data : & struct {
A * coverPtrMarshalText ` json:"a" `
} { A : & coverPtrMarshalText { } } ,
} ,
{
name : "PtrHeadPtrMarshalTextPtrOmitEmpty" ,
data : & struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
} { A : & coverPtrMarshalText { } } ,
} ,
{
name : "PtrHeadPtrMarshalTextPtrString" ,
data : & struct {
A * coverPtrMarshalText ` json:"a,string" `
} { A : & coverPtrMarshalText { } } ,
} ,
// PtrHeadMarshalTextPtrNil
{
name : "PtrHeadMarshalTextPtrNil" ,
data : & struct {
A * coverMarshalText ` json:"a" `
} { A : nil } ,
} ,
{
name : "PtrHeadMarshalTextPtrNilOmitEmpty" ,
data : & struct {
A * coverMarshalText ` json:"a,omitempty" `
} { A : nil } ,
} ,
{
name : "PtrHeadMarshalTextPtrNilString" ,
data : & struct {
A * coverMarshalText ` json:"a,string" `
} { A : nil } ,
} ,
{
name : "PtrHeadPtrMarshalTextPtrNil" ,
data : & struct {
A * coverPtrMarshalText ` json:"a" `
} { A : nil } ,
} ,
{
name : "PtrHeadPtrMarshalTextPtrNilOmitEmpty" ,
data : & struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
} { A : nil } ,
} ,
{
name : "PtrHeadPtrMarshalTextPtrNilString" ,
data : & struct {
A * coverPtrMarshalText ` json:"a,string" `
} { A : nil } ,
} ,
// PtrHeadMarshalTextNil
{
name : "PtrHeadMarshalTextNil" ,
data : ( * struct {
A * coverMarshalText ` json:"a" `
} ) ( nil ) ,
} ,
{
name : "PtrHeadMarshalTextNilOmitEmpty" ,
data : ( * struct {
A * coverMarshalText ` json:"a,omitempty" `
} ) ( nil ) ,
} ,
{
name : "PtrHeadMarshalTextNilString" ,
data : ( * struct {
A * coverMarshalText ` json:"a,string" `
} ) ( nil ) ,
} ,
{
name : "PtrHeadPtrMarshalTextNil" ,
data : ( * struct {
A * coverPtrMarshalText ` json:"a" `
} ) ( nil ) ,
} ,
{
name : "PtrHeadPtrMarshalTextNilOmitEmpty" ,
data : ( * struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
} ) ( nil ) ,
} ,
{
name : "PtrHeadPtrMarshalTextNilString" ,
data : ( * struct {
A * coverPtrMarshalText ` json:"a,string" `
} ) ( nil ) ,
} ,
// HeadMarshalTextZeroMultiFields
{
name : "HeadMarshalTextZeroMultiFields" ,
data : struct {
A coverMarshalText ` json:"a" `
B coverMarshalText ` json:"b" `
C coverMarshalText ` json:"c" `
} { } ,
} ,
{
name : "HeadMarshalTextZeroMultiFieldsOmitEmpty" ,
data : struct {
A coverMarshalText ` json:"a,omitempty" `
B coverMarshalText ` json:"b,omitempty" `
C coverMarshalText ` json:"c,omitempty" `
} { } ,
} ,
{
name : "HeadMarshalTextZeroMultiFields" ,
data : struct {
A coverMarshalText ` json:"a,string" `
B coverMarshalText ` json:"b,string" `
C coverMarshalText ` json:"c,string" `
} { } ,
} ,
{
name : "HeadPtrMarshalTextZeroMultiFields" ,
data : struct {
A coverPtrMarshalText ` json:"a" `
B coverPtrMarshalText ` json:"b" `
C coverPtrMarshalText ` json:"c" `
} { } ,
} ,
{
name : "HeadPtrMarshalTextZeroMultiFieldsOmitEmpty" ,
data : struct {
A coverPtrMarshalText ` json:"a,omitempty" `
B coverPtrMarshalText ` json:"b,omitempty" `
C coverPtrMarshalText ` json:"c,omitempty" `
} { } ,
} ,
{
name : "HeadPtrMarshalTextZeroMultiFields" ,
data : struct {
A coverPtrMarshalText ` json:"a,string" `
B coverPtrMarshalText ` json:"b,string" `
C coverPtrMarshalText ` json:"c,string" `
} { } ,
} ,
// HeadMarshalTextMultiFields
{
name : "HeadMarshalTextMultiFields" ,
data : struct {
A coverMarshalText ` json:"a" `
B coverMarshalText ` json:"b" `
C coverMarshalText ` json:"c" `
} { A : coverMarshalText { } , B : coverMarshalText { } , C : coverMarshalText { } } ,
} ,
{
name : "HeadMarshalTextMultiFieldsOmitEmpty" ,
data : struct {
A coverMarshalText ` json:"a,omitempty" `
B coverMarshalText ` json:"b,omitempty" `
C coverMarshalText ` json:"c,omitempty" `
} { A : coverMarshalText { } , B : coverMarshalText { } , C : coverMarshalText { } } ,
} ,
{
name : "HeadMarshalTextMultiFieldsString" ,
data : struct {
A coverMarshalText ` json:"a,string" `
B coverMarshalText ` json:"b,string" `
C coverMarshalText ` json:"c,string" `
} { A : coverMarshalText { } , B : coverMarshalText { } , C : coverMarshalText { } } ,
} ,
{
name : "HeadPtrMarshalTextMultiFields" ,
data : struct {
A coverPtrMarshalText ` json:"a" `
B coverPtrMarshalText ` json:"b" `
C coverPtrMarshalText ` json:"c" `
} { A : coverPtrMarshalText { } , B : coverPtrMarshalText { } , C : coverPtrMarshalText { } } ,
} ,
{
name : "HeadPtrMarshalTextMultiFieldsOmitEmpty" ,
data : struct {
A coverPtrMarshalText ` json:"a,omitempty" `
B coverPtrMarshalText ` json:"b,omitempty" `
C coverPtrMarshalText ` json:"c,omitempty" `
} { A : coverPtrMarshalText { } , B : coverPtrMarshalText { } , C : coverPtrMarshalText { } } ,
} ,
{
name : "HeadPtrMarshalTextMultiFieldsString" ,
data : struct {
A coverPtrMarshalText ` json:"a,string" `
B coverPtrMarshalText ` json:"b,string" `
C coverPtrMarshalText ` json:"c,string" `
} { A : coverPtrMarshalText { } , B : coverPtrMarshalText { } , C : coverPtrMarshalText { } } ,
} ,
// HeadMarshalTextPtrMultiFields
{
name : "HeadMarshalTextPtrMultiFields" ,
data : struct {
A * coverMarshalText ` json:"a" `
B * coverMarshalText ` json:"b" `
C * coverMarshalText ` json:"c" `
} { A : & coverMarshalText { } , B : & coverMarshalText { } , C : & coverMarshalText { } } ,
} ,
{
name : "HeadMarshalTextPtrMultiFieldsOmitEmpty" ,
data : struct {
A * coverMarshalText ` json:"a,omitempty" `
B * coverMarshalText ` json:"b,omitempty" `
C * coverMarshalText ` json:"c,omitempty" `
} { A : & coverMarshalText { } , B : & coverMarshalText { } , C : & coverMarshalText { } } ,
} ,
{
name : "HeadMarshalTextPtrMultiFieldsString" ,
data : struct {
A * coverMarshalText ` json:"a,string" `
B * coverMarshalText ` json:"b,string" `
C * coverMarshalText ` json:"c,string" `
} { A : & coverMarshalText { } , B : & coverMarshalText { } , C : & coverMarshalText { } } ,
} ,
{
name : "HeadPtrMarshalTextPtrMultiFields" ,
data : struct {
A * coverPtrMarshalText ` json:"a" `
B * coverPtrMarshalText ` json:"b" `
C * coverPtrMarshalText ` json:"c" `
} { A : & coverPtrMarshalText { } , B : & coverPtrMarshalText { } , C : & coverPtrMarshalText { } } ,
} ,
{
name : "HeadPtrMarshalTextPtrMultiFieldsOmitEmpty" ,
data : struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
B * coverPtrMarshalText ` json:"b,omitempty" `
C * coverPtrMarshalText ` json:"c,omitempty" `
} { A : & coverPtrMarshalText { } , B : & coverPtrMarshalText { } , C : & coverPtrMarshalText { } } ,
} ,
{
name : "HeadPtrMarshalTextPtrMultiFieldsString" ,
data : struct {
A * coverPtrMarshalText ` json:"a,string" `
B * coverPtrMarshalText ` json:"b,string" `
C * coverPtrMarshalText ` json:"c,string" `
} { A : & coverPtrMarshalText { } , B : & coverPtrMarshalText { } , C : & coverPtrMarshalText { } } ,
} ,
// HeadMarshalTextPtrNilMultiFields
{
name : "HeadMarshalTextPtrNilMultiFields" ,
data : struct {
A * coverMarshalText ` json:"a" `
B * coverMarshalText ` json:"b" `
C * coverMarshalText ` json:"c" `
} { A : nil , B : nil , C : nil } ,
} ,
{
name : "HeadMarshalTextPtrNilMultiFieldsOmitEmpty" ,
data : struct {
A * coverMarshalText ` json:"a,omitempty" `
B * coverMarshalText ` json:"b,omitempty" `
C * coverMarshalText ` json:"c,omitempty" `
} { A : nil , B : nil , C : nil } ,
} ,
{
name : "HeadMarshalTextPtrNilMultiFieldsString" ,
data : struct {
A * coverMarshalText ` json:"a,string" `
B * coverMarshalText ` json:"b,string" `
C * coverMarshalText ` json:"c,string" `
} { A : nil , B : nil , C : nil } ,
} ,
{
name : "HeadPtrMarshalTextPtrNilMultiFields" ,
data : struct {
A * coverPtrMarshalText ` json:"a" `
B * coverPtrMarshalText ` json:"b" `
C * coverPtrMarshalText ` json:"c" `
} { A : nil , B : nil , C : nil } ,
} ,
{
name : "HeadPtrMarshalTextPtrNilMultiFieldsOmitEmpty" ,
data : struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
B * coverPtrMarshalText ` json:"b,omitempty" `
C * coverPtrMarshalText ` json:"c,omitempty" `
} { A : nil , B : nil , C : nil } ,
} ,
{
name : "HeadPtrMarshalTextPtrNilMultiFieldsString" ,
data : struct {
A * coverPtrMarshalText ` json:"a,string" `
B * coverPtrMarshalText ` json:"b,string" `
C * coverPtrMarshalText ` json:"c,string" `
} { A : nil , B : nil , C : nil } ,
} ,
// PtrHeadMarshalTextZeroMultiFields
{
name : "PtrHeadMarshalTextZeroMultiFields" ,
data : & struct {
A coverMarshalText ` json:"a" `
B coverMarshalText ` json:"b" `
} { } ,
} ,
{
name : "PtrHeadMarshalTextZeroMultiFieldsOmitEmpty" ,
data : & struct {
A coverMarshalText ` json:"a,omitempty" `
B coverMarshalText ` json:"b,omitempty" `
} { } ,
} ,
{
name : "PtrHeadMarshalTextZeroMultiFieldsString" ,
data : & struct {
A coverMarshalText ` json:"a,string" `
B coverMarshalText ` json:"b,string" `
} { } ,
} ,
{
name : "PtrHeadPtrMarshalTextZeroMultiFields" ,
data : & struct {
A coverPtrMarshalText ` json:"a" `
B coverPtrMarshalText ` json:"b" `
} { } ,
} ,
{
name : "PtrHeadPtrMarshalTextZeroMultiFieldsOmitEmpty" ,
data : & struct {
A coverPtrMarshalText ` json:"a,omitempty" `
B coverPtrMarshalText ` json:"b,omitempty" `
} { } ,
} ,
{
name : "PtrHeadPtrMarshalTextZeroMultiFieldsString" ,
data : & struct {
A coverPtrMarshalText ` json:"a,string" `
B coverPtrMarshalText ` json:"b,string" `
} { } ,
} ,
// PtrHeadMarshalTextMultiFields
{
name : "PtrHeadMarshalTextMultiFields" ,
data : & struct {
A coverMarshalText ` json:"a" `
B coverMarshalText ` json:"b" `
} { A : coverMarshalText { } , B : coverMarshalText { } } ,
} ,
{
name : "PtrHeadMarshalTextMultiFieldsOmitEmpty" ,
data : & struct {
A coverMarshalText ` json:"a,omitempty" `
B coverMarshalText ` json:"b,omitempty" `
} { A : coverMarshalText { } , B : coverMarshalText { } } ,
} ,
{
name : "PtrHeadMarshalTextMultiFieldsString" ,
data : & struct {
A coverMarshalText ` json:"a,string" `
B coverMarshalText ` json:"b,string" `
} { A : coverMarshalText { } , B : coverMarshalText { } } ,
} ,
{
name : "PtrHeadPtrMarshalTextMultiFields" ,
data : & struct {
A coverPtrMarshalText ` json:"a" `
B coverPtrMarshalText ` json:"b" `
} { A : coverPtrMarshalText { } , B : coverPtrMarshalText { } } ,
} ,
{
name : "PtrHeadPtrMarshalTextMultiFieldsOmitEmpty" ,
data : & struct {
A coverPtrMarshalText ` json:"a,omitempty" `
B coverPtrMarshalText ` json:"b,omitempty" `
} { A : coverPtrMarshalText { } , B : coverPtrMarshalText { } } ,
} ,
{
name : "PtrHeadPtrMarshalTextMultiFieldsString" ,
data : & struct {
A coverPtrMarshalText ` json:"a,string" `
B coverPtrMarshalText ` json:"b,string" `
} { A : coverPtrMarshalText { } , B : coverPtrMarshalText { } } ,
} ,
// PtrHeadMarshalTextPtrMultiFields
{
name : "PtrHeadMarshalTextPtrMultiFields" ,
data : & struct {
A * coverMarshalText ` json:"a" `
B * coverMarshalText ` json:"b" `
} { A : & coverMarshalText { } , B : & coverMarshalText { } } ,
} ,
{
name : "PtrHeadMarshalTextPtrMultiFieldsOmitEmpty" ,
data : & struct {
A * coverMarshalText ` json:"a,omitempty" `
B * coverMarshalText ` json:"b,omitempty" `
} { A : & coverMarshalText { } , B : & coverMarshalText { } } ,
} ,
{
name : "PtrHeadMarshalTextPtrMultiFieldsString" ,
data : & struct {
A * coverMarshalText ` json:"a,string" `
B * coverMarshalText ` json:"b,string" `
} { A : & coverMarshalText { } , B : & coverMarshalText { } } ,
} ,
{
name : "PtrHeadPtrMarshalTextPtrMultiFields" ,
data : & struct {
A * coverPtrMarshalText ` json:"a" `
B * coverPtrMarshalText ` json:"b" `
} { A : & coverPtrMarshalText { } , B : & coverPtrMarshalText { } } ,
} ,
{
name : "PtrHeadPtrMarshalTextPtrMultiFieldsOmitEmpty" ,
data : & struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
B * coverPtrMarshalText ` json:"b,omitempty" `
} { A : & coverPtrMarshalText { } , B : & coverPtrMarshalText { } } ,
} ,
{
name : "PtrHeadPtrMarshalTextPtrMultiFieldsString" ,
data : & struct {
A * coverPtrMarshalText ` json:"a,string" `
B * coverPtrMarshalText ` json:"b,string" `
} { A : & coverPtrMarshalText { } , B : & coverPtrMarshalText { } } ,
} ,
// PtrHeadMarshalTextPtrNilMultiFields
{
name : "PtrHeadMarshalTextPtrNilMultiFields" ,
data : & struct {
A * coverMarshalText ` json:"a" `
B * coverMarshalText ` json:"b" `
} { A : nil , B : nil } ,
} ,
{
name : "PtrHeadMarshalTextPtrNilMultiFieldsOmitEmpty" ,
data : & struct {
A * coverMarshalText ` json:"a,omitempty" `
B * coverMarshalText ` json:"b,omitempty" `
} { A : nil , B : nil } ,
} ,
{
name : "PtrHeadMarshalTextPtrNilMultiFieldsString" ,
data : & struct {
A * coverMarshalText ` json:"a,string" `
B * coverMarshalText ` json:"b,string" `
} { A : nil , B : nil } ,
} ,
{
name : "PtrHeadPtrMarshalTextPtrNilMultiFields" ,
data : & struct {
A * coverPtrMarshalText ` json:"a" `
B * coverPtrMarshalText ` json:"b" `
} { A : nil , B : nil } ,
} ,
{
name : "PtrHeadPtrMarshalTextPtrNilMultiFieldsOmitEmpty" ,
data : & struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
B * coverPtrMarshalText ` json:"b,omitempty" `
} { A : nil , B : nil } ,
} ,
{
name : "PtrHeadPtrMarshalTextPtrNilMultiFieldsString" ,
data : & struct {
A * coverPtrMarshalText ` json:"a,string" `
B * coverPtrMarshalText ` json:"b,string" `
} { A : nil , B : nil } ,
} ,
// PtrHeadMarshalTextNilMultiFields
{
name : "PtrHeadMarshalTextNilMultiFields" ,
data : ( * struct {
A coverMarshalText ` json:"a" `
B coverMarshalText ` json:"b" `
} ) ( nil ) ,
} ,
{
name : "PtrHeadMarshalTextNilMultiFieldsOmitEmpty" ,
data : ( * struct {
A coverMarshalText ` json:"a,omitempty" `
B coverMarshalText ` json:"b,omitempty" `
} ) ( nil ) ,
} ,
{
name : "PtrHeadMarshalTextNilMultiFieldsString" ,
data : ( * struct {
A coverMarshalText ` json:"a,string" `
B coverMarshalText ` json:"b,string" `
} ) ( nil ) ,
} ,
{
name : "PtrHeadPtrMarshalTextNilMultiFields" ,
data : ( * struct {
A coverPtrMarshalText ` json:"a" `
B coverPtrMarshalText ` json:"b" `
} ) ( nil ) ,
} ,
{
name : "PtrHeadPtrMarshalTextNilMultiFieldsOmitEmpty" ,
data : ( * struct {
A coverPtrMarshalText ` json:"a,omitempty" `
B coverPtrMarshalText ` json:"b,omitempty" `
} ) ( nil ) ,
} ,
{
name : "PtrHeadPtrMarshalTextNilMultiFieldsString" ,
data : ( * struct {
A coverPtrMarshalText ` json:"a,string" `
B coverPtrMarshalText ` json:"b,string" `
} ) ( nil ) ,
} ,
// PtrHeadMarshalTextNilMultiFields
{
name : "PtrHeadMarshalTextNilMultiFields" ,
data : ( * struct {
A * coverMarshalText ` json:"a" `
B * coverMarshalText ` json:"b" `
} ) ( nil ) ,
} ,
{
name : "PtrHeadMarshalTextNilMultiFieldsOmitEmpty" ,
data : ( * struct {
A * coverMarshalText ` json:"a,omitempty" `
B * coverMarshalText ` json:"b,omitempty" `
} ) ( nil ) ,
} ,
{
name : "PtrHeadMarshalTextNilMultiFieldsString" ,
data : ( * struct {
A * coverMarshalText ` json:"a,string" `
B * coverMarshalText ` json:"b,string" `
} ) ( nil ) ,
} ,
{
name : "PtrHeadPtrMarshalTextNilMultiFields" ,
data : ( * struct {
A * coverPtrMarshalText ` json:"a" `
B * coverPtrMarshalText ` json:"b" `
} ) ( nil ) ,
} ,
{
name : "PtrHeadPtrMarshalTextNilMultiFieldsOmitEmpty" ,
data : ( * struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
B * coverPtrMarshalText ` json:"b,omitempty" `
} ) ( nil ) ,
} ,
{
name : "PtrHeadPtrMarshalTextNilMultiFieldsString" ,
data : ( * struct {
A * coverPtrMarshalText ` json:"a,string" `
B * coverPtrMarshalText ` json:"b,string" `
} ) ( nil ) ,
} ,
// HeadMarshalTextZeroNotRoot
{
name : "HeadMarshalTextZeroNotRoot" ,
data : struct {
A struct {
A coverMarshalText ` json:"a" `
}
} { } ,
} ,
{
name : "HeadMarshalTextZeroNotRootOmitEmpty" ,
data : struct {
A struct {
A coverMarshalText ` json:"a,omitempty" `
}
} { } ,
} ,
{
name : "HeadMarshalTextZeroNotRootString" ,
data : struct {
A struct {
A coverMarshalText ` json:"a,string" `
}
} { } ,
} ,
{
name : "HeadPtrMarshalTextZeroNotRoot" ,
data : struct {
A struct {
A coverPtrMarshalText ` json:"a" `
}
} { } ,
} ,
{
name : "HeadPtrMarshalTextZeroNotRootOmitEmpty" ,
data : struct {
A struct {
A coverPtrMarshalText ` json:"a,omitempty" `
}
} { } ,
} ,
{
name : "HeadPtrMarshalTextZeroNotRootString" ,
data : struct {
A struct {
A coverPtrMarshalText ` json:"a,string" `
}
} { } ,
} ,
// HeadMarshalTextNotRoot
{
name : "HeadMarshalTextNotRoot" ,
data : struct {
A struct {
A coverMarshalText ` json:"a" `
}
} { A : struct {
A coverMarshalText ` json:"a" `
} { A : coverMarshalText { } } } ,
} ,
{
name : "HeadMarshalTextNotRootOmitEmpty" ,
data : struct {
A struct {
A coverMarshalText ` json:"a,omitempty" `
}
} { A : struct {
A coverMarshalText ` json:"a,omitempty" `
} { A : coverMarshalText { } } } ,
} ,
{
name : "HeadMarshalTextNotRootString" ,
data : struct {
A struct {
A coverMarshalText ` json:"a,string" `
}
} { A : struct {
A coverMarshalText ` json:"a,string" `
} { A : coverMarshalText { } } } ,
} ,
{
name : "HeadMarshalTextNotRoot" ,
data : struct {
A struct {
A coverPtrMarshalText ` json:"a" `
}
} { A : struct {
A coverPtrMarshalText ` json:"a" `
} { A : coverPtrMarshalText { } } } ,
} ,
{
name : "HeadMarshalTextNotRootOmitEmpty" ,
data : struct {
A struct {
A coverPtrMarshalText ` json:"a,omitempty" `
}
} { A : struct {
A coverPtrMarshalText ` json:"a,omitempty" `
} { A : coverPtrMarshalText { } } } ,
} ,
{
name : "HeadMarshalTextNotRootString" ,
data : struct {
A struct {
A coverPtrMarshalText ` json:"a,string" `
}
} { A : struct {
A coverPtrMarshalText ` json:"a,string" `
} { A : coverPtrMarshalText { } } } ,
} ,
// HeadMarshalTextPtrNotRoot
{
name : "HeadMarshalTextPtrNotRoot" ,
data : struct {
A struct {
A * coverMarshalText ` json:"a" `
}
} { A : struct {
A * coverMarshalText ` json:"a" `
} { & coverMarshalText { } } } ,
} ,
{
name : "HeadMarshalTextPtrNotRootOmitEmpty" ,
data : struct {
A struct {
A * coverMarshalText ` json:"a,omitempty" `
}
} { A : struct {
A * coverMarshalText ` json:"a,omitempty" `
} { & coverMarshalText { } } } ,
} ,
{
name : "HeadMarshalTextPtrNotRootString" ,
data : struct {
A struct {
A * coverMarshalText ` json:"a,string" `
}
} { A : struct {
A * coverMarshalText ` json:"a,string" `
} { & coverMarshalText { } } } ,
} ,
{
name : "HeadPtrMarshalTextPtrNotRoot" ,
data : struct {
A struct {
A * coverPtrMarshalText ` json:"a" `
}
} { A : struct {
A * coverPtrMarshalText ` json:"a" `
} { & coverPtrMarshalText { } } } ,
} ,
{
name : "HeadPtrMarshalTextPtrNotRootOmitEmpty" ,
data : struct {
A struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
}
} { A : struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
} { & coverPtrMarshalText { } } } ,
} ,
{
name : "HeadPtrMarshalTextPtrNotRootString" ,
data : struct {
A struct {
A * coverPtrMarshalText ` json:"a,string" `
}
} { A : struct {
A * coverPtrMarshalText ` json:"a,string" `
} { & coverPtrMarshalText { } } } ,
} ,
// HeadMarshalTextPtrNilNotRoot
{
name : "HeadMarshalTextPtrNilNotRoot" ,
data : struct {
A struct {
A * coverMarshalText ` json:"a" `
}
} { } ,
} ,
{
name : "HeadMarshalTextPtrNilNotRootOmitEmpty" ,
data : struct {
A struct {
A * coverMarshalText ` json:"a,omitempty" `
}
} { } ,
} ,
{
name : "HeadMarshalTextPtrNilNotRootString" ,
data : struct {
A struct {
A * coverMarshalText ` json:"a,string" `
}
} { } ,
} ,
{
name : "HeadPtrMarshalTextPtrNilNotRoot" ,
data : struct {
A struct {
A * coverPtrMarshalText ` json:"a" `
}
} { } ,
} ,
{
name : "HeadPtrMarshalTextPtrNilNotRootOmitEmpty" ,
data : struct {
A struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
}
} { } ,
} ,
{
name : "HeadPtrMarshalTextPtrNilNotRootString" ,
data : struct {
A struct {
A * coverPtrMarshalText ` json:"a,string" `
}
} { } ,
} ,
// PtrHeadMarshalTextZeroNotRoot
{
name : "PtrHeadMarshalTextZeroNotRoot" ,
data : struct {
A * struct {
A coverMarshalText ` json:"a" `
}
} { A : new ( struct {
A coverMarshalText ` json:"a" `
} ) } ,
} ,
{
name : "PtrHeadMarshalTextZeroNotRootOmitEmpty" ,
data : struct {
A * struct {
A coverMarshalText ` json:"a,omitempty" `
}
} { A : new ( struct {
A coverMarshalText ` json:"a,omitempty" `
} ) } ,
} ,
{
name : "PtrHeadMarshalTextZeroNotRootString" ,
data : struct {
A * struct {
A coverMarshalText ` json:"a,string" `
}
} { A : new ( struct {
A coverMarshalText ` json:"a,string" `
} ) } ,
} ,
{
name : "PtrHeadPtrMarshalTextZeroNotRoot" ,
data : struct {
A * struct {
A coverPtrMarshalText ` json:"a" `
}
} { A : new ( struct {
A coverPtrMarshalText ` json:"a" `
} ) } ,
} ,
{
name : "PtrHeadPtrMarshalTextZeroNotRootOmitEmpty" ,
data : struct {
A * struct {
A coverPtrMarshalText ` json:"a,omitempty" `
}
} { A : new ( struct {
A coverPtrMarshalText ` json:"a,omitempty" `
} ) } ,
} ,
{
name : "PtrHeadPtrMarshalTextZeroNotRootString" ,
data : struct {
A * struct {
A coverPtrMarshalText ` json:"a,string" `
}
} { A : new ( struct {
A coverPtrMarshalText ` json:"a,string" `
} ) } ,
} ,
// PtrHeadMarshalTextNotRoot
{
name : "PtrHeadMarshalTextNotRoot" ,
data : struct {
A * struct {
A coverMarshalText ` json:"a" `
}
} { A : & ( struct {
A coverMarshalText ` json:"a" `
} { A : coverMarshalText { } } ) } ,
} ,
{
name : "PtrHeadMarshalTextNotRootOmitEmpty" ,
data : struct {
A * struct {
A coverMarshalText ` json:"a,omitempty" `
}
} { A : & ( struct {
A coverMarshalText ` json:"a,omitempty" `
} { A : coverMarshalText { } } ) } ,
} ,
{
name : "PtrHeadMarshalTextNotRootString" ,
data : struct {
A * struct {
A coverMarshalText ` json:"a,string" `
}
} { A : & ( struct {
A coverMarshalText ` json:"a,string" `
} { A : coverMarshalText { } } ) } ,
} ,
{
name : "PtrHeadPtrMarshalTextNotRoot" ,
data : struct {
A * struct {
A coverPtrMarshalText ` json:"a" `
}
} { A : & ( struct {
A coverPtrMarshalText ` json:"a" `
} { A : coverPtrMarshalText { } } ) } ,
} ,
{
name : "PtrHeadPtrMarshalTextNotRootOmitEmpty" ,
data : struct {
A * struct {
A coverPtrMarshalText ` json:"a,omitempty" `
}
} { A : & ( struct {
A coverPtrMarshalText ` json:"a,omitempty" `
} { A : coverPtrMarshalText { } } ) } ,
} ,
{
name : "PtrHeadPtrMarshalTextNotRootString" ,
data : struct {
A * struct {
A coverPtrMarshalText ` json:"a,string" `
}
} { A : & ( struct {
A coverPtrMarshalText ` json:"a,string" `
} { A : coverPtrMarshalText { } } ) } ,
} ,
// PtrHeadMarshalTextPtrNotRoot
{
name : "PtrHeadMarshalTextPtrNotRoot" ,
data : struct {
A * struct {
A * coverMarshalText ` json:"a" `
}
} { A : & ( struct {
A * coverMarshalText ` json:"a" `
} { A : & coverMarshalText { } } ) } ,
} ,
{
name : "PtrHeadMarshalTextPtrNotRootOmitEmpty" ,
data : struct {
A * struct {
A * coverMarshalText ` json:"a,omitempty" `
}
} { A : & ( struct {
A * coverMarshalText ` json:"a,omitempty" `
} { A : & coverMarshalText { } } ) } ,
} ,
{
name : "PtrHeadMarshalTextPtrNotRootString" ,
data : struct {
A * struct {
A * coverMarshalText ` json:"a,string" `
}
} { A : & ( struct {
A * coverMarshalText ` json:"a,string" `
} { A : & coverMarshalText { } } ) } ,
} ,
{
name : "PtrHeadPtrMarshalTextPtrNotRoot" ,
data : struct {
A * struct {
A * coverPtrMarshalText ` json:"a" `
}
} { A : & ( struct {
A * coverPtrMarshalText ` json:"a" `
} { A : & coverPtrMarshalText { } } ) } ,
} ,
{
name : "PtrHeadPtrMarshalTextPtrNotRootOmitEmpty" ,
data : struct {
A * struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
}
} { A : & ( struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
} { A : & coverPtrMarshalText { } } ) } ,
} ,
{
name : "PtrHeadPtrMarshalTextPtrNotRootString" ,
data : struct {
A * struct {
A * coverPtrMarshalText ` json:"a,string" `
}
} { A : & ( struct {
A * coverPtrMarshalText ` json:"a,string" `
} { A : & coverPtrMarshalText { } } ) } ,
} ,
// PtrHeadMarshalTextPtrNilNotRoot
{
name : "PtrHeadMarshalTextPtrNilNotRoot" ,
data : struct {
A * struct {
A * coverMarshalText ` json:"a" `
}
} { A : & ( struct {
A * coverMarshalText ` json:"a" `
} { A : nil } ) } ,
} ,
{
name : "PtrHeadMarshalTextPtrNilNotRootOmitEmpty" ,
data : struct {
A * struct {
A * coverMarshalText ` json:"a,omitempty" `
}
} { A : & ( struct {
A * coverMarshalText ` json:"a,omitempty" `
} { A : nil } ) } ,
} ,
{
name : "PtrHeadMarshalTextPtrNilNotRootString" ,
data : struct {
A * struct {
A * coverMarshalText ` json:"a,string" `
}
} { A : & ( struct {
A * coverMarshalText ` json:"a,string" `
} { A : nil } ) } ,
} ,
{
name : "PtrHeadPtrMarshalTextPtrNilNotRoot" ,
data : struct {
A * struct {
A * coverPtrMarshalText ` json:"a" `
}
} { A : & ( struct {
A * coverPtrMarshalText ` json:"a" `
} { A : nil } ) } ,
} ,
{
name : "PtrHeadPtrMarshalTextPtrNilNotRootOmitEmpty" ,
data : struct {
A * struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
}
} { A : & ( struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
} { A : nil } ) } ,
} ,
{
name : "PtrHeadPtrMarshalTextPtrNilNotRootString" ,
data : struct {
A * struct {
A * coverPtrMarshalText ` json:"a,string" `
}
} { A : & ( struct {
A * coverPtrMarshalText ` json:"a,string" `
} { A : nil } ) } ,
} ,
// PtrHeadMarshalTextNilNotRoot
{
name : "PtrHeadMarshalTextNilNotRoot" ,
data : struct {
A * struct {
A * coverMarshalText ` json:"a" `
}
} { A : nil } ,
} ,
{
name : "PtrHeadMarshalTextNilNotRootOmitEmpty" ,
data : struct {
A * struct {
A * coverMarshalText ` json:"a,omitempty" `
} ` json:",omitempty" `
} { A : nil } ,
} ,
{
name : "PtrHeadMarshalTextNilNotRootString" ,
data : struct {
A * struct {
A * coverMarshalText ` json:"a,string" `
} ` json:",string" `
} { A : nil } ,
} ,
{
name : "PtrHeadPtrMarshalTextNilNotRoot" ,
data : struct {
A * struct {
A * coverPtrMarshalText ` json:"a" `
}
} { A : nil } ,
} ,
{
name : "PtrHeadPtrMarshalTextNilNotRootOmitEmpty" ,
data : struct {
A * struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
} ` json:",omitempty" `
} { A : nil } ,
} ,
{
name : "PtrHeadPtrMarshalTextNilNotRootString" ,
data : struct {
A * struct {
A * coverPtrMarshalText ` json:"a,string" `
} ` json:",string" `
} { A : nil } ,
} ,
// HeadMarshalTextZeroMultiFieldsNotRoot
{
name : "HeadMarshalTextZeroMultiFieldsNotRoot" ,
data : struct {
A struct {
A coverMarshalText ` json:"a" `
}
B struct {
B coverMarshalText ` json:"b" `
}
} { } ,
} ,
{
name : "HeadMarshalTextZeroMultiFieldsNotRootOmitEmpty" ,
data : struct {
A struct {
A coverMarshalText ` json:"a,omitempty" `
}
B struct {
B coverMarshalText ` json:"b,omitempty" `
}
} { } ,
} ,
{
name : "HeadMarshalTextZeroMultiFieldsNotRootString" ,
data : struct {
A struct {
A coverMarshalText ` json:"a,string" `
}
B struct {
B coverMarshalText ` json:"b,string" `
}
} { } ,
} ,
{
name : "HeadPtrMarshalTextZeroMultiFieldsNotRoot" ,
data : struct {
A struct {
A coverPtrMarshalText ` json:"a" `
}
B struct {
B coverPtrMarshalText ` json:"b" `
}
} { } ,
} ,
{
name : "HeadPtrMarshalTextZeroMultiFieldsNotRootOmitEmpty" ,
data : struct {
A struct {
A coverPtrMarshalText ` json:"a,omitempty" `
}
B struct {
B coverPtrMarshalText ` json:"b,omitempty" `
}
} { } ,
} ,
{
name : "HeadPtrMarshalTextZeroMultiFieldsNotRootString" ,
data : struct {
A struct {
A coverPtrMarshalText ` json:"a,string" `
}
B struct {
B coverPtrMarshalText ` json:"b,string" `
}
} { } ,
} ,
// HeadMarshalTextMultiFieldsNotRoot
{
name : "HeadMarshalTextMultiFieldsNotRoot" ,
data : struct {
A struct {
A coverMarshalText ` json:"a" `
}
B struct {
B coverMarshalText ` json:"b" `
}
} { A : struct {
A coverMarshalText ` json:"a" `
} { A : coverMarshalText { } } , B : struct {
B coverMarshalText ` json:"b" `
} { B : coverMarshalText { } } } ,
} ,
{
name : "HeadMarshalTextMultiFieldsNotRootOmitEmpty" ,
data : struct {
A struct {
A coverMarshalText ` json:"a,omitempty" `
}
B struct {
B coverMarshalText ` json:"b,omitempty" `
}
} { A : struct {
A coverMarshalText ` json:"a,omitempty" `
} { A : coverMarshalText { } } , B : struct {
B coverMarshalText ` json:"b,omitempty" `
} { B : coverMarshalText { } } } ,
} ,
{
name : "HeadMarshalTextMultiFieldsNotRootString" ,
data : struct {
A struct {
A coverMarshalText ` json:"a,string" `
}
B struct {
B coverMarshalText ` json:"b,string" `
}
} { A : struct {
A coverMarshalText ` json:"a,string" `
} { A : coverMarshalText { } } , B : struct {
B coverMarshalText ` json:"b,string" `
} { B : coverMarshalText { } } } ,
} ,
{
name : "HeadPtrMarshalTextMultiFieldsNotRoot" ,
data : struct {
A struct {
A coverPtrMarshalText ` json:"a" `
}
B struct {
B coverPtrMarshalText ` json:"b" `
}
} { A : struct {
A coverPtrMarshalText ` json:"a" `
} { A : coverPtrMarshalText { } } , B : struct {
B coverPtrMarshalText ` json:"b" `
} { B : coverPtrMarshalText { } } } ,
} ,
{
name : "HeadPtrMarshalTextMultiFieldsNotRootOmitEmpty" ,
data : struct {
A struct {
A coverPtrMarshalText ` json:"a,omitempty" `
}
B struct {
B coverPtrMarshalText ` json:"b,omitempty" `
}
} { A : struct {
A coverPtrMarshalText ` json:"a,omitempty" `
} { A : coverPtrMarshalText { } } , B : struct {
B coverPtrMarshalText ` json:"b,omitempty" `
} { B : coverPtrMarshalText { } } } ,
} ,
{
name : "HeadPtrMarshalTextMultiFieldsNotRootString" ,
data : struct {
A struct {
A coverPtrMarshalText ` json:"a,string" `
}
B struct {
B coverPtrMarshalText ` json:"b,string" `
}
} { A : struct {
A coverPtrMarshalText ` json:"a,string" `
} { A : coverPtrMarshalText { } } , B : struct {
B coverPtrMarshalText ` json:"b,string" `
} { B : coverPtrMarshalText { } } } ,
} ,
// HeadMarshalTextPtrMultiFieldsNotRoot
{
name : "HeadMarshalTextPtrMultiFieldsNotRoot" ,
data : struct {
A struct {
A * coverMarshalText ` json:"a" `
}
B struct {
B * coverMarshalText ` json:"b" `
}
} { A : struct {
A * coverMarshalText ` json:"a" `
} { A : & coverMarshalText { } } , B : struct {
B * coverMarshalText ` json:"b" `
} { B : & coverMarshalText { } } } ,
} ,
{
name : "HeadMarshalTextPtrMultiFieldsNotRootOmitEmpty" ,
data : struct {
A struct {
A * coverMarshalText ` json:"a,omitempty" `
}
B struct {
B * coverMarshalText ` json:"b,omitempty" `
}
} { A : struct {
A * coverMarshalText ` json:"a,omitempty" `
} { A : & coverMarshalText { } } , B : struct {
B * coverMarshalText ` json:"b,omitempty" `
} { B : & coverMarshalText { } } } ,
} ,
{
name : "HeadMarshalTextPtrMultiFieldsNotRootString" ,
data : struct {
A struct {
A * coverMarshalText ` json:"a,string" `
}
B struct {
B * coverMarshalText ` json:"b,string" `
}
} { A : struct {
A * coverMarshalText ` json:"a,string" `
} { A : & coverMarshalText { } } , B : struct {
B * coverMarshalText ` json:"b,string" `
} { B : & coverMarshalText { } } } ,
} ,
{
name : "HeadPtrMarshalTextPtrMultiFieldsNotRoot" ,
data : struct {
A struct {
A * coverPtrMarshalText ` json:"a" `
}
B struct {
B * coverPtrMarshalText ` json:"b" `
}
} { A : struct {
A * coverPtrMarshalText ` json:"a" `
} { A : & coverPtrMarshalText { } } , B : struct {
B * coverPtrMarshalText ` json:"b" `
} { B : & coverPtrMarshalText { } } } ,
} ,
{
name : "HeadPtrMarshalTextPtrMultiFieldsNotRootOmitEmpty" ,
data : struct {
A struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
}
B struct {
B * coverPtrMarshalText ` json:"b,omitempty" `
}
} { A : struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
} { A : & coverPtrMarshalText { } } , B : struct {
B * coverPtrMarshalText ` json:"b,omitempty" `
} { B : & coverPtrMarshalText { } } } ,
} ,
{
name : "HeadPtrMarshalTextPtrMultiFieldsNotRootString" ,
data : struct {
A struct {
A * coverPtrMarshalText ` json:"a,string" `
}
B struct {
B * coverPtrMarshalText ` json:"b,string" `
}
} { A : struct {
A * coverPtrMarshalText ` json:"a,string" `
} { A : & coverPtrMarshalText { } } , B : struct {
B * coverPtrMarshalText ` json:"b,string" `
} { B : & coverPtrMarshalText { } } } ,
} ,
// HeadMarshalTextPtrNilMultiFieldsNotRoot
{
name : "HeadMarshalTextPtrNilMultiFieldsNotRoot" ,
data : struct {
A struct {
A * coverMarshalText ` json:"a" `
}
B struct {
B * coverMarshalText ` json:"b" `
}
} { A : struct {
A * coverMarshalText ` json:"a" `
} { A : nil } , B : struct {
B * coverMarshalText ` json:"b" `
} { B : nil } } ,
} ,
{
name : "HeadMarshalTextPtrNilMultiFieldsNotRootOmitEmpty" ,
data : struct {
A struct {
A * coverMarshalText ` json:"a,omitempty" `
}
B struct {
B * coverMarshalText ` json:"b,omitempty" `
}
} { A : struct {
A * coverMarshalText ` json:"a,omitempty" `
} { A : nil } , B : struct {
B * coverMarshalText ` json:"b,omitempty" `
} { B : nil } } ,
} ,
{
name : "HeadMarshalTextPtrNilMultiFieldsNotRootString" ,
data : struct {
A struct {
A * coverMarshalText ` json:"a,string" `
}
B struct {
B * coverMarshalText ` json:"b,string" `
}
} { A : struct {
A * coverMarshalText ` json:"a,string" `
} { A : nil } , B : struct {
B * coverMarshalText ` json:"b,string" `
} { B : nil } } ,
} ,
{
name : "HeadPtrMarshalTextPtrNilMultiFieldsNotRoot" ,
data : struct {
A struct {
A * coverPtrMarshalText ` json:"a" `
}
B struct {
B * coverPtrMarshalText ` json:"b" `
}
} { A : struct {
A * coverPtrMarshalText ` json:"a" `
} { A : nil } , B : struct {
B * coverPtrMarshalText ` json:"b" `
} { B : nil } } ,
} ,
{
name : "HeadPtrMarshalTextPtrNilMultiFieldsNotRootOmitEmpty" ,
data : struct {
A struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
}
B struct {
B * coverPtrMarshalText ` json:"b,omitempty" `
}
} { A : struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
} { A : nil } , B : struct {
B * coverPtrMarshalText ` json:"b,omitempty" `
} { B : nil } } ,
} ,
{
name : "HeadPtrMarshalTextPtrNilMultiFieldsNotRootString" ,
data : struct {
A struct {
A * coverPtrMarshalText ` json:"a,string" `
}
B struct {
B * coverPtrMarshalText ` json:"b,string" `
}
} { A : struct {
A * coverPtrMarshalText ` json:"a,string" `
} { A : nil } , B : struct {
B * coverPtrMarshalText ` json:"b,string" `
} { B : nil } } ,
} ,
// PtrHeadMarshalTextZeroMultiFieldsNotRoot
{
name : "PtrHeadMarshalTextZeroMultiFieldsNotRoot" ,
data : & struct {
A struct {
A coverMarshalText ` json:"a" `
}
B struct {
B coverMarshalText ` json:"b" `
}
} { } ,
} ,
{
name : "PtrHeadMarshalTextZeroMultiFieldsNotRootOmitEmpty" ,
data : & struct {
A struct {
A coverMarshalText ` json:"a,omitempty" `
}
B struct {
B coverMarshalText ` json:"b,omitempty" `
}
} { } ,
} ,
{
name : "PtrHeadMarshalTextZeroMultiFieldsNotRootString" ,
data : & struct {
A struct {
A coverMarshalText ` json:"a,string" `
}
B struct {
B coverMarshalText ` json:"b,string" `
}
} { } ,
} ,
{
name : "PtrHeadPtrMarshalTextZeroMultiFieldsNotRoot" ,
data : & struct {
A struct {
A coverPtrMarshalText ` json:"a" `
}
B struct {
B coverPtrMarshalText ` json:"b" `
}
} { } ,
} ,
{
name : "PtrHeadPtrMarshalTextZeroMultiFieldsNotRootOmitEmpty" ,
data : & struct {
A struct {
A coverPtrMarshalText ` json:"a,omitempty" `
}
B struct {
B coverPtrMarshalText ` json:"b,omitempty" `
}
} { } ,
} ,
{
name : "PtrHeadPtrMarshalTextZeroMultiFieldsNotRootString" ,
data : & struct {
A struct {
A coverPtrMarshalText ` json:"a,string" `
}
B struct {
B coverPtrMarshalText ` json:"b,string" `
}
} { } ,
} ,
// PtrHeadMarshalTextMultiFieldsNotRoot
{
name : "PtrHeadMarshalTextMultiFieldsNotRoot" ,
data : & struct {
A struct {
A coverMarshalText ` json:"a" `
}
B struct {
B coverMarshalText ` json:"b" `
}
} { A : struct {
A coverMarshalText ` json:"a" `
} { A : coverMarshalText { } } , B : struct {
B coverMarshalText ` json:"b" `
} { B : coverMarshalText { } } } ,
} ,
{
name : "PtrHeadMarshalTextMultiFieldsNotRootOmitEmpty" ,
data : & struct {
A struct {
A coverMarshalText ` json:"a,omitempty" `
}
B struct {
B coverMarshalText ` json:"b,omitempty" `
}
} { A : struct {
A coverMarshalText ` json:"a,omitempty" `
} { A : coverMarshalText { } } , B : struct {
B coverMarshalText ` json:"b,omitempty" `
} { B : coverMarshalText { } } } ,
} ,
{
name : "PtrHeadMarshalTextMultiFieldsNotRootString" ,
data : & struct {
A struct {
A coverMarshalText ` json:"a,string" `
}
B struct {
B coverMarshalText ` json:"b,string" `
}
} { A : struct {
A coverMarshalText ` json:"a,string" `
} { A : coverMarshalText { } } , B : struct {
B coverMarshalText ` json:"b,string" `
} { B : coverMarshalText { } } } ,
} ,
{
name : "PtrHeadPtrMarshalTextMultiFieldsNotRoot" ,
data : & struct {
A struct {
A coverPtrMarshalText ` json:"a" `
}
B struct {
B coverPtrMarshalText ` json:"b" `
}
} { A : struct {
A coverPtrMarshalText ` json:"a" `
} { A : coverPtrMarshalText { } } , B : struct {
B coverPtrMarshalText ` json:"b" `
} { B : coverPtrMarshalText { } } } ,
} ,
{
name : "PtrHeadPtrMarshalTextMultiFieldsNotRootOmitEmpty" ,
data : & struct {
A struct {
A coverPtrMarshalText ` json:"a,omitempty" `
}
B struct {
B coverPtrMarshalText ` json:"b,omitempty" `
}
} { A : struct {
A coverPtrMarshalText ` json:"a,omitempty" `
} { A : coverPtrMarshalText { } } , B : struct {
B coverPtrMarshalText ` json:"b,omitempty" `
} { B : coverPtrMarshalText { } } } ,
} ,
{
name : "PtrHeadPtrMarshalTextMultiFieldsNotRootString" ,
data : & struct {
A struct {
A coverPtrMarshalText ` json:"a,string" `
}
B struct {
B coverPtrMarshalText ` json:"b,string" `
}
} { A : struct {
A coverPtrMarshalText ` json:"a,string" `
} { A : coverPtrMarshalText { } } , B : struct {
B coverPtrMarshalText ` json:"b,string" `
} { B : coverPtrMarshalText { } } } ,
} ,
// PtrHeadMarshalTextPtrMultiFieldsNotRoot
{
name : "PtrHeadMarshalTextPtrMultiFieldsNotRoot" ,
data : & struct {
A * struct {
A * coverMarshalText ` json:"a" `
}
B * struct {
B * coverMarshalText ` json:"b" `
}
} { A : & ( struct {
A * coverMarshalText ` json:"a" `
} { A : & coverMarshalText { } } ) , B : & ( struct {
B * coverMarshalText ` json:"b" `
} { B : & coverMarshalText { } } ) } ,
} ,
{
name : "PtrHeadMarshalTextPtrMultiFieldsNotRootOmitEmpty" ,
data : & struct {
A * struct {
A * coverMarshalText ` json:"a,omitempty" `
}
B * struct {
B * coverMarshalText ` json:"b,omitempty" `
}
} { A : & ( struct {
A * coverMarshalText ` json:"a,omitempty" `
} { A : & coverMarshalText { } } ) , B : & ( struct {
B * coverMarshalText ` json:"b,omitempty" `
} { B : & coverMarshalText { } } ) } ,
} ,
{
name : "PtrHeadMarshalTextPtrMultiFieldsNotRootString" ,
data : & struct {
A * struct {
A * coverMarshalText ` json:"a,string" `
}
B * struct {
B * coverMarshalText ` json:"b,string" `
}
} { A : & ( struct {
A * coverMarshalText ` json:"a,string" `
} { A : & coverMarshalText { } } ) , B : & ( struct {
B * coverMarshalText ` json:"b,string" `
} { B : & coverMarshalText { } } ) } ,
} ,
{
name : "PtrHeadPtrMarshalTextPtrMultiFieldsNotRoot" ,
data : & struct {
A * struct {
A * coverPtrMarshalText ` json:"a" `
}
B * struct {
B * coverPtrMarshalText ` json:"b" `
}
} { A : & ( struct {
A * coverPtrMarshalText ` json:"a" `
} { A : & coverPtrMarshalText { } } ) , B : & ( struct {
B * coverPtrMarshalText ` json:"b" `
} { B : & coverPtrMarshalText { } } ) } ,
} ,
{
name : "PtrHeadPtrMarshalTextPtrMultiFieldsNotRootOmitEmpty" ,
data : & struct {
A * struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
}
B * struct {
B * coverPtrMarshalText ` json:"b,omitempty" `
}
} { A : & ( struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
} { A : & coverPtrMarshalText { } } ) , B : & ( struct {
B * coverPtrMarshalText ` json:"b,omitempty" `
} { B : & coverPtrMarshalText { } } ) } ,
} ,
{
name : "PtrHeadPtrMarshalTextPtrMultiFieldsNotRootString" ,
data : & struct {
A * struct {
A * coverPtrMarshalText ` json:"a,string" `
}
B * struct {
B * coverPtrMarshalText ` json:"b,string" `
}
} { A : & ( struct {
A * coverPtrMarshalText ` json:"a,string" `
} { A : & coverPtrMarshalText { } } ) , B : & ( struct {
B * coverPtrMarshalText ` json:"b,string" `
} { B : & coverPtrMarshalText { } } ) } ,
} ,
// PtrHeadMarshalTextPtrNilMultiFieldsNotRoot
{
name : "PtrHeadMarshalTextPtrNilMultiFieldsNotRoot" ,
data : & struct {
A * struct {
A * coverMarshalText ` json:"a" `
}
B * struct {
B * coverMarshalText ` json:"b" `
}
} { A : nil , B : nil } ,
} ,
{
name : "PtrHeadMarshalTextPtrNilMultiFieldsNotRootOmitEmpty" ,
data : & struct {
A * struct {
A * coverMarshalText ` json:"a,omitempty" `
} ` json:",omitempty" `
B * struct {
B * coverMarshalText ` json:"b,omitempty" `
} ` json:",omitempty" `
} { A : nil , B : nil } ,
} ,
{
name : "PtrHeadMarshalTextPtrNilMultiFieldsNotRootString" ,
data : & struct {
A * struct {
A * coverMarshalText ` json:"a,string" `
} ` json:",string" `
B * struct {
B * coverMarshalText ` json:"b,string" `
} ` json:",string" `
} { A : nil , B : nil } ,
} ,
{
name : "PtrHeadPtrMarshalTextPtrNilMultiFieldsNotRoot" ,
data : & struct {
A * struct {
A * coverPtrMarshalText ` json:"a" `
}
B * struct {
B * coverPtrMarshalText ` json:"b" `
}
} { A : nil , B : nil } ,
} ,
{
name : "PtrHeadPtrMarshalTextPtrNilMultiFieldsNotRootOmitEmpty" ,
data : & struct {
A * struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
} ` json:",omitempty" `
B * struct {
B * coverPtrMarshalText ` json:"b,omitempty" `
} ` json:",omitempty" `
} { A : nil , B : nil } ,
} ,
{
name : "PtrHeadPtrMarshalTextPtrNilMultiFieldsNotRootString" ,
data : & struct {
A * struct {
A * coverPtrMarshalText ` json:"a,string" `
} ` json:",string" `
B * struct {
B * coverPtrMarshalText ` json:"b,string" `
} ` json:",string" `
} { A : nil , B : nil } ,
} ,
// PtrHeadMarshalTextNilMultiFieldsNotRoot
{
name : "PtrHeadMarshalTextNilMultiFieldsNotRoot" ,
data : ( * struct {
A * struct {
A * coverMarshalText ` json:"a" `
}
B * struct {
B * coverMarshalText ` json:"b" `
}
} ) ( nil ) ,
} ,
{
name : "PtrHeadMarshalTextNilMultiFieldsNotRootOmitEmpty" ,
data : ( * struct {
A * struct {
A * coverMarshalText ` json:"a,omitempty" `
}
B * struct {
B * coverMarshalText ` json:"b,omitempty" `
}
} ) ( nil ) ,
} ,
{
name : "PtrHeadMarshalTextNilMultiFieldsNotRootString" ,
data : ( * struct {
A * struct {
A * coverMarshalText ` json:"a,string" `
}
B * struct {
B * coverMarshalText ` json:"b,string" `
}
} ) ( nil ) ,
} ,
{
name : "PtrHeadPtrMarshalTextNilMultiFieldsNotRoot" ,
data : ( * struct {
A * struct {
A * coverPtrMarshalText ` json:"a" `
}
B * struct {
B * coverPtrMarshalText ` json:"b" `
}
} ) ( nil ) ,
} ,
{
name : "PtrHeadPtrMarshalTextNilMultiFieldsNotRootOmitEmpty" ,
data : ( * struct {
A * struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
}
B * struct {
B * coverPtrMarshalText ` json:"b,omitempty" `
}
} ) ( nil ) ,
} ,
{
name : "PtrHeadPtrMarshalTextNilMultiFieldsNotRootString" ,
data : ( * struct {
A * struct {
A * coverPtrMarshalText ` json:"a,string" `
}
B * struct {
B * coverPtrMarshalText ` json:"b,string" `
}
} ) ( nil ) ,
} ,
// PtrHeadMarshalTextDoubleMultiFieldsNotRoot
{
name : "PtrHeadMarshalTextDoubleMultiFieldsNotRoot" ,
data : & struct {
A * struct {
A coverMarshalText ` json:"a" `
B coverMarshalText ` json:"b" `
}
B * struct {
A coverMarshalText ` json:"a" `
B coverMarshalText ` json:"b" `
}
} { A : & ( struct {
A coverMarshalText ` json:"a" `
B coverMarshalText ` json:"b" `
} { A : coverMarshalText { } , B : coverMarshalText { } } ) , B : & ( struct {
A coverMarshalText ` json:"a" `
B coverMarshalText ` json:"b" `
} { A : coverMarshalText { } , B : coverMarshalText { } } ) } ,
} ,
{
name : "PtrHeadMarshalTextDoubleMultiFieldsNotRootOmitEmpty" ,
data : & struct {
A * struct {
A coverMarshalText ` json:"a,omitempty" `
B coverMarshalText ` json:"b,omitempty" `
}
B * struct {
A coverMarshalText ` json:"a,omitempty" `
B coverMarshalText ` json:"b,omitempty" `
}
} { A : & ( struct {
A coverMarshalText ` json:"a,omitempty" `
B coverMarshalText ` json:"b,omitempty" `
} { A : coverMarshalText { } , B : coverMarshalText { } } ) , B : & ( struct {
A coverMarshalText ` json:"a,omitempty" `
B coverMarshalText ` json:"b,omitempty" `
} { A : coverMarshalText { } , B : coverMarshalText { } } ) } ,
} ,
{
name : "PtrHeadMarshalTextDoubleMultiFieldsNotRootString" ,
data : & struct {
A * struct {
A coverMarshalText ` json:"a,string" `
B coverMarshalText ` json:"b,string" `
}
B * struct {
A coverMarshalText ` json:"a,string" `
B coverMarshalText ` json:"b,string" `
}
} { A : & ( struct {
A coverMarshalText ` json:"a,string" `
B coverMarshalText ` json:"b,string" `
} { A : coverMarshalText { } , B : coverMarshalText { } } ) , B : & ( struct {
A coverMarshalText ` json:"a,string" `
B coverMarshalText ` json:"b,string" `
} { A : coverMarshalText { } , B : coverMarshalText { } } ) } ,
} ,
{
name : "PtrHeadPtrMarshalTextDoubleMultiFieldsNotRoot" ,
data : & struct {
A * struct {
A coverPtrMarshalText ` json:"a" `
B coverPtrMarshalText ` json:"b" `
}
B * struct {
A coverPtrMarshalText ` json:"a" `
B coverPtrMarshalText ` json:"b" `
}
} { A : & ( struct {
A coverPtrMarshalText ` json:"a" `
B coverPtrMarshalText ` json:"b" `
} { A : coverPtrMarshalText { } , B : coverPtrMarshalText { } } ) , B : & ( struct {
A coverPtrMarshalText ` json:"a" `
B coverPtrMarshalText ` json:"b" `
} { A : coverPtrMarshalText { } , B : coverPtrMarshalText { } } ) } ,
} ,
{
name : "PtrHeadPtrMarshalTextDoubleMultiFieldsNotRootOmitEmpty" ,
data : & struct {
A * struct {
A coverPtrMarshalText ` json:"a,omitempty" `
B coverPtrMarshalText ` json:"b,omitempty" `
}
B * struct {
A coverPtrMarshalText ` json:"a,omitempty" `
B coverPtrMarshalText ` json:"b,omitempty" `
}
} { A : & ( struct {
A coverPtrMarshalText ` json:"a,omitempty" `
B coverPtrMarshalText ` json:"b,omitempty" `
} { A : coverPtrMarshalText { } , B : coverPtrMarshalText { } } ) , B : & ( struct {
A coverPtrMarshalText ` json:"a,omitempty" `
B coverPtrMarshalText ` json:"b,omitempty" `
} { A : coverPtrMarshalText { } , B : coverPtrMarshalText { } } ) } ,
} ,
{
name : "PtrHeadPtrMarshalTextDoubleMultiFieldsNotRootString" ,
data : & struct {
A * struct {
A coverPtrMarshalText ` json:"a,string" `
B coverPtrMarshalText ` json:"b,string" `
}
B * struct {
A coverPtrMarshalText ` json:"a,string" `
B coverPtrMarshalText ` json:"b,string" `
}
} { A : & ( struct {
A coverPtrMarshalText ` json:"a,string" `
B coverPtrMarshalText ` json:"b,string" `
} { A : coverPtrMarshalText { } , B : coverPtrMarshalText { } } ) , B : & ( struct {
A coverPtrMarshalText ` json:"a,string" `
B coverPtrMarshalText ` json:"b,string" `
} { A : coverPtrMarshalText { } , B : coverPtrMarshalText { } } ) } ,
} ,
// PtrHeadMarshalTextNilDoubleMultiFieldsNotRoot
{
name : "PtrHeadMarshalTextNilDoubleMultiFieldsNotRoot" ,
data : & struct {
A * struct {
A coverMarshalText ` json:"a" `
B coverMarshalText ` json:"b" `
}
B * struct {
A coverMarshalText ` json:"a" `
B coverMarshalText ` json:"b" `
}
} { A : nil , B : nil } ,
} ,
{
name : "PtrHeadMarshalTextNilDoubleMultiFieldsNotRootOmitEmpty" ,
data : & struct {
A * struct {
A coverMarshalText ` json:"a,omitempty" `
B coverMarshalText ` json:"b,omitempty" `
} ` json:",omitempty" `
B * struct {
A coverMarshalText ` json:"a,omitempty" `
B coverMarshalText ` json:"b,omitempty" `
} ` json:",omitempty" `
} { A : nil , B : nil } ,
} ,
{
name : "PtrHeadMarshalTextNilDoubleMultiFieldsNotRootString" ,
data : & struct {
A * struct {
A coverMarshalText ` json:"a,string" `
B coverMarshalText ` json:"b,string" `
}
B * struct {
A coverMarshalText ` json:"a,string" `
B coverMarshalText ` json:"b,string" `
}
} { A : nil , B : nil } ,
} ,
{
name : "PtrHeadPtrMarshalTextNilDoubleMultiFieldsNotRoot" ,
data : & struct {
A * struct {
A coverPtrMarshalText ` json:"a" `
B coverPtrMarshalText ` json:"b" `
}
B * struct {
A coverPtrMarshalText ` json:"a" `
B coverPtrMarshalText ` json:"b" `
}
} { A : nil , B : nil } ,
} ,
{
name : "PtrHeadPtrMarshalTextNilDoubleMultiFieldsNotRootOmitEmpty" ,
data : & struct {
A * struct {
A coverPtrMarshalText ` json:"a,omitempty" `
B coverPtrMarshalText ` json:"b,omitempty" `
} ` json:",omitempty" `
B * struct {
A coverPtrMarshalText ` json:"a,omitempty" `
B coverPtrMarshalText ` json:"b,omitempty" `
} ` json:",omitempty" `
} { A : nil , B : nil } ,
} ,
{
name : "PtrHeadPtrMarshalTextNilDoubleMultiFieldsNotRootString" ,
data : & struct {
A * struct {
A coverPtrMarshalText ` json:"a,string" `
B coverPtrMarshalText ` json:"b,string" `
}
B * struct {
A coverPtrMarshalText ` json:"a,string" `
B coverPtrMarshalText ` json:"b,string" `
}
} { A : nil , B : nil } ,
} ,
// PtrHeadMarshalTextNilDoubleMultiFieldsNotRoot
{
name : "PtrHeadMarshalTextNilDoubleMultiFieldsNotRoot" ,
data : ( * struct {
A * struct {
A coverMarshalText ` json:"a" `
B coverMarshalText ` json:"b" `
}
B * struct {
A coverMarshalText ` json:"a" `
B coverMarshalText ` json:"b" `
}
} ) ( nil ) ,
} ,
{
name : "PtrHeadMarshalTextNilDoubleMultiFieldsNotRootOmitEmpty" ,
data : ( * struct {
A * struct {
A coverMarshalText ` json:"a,omitempty" `
B coverMarshalText ` json:"b,omitempty" `
}
B * struct {
A coverMarshalText ` json:"a,omitempty" `
B coverMarshalText ` json:"b,omitempty" `
}
} ) ( nil ) ,
} ,
{
name : "PtrHeadMarshalTextNilDoubleMultiFieldsNotRootString" ,
data : ( * struct {
A * struct {
A coverMarshalText ` json:"a,string" `
B coverMarshalText ` json:"b,string" `
}
B * struct {
A coverMarshalText ` json:"a,string" `
B coverMarshalText ` json:"b,string" `
}
} ) ( nil ) ,
} ,
{
name : "PtrHeadPtrMarshalTextNilDoubleMultiFieldsNotRoot" ,
data : ( * struct {
A * struct {
A coverPtrMarshalText ` json:"a" `
B coverPtrMarshalText ` json:"b" `
}
B * struct {
A coverPtrMarshalText ` json:"a" `
B coverPtrMarshalText ` json:"b" `
}
} ) ( nil ) ,
} ,
{
name : "PtrHeadPtrMarshalTextNilDoubleMultiFieldsNotRootOmitEmpty" ,
data : ( * struct {
A * struct {
A coverPtrMarshalText ` json:"a,omitempty" `
B coverPtrMarshalText ` json:"b,omitempty" `
}
B * struct {
A coverPtrMarshalText ` json:"a,omitempty" `
B coverPtrMarshalText ` json:"b,omitempty" `
}
} ) ( nil ) ,
} ,
{
name : "PtrHeadPtrMarshalTextNilDoubleMultiFieldsNotRootString" ,
data : ( * struct {
A * struct {
A coverPtrMarshalText ` json:"a,string" `
B coverPtrMarshalText ` json:"b,string" `
}
B * struct {
A coverPtrMarshalText ` json:"a,string" `
B coverPtrMarshalText ` json:"b,string" `
}
} ) ( nil ) ,
} ,
// PtrHeadMarshalTextPtrDoubleMultiFieldsNotRoot
{
name : "PtrHeadMarshalTextPtrDoubleMultiFieldsNotRoot" ,
data : & struct {
A * struct {
A * coverMarshalText ` json:"a" `
B * coverMarshalText ` json:"b" `
}
B * struct {
A * coverMarshalText ` json:"a" `
B * coverMarshalText ` json:"b" `
}
} { A : & ( struct {
A * coverMarshalText ` json:"a" `
B * coverMarshalText ` json:"b" `
} { A : & coverMarshalText { } , B : & coverMarshalText { } } ) , B : & ( struct {
A * coverMarshalText ` json:"a" `
B * coverMarshalText ` json:"b" `
} { A : nil , B : nil } ) } ,
} ,
{
name : "PtrHeadMarshalTextPtrDoubleMultiFieldsNotRootOmitEmpty" ,
data : & struct {
A * struct {
A * coverMarshalText ` json:"a,omitempty" `
B * coverMarshalText ` json:"b,omitempty" `
}
B * struct {
A * coverMarshalText ` json:"a,omitempty" `
B * coverMarshalText ` json:"b,omitempty" `
}
} { A : & ( struct {
A * coverMarshalText ` json:"a,omitempty" `
B * coverMarshalText ` json:"b,omitempty" `
} { A : & coverMarshalText { } , B : & coverMarshalText { } } ) , B : & ( struct {
A * coverMarshalText ` json:"a,omitempty" `
B * coverMarshalText ` json:"b,omitempty" `
} { A : nil , B : nil } ) } ,
} ,
{
name : "PtrHeadMarshalTextPtrDoubleMultiFieldsNotRootString" ,
data : & struct {
A * struct {
A * coverMarshalText ` json:"a,string" `
B * coverMarshalText ` json:"b,string" `
}
B * struct {
A * coverMarshalText ` json:"a,string" `
B * coverMarshalText ` json:"b,string" `
}
} { A : & ( struct {
A * coverMarshalText ` json:"a,string" `
B * coverMarshalText ` json:"b,string" `
} { A : & coverMarshalText { } , B : & coverMarshalText { } } ) , B : & ( struct {
A * coverMarshalText ` json:"a,string" `
B * coverMarshalText ` json:"b,string" `
} { A : nil , B : nil } ) } ,
} ,
{
name : "PtrHeadPtrMarshalTextPtrDoubleMultiFieldsNotRoot" ,
data : & struct {
A * struct {
A * coverPtrMarshalText ` json:"a" `
B * coverPtrMarshalText ` json:"b" `
}
B * struct {
A * coverPtrMarshalText ` json:"a" `
B * coverPtrMarshalText ` json:"b" `
}
} { A : & ( struct {
A * coverPtrMarshalText ` json:"a" `
B * coverPtrMarshalText ` json:"b" `
} { A : & coverPtrMarshalText { } , B : & coverPtrMarshalText { } } ) , B : & ( struct {
A * coverPtrMarshalText ` json:"a" `
B * coverPtrMarshalText ` json:"b" `
} { A : nil , B : nil } ) } ,
} ,
{
name : "PtrHeadPtrMarshalTextPtrDoubleMultiFieldsNotRootOmitEmpty" ,
data : & struct {
A * struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
B * coverPtrMarshalText ` json:"b,omitempty" `
}
B * struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
B * coverPtrMarshalText ` json:"b,omitempty" `
}
} { A : & ( struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
B * coverPtrMarshalText ` json:"b,omitempty" `
} { A : & coverPtrMarshalText { } , B : & coverPtrMarshalText { } } ) , B : & ( struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
B * coverPtrMarshalText ` json:"b,omitempty" `
} { A : nil , B : nil } ) } ,
} ,
{
name : "PtrHeadPtrMarshalTextPtrDoubleMultiFieldsNotRootString" ,
data : & struct {
A * struct {
A * coverPtrMarshalText ` json:"a,string" `
B * coverPtrMarshalText ` json:"b,string" `
}
B * struct {
A * coverPtrMarshalText ` json:"a,string" `
B * coverPtrMarshalText ` json:"b,string" `
}
} { A : & ( struct {
A * coverPtrMarshalText ` json:"a,string" `
B * coverPtrMarshalText ` json:"b,string" `
} { A : & coverPtrMarshalText { } , B : & coverPtrMarshalText { } } ) , B : & ( struct {
A * coverPtrMarshalText ` json:"a,string" `
B * coverPtrMarshalText ` json:"b,string" `
} { A : nil , B : nil } ) } ,
} ,
// PtrHeadMarshalTextPtrNilDoubleMultiFieldsNotRoot
{
name : "PtrHeadMarshalTextPtrNilDoubleMultiFieldsNotRoot" ,
data : & struct {
A * struct {
A * coverMarshalText ` json:"a" `
B * coverMarshalText ` json:"b" `
}
B * struct {
A * coverMarshalText ` json:"a" `
B * coverMarshalText ` json:"b" `
}
} { A : nil , B : nil } ,
} ,
{
name : "PtrHeadMarshalTextPtrNilDoubleMultiFieldsNotRootOmitEmpty" ,
data : & struct {
A * struct {
A * coverMarshalText ` json:"a,omitempty" `
B * coverMarshalText ` json:"b,omitempty" `
} ` json:",omitempty" `
B * struct {
A * coverMarshalText ` json:"a,omitempty" `
B * coverMarshalText ` json:"b,omitempty" `
} ` json:",omitempty" `
} { A : nil , B : nil } ,
} ,
{
name : "PtrHeadMarshalTextPtrNilDoubleMultiFieldsNotRootString" ,
data : & struct {
A * struct {
A * coverMarshalText ` json:"a,string" `
B * coverMarshalText ` json:"b,string" `
}
B * struct {
A * coverMarshalText ` json:"a,string" `
B * coverMarshalText ` json:"b,string" `
}
} { A : nil , B : nil } ,
} ,
{
name : "PtrHeadPtrMarshalTextPtrNilDoubleMultiFieldsNotRoot" ,
data : & struct {
A * struct {
A * coverPtrMarshalText ` json:"a" `
B * coverPtrMarshalText ` json:"b" `
}
B * struct {
A * coverPtrMarshalText ` json:"a" `
B * coverPtrMarshalText ` json:"b" `
}
} { A : nil , B : nil } ,
} ,
{
name : "PtrHeadPtrMarshalTextPtrNilDoubleMultiFieldsNotRootOmitEmpty" ,
data : & struct {
A * struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
B * coverPtrMarshalText ` json:"b,omitempty" `
} ` json:",omitempty" `
B * struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
B * coverPtrMarshalText ` json:"b,omitempty" `
} ` json:",omitempty" `
} { A : nil , B : nil } ,
} ,
{
name : "PtrHeadPtrMarshalTextPtrNilDoubleMultiFieldsNotRootString" ,
data : & struct {
A * struct {
A * coverPtrMarshalText ` json:"a,string" `
B * coverPtrMarshalText ` json:"b,string" `
}
B * struct {
A * coverPtrMarshalText ` json:"a,string" `
B * coverPtrMarshalText ` json:"b,string" `
}
} { A : nil , B : nil } ,
} ,
// PtrHeadMarshalTextPtrNilDoubleMultiFieldsNotRoot
{
name : "PtrHeadMarshalTextPtrNilDoubleMultiFieldsNotRoot" ,
data : ( * struct {
A * struct {
A * coverMarshalText ` json:"a" `
B * coverMarshalText ` json:"b" `
}
B * struct {
A * coverMarshalText ` json:"a" `
B * coverMarshalText ` json:"b" `
}
} ) ( nil ) ,
} ,
{
name : "PtrHeadMarshalTextPtrNilDoubleMultiFieldsNotRootOmitEmpty" ,
data : ( * struct {
A * struct {
A * coverMarshalText ` json:"a,omitempty" `
B * coverMarshalText ` json:"b,omitempty" `
}
B * struct {
A * coverMarshalText ` json:"a,omitempty" `
B * coverMarshalText ` json:"b,omitempty" `
}
} ) ( nil ) ,
} ,
{
name : "PtrHeadMarshalTextPtrNilDoubleMultiFieldsNotRootString" ,
data : ( * struct {
A * struct {
A * coverMarshalText ` json:"a,string" `
B * coverMarshalText ` json:"b,string" `
}
B * struct {
A * coverMarshalText ` json:"a,string" `
B * coverMarshalText ` json:"b,string" `
}
} ) ( nil ) ,
} ,
{
name : "PtrHeadPtrMarshalTextPtrNilDoubleMultiFieldsNotRoot" ,
data : ( * struct {
A * struct {
A * coverPtrMarshalText ` json:"a" `
B * coverPtrMarshalText ` json:"b" `
}
B * struct {
A * coverPtrMarshalText ` json:"a" `
B * coverPtrMarshalText ` json:"b" `
}
} ) ( nil ) ,
} ,
{
name : "PtrHeadPtrMarshalTextPtrNilDoubleMultiFieldsNotRootOmitEmpty" ,
data : ( * struct {
A * struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
B * coverPtrMarshalText ` json:"b,omitempty" `
}
B * struct {
A * coverPtrMarshalText ` json:"a,omitempty" `
B * coverPtrMarshalText ` json:"b,omitempty" `
}
} ) ( nil ) ,
} ,
{
name : "PtrHeadPtrMarshalTextPtrNilDoubleMultiFieldsNotRootString" ,
data : ( * struct {
A * struct {
A * coverPtrMarshalText ` json:"a,string" `
B * coverPtrMarshalText ` json:"b,string" `
}
B * struct {
A * coverPtrMarshalText ` json:"a,string" `
B * coverPtrMarshalText ` json:"b,string" `
}
} ) ( nil ) ,
} ,
// AnonymousHeadMarshalText
{
name : "AnonymousHeadMarshalText" ,
data : struct {
structMarshalText
B coverMarshalText ` json:"b" `
} {
structMarshalText : structMarshalText { A : coverMarshalText { } } ,
B : coverMarshalText { } ,
} ,
} ,
{
name : "AnonymousHeadMarshalTextOmitEmpty" ,
data : struct {
structMarshalTextOmitEmpty
B coverMarshalText ` json:"b,omitempty" `
} {
structMarshalTextOmitEmpty : structMarshalTextOmitEmpty { A : coverMarshalText { } } ,
B : coverMarshalText { } ,
} ,
} ,
{
name : "AnonymousHeadMarshalTextString" ,
data : struct {
structMarshalTextString
B coverMarshalText ` json:"b,string" `
} {
structMarshalTextString : structMarshalTextString { A : coverMarshalText { } } ,
B : coverMarshalText { } ,
} ,
} ,
{
name : "AnonymousHeadPtrMarshalText" ,
data : struct {
structPtrMarshalText
B coverPtrMarshalText ` json:"b" `
} {
structPtrMarshalText : structPtrMarshalText { A : coverPtrMarshalText { } } ,
B : coverPtrMarshalText { } ,
} ,
} ,
{
name : "AnonymousHeadPtrMarshalTextOmitEmpty" ,
data : struct {
structPtrMarshalTextOmitEmpty
B coverPtrMarshalText ` json:"b,omitempty" `
} {
structPtrMarshalTextOmitEmpty : structPtrMarshalTextOmitEmpty { A : coverPtrMarshalText { } } ,
B : coverPtrMarshalText { } ,
} ,
} ,
{
name : "AnonymousHeadPtrMarshalTextString" ,
data : struct {
structPtrMarshalTextString
B coverPtrMarshalText ` json:"b,string" `
} {
structPtrMarshalTextString : structPtrMarshalTextString { A : coverPtrMarshalText { } } ,
B : coverPtrMarshalText { } ,
} ,
} ,
// PtrAnonymousHeadMarshalText
{
name : "PtrAnonymousHeadMarshalText" ,
data : struct {
* structMarshalText
B coverMarshalText ` json:"b" `
} {
structMarshalText : & structMarshalText { A : coverMarshalText { } } ,
B : coverMarshalText { } ,
} ,
} ,
{
name : "PtrAnonymousHeadMarshalTextOmitEmpty" ,
data : struct {
* structMarshalTextOmitEmpty
B coverMarshalText ` json:"b,omitempty" `
} {
structMarshalTextOmitEmpty : & structMarshalTextOmitEmpty { A : coverMarshalText { } } ,
B : coverMarshalText { } ,
} ,
} ,
{
name : "PtrAnonymousHeadMarshalTextString" ,
data : struct {
* structMarshalTextString
B coverMarshalText ` json:"b,string" `
} {
structMarshalTextString : & structMarshalTextString { A : coverMarshalText { } } ,
B : coverMarshalText { } ,
} ,
} ,
{
name : "PtrAnonymousHeadPtrMarshalText" ,
data : struct {
* structPtrMarshalText
B coverPtrMarshalText ` json:"b" `
} {
structPtrMarshalText : & structPtrMarshalText { A : coverPtrMarshalText { } } ,
B : coverPtrMarshalText { } ,
} ,
} ,
{
name : "PtrAnonymousHeadPtrMarshalTextOmitEmpty" ,
data : struct {
* structPtrMarshalTextOmitEmpty
B coverPtrMarshalText ` json:"b,omitempty" `
} {
structPtrMarshalTextOmitEmpty : & structPtrMarshalTextOmitEmpty { A : coverPtrMarshalText { } } ,
B : coverPtrMarshalText { } ,
} ,
} ,
{
name : "PtrAnonymousHeadPtrMarshalTextString" ,
data : struct {
* structPtrMarshalTextString
B coverPtrMarshalText ` json:"b,string" `
} {
structPtrMarshalTextString : & structPtrMarshalTextString { A : coverPtrMarshalText { } } ,
B : coverPtrMarshalText { } ,
} ,
} ,
// PtrAnonymousHeadMarshalTextNil
{
name : "PtrAnonymousHeadMarshalTextNil" ,
data : struct {
* structMarshalText
B coverMarshalText ` json:"b" `
} {
structMarshalText : & structMarshalText { A : coverMarshalText { } } ,
B : coverMarshalText { } ,
} ,
} ,
{
name : "PtrAnonymousHeadMarshalTextNilOmitEmpty" ,
data : struct {
* structMarshalTextOmitEmpty
B coverMarshalText ` json:"b,omitempty" `
} {
structMarshalTextOmitEmpty : & structMarshalTextOmitEmpty { A : coverMarshalText { } } ,
B : coverMarshalText { } ,
} ,
} ,
{
name : "PtrAnonymousHeadMarshalTextNilString" ,
data : struct {
* structMarshalTextString
B coverMarshalText ` json:"b,string" `
} {
structMarshalTextString : & structMarshalTextString { A : coverMarshalText { } } ,
B : coverMarshalText { } ,
} ,
} ,
{
name : "PtrAnonymousHeadPtrMarshalTextNil" ,
data : struct {
* structPtrMarshalText
B coverPtrMarshalText ` json:"b" `
} {
structPtrMarshalText : & structPtrMarshalText { A : coverPtrMarshalText { } } ,
B : coverPtrMarshalText { } ,
} ,
} ,
{
name : "PtrAnonymousHeadPtrMarshalTextNilOmitEmpty" ,
data : struct {
* structPtrMarshalTextOmitEmpty
B coverPtrMarshalText ` json:"b,omitempty" `
} {
structPtrMarshalTextOmitEmpty : & structPtrMarshalTextOmitEmpty { A : coverPtrMarshalText { } } ,
B : coverPtrMarshalText { } ,
} ,
} ,
{
name : "PtrAnonymousHeadPtrMarshalTextNilString" ,
data : struct {
* structPtrMarshalTextString
B coverPtrMarshalText ` json:"b,string" `
} {
structPtrMarshalTextString : & structPtrMarshalTextString { A : coverPtrMarshalText { } } ,
B : coverPtrMarshalText { } ,
} ,
} ,
// NilPtrAnonymousHeadMarshalText
{
name : "NilPtrAnonymousHeadMarshalText" ,
data : struct {
* structMarshalText
B coverMarshalText ` json:"b" `
} {
structMarshalText : nil ,
B : coverMarshalText { } ,
} ,
} ,
{
name : "NilPtrAnonymousHeadMarshalTextOmitEmpty" ,
data : struct {
* structMarshalTextOmitEmpty
B coverMarshalText ` json:"b,omitempty" `
} {
structMarshalTextOmitEmpty : nil ,
B : coverMarshalText { } ,
} ,
} ,
{
name : "NilPtrAnonymousHeadMarshalTextString" ,
data : struct {
* structMarshalTextString
B coverMarshalText ` json:"b,string" `
} {
structMarshalTextString : nil ,
B : coverMarshalText { } ,
} ,
} ,
{
name : "NilPtrAnonymousHeadPtrMarshalText" ,
data : struct {
* structPtrMarshalText
B coverPtrMarshalText ` json:"b" `
} {
structPtrMarshalText : nil ,
B : coverPtrMarshalText { } ,
} ,
} ,
{
name : "NilPtrAnonymousHeadPtrMarshalTextOmitEmpty" ,
data : struct {
* structPtrMarshalTextOmitEmpty
B coverPtrMarshalText ` json:"b,omitempty" `
} {
structPtrMarshalTextOmitEmpty : nil ,
B : coverPtrMarshalText { } ,
} ,
} ,
{
name : "NilPtrAnonymousHeadPtrMarshalTextString" ,
data : struct {
* structPtrMarshalTextString
B coverPtrMarshalText ` json:"b,string" `
} {
structPtrMarshalTextString : nil ,
B : coverPtrMarshalText { } ,
} ,
} ,
// AnonymousHeadMarshalTextPtr
{
name : "AnonymousHeadMarshalTextPtr" ,
data : struct {
structMarshalTextPtr
B * coverMarshalText ` json:"b" `
} {
structMarshalTextPtr : structMarshalTextPtr { A : & coverMarshalText { } } ,
B : nil ,
} ,
} ,
{
name : "AnonymousHeadMarshalTextPtrOmitEmpty" ,
data : struct {
structMarshalTextPtrOmitEmpty
B * coverMarshalText ` json:"b,omitempty" `
} {
structMarshalTextPtrOmitEmpty : structMarshalTextPtrOmitEmpty { A : & coverMarshalText { } } ,
B : nil ,
} ,
} ,
{
name : "AnonymousHeadMarshalTextPtrString" ,
data : struct {
structMarshalTextPtrString
B * coverMarshalText ` json:"b,string" `
} {
structMarshalTextPtrString : structMarshalTextPtrString { A : & coverMarshalText { } } ,
B : nil ,
} ,
} ,
{
name : "AnonymousHeadPtrMarshalTextPtr" ,
data : struct {
structPtrMarshalTextPtr
B * coverPtrMarshalText ` json:"b" `
} {
structPtrMarshalTextPtr : structPtrMarshalTextPtr { A : & coverPtrMarshalText { } } ,
B : nil ,
} ,
} ,
{
name : "AnonymousHeadPtrMarshalTextPtrOmitEmpty" ,
data : struct {
structPtrMarshalTextPtrOmitEmpty
B * coverPtrMarshalText ` json:"b,omitempty" `
} {
structPtrMarshalTextPtrOmitEmpty : structPtrMarshalTextPtrOmitEmpty { A : & coverPtrMarshalText { } } ,
B : nil ,
} ,
} ,
{
name : "AnonymousHeadPtrMarshalTextPtrString" ,
data : struct {
structPtrMarshalTextPtrString
B * coverPtrMarshalText ` json:"b,string" `
} {
structPtrMarshalTextPtrString : structPtrMarshalTextPtrString { A : & coverPtrMarshalText { } } ,
B : nil ,
} ,
} ,
// AnonymousHeadMarshalTextPtrNil
{
name : "AnonymousHeadMarshalTextPtrNil" ,
data : struct {
structMarshalTextPtr
B * coverMarshalText ` json:"b" `
} {
structMarshalTextPtr : structMarshalTextPtr { A : nil } ,
B : & coverMarshalText { } ,
} ,
} ,
{
name : "AnonymousHeadMarshalTextPtrNilOmitEmpty" ,
data : struct {
structMarshalTextPtrOmitEmpty
B * coverMarshalText ` json:"b,omitempty" `
} {
structMarshalTextPtrOmitEmpty : structMarshalTextPtrOmitEmpty { A : nil } ,
B : & coverMarshalText { } ,
} ,
} ,
{
name : "AnonymousHeadMarshalTextPtrNilString" ,
data : struct {
structMarshalTextPtrString
B * coverMarshalText ` json:"b,string" `
} {
structMarshalTextPtrString : structMarshalTextPtrString { A : nil } ,
B : & coverMarshalText { } ,
} ,
} ,
{
name : "AnonymousHeadPtrMarshalTextPtrNil" ,
data : struct {
structPtrMarshalTextPtr
B * coverPtrMarshalText ` json:"b" `
} {
structPtrMarshalTextPtr : structPtrMarshalTextPtr { A : nil } ,
B : & coverPtrMarshalText { } ,
} ,
} ,
{
name : "AnonymousHeadPtrMarshalTextPtrNilOmitEmpty" ,
data : struct {
structPtrMarshalTextPtrOmitEmpty
B * coverPtrMarshalText ` json:"b,omitempty" `
} {
structPtrMarshalTextPtrOmitEmpty : structPtrMarshalTextPtrOmitEmpty { A : nil } ,
B : & coverPtrMarshalText { } ,
} ,
} ,
{
name : "AnonymousHeadPtrMarshalTextPtrNilString" ,
data : struct {
structPtrMarshalTextPtrString
B * coverPtrMarshalText ` json:"b,string" `
} {
structPtrMarshalTextPtrString : structPtrMarshalTextPtrString { A : nil } ,
B : & coverPtrMarshalText { } ,
} ,
} ,
// PtrAnonymousHeadMarshalTextPtr
{
name : "PtrAnonymousHeadMarshalTextPtr" ,
data : struct {
* structMarshalTextPtr
B * coverMarshalText ` json:"b" `
} {
structMarshalTextPtr : & structMarshalTextPtr { A : & coverMarshalText { } } ,
B : nil ,
} ,
} ,
{
name : "PtrAnonymousHeadMarshalTextPtrOmitEmpty" ,
data : struct {
* structMarshalTextPtrOmitEmpty
B * coverMarshalText ` json:"b,omitempty" `
} {
structMarshalTextPtrOmitEmpty : & structMarshalTextPtrOmitEmpty { A : & coverMarshalText { } } ,
B : nil ,
} ,
} ,
{
name : "PtrAnonymousHeadMarshalTextPtrString" ,
data : struct {
* structMarshalTextPtrString
B * coverMarshalText ` json:"b,string" `
} {
structMarshalTextPtrString : & structMarshalTextPtrString { A : & coverMarshalText { } } ,
B : nil ,
} ,
} ,
{
name : "PtrAnonymousHeadPtrMarshalTextPtr" ,
data : struct {
* structPtrMarshalTextPtr
B * coverPtrMarshalText ` json:"b" `
} {
structPtrMarshalTextPtr : & structPtrMarshalTextPtr { A : & coverPtrMarshalText { } } ,
B : nil ,
} ,
} ,
{
name : "PtrAnonymousHeadPtrMarshalTextPtrOmitEmpty" ,
data : struct {
* structPtrMarshalTextPtrOmitEmpty
B * coverPtrMarshalText ` json:"b,omitempty" `
} {
structPtrMarshalTextPtrOmitEmpty : & structPtrMarshalTextPtrOmitEmpty { A : & coverPtrMarshalText { } } ,
B : nil ,
} ,
} ,
{
name : "PtrAnonymousHeadPtrMarshalTextPtrString" ,
data : struct {
* structPtrMarshalTextPtrString
B * coverPtrMarshalText ` json:"b,string" `
} {
structPtrMarshalTextPtrString : & structPtrMarshalTextPtrString { A : & coverPtrMarshalText { } } ,
B : nil ,
} ,
} ,
// NilPtrAnonymousHeadMarshalTextPtr
{
name : "NilPtrAnonymousHeadMarshalTextPtr" ,
data : struct {
* structMarshalTextPtr
B * coverMarshalText ` json:"b" `
} {
structMarshalTextPtr : nil ,
B : & coverMarshalText { } ,
} ,
} ,
{
name : "NilPtrAnonymousHeadMarshalTextPtrOmitEmpty" ,
data : struct {
* structMarshalTextPtrOmitEmpty
B * coverMarshalText ` json:"b,omitempty" `
} {
structMarshalTextPtrOmitEmpty : nil ,
B : & coverMarshalText { } ,
} ,
} ,
{
name : "NilPtrAnonymousHeadMarshalTextPtrString" ,
data : struct {
* structMarshalTextPtrString
B * coverMarshalText ` json:"b,string" `
} {
structMarshalTextPtrString : nil ,
B : & coverMarshalText { } ,
} ,
} ,
{
name : "NilPtrAnonymousHeadPtrMarshalTextPtr" ,
data : struct {
* structPtrMarshalTextPtr
B * coverPtrMarshalText ` json:"b" `
} {
structPtrMarshalTextPtr : nil ,
B : & coverPtrMarshalText { } ,
} ,
} ,
{
name : "NilPtrAnonymousHeadPtrMarshalTextPtrOmitEmpty" ,
data : struct {
* structPtrMarshalTextPtrOmitEmpty
B * coverPtrMarshalText ` json:"b,omitempty" `
} {
structPtrMarshalTextPtrOmitEmpty : nil ,
B : & coverPtrMarshalText { } ,
} ,
} ,
{
name : "NilPtrAnonymousHeadPtrMarshalTextPtrString" ,
data : struct {
* structPtrMarshalTextPtrString
B * coverPtrMarshalText ` json:"b,string" `
} {
structPtrMarshalTextPtrString : nil ,
B : & coverPtrMarshalText { } ,
} ,
} ,
// AnonymousHeadMarshalTextOnly
{
name : "AnonymousHeadMarshalTextOnly" ,
data : struct {
structMarshalText
} {
structMarshalText : structMarshalText { A : coverMarshalText { } } ,
} ,
} ,
{
name : "AnonymousHeadMarshalTextOnlyOmitEmpty" ,
data : struct {
structMarshalTextOmitEmpty
} {
structMarshalTextOmitEmpty : structMarshalTextOmitEmpty { A : coverMarshalText { } } ,
} ,
} ,
{
name : "AnonymousHeadMarshalTextOnlyString" ,
data : struct {
structMarshalTextString
} {
structMarshalTextString : structMarshalTextString { A : coverMarshalText { } } ,
} ,
} ,
{
name : "AnonymousHeadPtrMarshalTextOnly" ,
data : struct {
structPtrMarshalText
} {
structPtrMarshalText : structPtrMarshalText { A : coverPtrMarshalText { } } ,
} ,
} ,
{
name : "AnonymousHeadPtrMarshalTextOnlyOmitEmpty" ,
data : struct {
structPtrMarshalTextOmitEmpty
} {
structPtrMarshalTextOmitEmpty : structPtrMarshalTextOmitEmpty { A : coverPtrMarshalText { } } ,
} ,
} ,
{
name : "AnonymousHeadPtrMarshalTextOnlyString" ,
data : struct {
structPtrMarshalTextString
} {
structPtrMarshalTextString : structPtrMarshalTextString { A : coverPtrMarshalText { } } ,
} ,
} ,
// PtrAnonymousHeadMarshalTextOnly
{
name : "PtrAnonymousHeadMarshalTextOnly" ,
data : struct {
* structMarshalText
} {
structMarshalText : & structMarshalText { A : coverMarshalText { } } ,
} ,
} ,
{
name : "PtrAnonymousHeadMarshalTextOnlyOmitEmpty" ,
data : struct {
* structMarshalTextOmitEmpty
} {
structMarshalTextOmitEmpty : & structMarshalTextOmitEmpty { A : coverMarshalText { } } ,
} ,
} ,
{
name : "PtrAnonymousHeadMarshalTextOnlyString" ,
data : struct {
* structMarshalTextString
} {
structMarshalTextString : & structMarshalTextString { A : coverMarshalText { } } ,
} ,
} ,
{
name : "PtrAnonymousHeadPtrMarshalTextOnly" ,
data : struct {
* structPtrMarshalText
} {
structPtrMarshalText : & structPtrMarshalText { A : coverPtrMarshalText { } } ,
} ,
} ,
{
name : "PtrAnonymousHeadPtrMarshalTextOnlyOmitEmpty" ,
data : struct {
* structPtrMarshalTextOmitEmpty
} {
structPtrMarshalTextOmitEmpty : & structPtrMarshalTextOmitEmpty { A : coverPtrMarshalText { } } ,
} ,
} ,
{
name : "PtrAnonymousHeadPtrMarshalTextOnlyString" ,
data : struct {
* structPtrMarshalTextString
} {
structPtrMarshalTextString : & structPtrMarshalTextString { A : coverPtrMarshalText { } } ,
} ,
} ,
// NilPtrAnonymousHeadMarshalTextOnly
{
name : "NilPtrAnonymousHeadMarshalTextOnly" ,
data : struct {
* structMarshalText
} {
structMarshalText : nil ,
} ,
} ,
{
name : "NilPtrAnonymousHeadMarshalTextOnlyOmitEmpty" ,
data : struct {
* structMarshalTextOmitEmpty
} {
structMarshalTextOmitEmpty : nil ,
} ,
} ,
{
name : "NilPtrAnonymousHeadMarshalTextOnlyString" ,
data : struct {
* structMarshalTextString
} {
structMarshalTextString : nil ,
} ,
} ,
{
name : "NilPtrAnonymousHeadPtrMarshalTextOnly" ,
data : struct {
* structPtrMarshalText
} {
structPtrMarshalText : nil ,
} ,
} ,
{
name : "NilPtrAnonymousHeadPtrMarshalTextOnlyOmitEmpty" ,
data : struct {
* structPtrMarshalTextOmitEmpty
} {
structPtrMarshalTextOmitEmpty : nil ,
} ,
} ,
{
name : "NilPtrAnonymousHeadPtrMarshalTextOnlyString" ,
data : struct {
* structPtrMarshalTextString
} {
structPtrMarshalTextString : nil ,
} ,
} ,
// AnonymousHeadMarshalTextPtrOnly
{
name : "AnonymousHeadMarshalTextPtrOnly" ,
data : struct {
structMarshalTextPtr
} {
structMarshalTextPtr : structMarshalTextPtr { A : & coverMarshalText { } } ,
} ,
} ,
{
name : "AnonymousHeadMarshalTextPtrOnlyOmitEmpty" ,
data : struct {
structMarshalTextPtrOmitEmpty
} {
structMarshalTextPtrOmitEmpty : structMarshalTextPtrOmitEmpty { A : & coverMarshalText { } } ,
} ,
} ,
{
name : "AnonymousHeadMarshalTextPtrOnlyString" ,
data : struct {
structMarshalTextPtrString
} {
structMarshalTextPtrString : structMarshalTextPtrString { A : & coverMarshalText { } } ,
} ,
} ,
{
name : "AnonymousHeadPtrMarshalTextPtrOnly" ,
data : struct {
structPtrMarshalTextPtr
} {
structPtrMarshalTextPtr : structPtrMarshalTextPtr { A : & coverPtrMarshalText { } } ,
} ,
} ,
{
name : "AnonymousHeadPtrMarshalTextPtrOnlyOmitEmpty" ,
data : struct {
structPtrMarshalTextPtrOmitEmpty
} {
structPtrMarshalTextPtrOmitEmpty : structPtrMarshalTextPtrOmitEmpty { A : & coverPtrMarshalText { } } ,
} ,
} ,
{
name : "AnonymousHeadPtrMarshalTextPtrOnlyString" ,
data : struct {
structPtrMarshalTextPtrString
} {
structPtrMarshalTextPtrString : structPtrMarshalTextPtrString { A : & coverPtrMarshalText { } } ,
} ,
} ,
// AnonymousHeadMarshalTextPtrNilOnly
{
name : "AnonymousHeadMarshalTextPtrNilOnly" ,
data : struct {
structMarshalTextPtr
} {
structMarshalTextPtr : structMarshalTextPtr { A : nil } ,
} ,
} ,
{
name : "AnonymousHeadMarshalTextPtrNilOnlyOmitEmpty" ,
data : struct {
structMarshalTextPtrOmitEmpty
} {
structMarshalTextPtrOmitEmpty : structMarshalTextPtrOmitEmpty { A : nil } ,
} ,
} ,
{
name : "AnonymousHeadMarshalTextPtrNilOnlyString" ,
data : struct {
structMarshalTextPtrString
} {
structMarshalTextPtrString : structMarshalTextPtrString { A : nil } ,
} ,
} ,
{
name : "AnonymousHeadPtrMarshalTextPtrNilOnly" ,
data : struct {
structPtrMarshalTextPtr
} {
structPtrMarshalTextPtr : structPtrMarshalTextPtr { A : nil } ,
} ,
} ,
{
name : "AnonymousHeadPtrMarshalTextPtrNilOnlyOmitEmpty" ,
data : struct {
structPtrMarshalTextPtrOmitEmpty
} {
structPtrMarshalTextPtrOmitEmpty : structPtrMarshalTextPtrOmitEmpty { A : nil } ,
} ,
} ,
{
name : "AnonymousHeadPtrMarshalTextPtrNilOnlyString" ,
data : struct {
structPtrMarshalTextPtrString
} {
structPtrMarshalTextPtrString : structPtrMarshalTextPtrString { A : nil } ,
} ,
} ,
// PtrAnonymousHeadMarshalTextPtrOnly
{
name : "PtrAnonymousHeadMarshalTextPtrOnly" ,
data : struct {
* structMarshalTextPtr
} {
structMarshalTextPtr : & structMarshalTextPtr { A : & coverMarshalText { } } ,
} ,
} ,
{
name : "PtrAnonymousHeadMarshalTextPtrOnlyOmitEmpty" ,
data : struct {
* structMarshalTextPtrOmitEmpty
} {
structMarshalTextPtrOmitEmpty : & structMarshalTextPtrOmitEmpty { A : & coverMarshalText { } } ,
} ,
} ,
{
name : "PtrAnonymousHeadMarshalTextPtrOnlyString" ,
data : struct {
* structMarshalTextPtrString
} {
structMarshalTextPtrString : & structMarshalTextPtrString { A : & coverMarshalText { } } ,
} ,
} ,
{
name : "PtrAnonymousHeadPtrMarshalTextPtrOnly" ,
data : struct {
* structPtrMarshalTextPtr
} {
structPtrMarshalTextPtr : & structPtrMarshalTextPtr { A : & coverPtrMarshalText { } } ,
} ,
} ,
{
name : "PtrAnonymousHeadPtrMarshalTextPtrOnlyOmitEmpty" ,
data : struct {
* structPtrMarshalTextPtrOmitEmpty
} {
structPtrMarshalTextPtrOmitEmpty : & structPtrMarshalTextPtrOmitEmpty { A : & coverPtrMarshalText { } } ,
} ,
} ,
{
name : "PtrAnonymousHeadPtrMarshalTextPtrOnlyString" ,
data : struct {
* structPtrMarshalTextPtrString
} {
structPtrMarshalTextPtrString : & structPtrMarshalTextPtrString { A : & coverPtrMarshalText { } } ,
} ,
} ,
// NilPtrAnonymousHeadMarshalTextPtrOnly
{
name : "NilPtrAnonymousHeadMarshalTextPtrOnly" ,
data : struct {
* structMarshalTextPtr
} {
structMarshalTextPtr : nil ,
} ,
} ,
{
name : "NilPtrAnonymousHeadMarshalTextPtrOnlyOmitEmpty" ,
data : struct {
* structMarshalTextPtrOmitEmpty
} {
structMarshalTextPtrOmitEmpty : nil ,
} ,
} ,
{
name : "NilPtrAnonymousHeadMarshalTextPtrOnlyString" ,
data : struct {
* structMarshalTextPtrString
} {
structMarshalTextPtrString : nil ,
} ,
} ,
{
name : "NilPtrAnonymousHeadPtrMarshalTextPtrOnly" ,
data : struct {
* structPtrMarshalTextPtr
} {
structPtrMarshalTextPtr : nil ,
} ,
} ,
{
name : "NilPtrAnonymousHeadPtrMarshalTextPtrOnlyOmitEmpty" ,
data : struct {
* structPtrMarshalTextPtrOmitEmpty
} {
structPtrMarshalTextPtrOmitEmpty : nil ,
} ,
} ,
{
name : "NilPtrAnonymousHeadPtrMarshalTextPtrOnlyString" ,
data : struct {
* structPtrMarshalTextPtrString
} {
structPtrMarshalTextPtrString : nil ,
} ,
} ,
}
for _ , test := range tests {
for _ , indent := range [ ] bool { true , false } {
for _ , htmlEscape := range [ ] bool { true , false } {
2021-11-27 20:14:57 +03:00
t . Run ( fmt . Sprintf ( "%s_indent_%t_escape_%t" , test . name , indent , htmlEscape ) , func ( t * testing . T ) {
var buf bytes . Buffer
enc := json . NewEncoder ( & buf )
enc . SetEscapeHTML ( htmlEscape )
if indent {
enc . SetIndent ( "" , " " )
}
if err := enc . Encode ( test . data ) ; err != nil {
t . Fatalf ( "%s(htmlEscape:%v,indent:%v): %+v: %s" , test . name , htmlEscape , indent , test . data , err )
}
stdresult := encodeByEncodingJSON ( test . data , indent , htmlEscape )
if buf . String ( ) != stdresult {
t . Errorf ( "%s(htmlEscape:%v,indent:%v): doesn't compatible with encoding/json. expected %q but got %q" , test . name , htmlEscape , indent , stdresult , buf . String ( ) )
}
} )
2021-03-11 13:29:35 +03:00
}
}
}
}