varnishtest "Composite HTTP manipulation test (H1 and H2 clear to H1 clear)"
#REQUIRE_VERSION=1.9

# This config tests several http-request features and their interactions.
# It extracts some samples, places them into variables, modifies some header
# fields, appends multiple identical header fields, overwrites the start line
# using several methods, then dumps the initial list of variables and the final
# one, then applies CRC32 to these values as signatures that are easy to test.
# Then it does it again in the backend after saving the current headers into
# the same names prefixed by "fe-". Then it does the same on the response path.
# If some modifications are performed, the crc values need to be adjusted based
# on the failed logs.
#
# Run it with HAPROXY_PROGRAM=$PWD/haproxy varnishtest -l -k -t 1 "$1"

feature ignore_unknown_macro

server s1 {
	rxreq
	txresp \
	  -status 234 \
	  -hdr "hdr1: val1" \
	  -hdr "hdr2:  val2a" \
	  -hdr "hdr2:    val2b" \
	  -hdr "hdr3:      val3a, val3b" \
	  -hdr "hdr4:" \
	  -bodylen 14 \
	  -body "This is a body"

	expect req.method == "GET"
	expect req.http.fe-sl1-crc == 992395575
	expect req.http.fe-sl2-crc == 1270056220
	expect req.http.fe-hdr-crc == 1719311923
	expect req.http.be-sl1-crc == 2604236007
	expect req.http.be-sl2-crc == 4181358964
	expect req.http.be-hdr-crc == 3634102538
} -repeat 2 -start

haproxy h1 -conf {
    defaults
	mode http
	timeout connect 1s
	timeout client  1s
	timeout server  1s

    frontend fe
	bind "fd@${feh1}"
	bind "fd@${feh2}" proto h2

	#### requests
	http-request set-var(req.method)     method
	http-request set-var(req.uri)        url
	http-request set-var(req.path)       path
	http-request set-var(req.query)      query
	http-request set-var(req.param)      url_param(qs_arg)

	http-request set-header     sl1      "sl1: "

	http-request set-method              "%[str(GET)]"
	http-request set-uri                 concat(/bu/,req.uri,/eu)
	http-request set-path                "/bp/%[var(req.path)]/ep"
	http-request set-query               "bq&%[var(req.query)]&eq"

	http-request set-header     sl2      "sl2: "

	http-request set-header     sl1      "%[req.fhdr(sl1)] method=<%[var(req.method)]>; uri=<%[var(req.uri)]>; path=<%[var(req.path)]>;"
	http-request set-header     sl1      "%[req.fhdr(sl1)] query=<%[var(req.query)]>; param=<%[var(req.param)]>"
	http-request set-header     sl2      "%[req.fhdr(sl2)] method=<%[method]>; uri=<%[url]>; path=<%[path]>; "
	http-request set-header     sl2      "%[req.fhdr(sl2)] query=<%[query]>; param=<%[url_param(qs_arg)]>"
	http-request set-header     hdr      "%[req.fhdr(hdr)] hdr1=<%[req.hdr(hdr1)]>; fhdr1=<%[req.fhdr(hdr1)]>;"
	http-request set-header     hdr      "%[req.fhdr(hdr)] hdr2=<%[req.hdr(hdr2)]>; fhdr2=<%[req.fhdr(hdr2)]>;"
	http-request set-header     hdr      "%[req.fhdr(hdr)] hdr3=<%[req.hdr(hdr3)]>; fhdr3=<%[req.fhdr(hdr3)]>;"
	http-request set-header     hdr      "%[req.fhdr(hdr)] hdr4=<%[req.hdr(hdr4)]>; fhdr4=<%[req.fhdr(hdr4)]>;"

	http-request set-header     sl1-crc  "%[req.fhdr(sl1),crc32]"
	http-request set-header     sl2-crc  "%[req.fhdr(sl2),crc32]"
	http-request set-header     hdr-crc  "%[req.fhdr(hdr),crc32]"

	#### responses
	http-response set-header    be-sl1   "%[res.fhdr(sl1)]"
	http-response set-header    be-sl2   "%[res.fhdr(sl2)]"
	http-response set-header    be-hdr   "%[res.fhdr(hdr)]"

	http-response set-header  be-sl1-crc "%[res.fhdr(sl1-crc)]"
	http-response set-header  be-sl2-crc "%[res.fhdr(sl2-crc)]"
	http-response set-header  be-hdr-crc "%[res.fhdr(hdr-crc)]"

	http-response set-var(res.status)    status
	http-response set-header    sl1      "sl1: "

	http-response set-status    200

	http-response set-header    sl2      "sl2: "

	http-response set-header    sl1      "%[res.fhdr(sl1)] status=<%[var(res.status)]>;"
	http-response set-header    sl2      "%[res.fhdr(sl2)] status=<%[status]>;"
	http-response set-header    hdr      "%[res.fhdr(hdr)] hdr1=<%[res.hdr(hdr1)]>; fhdr1=<%[res.fhdr(hdr1)]>;"
	http-response set-header    hdr      "%[res.fhdr(hdr)] hdr2=<%[res.hdr(hdr2)]>; fhdr2=<%[res.fhdr(hdr2)]>;"
	http-response set-header    hdr      "%[res.fhdr(hdr)] hdr3=<%[res.hdr(hdr3)]>; fhdr3=<%[res.fhdr(hdr3)]>;"
	http-response set-header    hdr      "%[res.fhdr(hdr)] hdr4=<%[res.hdr(hdr4)]>; fhdr4=<%[res.fhdr(hdr4)]>;"

	http-response set-header  fe-sl1-crc "%[res.fhdr(sl1),crc32]"
	http-response set-header  fe-sl2-crc "%[res.fhdr(sl2),crc32]"
	http-response set-header  fe-hdr-crc "%[res.fhdr(hdr),crc32]"

	default_backend be

    backend be
	#### requests
	http-request set-header     fe-sl1   "%[req.fhdr(sl1)]"
	http-request set-header     fe-sl2   "%[req.fhdr(sl2)]"
	http-request set-header     fe-hdr   "%[req.fhdr(hdr)]"

	http-request set-header   fe-sl1-crc "%[req.fhdr(sl1-crc)]"
	http-request set-header   fe-sl2-crc "%[req.fhdr(sl2-crc)]"
	http-request set-header   fe-hdr-crc "%[req.fhdr(hdr-crc)]"

	http-request set-var(req.method)     method
	http-request set-var(req.uri)        url
	http-request set-var(req.path)       path
	http-request set-var(req.query)      query
	http-request set-var(req.param)      url_param(qs_arg)

	http-request set-header     sl1      "sl1: "

	http-request set-method              "%[str(GET)]"
	http-request set-uri                 concat(/bu/,req.uri,/eu)
	http-request set-path                "/bp/%[var(req.path)]/ep"
	http-request set-query               "bq&%[var(req.query)]&eq"

	http-request set-header     sl2      "sl2: "

	http-request set-header     sl1      "%[req.fhdr(sl1)] method=<%[var(req.method)]>; uri=<%[var(req.uri)]>; path=<%[var(req.path)]>;"
	http-request set-header     sl1      "%[req.fhdr(sl1)] query=<%[var(req.query)]>; param=<%[var(req.param)]>"
	http-request set-header     sl2      "%[req.fhdr(sl2)] method=<%[method]>; uri=<%[url]>; path=<%[path]>; "
	http-request set-header     sl2      "%[req.fhdr(sl2)] query=<%[query]>; param=<%[url_param(qs_arg)]>"
	http-request set-header     hdr      "%[req.fhdr(hdr)] hdr1=<%[req.hdr(hdr1)]>; fhdr1=<%[req.fhdr(hdr1)]>;"
	http-request set-header     hdr      "%[req.fhdr(hdr)] hdr2=<%[req.hdr(hdr2)]>; fhdr2=<%[req.fhdr(hdr2)]>;"
	http-request set-header     hdr      "%[req.fhdr(hdr)] hdr3=<%[req.hdr(hdr3)]>; fhdr3=<%[req.fhdr(hdr3)]>;"
	http-request set-header     hdr      "%[req.fhdr(hdr)] hdr4=<%[req.hdr(hdr4)]>; fhdr4=<%[req.fhdr(hdr4)]>;"

	http-request set-header   be-sl1-crc "%[req.fhdr(sl1),crc32]"
	http-request set-header   be-sl2-crc "%[req.fhdr(sl2),crc32]"
	http-request set-header   be-hdr-crc "%[req.fhdr(hdr),crc32]"

	#### responses
	http-response set-var(res.status)    status
	http-response set-header     sl1     "sl1: "

	http-response set-status     200

	http-response set-header     sl2     "sl2: "

	http-response set-header     sl1     "%[res.fhdr(sl1)] status=<%[var(res.status)]>;"
	http-response set-header     sl2     "%[res.fhdr(sl2)] status=<%[status]>;"
	http-response set-header     hdr     "%[res.fhdr(hdr)] hdr1=<%[res.hdr(hdr1)]>; fhdr1=<%[res.fhdr(hdr1)]>;"
	http-response set-header     hdr     "%[res.fhdr(hdr)] hdr2=<%[res.hdr(hdr2)]>; fhdr2=<%[res.fhdr(hdr2)]>;"
	http-response set-header     hdr     "%[res.fhdr(hdr)] hdr3=<%[res.hdr(hdr3)]>; fhdr3=<%[res.fhdr(hdr3)]>;"
	http-response set-header     hdr     "%[res.fhdr(hdr)] hdr4=<%[res.hdr(hdr4)]>; fhdr4=<%[res.fhdr(hdr4)]>;"

	http-response set-header     sl1-crc "%[res.fhdr(sl1),crc32]"
	http-response set-header     sl2-crc "%[res.fhdr(sl2),crc32]"
	http-response set-header     hdr-crc "%[res.fhdr(hdr),crc32]"

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

client c1h1 -connect ${h1_feh1_sock} {
	txreq \
	  -req GET \
	  -url /path/to/file.extension?qs_arg=qs_value \
	  -hdr "hdr1: val1" \
	  -hdr "hdr2:  val2a" \
	  -hdr "hdr2:    val2b" \
	  -hdr "hdr3:      val3a, val3b" \
	  -hdr "hdr4:"
	rxresp

	expect resp.status == 200
	expect resp.http.be-sl1-crc == 487202719
	expect resp.http.be-sl2-crc == 561949791
	expect resp.http.be-hdr-crc == 1719311923
	expect resp.http.fe-sl1-crc == 146151597
	expect resp.http.fe-sl2-crc == 561949791
	expect resp.http.fe-hdr-crc == 3634102538
	expect resp.bodylen == 14
	expect resp.body == "This is a body"
} -run

client c1h2 -connect ${h1_feh2_sock} {
	stream 1 {
		# warning: -req, -scheme, -url MUST be placed first otherwise
		# the H2 protocol is invalid since they are pseudo-headers
		txreq \
		  -req GET \
		  -scheme "https" \
		  -url /path/to/file.extension?qs_arg=qs_value \
		  -hdr "hdr1" "val1" \
		  -hdr "hdr2" " val2a" \
		  -hdr "hdr2" "   val2b" \
		  -hdr "hdr3" "     val3a, val3b" \
		  -hdr "hdr4" ""

		rxhdrs
		expect resp.status == 200
		expect resp.http.be-sl1-crc == 487202719
		expect resp.http.be-sl2-crc == 561949791
		expect resp.http.be-hdr-crc == 1719311923
		expect resp.http.fe-sl1-crc == 146151597
		expect resp.http.fe-sl2-crc == 561949791
		expect resp.http.fe-hdr-crc == 3634102538
		expect resp.http.content-length == 14

		rxdata -all
		expect resp.body == "This is a body"
	} -run
} -run
