From 8e2fa2b18662da4e42bc2be5f20103dd5e2cb8f8 Mon Sep 17 00:00:00 2001 From: Shulhan Date: Sat, 11 Mar 2023 16:19:56 +0700 Subject: lib/http: add integration test for request HEAD for Range The test check the response header, whether the Accept-Ranges printed or not. --- lib/http/server_test.go | 32 ++++++++++++++++++++++++++++ lib/http/testdata/server/head_range_test.txt | 7 ++++++ 2 files changed, 39 insertions(+) create mode 100644 lib/http/testdata/server/head_range_test.txt (limited to 'lib/http') diff --git a/lib/http/server_test.go b/lib/http/server_test.go index 7bde8303..bea01131 100644 --- a/lib/http/server_test.go +++ b/lib/http/server_test.go @@ -956,3 +956,35 @@ func TestServer_handleRange(t *testing.T) { test.Assert(t, tag, string(exp), got) } } + +func TestServer_handleRange_HEAD(t *testing.T) { + var ( + clOpts = &ClientOptions{ + ServerUrl: testServerUrl, + } + cl = NewClient(clOpts) + + tdata *test.Data + err error + ) + + tdata, err = test.LoadData(`testdata/server/head_range_test.txt`) + if err != nil { + t.Fatal(err) + } + + var httpRes *http.Response + + httpRes, err = cl.Client.Head(testServerUrl + `/index.html`) + if err != nil { + t.Fatal(err) + } + + var ( + skipHeaders = []string{HeaderDate, HeaderETag} + got = dumpHttpResponse(httpRes, skipHeaders) + tag = `http_headers` + exp = tdata.Output[tag] + ) + test.Assert(t, tag, string(exp), got) +} diff --git a/lib/http/testdata/server/head_range_test.txt b/lib/http/testdata/server/head_range_test.txt new file mode 100644 index 00000000..5376d7d1 --- /dev/null +++ b/lib/http/testdata/server/head_range_test.txt @@ -0,0 +1,7 @@ +<<< http_headers +HTTP/1.1 200 OK +Accept-Ranges: bytes +Content-Length: 40 +Content-Type: text/html; charset=utf-8 + +<<< END -- cgit v1.3-5-g9baa