Skip to content

Commit 4692e21

Browse files
committed
Add test for SetHeader
1 parent a6926a8 commit 4692e21

File tree

1 file changed

+24
-0
lines changed

1 file changed

+24
-0
lines changed

web_test.go

+24
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,14 @@ func getTestResponse(method string, path string, body string, headers map[string
109109
return buildTestResponse(&buf)
110110
}
111111

112+
func testGet(path string, headers map[string]string) *testResponse {
113+
var header http.Header
114+
for k,v := range headers {
115+
header.Set(k, v)
116+
}
117+
return getTestResponse("GET", path, "", header, nil)
118+
}
119+
112120
type Test struct {
113121
method string
114122
path string
@@ -204,6 +212,11 @@ func init() {
204212
ctx.SetHeader("Access-Control-Max-Age", "1000", true)
205213
ctx.WriteHeader(200)
206214
})
215+
216+
Get("/dupeheader", func(ctx *Context) string {
217+
ctx.SetHeader("Server", "myserver", true)
218+
return ""
219+
})
207220
}
208221

209222
var tests = []Test{
@@ -534,3 +547,14 @@ func TestSlug(t *testing.T) {
534547
}
535548
}
536549
}
550+
551+
// tests that we don't duplicate headers
552+
func TestDuplicateHeader(t *testing.T) {
553+
resp := testGet("/dupeheader", nil)
554+
if len(resp.headers["Server"]) > 1 {
555+
t.Fatalf("Expected only one header, got %#v", resp.headers["Server"])
556+
}
557+
if resp.headers["Server"][0] != "myserver" {
558+
t.Fatalf("Incorrect header, exp 'myserver', got %q", resp.headers["Server"][0])
559+
}
560+
}

0 commit comments

Comments
 (0)