2020-05-19 11:49:41 +00:00
|
|
|
varnishtest "Lua: set_var"
|
2020-05-26 09:11:23 +00:00
|
|
|
#REQUIRE_VERSION=2.2
|
2020-05-19 11:49:41 +00:00
|
|
|
#REQUIRE_OPTIONS=LUA
|
|
|
|
|
|
|
|
feature ignore_unknown_macro
|
|
|
|
|
|
|
|
haproxy h1 -conf {
|
|
|
|
global
|
|
|
|
lua-load ${testdir}/set_var.lua
|
|
|
|
|
|
|
|
frontend fe1
|
|
|
|
mode http
|
|
|
|
${no-htx} option http-use-htx
|
|
|
|
bind "fd@${fe1}"
|
|
|
|
|
|
|
|
http-request use-service lua.set_var
|
2020-05-19 11:49:42 +00:00
|
|
|
|
|
|
|
frontend fe2
|
|
|
|
mode http
|
|
|
|
${no-htx} option http-use-htx
|
|
|
|
bind "fd@${fe2}"
|
|
|
|
|
|
|
|
http-request set-header Dummy %[var(txn.fe2_foo)]
|
|
|
|
|
|
|
|
http-request use-service lua.set_var_ifexist
|
2020-05-19 11:49:41 +00:00
|
|
|
} -start
|
|
|
|
|
|
|
|
client c0 -connect ${h1_fe1_sock} {
|
|
|
|
txreq -url "/" \
|
2020-05-19 11:49:42 +00:00
|
|
|
-hdr "Var: txn.fe1_foo"
|
2020-05-19 11:49:41 +00:00
|
|
|
rxresp
|
|
|
|
expect resp.status == 202
|
|
|
|
expect resp.http.echo == "value"
|
|
|
|
txreq -url "/" \
|
|
|
|
-hdr "Var: invalid.var"
|
|
|
|
rxresp
|
|
|
|
expect resp.status == 400
|
|
|
|
expect resp.http.echo == "(nil)"
|
|
|
|
} -run
|
2020-05-19 11:49:42 +00:00
|
|
|
|
|
|
|
client c1 -connect ${h1_fe2_sock} {
|
|
|
|
txreq -url "/" \
|
|
|
|
-hdr "Var: txn.fe2_foo"
|
|
|
|
rxresp
|
|
|
|
expect resp.status == 202
|
|
|
|
expect resp.http.echo == "value"
|
|
|
|
txreq -url "/" \
|
|
|
|
-hdr "Var: txn.fe2_bar"
|
|
|
|
rxresp
|
|
|
|
expect resp.status == 400
|
|
|
|
expect resp.http.echo == "(nil)"
|
|
|
|
} -run
|