mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2025-08-06 15:17:01 +02:00
No less than 30 tests were missing timeouts, preventing them from being started with zero-warning. Since they were not supposed to trigger, they have been set to 30s so as never to trigger, and now they do not produce any warning anymore.
88 lines
2.0 KiB
Plaintext
88 lines
2.0 KiB
Plaintext
varnishtest "Lua: set_var"
|
|
#REQUIRE_OPTIONS=LUA
|
|
|
|
feature ignore_unknown_macro
|
|
|
|
haproxy h1 -conf {
|
|
global
|
|
# WT: limit false-positives causing "HTTP header incomplete" due to
|
|
# idle server connections being randomly used and randomly expiring
|
|
# under us.
|
|
tune.idle-pool.shared off
|
|
|
|
global
|
|
lua-load ${testdir}/set_var.lua
|
|
|
|
defaults
|
|
timeout client 30s
|
|
timeout server 30s
|
|
timeout connect 30s
|
|
|
|
frontend fe1
|
|
mode http
|
|
bind "fd@${fe1}"
|
|
|
|
http-request use-service lua.set_var
|
|
|
|
frontend fe2
|
|
mode http
|
|
bind "fd@${fe2}"
|
|
# just make sure the variable exists
|
|
http-request set-header Dummy %[var(proc.fe2_foo)]
|
|
|
|
http-request use-service lua.set_var_ifexist
|
|
} -start
|
|
|
|
client c0 -connect ${h1_fe1_sock} {
|
|
# create var
|
|
txreq -url "/" \
|
|
-hdr "Var: txn.fe1_foo"
|
|
rxresp
|
|
expect resp.status == 202
|
|
expect resp.http.echo == "value"
|
|
|
|
# rewrite var
|
|
txreq -url "/" \
|
|
-hdr "Var: txn.fe1_foo"
|
|
rxresp
|
|
expect resp.status == 202
|
|
expect resp.http.echo == "value"
|
|
|
|
# create var under scope "proc"
|
|
txreq -url "/" \
|
|
-hdr "Var: proc.fe1_foo"
|
|
rxresp
|
|
expect resp.status == 202
|
|
expect resp.http.echo == "value"
|
|
|
|
# fail to create bad scope
|
|
txreq -url "/" \
|
|
-hdr "Var: invalid.var"
|
|
rxresp
|
|
expect resp.status == 400
|
|
expect resp.http.echo == "(nil)"
|
|
} -run
|
|
|
|
client c1 -connect ${h1_fe2_sock} {
|
|
# this one exists in the conf, it must succeed
|
|
txreq -url "/" \
|
|
-hdr "Var: proc.fe2_foo"
|
|
rxresp
|
|
expect resp.status == 202
|
|
expect resp.http.echo == "value"
|
|
|
|
# this one does not exist in the conf, it must fail
|
|
txreq -url "/" \
|
|
-hdr "Var: proc.fe2_bar"
|
|
rxresp
|
|
expect resp.status == 400
|
|
expect resp.http.echo == "(nil)"
|
|
|
|
# this one is under txn, it must succeed
|
|
txreq -url "/" \
|
|
-hdr "Var: txn.fe2_foo"
|
|
rxresp
|
|
expect resp.status == 202
|
|
expect resp.http.echo == "value"
|
|
} -run
|