1
0
mirror of https://github.com/go-micro/go-micro.git synced 2024-12-12 08:23:58 +02:00
go-micro/errors/errors_test.go

48 lines
813 B
Go
Raw Normal View History

2016-03-18 13:01:55 +02:00
package errors
import (
"net/http"
"testing"
)
func TestErrors(t *testing.T) {
testData := []*Error{
{
2016-03-18 13:01:55 +02:00
Id: "test",
Code: 500,
Detail: "Internal server error",
Status: http.StatusText(500),
},
}
for _, e := range testData {
ne := New(e.Id, e.Detail, e.Code)
if e.Error() != ne.Error() {
2016-04-06 19:03:27 +02:00
t.Fatalf("Expected %s got %s", e.Error(), ne.Error())
2016-03-18 13:01:55 +02:00
}
pe := Parse(ne.Error())
if pe == nil {
2016-04-06 19:03:27 +02:00
t.Fatalf("Expected error got nil %v", pe)
2016-03-18 13:01:55 +02:00
}
if pe.Id != e.Id {
2016-04-06 19:03:27 +02:00
t.Fatalf("Expected %s got %s", e.Id, pe.Id)
2016-03-18 13:01:55 +02:00
}
if pe.Detail != e.Detail {
2016-04-06 19:03:27 +02:00
t.Fatalf("Expected %s got %s", e.Detail, pe.Detail)
2016-03-18 13:01:55 +02:00
}
if pe.Code != e.Code {
2017-02-25 16:53:25 +02:00
t.Fatalf("Expected %d got %d", e.Code, pe.Code)
2016-03-18 13:01:55 +02:00
}
if pe.Status != e.Status {
2016-04-06 19:03:27 +02:00
t.Fatalf("Expected %s got %s", e.Status, pe.Status)
2016-03-18 13:01:55 +02:00
}
}
}