Add tests

Signed-off-by: Matej Vasek <mvasek@redhat.com>
This commit is contained in:
Matej Vasek
2021-11-01 22:53:49 +01:00
parent 48e1cca9f8
commit d0dfc5e223

View File

@ -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")
}
}