]> err.no Git - varnish/commitdiff
Also test pipelining of POST requests (in pass mode)
authordes <des@d4fa192b-c00b-0410-8231-f00ffab90ce4>
Fri, 19 Oct 2007 09:09:42 +0000 (09:09 +0000)
committerdes <des@d4fa192b-c00b-0410-8231-f00ffab90ce4>
Fri, 19 Oct 2007 09:09:42 +0000 (09:09 +0000)
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2127 d4fa192b-c00b-0410-8231-f00ffab90ce4

varnish-tools/regress/lib/Varnish/Test/Case/Pipeline.pm

index 9dedb5e5953c4b0122c71a832617adb32c76a98e..b407c6a999915619460b53d81f24ccc1273cdca0 100644 (file)
@@ -41,7 +41,15 @@ our %CONTENT = (
     'Williams' => "I have always depended upon the kindness of strangers.",
 );
 
-sub testPipeline($) {
+our $VCL = <<EOVCL;
+sub vcl_recv {
+    if (req.request == "POST") {
+       pass;
+    }
+}
+EOVCL
+
+sub testPipelineGet($) {
     my ($self) = @_;
 
     my $client = $self->new_client;
@@ -58,11 +66,31 @@ sub testPipeline($) {
     return 'OK'
 }
 
-sub server_get($$$) {
+sub testPipelinePost($) {
+    my ($self) = @_;
+
+    my $client = $self->new_client;
+    foreach my $author (sort keys %CONTENT) {
+       $self->post($client, "/$author", [], $CONTENT{$author});
+    }
+    foreach my $author (sort keys %CONTENT) {
+       $self->wait();
+       $self->assert_ok();
+       $self->assert_xid();
+       $self->assert_body(qr/\Q$CONTENT{$author}\E/);
+    }
+
+    return 'OK'
+}
+
+sub server($$$) {
     my ($self, $request, $response) = @_;
 
     my ($author) = ($request->uri =~ m/(\w+)$/);
     if ($CONTENT{$author}) {
+       if ($request->method eq 'POST') {
+           die unless $request->content =~ qr/\Q$CONTENT{$author}\E/;
+       }
        $response->content($CONTENT{$author});
     } else {
        $response->code(404);