forked from mirror/logrus
47 lines
952 B
Go
47 lines
952 B
Go
|
package logrus
|
||
|
|
||
|
import (
|
||
|
"encoding/json"
|
||
|
"errors"
|
||
|
|
||
|
"testing"
|
||
|
)
|
||
|
|
||
|
func TestErrorNotLost(t *testing.T) {
|
||
|
formatter := &JSONFormatter{}
|
||
|
|
||
|
b, err := formatter.Format(WithField("error", errors.New("wild walrus")))
|
||
|
if err != nil {
|
||
|
t.Fatal("Unable to format entry: ", err)
|
||
|
}
|
||
|
|
||
|
entry := make(map[string]interface{})
|
||
|
err = json.Unmarshal(b, &entry)
|
||
|
if err != nil {
|
||
|
t.Fatal("Unable to unmarshal formatted entry: ", err)
|
||
|
}
|
||
|
|
||
|
if entry["error"] != "wild walrus" {
|
||
|
t.Fatal("Error field not set")
|
||
|
}
|
||
|
}
|
||
|
|
||
|
func TestErrorNotLostOnFieldNotNamedError(t *testing.T) {
|
||
|
formatter := &JSONFormatter{}
|
||
|
|
||
|
b, err := formatter.Format(WithField("omg", errors.New("wild walrus")))
|
||
|
if err != nil {
|
||
|
t.Fatal("Unable to format entry: ", err)
|
||
|
}
|
||
|
|
||
|
entry := make(map[string]interface{})
|
||
|
err = json.Unmarshal(b, &entry)
|
||
|
if err != nil {
|
||
|
t.Fatal("Unable to unmarshal formatted entry: ", err)
|
||
|
}
|
||
|
|
||
|
if entry["omg"] != "wild walrus" {
|
||
|
t.Fatal("Error field not set")
|
||
|
}
|
||
|
}
|