parent
48e1cca9f8
commit
d0dfc5e223
|
@ -138,3 +138,51 @@ func TestEqualVersion(t *testing.T) {
|
|||
rr.Body.String(), expected)
|
||||
}
|
||||
}
|
||||
|
||||
func TestErrorEncoderFuncOmit(t *testing.T) {
|
||||
data, err := json.Marshal(struct {
|
||||
Err error `json:"err,omitempty"`
|
||||
Errs []error `json:"errs,omitempty"`
|
||||
}{})
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
dataAsMap := make(map[string]interface{})
|
||||
err = json.Unmarshal(data, &dataAsMap)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
_, ok := dataAsMap["err"]
|
||||
if ok {
|
||||
t.Errorf("the `err` field should have been omitted")
|
||||
}
|
||||
_, ok = dataAsMap["errs"]
|
||||
if ok {
|
||||
t.Errorf("the `errs` field should have been omitted")
|
||||
}
|
||||
|
||||
dataAsMap = make(map[string]interface{})
|
||||
data, err = json.Marshal(struct {
|
||||
Err error `json:"err"`
|
||||
Errs []error `json:"errs"`
|
||||
}{})
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
err = json.Unmarshal(data, &dataAsMap)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
_, ok = dataAsMap["err"]
|
||||
if !ok {
|
||||
t.Errorf("the `err` field shouldn't have been omitted")
|
||||
}
|
||||
_, ok = dataAsMap["errs"]
|
||||
if !ok {
|
||||
t.Errorf("the `errs` field shouldn't have been omitted")
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue