Here is a little patch for a basic test for the cache.

Fred.
>From aa301c6eef5c6797283d56b9f23266345808cd1e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20L=C3=A9caille?= <flecai...@haproxy.com>
Date: Wed, 28 Nov 2018 11:36:48 +0100
Subject: [PATCH] REGTEST: Add a basic test for the cache.

The client makes the same HTTP request four times.
The varnishtest HTTP server serves the first client request and quits.
So, the three last requests are handled by the haproxy cache.
---
 reg-tests/cache/h00000.vtc | 54 ++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 54 insertions(+)
 create mode 100644 reg-tests/cache/h00000.vtc

diff --git a/reg-tests/cache/h00000.vtc b/reg-tests/cache/h00000.vtc
new file mode 100644
index 00000000..5195816a
--- /dev/null
+++ b/reg-tests/cache/h00000.vtc
@@ -0,0 +1,54 @@
+varnishtest "Basic cache test"
+
+#REQUIRE_VERSION=1.8
+
+feature ignore_unknown_macro
+
+server s1 {
+    rxreq
+    txresp -nolen -hdr "Transfer-Encoding: chunked"
+    chunkedlen 1
+    chunkedlen 1
+    chunkedlen 2
+    chunkedlen 3
+    chunkedlen 5
+    chunkedlen 8
+    chunkedlen 13
+    chunkedlen 21
+    chunkedlen 34
+    chunkedlen 55
+    chunkedlen 89
+    chunkedlen 144
+    chunkedlen 233
+    chunkedlen 0
+} -start
+
+haproxy h1 -conf {
+    defaults
+        mode http
+        timeout connect 1s
+        timeout client  1s
+        timeout server  1s
+
+    frontend fe
+        bind "fd@${fe}"
+        default_backend test
+
+    backend test
+        http-request cache-use my_cache
+        server www ${s1_addr}:${s1_port}
+        http-response cache-store my_cache
+
+    cache my_cache
+	    total-max-size 3
+	    max-age 20
+	    max-object-size 3072
+} -start
+
+
+client c1 -connect ${h1_fe_sock} {
+	txreq
+	rxresp
+	expect resp.status == 200
+	expect resp.bodylen == 609
+} -repeat 4 -run
-- 
2.11.0

Reply via email to