typo in timeout tests + adding tests for standarderror

This commit is contained in:
Julien Neuhart
2019-07-08 17:50:31 +02:00
parent 9af00d6d58
commit 9c6f23d7cc
5 changed files with 77 additions and 4 deletions

View File

@@ -0,0 +1,70 @@
package standarderror
import (
"errors"
"testing"
"github.com/stretchr/testify/assert"
)
func scenario1() error {
rootErr := errors.New("root error")
nestedErr := &Error{
Code: Invalid,
Op: "bar",
Message: "nested error",
Err: rootErr,
}
err := &Error{
Op: "foo",
Err: nestedErr,
}
return err
}
func scenario2() error {
nestedErr := &Error{
Code: Invalid,
Op: "bar",
Message: "nested error",
}
err := &Error{
Code: Internal,
Op: "foo",
Err: nestedErr,
}
return err
}
func TestError(t *testing.T) {
err := scenario1()
assert.Equal(t, "root error", err.Error())
err = scenario2()
assert.Equal(t, "<invalid> nested error", err.Error())
}
func TestCode(t *testing.T) {
assert.Equal(t, "", Code(nil))
err := scenario1()
assert.Equal(t, Invalid, Code(err))
err = scenario2()
assert.Equal(t, Internal, Code(err))
err = errors.New("some error")
assert.Equal(t, Internal, Code(err))
}
func TestMessage(t *testing.T) {
assert.Equal(t, "", Message(nil))
err := scenario1()
assert.Equal(t, "nested error", Message(err))
err = errors.New("some error")
assert.Equal(t, defaultMessage, Message(err))
}
func TestOp(t *testing.T) {
assert.Equal(t, "", Op(nil))
err := scenario1()
assert.Equal(t, "foo: bar", Op(err))
err = errors.New("some error")
assert.Equal(t, "", Op(err))
}