aboutsummaryrefslogtreecommitdiff
path: root/tests/test02.vti
diff options
context:
space:
mode:
authorSergey Poznyakoff <gray@gnu.org.ua>2014-11-01 14:10:23 +0200
committerSergey Poznyakoff <gray@gnu.org.ua>2014-11-01 14:10:23 +0200
commitdacdfd20c9e59e088bfb23c2852b566acc6ad06f (patch)
tree9c8acf2e253afd9593d5f6fccd560f7173485d48 /tests/test02.vti
parent4d452a770122daf33fdbe0a549e2804b6f2db086 (diff)
downloadvmod-tbf-dacdfd20c9e59e088bfb23c2852b566acc6ad06f.tar.gz
vmod-tbf-dacdfd20c9e59e088bfb23c2852b566acc6ad06f.tar.bz2
Support for VCL 4.0
* NEWS: Update. * configure.ac: Version 1.0.90 Detect Varnish version, set up the C defines and automake conditionals to indicate it. * src/.gitignore: Update. * src/Makefile.am: Don't distribute vcc_if.c and vcc_if.h, build them for the current Varnish version. * src/tbf.h: New file. * src/getla.c: Include tbf.h, rewrite to compile with both 3.0 and 4.0 * src/sleep.c: Likewise. * src/tbf.c: Likewise. * src/time.c: Likewise. * src/vmod_tbf.vcc: Rewrite using v4.0 format. * tests/.gitignore: New file. * tests/Makefile.am: Build test00.vtc and test02.vtc * tests/test00.vtc: Rename to tests/test00.vti, add conditional compilation directives. * tests/test02.vtc: Rename to tests/test02.vti, add conditional compilation directives.
Diffstat (limited to 'tests/test02.vti')
-rw-r--r--tests/test02.vti49
1 files changed, 49 insertions, 0 deletions
diff --git a/tests/test02.vti b/tests/test02.vti
new file mode 100644
index 0000000..1b5e6b3
--- /dev/null
+++ b/tests/test02.vti
@@ -0,0 +1,49 @@
+varnishtest "Test tbf overlimit"
+
+server s1 {
+ rxreq
+ txresp
+} -start
+
+varnish v1 -vcl+backend {
+ import tbf from "${vmod_topbuild}/src/.libs/libvmod_tbf.so";
+ sub vcl_init {
+ tbf.open("${vmod_topbuild}/tests/tbf", "truncate");
+ }
+ sub vcl_fini {
+ tbf.close();
+ }
+ sub vcl_recv {
+ if (!tbf.check("url:"+req.url, "4 req/s")) {
+#VARNISH3# error 420 "Overlimit";
+#VARNISH4# return (synth(420, "Overlimit"));
+ }
+#VARNISH3# return (lookup);
+#VARNISH4# return (hash);
+ }
+} -start
+
+client c1 {
+ txreq -url "/"
+ rxresp
+ expect resp.status == 200
+ txreq -url "/"
+ rxresp
+ expect resp.status == 200
+ txreq -url "/"
+ rxresp
+ expect resp.status == 200
+ txreq -url "/"
+ rxresp
+ expect resp.status == 200
+ txreq -url "/"
+ rxresp
+ expect resp.status == 200
+ txreq -url "/"
+ rxresp
+ expect resp.status == 420
+}
+
+client c1 -run
+
+

Return to:

Send suggestions and report system problems to the System administrator.