diff --git a/CHANGES b/CHANGES index 2622c81d7..f5ffabd1c 100644 --- a/CHANGES +++ b/CHANGES @@ -7,8 +7,8 @@ Changelog Daniel Fandrich (14 Jul 2008) -- Added test1040 and test1041 to test -C - on HTTP. Test 1041 failed so it's - added to DISABLED. +- Added test1040 through test1043 to test -C - on HTTP. Test 1041 failed so + it's added to DISABLED. Yang Tse (14 Jul 2008) - HTTP_ONLY definition check in lib/setup.h is now done once that configuration diff --git a/tests/data/Makefile.am b/tests/data/Makefile.am index dbefa9ca0..625bc5fd0 100644 --- a/tests/data/Makefile.am +++ b/tests/data/Makefile.am @@ -53,7 +53,7 @@ EXTRA_DIST = test1 test108 test117 test127 test20 test27 test34 test46 \ test1024 test1025 test555 test1026 test1027 test1028 test1029 test1030 \ test556 test1031 test628 test629 test630 test631 test632 test1032 \ test1033 test539 test1034 test1035 test1036 test1037 test1038 test1039 \ - test1040 test1041 + test1040 test1041 test1042 test1043 filecheck: @mkdir test-place; \ diff --git a/tests/data/test1041 b/tests/data/test1041 index 825cdaf32..fa1692c1f 100644 --- a/tests/data/test1041 +++ b/tests/data/test1041 @@ -1,4 +1,5 @@ +# Similar to test33 HTTP @@ -52,6 +53,8 @@ http://%HOSTIP:%HTTPPORT/1041 -Tlog/test1041.txt -C - ^User-Agent:.* +# curl doesn't do a HEAD request on the remote file so it has no idea whether +# it can skip part of the file or not. Instead, it sends the entire file. PUT /1041 HTTP/1.1 Content-Range: bytes 0-99/100 diff --git a/tests/data/test1042 b/tests/data/test1042 new file mode 100644 index 000000000..d532120d9 --- /dev/null +++ b/tests/data/test1042 @@ -0,0 +1,94 @@ + + + +HTTP +HTTP GET +Resume +FAILURE + + + +# Server-side + +# Some servers (e.g. Apache 1.2) respond this way to an invalid byte range + +HTTP/1.1 200 OK +Connection: close +Content-Length: 100 +Content-Type: text/plain + +012345678 +012345678 +012345678 +012345678 +012345678 +012345678 +012345678 +012345678 +012345678 +012345678 + + +# The file data that exists at the start of the test must be included in +# the verification. + +012345678 +012345678 +012345678 +012345678 +012345678 +012345678 +012345678 +012345678 +012345678 +012345678 +HTTP/1.1 200 OK +Connection: close +Content-Length: 100 +Content-Type: text/plain + + + + +# Client-side + + +http + + +HTTP GET from end of entirely-downloaded file, no server resume + + +http://%HOSTIP:%HTTPPORT/1042 -C - + + +012345678 +012345678 +012345678 +012345678 +012345678 +012345678 +012345678 +012345678 +012345678 +012345678 + + + +# Verify data after the test has been "shot" + + +33 + + +^User-Agent:.* + + +GET /1042 HTTP/1.1 +Range: bytes=100- +Host: %HOSTIP:%HTTPPORT +Accept: */* + + + + diff --git a/tests/data/test1043 b/tests/data/test1043 new file mode 100644 index 000000000..f9bd1057b --- /dev/null +++ b/tests/data/test1043 @@ -0,0 +1,84 @@ + + + +HTTP +HTTP GET +Resume + + + +# Server-side + + +HTTP/1.1 206 Partial Content +Date: Mon, 13 Nov 2007 13:41:09 GMT +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +Accept-Ranges: bytes +Content-Length: 60 +Content-Range: bytes 40-99/100 + +012345678 +012345678 +012345678 +012345678 +012345678 +012345678 + + +# The file data that exists at the start of the test must be included in +# the verification. + +012345678 +012345678 +012345678 +012345678 +HTTP/1.1 206 Partial Content +Date: Mon, 13 Nov 2007 13:41:09 GMT +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +Accept-Ranges: bytes +Content-Length: 60 +Content-Range: bytes 40-99/100 + +012345678 +012345678 +012345678 +012345678 +012345678 +012345678 + + + + +# Client-side + + +http + + +HTTP GET with resume from end of file + + +http://%HOSTIP:%HTTPPORT/1043 -C - + + +012345678 +012345678 +012345678 +012345678 + + + +# Verify data after the test has been "shot" + + +^User-Agent:.* + + +GET /1043 HTTP/1.1 +Range: bytes=40- +Host: %HOSTIP:%HTTPPORT +Accept: */* + + + +