@@ -6,9 +6,10 @@ package http
6
6
7
7
import (
8
8
"fmt"
9
- "github.com/stretchr/testify/assert"
10
9
ihttp "net/http"
11
10
11
+ "github.com/stretchr/testify/assert"
12
+
12
13
"testing"
13
14
)
14
15
@@ -55,27 +56,50 @@ func TestWriteErrorHeaderToString(t *testing.T) {
55
56
56
57
func TestErrorIfaceError (t * testing.T ) {
57
58
tests := []struct {
59
+ name string
58
60
statusCode int
59
61
err error
60
62
code string
61
63
message string
62
64
expected string
63
65
}{
64
- {statusCode : 418 , err : fmt .Errorf ("original test message" ), code : "" , message : "" , expected : "original test message" },
65
- {statusCode : 418 , err : fmt .Errorf ("original test message" ), code : "bad request" , message : "is this a teapot?" , expected : "original test message" },
66
- {statusCode : 418 , err : nil , code : "bad request" , message : "is this a teapot?" , expected : "bad request: is this a teapot?" },
67
- {statusCode : 418 , err : nil , code : "I'm a teapot" , message : "" , expected : "Unexpected status code 418" },
66
+ {name : "TestNestedErrorNotNilCode0Message0" ,
67
+ statusCode : 418 ,
68
+ err : fmt .Errorf ("original test message" ),
69
+ code : "" ,
70
+ message : "" ,
71
+ expected : "original test message" },
72
+ {name : "TestNestedErrorNotNilCodeXMessageX" ,
73
+ statusCode : 418 ,
74
+ err : fmt .Errorf ("original test message" ),
75
+ code : "bad request" ,
76
+ message : "is this a teapot?" ,
77
+ expected : "original test message" },
78
+ {name : "TestNestedErrorNilCodeXMessageX" ,
79
+ statusCode : 418 ,
80
+ err : nil ,
81
+ code : "bad request" ,
82
+ message : "is this a teapot?" ,
83
+ expected : "bad request: is this a teapot?" },
84
+ {name : "TestNesterErrorNilCodeXMessage0" ,
85
+ statusCode : 418 ,
86
+ err : nil ,
87
+ code : "I'm a teapot" ,
88
+ message : "" ,
89
+ expected : "Unexpected status code 418" },
68
90
}
69
91
70
92
for _ , test := range tests {
71
- err := Error {
72
- StatusCode : test .statusCode ,
73
- Code : test .code ,
74
- Message : test .message ,
75
- Err : test .err ,
76
- RetryAfter : 0 ,
77
- Header : ihttp.Header {},
78
- }
79
- assert .Equal (t , test .expected , err .Error ())
93
+ t .Run (test .name , func (t * testing.T ) {
94
+ err := Error {
95
+ StatusCode : test .statusCode ,
96
+ Code : test .code ,
97
+ Message : test .message ,
98
+ Err : test .err ,
99
+ RetryAfter : 0 ,
100
+ Header : ihttp.Header {},
101
+ }
102
+ assert .Equal (t , test .expected , err .Error ())
103
+ })
80
104
}
81
105
}
0 commit comments