@@ -4,7 +4,6 @@ package errorx
44
55import (
66 "errors"
7- "fmt"
87 "io"
98 "testing"
109
@@ -103,46 +102,3 @@ func TestErrorIs(t *testing.T) {
103102 })
104103}
105104
106- func TestErrorAs (t * testing.T ) {
107- t .Run ("Trivial" , func (t * testing.T ) {
108- err := fooReturnsError ()
109- target := testType .NewWithNoMessage ()
110- require .True (t , errors .As (err , & target ))
111- require .EqualValues (t , "whoops" , target .Message ())
112- output := fmt .Sprintf ("%+v" , target )
113- require .Contains (t , output , "fooReturnsError" , output )
114- })
115-
116- // Current errors.As allows no customization in this behaviour; if go types are assignable, here we go
117- t .Run ("NegativeBroken" , func (t * testing.T ) {
118- err := fooReturnsError ()
119- target := testTypeBar1 .NewWithNoMessage ()
120- require .True (t , errors .As (err , & target ))
121- require .EqualValues (t , "whoops" , target .Message ())
122- require .True (t , IsOfType (target , testType ))
123- require .False (t , IsOfType (target , testTypeBar1 ))
124- })
125-
126- t .Run ("Negative" , func (t * testing.T ) {
127- err := io .EOF
128- target := testTypeBar1 .NewWithNoMessage ()
129- require .False (t , errors .As (err , & target ))
130- })
131-
132- t .Run ("DecorateForeign" , func (t * testing.T ) {
133- err := Decorate (myErr ("test" ),"" )
134- var target myErr
135- require .True (t , errors .As (err , & target ))
136- require .EqualValues (t , "test" , target .Error ())
137- })
138- }
139-
140- func fooReturnsError () error {
141- return testType .New ("whoops" )
142- }
143-
144- type myErr string
145-
146- func (e myErr ) Error () string {
147- return string (e )
148- }
0 commit comments