--- /dev/null
+varnishtest "Two simple h3 tests (with and without QUIC RETRY)"
+
+feature cmd "$HAPROXY_PROGRAM -cc 'version_atleast(3.3-dev2)'"
+# QUIC backend are not supported with USE_QUIC_OPENSSL_COMPAT
+feature cmd "$HAPROXY_PROGRAM -cc 'feature(QUIC) && !feature(QUIC_OPENSSL_COMPAT) && !feature(OPENSSL_WOLFSSL)'"
+feature ignore_unknown_macro
+
+server s1 {
+ rxreq
+ txresp
+} -repeat 2 -start
+
+haproxy h1 -conf {
+ global
+ expose-experimental-directives
+ .if feature(THREAD)
+ thread-groups 1
+ .endif
+
+ # Uncomment these lines to get some debug traces
+ # ring buf1
+ # size 1048576
+ # format timed
+ # backing-file ${tmpdir}/quic.traces
+ # traces
+ # trace quic sink buf1 level developer start now
+
+ defaults
+ mode http
+ timeout connect "${HAPROXY_TEST_TIMEOUT-5s}"
+ timeout client "${HAPROXY_TEST_TIMEOUT-5s}"
+ timeout server "${HAPROXY_TEST_TIMEOUT-5s}"
+
+ listen quic_lstnr
+ bind "quic+fd@${fe_quic}" ssl crt ${testdir}/common.pem
+ server srv ${s1_addr}:${s1_port}
+
+ listen quic_lstnr_retry
+ bind "quic+fd@${fe_quic_retry}" ssl crt ${testdir}/common.pem quic-force-retry
+ server srv ${s1_addr}:${s1_port}
+
+ backend quic_be
+ server quic quic4@${h1_fe_quic_addr}:${h1_fe_quic_port} ssl verify none
+
+ backend quic_be_retry
+ server quic_retry quic4@${h1_fe_quic_retry_addr}:${h1_fe_quic_retry_port} ssl verify none
+
+ frontend fe_wo_retry
+ bind "fd@${fe}"
+ use_backend quic_be
+
+ frontend fe_with_retry
+ bind "fd@${fe_retry}"
+ use_backend quic_be_retry
+} -start
+
+client c1 -connect ${h1_fe_sock} {
+ txreq
+ rxresp
+ expect resp.status == 200
+} -run
+
+client c2 -connect ${h1_fe_retry_sock} {
+ txreq
+ rxresp
+ expect resp.status == 200
+} -run
+