MINOR: checks: Simplify matching on HTTP headers in HTTP expect rules
Extra parameters on http-check expect rules, for the header matching method, to
use log-format string or to match full header line have been removed. There is
now separate matching methods to match a full header line or to match each
comma-separated values. "http-check expect fhdr" must be used in the first case,
and "http-check expect hdr" in the second one. In addition, to match log-format
header name or value, "-lf" suffix must be added to "name" or "value"
keyword. For intance:
http-check expect hdr name "set-cookie" value-lf -m beg "sessid=%[var(check.cookie)]"
Thanks to this changes, each parameter may only be interpreted in one way.
diff --git a/reg-tests/checks/http-check-expect.vtc b/reg-tests/checks/http-check-expect.vtc
index 9cbe2bd..ab629db 100644
--- a/reg-tests/checks/http-check-expect.vtc
+++ b/reg-tests/checks/http-check-expect.vtc
@@ -39,26 +39,26 @@
option httpchk
http-check expect status 200-399
- http-check expect header name "x-test1"
- http-check expect header name -m str "X-Test2"
- http-check expect header name -m beg "X-Begin-"
- http-check expect header name -m end "-End"
- http-check expect header name -m sub "-Sub-"
- http-check expect header name -m reg "^[a-z]+-Reg-[a-z]+[0-9]\$"
+ http-check expect hdr name "x-test1"
+ http-check expect hdr name -m str "X-Test2"
+ http-check expect hdr name -m beg "X-Begin-"
+ http-check expect hdr name -m end "-End"
+ http-check expect hdr name -m sub "-Sub-"
+ http-check expect hdr name -m reg "^[a-z]+-Reg-[a-z]+[0-9]\$"
http-check set-var(check.hdr_name) res.fhdr(x-hdr-name)
- http-check expect header name -m str "%[var(check.hdr_name)]" log-format
- http-check expect header name -m str "%[res.fhdr(x-hdr-name)]" log-format
+ http-check expect hdr name-lf -m str "%[var(check.hdr_name)]"
+ http-check expect hdr name-lf -m str "%[res.fhdr(x-hdr-name)]"
- http-check expect header name "x-test1" value "true, next value" full
- http-check expect header name "x-test2" value -m str "true"
- http-check expect header name -m beg "x-test" value -m beg "begin-"
- http-check expect header name -m beg "x-test" value -m end "-end"
- http-check expect header name -m beg "x-test" value -m sub "-sub-"
- http-check expect header name -m beg "x-test" value -m reg "^value-reg-[A-Z0-9]+\$"
- http-check expect header name -m beg "x-test" value -m reg "value-reg-[A-Z0-9]+" full
+ http-check expect fhdr name "x-test1" value "true, next value"
+ http-check expect hdr name "x-test2" value -m str "true"
+ http-check expect hdr name -m beg "x-test" value -m beg "begin-"
+ http-check expect hdr name -m beg "x-test" value -m end "-end"
+ http-check expect hdr name -m beg "x-test" value -m sub "-sub-"
+ http-check expect hdr name -m beg "x-test" value -m reg "^value-reg-[A-Z0-9]+\$"
+ http-check expect fhdr name -m beg "x-test" value -m reg "value-reg-[A-Z0-9]+"
http-check set-var(check.hdr_value) str(x-test1)
- http-check expect header name -m beg "x-" value -m str "%[var(check.hdr_value)]" log-format
- http-check expect header name -m beg "x-" value -m str "%[res.fhdr(x-hdr-name)]" log-format full
+ http-check expect hdr name -m beg "x-" value-lf -m str "%[var(check.hdr_value)]"
+ http-check expect fhdr name -m beg "x-" value-lf -m str "%[res.fhdr(x-hdr-name)]"
server srv ${s1_addr}:${s1_port} check inter 100ms rise 1 fall 1
} -start