[master] 2487092 Make this test more robust.

Poul-Henning Kamp phk at FreeBSD.org
Tue Nov 15 16:25:06 CET 2016


commit 24870927e94c2da9503e830d30d966382c7542f0
Author: Poul-Henning Kamp <phk at FreeBSD.org>
Date:   Tue Nov 15 15:23:56 2016 +0000

    Make this test more robust.

diff --git a/bin/varnishtest/tests/r01927.vtc b/bin/varnishtest/tests/r01927.vtc
index d1478c6..9286188 100644
--- a/bin/varnishtest/tests/r01927.vtc
+++ b/bin/varnishtest/tests/r01927.vtc
@@ -1,5 +1,7 @@
 varnishtest "Test requests other than GET are cacheable"
 
+barrier b1 cond 2
+
 server s1 {
 	rxreq
 	expect req.method == "POST"
@@ -9,14 +11,22 @@ server s1 {
 	expect req.method == "POST"
 	expect req.body == "foo"
 	txresp -body baz
+	barrier b1 sync
 } -start
 
 varnish v1 -vcl+backend {
 	sub vcl_recv {
 		# We ignore the actual body for this test.
 		set req.http.method = req.method;
+		set req.http.hit = "No";
 		return (hash);
 	}
+	sub vcl_hit {
+		set req.http.hit = "Yes";
+	}
+	sub vcl_deliver {
+		set resp.http.hit = req.http.hit;
+	}
 	sub vcl_backend_fetch {
 		set bereq.method = bereq.http.method;
 	}
@@ -29,14 +39,27 @@ client c1 {
 	txreq -req "POST" -body "foo"
 	rxresp
 	expect resp.body == "bar"
+	expect resp.http.hit == "No"
+
 	txreq -req "POST" -body "foo"
 	rxresp
 	expect resp.body == "bar"
-	delay 0.5
+	expect resp.http.hit == "Yes"
+
+	# Wait until between ttl&grace
+	delay 1.0
+
+	# Trigger bg fetch
 	txreq -req "POST" -body "foo"
 	rxresp
 	expect resp.body == "bar"
+	expect resp.http.hit == "Yes"
+
+	barrier b1 sync
+
+	# Get new object, from cache
 	txreq -req "POST" -body "foo"
 	rxresp
 	expect resp.body == "baz"
+	expect resp.http.hit == "Yes"
 } -run



More information about the varnish-commit mailing list