REGTESTS: cache: Add test on 'vary' other than accept-encoding

A bug related to vary and the 'accept-encoding' header was fixed in
"BUG/MEDIUM: cache: Vary not working properly on anything other than
accept-encoding". This patch adds tests specific to this bug.
This commit is contained in:
Remi Tricot-Le Breton 2024-04-24 15:22:50 +02:00 committed by William Lallemand
parent 0610f52bcd
commit 83639edd24
1 changed files with 51 additions and 0 deletions

View File

@ -91,6 +91,20 @@ server s1 {
-hdr "Content-Encoding: gzip" \ -hdr "Content-Encoding: gzip" \
-bodylen 59 -bodylen 59
rxreq
expect req.url == "/origin-referer"
txresp -hdr "Vary: origin,referer" \
-hdr "Cache-Control: max-age=5" \
-hdr "Content-Encoding: gzip" \
-bodylen 60
rxreq
expect req.url == "/origin-referer"
txresp -hdr "Vary: origin,referer" \
-hdr "Cache-Control: max-age=5" \
-hdr "Content-Encoding: gzip" \
-bodylen 61
# Multiple Accept-Encoding headers # Multiple Accept-Encoding headers
rxreq rxreq
expect req.url == "/multiple_headers" expect req.url == "/multiple_headers"
@ -366,6 +380,43 @@ client c1 -connect ${h1_fe_sock} {
expect resp.bodylen == 59 expect resp.bodylen == 59
expect resp.http.X-Cache-Hit == 1 expect resp.http.X-Cache-Hit == 1
# Mixed Vary (origin + Referer)
txreq -url "/origin-referer" \
-hdr "Accept-Encoding: br, gzip" \
-hdr "Referer: referer" \
-hdr "Origin: origin"
rxresp
expect resp.status == 200
expect resp.bodylen == 60
expect resp.http.X-Cache-Hit == 0
txreq -url "/origin-referer" \
-hdr "Accept-Encoding: br, gzip" \
-hdr "Referer: referer" \
-hdr "Origin: origin"
rxresp
expect resp.status == 200
expect resp.bodylen == 60
expect resp.http.X-Cache-Hit == 1
txreq -url "/origin-referer" \
-hdr "Accept-Encoding: br, gzip" \
-hdr "Referer: other-referer" \
-hdr "Origin: other-origin"
rxresp
expect resp.status == 200
expect resp.bodylen == 61
expect resp.http.X-Cache-Hit == 0
txreq -url "/origin-referer" \
-hdr "Accept-Encoding: br, gzip" \
-hdr "Referer: other-referer" \
-hdr "Origin: other-origin"
rxresp
expect resp.status == 200
expect resp.bodylen == 61
expect resp.http.X-Cache-Hit == 1
# Multiple Accept-encoding headers # Multiple Accept-encoding headers
txreq -url "/multiple_headers" \ txreq -url "/multiple_headers" \
-hdr "Accept-Encoding: gzip" \ -hdr "Accept-Encoding: gzip" \