diff options
author | Sergey Poznyakoff <gray@gnu.org.ua> | 2013-07-22 23:02:59 +0300 |
---|---|---|
committer | Sergey Poznyakoff <gray@gnu.org.ua> | 2013-07-22 23:05:28 +0300 |
commit | 7cc646c790465f6975aafa52626b99d04ac2f62d (patch) | |
tree | 3ed4ed45093ce78750f228c737064f8327ac09c0 /tests/test03.vtc | |
parent | 88126134cd43e8da9ade49d18c757c6a41b777bc (diff) | |
download | vmod-tbf-7cc646c790465f6975aafa52626b99d04ac2f62d.tar.gz vmod-tbf-7cc646c790465f6975aafa52626b99d04ac2f62d.tar.bz2 |
New function "check"
* src/vmod_tbf.c (vmod_rate): Use %lu instead of %z
(vmod_check): New function.
* src/vmod_tbf.vcc (check): New function.
* tests/Makefile.am: Add new files.
* tests/test02.vtc: New file.
* tests/test03.vtc: New file.
* tests/time01.vtc: New file.
Diffstat (limited to 'tests/test03.vtc')
-rw-r--r-- | tests/test03.vtc | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/tests/test03.vtc b/tests/test03.vtc new file mode 100644 index 0000000..5ffba9a --- /dev/null +++ b/tests/test03.vtc @@ -0,0 +1,71 @@ +varnishtest "Test tbf flow" + +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.db", "trunc"); + } + sub vcl_fini { + tbf.close(); + } + sub vcl_deliver { + set resp.http.result = tbf.check("url:"+req.url, "4req/s"); + } +} -start + +client c1 { + txreq -url "/" + rxresp + expect resp.http.result == true + + txreq -url "/" + rxresp + expect resp.http.result == true + + txreq -url "/" + rxresp + expect resp.http.result == true + + txreq -url "/" + rxresp + expect resp.http.result == true + + txreq -url "/" + rxresp + expect resp.http.result == true + + txreq -url "/" + rxresp + expect resp.http.result == false + + delay 1.0 + + txreq -url "/" + rxresp + expect resp.http.result == true + + txreq -url "/" + rxresp + expect resp.http.result == true + + txreq -url "/" + rxresp + expect resp.http.result == true + + txreq -url "/" + rxresp + expect resp.http.result == true + + txreq -url "/" + rxresp + expect resp.http.result == false +} + +client c1 -run + + |