about summary refs log tree commit homepage
path: root/t
diff options
context:
space:
mode:
Diffstat (limited to 't')
-rw-r--r--t/cgi.t18
1 files changed, 18 insertions, 0 deletions
diff --git a/t/cgi.t b/t/cgi.t
index 18632cee..4ce6514c 100644
--- a/t/cgi.t
+++ b/t/cgi.t
@@ -102,6 +102,24 @@ EOF
         like($res->{head}, qr/Status:\s*404/i, "index returns 404");
 }
 
+# dumb HTTP support
+{
+        my $path = "/test/info/refs";
+        my $res = cgi_run($path);
+        like($res->{head}, qr/Status:\s*200/i, "info/refs readable");
+        my $orig = $res->{body};
+
+        local $ENV{HTTP_RANGE} = 'bytes=5-10';
+        $res = cgi_run($path);
+        like($res->{head}, qr/Status:\s*206/i, "info/refs partial OK");
+        is($res->{body}, substr($orig, 5, 6), 'partial body OK');
+
+        local $ENV{HTTP_RANGE} = 'bytes=5-';
+        $res = cgi_run($path);
+        like($res->{head}, qr/Status:\s*206/i, "info/refs partial past end OK");
+        is($res->{body}, substr($orig, 5), 'partial body OK past end');
+}
+
 # atom feeds
 {
         local $ENV{HOME} = $home;