about summary refs log tree commit homepage
path: root/t
diff options
context:
space:
mode:
authorEric Wong <e@80x24.org>2019-01-04 09:14:48 +0000
committerEric Wong <e@80x24.org>2019-01-04 09:16:04 +0000
commitbfcbbb30ef2001d18219079a7379eb9c99d16cdc (patch)
treef458b936b50dc91b8b2eb6594c8688508475a87e /t
parent2acb572e34cabd06292bde615bdab54b3f54edd9 (diff)
downloadpublic-inbox-bfcbbb30ef2001d18219079a7379eb9c99d16cdc.tar.gz
No need to test this via CGI .cgi is a wrapper around
PSGI and PSGI tests are way faster.
Diffstat (limited to 't')
-rw-r--r--t/cgi.t19
-rw-r--r--t/plack.t20
2 files changed, 20 insertions, 19 deletions
diff --git a/t/cgi.t b/t/cgi.t
index 382c21fc..a25d2eeb 100644
--- a/t/cgi.t
+++ b/t/cgi.t
@@ -90,25 +90,6 @@ EOF
         like($res->{head}, qr/Status:\s*404/i, "index returns 404");
 }
 
-# dumb HTTP support
-{
-        local $ENV{HOME} = $home;
-        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');
-}
-
 # message-id pages
 {
         local $ENV{HOME} = $home;
diff --git a/t/plack.t b/t/plack.t
index 1a719b41..14c9b657 100644
--- a/t/plack.t
+++ b/t/plack.t
@@ -220,6 +220,26 @@ EOF
                                 'redirect from x40 MIDs works');
                 }
         });
+
+        # dumb HTTP clone/fetch support
+        test_psgi($app, sub {
+                my ($cb) = @_;
+                my $path = '/test/info/refs';
+                my $req = HTTP::Request->new('GET' => $path);
+                my $res = $cb->($req);
+                is(200, $res->code, 'refs readable');
+                my $orig = $res->content;
+
+                $req->header('Range', 'bytes=5-10');
+                $res = $cb->($req);
+                is(206, $res->code, 'got partial response');
+                is($res->content, substr($orig, 5, 6), 'partial body OK');
+
+                $req->header('Range', 'bytes=5-');
+                $res = $cb->($req);
+                is(206, $res->code, 'got partial another response');
+                is($res->content, substr($orig, 5), 'partial body OK past end');
+        });
 }
 
 done_testing();