mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2025-02-18 03:26:55 +00:00
Now that warnings were almost all removed, let's enable zero-warning via -dW. All tests were adjusted, but two: - mcli/mcli_start_progs.vtc: the programs section currently cannot be silenced - stats/stats-file.vtc: the warning comes from the stats file itself on comment lines. All other ones are now OK.
98 lines
1.9 KiB
Plaintext
98 lines
1.9 KiB
Plaintext
vtest "Test for balance URI"
|
|
feature ignore_unknown_macro
|
|
#REQUIRE_VERSION=2.3
|
|
|
|
server s1 {
|
|
rxreq
|
|
txresp -hdr "Server: s1" -body "s1"
|
|
} -repeat 5 -start
|
|
|
|
server s2 {
|
|
rxreq
|
|
txresp -hdr "Server: s2" -body "s2"
|
|
} -repeat 5 -start
|
|
|
|
server s3 {
|
|
rxreq
|
|
txresp -hdr "Server: s3" -body "s3"
|
|
} -repeat 5 -start
|
|
|
|
server s4 {
|
|
rxreq
|
|
txresp -hdr "Server: s4" -body "s4"
|
|
} -repeat 5 -start
|
|
|
|
haproxy h1 -arg "-L A" -arg '-dW' -conf {
|
|
defaults
|
|
mode http
|
|
timeout server "${HAPROXY_TEST_TIMEOUT-5s}"
|
|
timeout connect "${HAPROXY_TEST_TIMEOUT-5s}"
|
|
timeout client "${HAPROXY_TEST_TIMEOUT-5s}"
|
|
|
|
listen px
|
|
bind "fd@${px}"
|
|
bind "fd@${pxh2}" proto h2
|
|
balance uri path-only
|
|
server srv1 ${s1_addr}:${s1_port}
|
|
server srv2 ${s2_addr}:${s2_port}
|
|
server srv3 ${s3_addr}:${s3_port}
|
|
server srv4 ${s4_addr}:${s4_port}
|
|
} -start
|
|
|
|
client c1 -connect ${h1_px_sock} {
|
|
txreq -url "http://127.0.0.1/url1"
|
|
rxresp
|
|
expect resp.status == 200
|
|
expect resp.http.Server ~ s2
|
|
} -run
|
|
|
|
client c2 -connect ${h1_px_sock} {
|
|
txreq -url "/url1?ignore=this-arg"
|
|
rxresp
|
|
expect resp.status == 200
|
|
expect resp.http.Server ~ s2
|
|
} -run
|
|
|
|
client c3 -connect ${h1_px_sock} {
|
|
txreq -url "http://127.0.0.1/url2"
|
|
rxresp
|
|
expect resp.status == 200
|
|
expect resp.http.Server ~ s3
|
|
} -run
|
|
|
|
client c4 -connect ${h1_px_sock} {
|
|
txreq -url "/url3"
|
|
rxresp
|
|
expect resp.status == 200
|
|
expect resp.http.Server ~ s4
|
|
} -run
|
|
|
|
client c5 -connect ${h1_px_sock} {
|
|
txreq -url "/url4"
|
|
rxresp
|
|
expect resp.status == 200
|
|
expect resp.http.Server ~ s1
|
|
} -run
|
|
|
|
client c6h2 -connect ${h1_pxh2_sock} {
|
|
txpri
|
|
stream 0 {
|
|
txsettings
|
|
rxsettings
|
|
txsettings -ack
|
|
rxsettings
|
|
expect settings.ack == true
|
|
} -run
|
|
|
|
stream 1 {
|
|
txreq \
|
|
-req "GET" \
|
|
-scheme "https" \
|
|
-url "/url1"
|
|
rxhdrs
|
|
expect resp.status == 200
|
|
rxdata -all
|
|
expect resp.body == "s2"
|
|
} -run
|
|
} -run
|