Test resp.filters with esi, gunzip and range

Ref varnish-cache 2ab29dc47c1784748e46c60964ca86efa2cdd866
parent 3e8cd5cc
varnishtest "ESI requests turned off" varnishtest "ESI requests turned off and other filters with esi"
server s1 { server s1 {
rxreq rxreq
...@@ -57,7 +57,7 @@ varnish v1 -expect esi_errors == 0 ...@@ -57,7 +57,7 @@ varnish v1 -expect esi_errors == 0
server s1 { server s1 {
rxreq rxreq
expect req.url == /top2 expect req.url == /top2
txresp -body { txresp -gzipbody {
<html> <html>
Before include Before include
<esi:include src="/body"/> <esi:include src="/body"/>
...@@ -65,7 +65,7 @@ server s1 { ...@@ -65,7 +65,7 @@ server s1 {
} }
rxreq rxreq
expect req.url == /recurse expect req.url == /recurse
txresp -body { txresp -gzipbody {
<html> <html>
Before include Before include
<esi:include src="/top2"/> <esi:include src="/top2"/>
...@@ -82,25 +82,52 @@ varnish v1 -syntax 4.1 -vcl+backend { ...@@ -82,25 +82,52 @@ varnish v1 -syntax 4.1 -vcl+backend {
set resp.do_esi = false; set resp.do_esi = false;
} }
pesi.activate(); pesi.activate();
set resp.http.filters = resp.filters;
} }
sub vcl_backend_response { sub vcl_backend_response {
set beresp.do_esi = true; set beresp.do_esi = true;
} }
} }
# Note on Range requests: The range VDP is active, but as it cannot
# reliably determine the size of the response, it falls back to a 200
client c1 { client c1 {
txreq -url /top2 txreq -url /top2
rxresp rxresp
expect resp.bodylen == 73 expect resp.bodylen == 73
expect resp.status == 200 expect resp.status == 200
expect resp.http.was == true expect resp.http.was == true
expect resp.http.filters == "gunzip"
txreq -url "/esi" txreq -url "/esi"
rxresp rxresp
expect resp.bodylen == 76 expect resp.bodylen == 76
expect resp.status == 200 expect resp.status == 200
expect resp.http.was == true expect resp.http.was == true
expect resp.http.filters == "pesi"
# see Note on Range above
txreq -url "/esi" -hdr "Range: bytes=1-2"
rxresp
expect resp.bodylen == 76
expect resp.status == 200
expect resp.http.was == true
expect resp.http.filters == "pesi range"
txreq -url "/recurse" txreq -url "/recurse"
rxresp rxresp
expect resp.bodylen == 120
expect resp.status == 200
expect resp.http.was == true
expect resp.http.filters == "pesi gunzip"
# see Note on Range above
txreq -url "/recurse" -hdr "Range: bytes=1-2"
rxresp
expect resp.bodylen == 120
expect resp.status == 200
expect resp.http.was == true
expect resp.http.filters == "pesi gunzip range"
} -run } -run
varnish v1 -expect esi_errors == 0 varnish v1 -expect esi_errors == 0
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment