blob: 5d37fcb88c2d9f5bd04e75adb6f57cba473d8473 [file] [log] [blame]
Tim Duesterhus84ebc132020-05-19 13:49:41 +02001varnishtest "Lua: set_var"
2#REQUIRE_OPTIONS=LUA
3
4feature ignore_unknown_macro
5
6haproxy h1 -conf {
7 global
8 lua-load ${testdir}/set_var.lua
9
10 frontend fe1
11 mode http
12 ${no-htx} option http-use-htx
13 bind "fd@${fe1}"
14
15 http-request use-service lua.set_var
Tim Duesterhus4e172c92020-05-19 13:49:42 +020016
17 frontend fe2
18 mode http
19 ${no-htx} option http-use-htx
20 bind "fd@${fe2}"
21
22 http-request set-header Dummy %[var(txn.fe2_foo)]
23
24 http-request use-service lua.set_var_ifexist
Tim Duesterhus84ebc132020-05-19 13:49:41 +020025} -start
26
27client c0 -connect ${h1_fe1_sock} {
28 txreq -url "/" \
Tim Duesterhus4e172c92020-05-19 13:49:42 +020029 -hdr "Var: txn.fe1_foo"
Tim Duesterhus84ebc132020-05-19 13:49:41 +020030 rxresp
31 expect resp.status == 202
32 expect resp.http.echo == "value"
33 txreq -url "/" \
34 -hdr "Var: invalid.var"
35 rxresp
36 expect resp.status == 400
37 expect resp.http.echo == "(nil)"
38} -run
Tim Duesterhus4e172c92020-05-19 13:49:42 +020039
40client c1 -connect ${h1_fe2_sock} {
41 txreq -url "/" \
42 -hdr "Var: txn.fe2_foo"
43 rxresp
44 expect resp.status == 202
45 expect resp.http.echo == "value"
46 txreq -url "/" \
47 -hdr "Var: txn.fe2_bar"
48 rxresp
49 expect resp.status == 400
50 expect resp.http.echo == "(nil)"
51} -run