From 8d07e52a23fd42582ff1a6adf1c9335138b509e4 Mon Sep 17 00:00:00 2001 From: Martin Blix Grydeland Date: Thu, 15 Dec 2011 15:53:19 +0100 Subject: [PATCH 10/10] Add a couple of streaming test cases --- bin/varnishtest/tests/t00002.vtc | 38 ++++++++++++++++++++++++++++++++++++++ bin/varnishtest/tests/t00003.vtc | 33 +++++++++++++++++++++++++++++++++ 2 files changed, 71 insertions(+), 0 deletions(-) create mode 100644 bin/varnishtest/tests/t00002.vtc create mode 100644 bin/varnishtest/tests/t00003.vtc diff --git a/bin/varnishtest/tests/t00002.vtc b/bin/varnishtest/tests/t00002.vtc new file mode 100644 index 0000000..440577c --- /dev/null +++ b/bin/varnishtest/tests/t00002.vtc @@ -0,0 +1,38 @@ +varnishtest "Test streaming recepient in pass mode" + +server s1 { + rxreq + txresp -nolen -hdr "Transfer-encoding: chunked" + chunked "<1>------------------------<1>\n" + sema r1 sync 2 + chunked "<2>------------------------<2>\n" + sema r2 sync 2 + chunkedlen 0 +} -start + +varnish v1 -vcl+backend { + sub vcl_recv { + return (pass); + } + + sub vcl_fetch { + set beresp.do_stream = true; + } +} -start + +client c1 { + txreq -hdr "foo: /foo" + rxresp -no_obj + + rxchunk + expect resp.chunklen == 31 + sema r1 sync 2 + + rxchunk + expect resp.chunklen == 31 + sema r2 sync 2 + + rxchunk + expect resp.chunklen == 0 + expect resp.bodylen == 62 +} -run diff --git a/bin/varnishtest/tests/t00003.vtc b/bin/varnishtest/tests/t00003.vtc new file mode 100644 index 0000000..6681595 --- /dev/null +++ b/bin/varnishtest/tests/t00003.vtc @@ -0,0 +1,33 @@ +varnishtest "Test failed streamed delivery not entering cache" + +server s1 { + rxreq + txresp -nolen -hdr "Transfer-encoding: chunked" + chunked "<1>------------------------<1>\n" + chunked "<2>------------------------<2>\n" + accept + rxreq + txresp -nolen -hdr "Transfer-encoding: chunked" + chunked "<1>------------------------<1>\n" + chunked "<2>------------------------<2>\n" + chunked "<3>------------------------<3>\n" + chunkedlen 0 +} -start + +varnish v1 -vcl+backend { + sub vcl_fetch { + set beresp.do_stream = true; + } +} -start + +client c1 { + txreq + rxresp + delay 1 +} -run + +client c2 { + txreq + rxresp + expect resp.bodylen == 93 +} -run -- 1.7.4.1