Added tests for HTTP/1.0 requests regarding 'Connection: close' handling

This commit is contained in:
Aliaksandr Valialkin
2016-02-22 18:18:50 +02:00
parent 21a70cc5b8
commit 4a29aeb2bd
+26
View File
@@ -10,6 +10,32 @@ import (
"testing"
)
func TestRequestHeaderHTTP10ConnectionClose(t *testing.T) {
s := "GET / HTTP/1.0\r\nHost: foobar\r\n\r\n"
var h RequestHeader
br := bufio.NewReader(bytes.NewBufferString(s))
if err := h.Read(br); err != nil {
t.Fatalf("unexpected error: %s", err)
}
if !h.ConnectionClose() {
t.Fatalf("expecting 'Connection: close' request header")
}
}
func TestRequestHeaderHTTP10ConnectionKeepAlive(t *testing.T) {
s := "GET / HTTP/1.0\r\nHost: foobar\r\nConnection: keep-alive\r\n\r\n"
var h RequestHeader
br := bufio.NewReader(bytes.NewBufferString(s))
if err := h.Read(br); err != nil {
t.Fatalf("unexpected error: %s", err)
}
if h.ConnectionClose() {
t.Fatalf("unexpected 'Connection: close' request header")
}
}
func TestBufferStartEnd(t *testing.T) {
testBufferStartEnd(t, "", "", "")
testBufferStartEnd(t, "foobar", "foobar", "")