summaryrefslogtreecommitdiffstats
path: root/reg-tests/converter/add_item.vtc
blob: 474ad7bf815b512bb4cdb9ea499c6ea0f0c14c1d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
varnishtest "be2dec converter Test"

feature cmd "$HAPROXY_PROGRAM -cc 'version_atleast(2.6-dev0)'"
feature ignore_unknown_macro

server s1 {
	rxreq
	txresp -hdr "Connection: close"
} -repeat 3 -start

haproxy h1 -conf {
    defaults
	mode http
	timeout connect "${HAPROXY_TEST_TIMEOUT-5s}"
	timeout client  "${HAPROXY_TEST_TIMEOUT-5s}"
	timeout server  "${HAPROXY_TEST_TIMEOUT-5s}"

    frontend fe
	bind "fd@${fe}"

	#### requests
	http-request  set-var(txn.input) req.hdr(input)
	http-request  set-var(txn.var) str("var_content")

	http-response set-header add_item-1   "%[var(txn.input),add_item(',',txn.var,_suff_)]"
	http-response set-header add_item-2   "%[var(txn.input),add_item(',',txn.var)]"
	http-response set-header add_item-3   "%[var(txn.input),add_item(',',,_suff_)]"

	default_backend be

    backend be
	server s1 ${s1_addr}:${s1_port}
} -start

client c1 -connect ${h1_fe_sock} {
	txreq -url "/" \
	  -hdr "input:"
	rxresp
	expect resp.status == 200
	expect resp.http.add_item-1 == "var_content_suff_"
	expect resp.http.add_item-2 == "var_content"
	expect resp.http.add_item-3 == "_suff_"
	txreq -url "/" \
	  -hdr "input: input_string"
	rxresp
	expect resp.status == 200
	expect resp.http.add_item-1 == "input_string,var_content_suff_"
	expect resp.http.add_item-2 == "input_string,var_content"
	expect resp.http.add_item-3 == "input_string,_suff_"
} -run