package util import ( "errors" "testing" "github.com/stretchr/testify/assert" ) func TestErrorWithCauseChain(t *testing.T) { err := &Err{ Message: "err1", Code: AssertionError, Cause: &Err{ Message: "err2", Code: AssertionError, Cause: errors.New("err3"), }, } expected := `AssertionError: err1 caused by AssertionError: err2 caused by err3` assert.Equal(t, expected, ErrorWithCauseChain(err)) }