You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

43 lines
1.0 KiB

package response
import (
"errors"
"testing"
)
func TestAppendError(t *testing.T) {
const errMsg = "expected error"
envelope := Envelope{}
e := envelope.AppendError(errors.New(errMsg))
if e.Success {
t.Error("error response Success must be false")
}
if e.Result != nil {
t.Error("error response Result must be nil")
}
if len(e.Errors) != 1 {
t.Error("error response Errors must be set")
} else if e.Errors[0] != errMsg {
t.Errorf("error response error message must be \"%s\" but is \"%s\"", errMsg, e.Errors[0])
}
}
func TestSetSuccess(t *testing.T) {
const result = "expected result"
envelope := Envelope{}
e := envelope.SetSuccess(result)
if !e.Success {
t.Error("success response Success must be true")
}
if e.Result == nil {
t.Error("success response Result must be set")
}
if msg, ok := e.Result.(string); ok {
if msg != result {
t.Errorf("success response result must be \"%s\" but is \"%s\"", result, msg)
}
}
if len(e.Errors) > 0 {
t.Error("success response Errors must be empty")
}
}