summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorxquery <jim@webcomposite.com>2020-04-19 19:12:28 +0200
committerJames Fuller <jim@webcomposite.com>2020-04-20 06:16:54 +0200
commitaa98c66e503934a1b633420ccceda12e2001bd52 (patch)
treeccc346e91d2e1e602e7dee803daa7f5d3bad55a5
parentd2969c7aee2b113ded6b008c03f6b2e09928da3b (diff)
downloadcurl-aa98c66e503934a1b633420ccceda12e2001bd52.tar.gz
add more alt-svc test coverage
-rw-r--r--tests/data/Makefile.inc3
-rw-r--r--tests/data/test35894
-rw-r--r--tests/data/test35994
3 files changed, 190 insertions, 1 deletions
diff --git a/tests/data/Makefile.inc b/tests/data/Makefile.inc
index aabe1e6d9..099940410 100644
--- a/tests/data/Makefile.inc
+++ b/tests/data/Makefile.inc
@@ -59,7 +59,8 @@ test316 test317 test318 test319 test320 test321 test322 test323 test324 \
test325 test326 test327 test328 test329 test330 test331 test332 test333 \
test334 test335 test336 test337 test338 test339 test340 test341 test342 \
test343 test344 test345 \
-test350 test351 test352 test353 test354 test355 test356 test357 \
+test350 test351 test352 test353 test354 test355 test356 test357 test358 \
+test359 \
test393 test394 test395 \
\
test400 test401 test402 test403 test404 test405 test406 test407 test408 \
diff --git a/tests/data/test358 b/tests/data/test358
new file mode 100644
index 000000000..27cf967c9
--- /dev/null
+++ b/tests/data/test358
@@ -0,0 +1,94 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+Alt-Svc
+HTTP/2
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+Alt-Svc: h2=":9014", ma=315360000; persist=0
+
+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+alt-svc
+debug
+</features>
+<server>
+http
+http/2
+</server>
+ <name>
+HTTPS GET translated by alt-svc lookup to HTTP/2 GET
+ </name>
+<setenv>
+# make debug-curl accept Alt-Svc over plain HTTP
+CURL_ALTSVC_HTTP="yeah"
+</setenv>
+ <command>
+--http2 --alt-svc "log/altsvc-358" "http://%HOSTIP:%HTTPPORT/358" "http://%HOSTIP:%HTTPPORT/358"
+</command>
+<file name="log/altsvc-358">
+h2 %HOSTIP %HTTPPORT h2 %HOSTIP %HTTP2PORT "20290222 22:19:28" 0 0
+</file>
+
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<stdout>
+HTTP/1.1 101 Switching Protocols
+Connection: Upgrade
+Upgrade: h2c
+
+HTTP/2 200
+date: Thu, 09 Nov 2010 14:49:00 GMT
+content-length: 6
+content-type: text/html
+funny-head: yesyes
+alt-svc: h2=":9014", ma=315360000; persist=0
+server: nghttpx
+via: 1.1 nghttpx
+
+-foo-
+HTTP/2 200
+date: Thu, 09 Nov 2010 14:49:00 GMT
+content-length: 6
+content-type: text/html
+funny-head: yesyes
+alt-svc: h2=":9014", ma=315360000; persist=0
+server: nghttpx
+via: 1.1 nghttpx
+
+-foo-
+</stdout>
+<stripfile>
+# strip out the (dynamic) expire date from the file so that the rest
+# matches
+s/\"2([^\"]*)\"/TIMESTAMP/
+</stripfile>
+<file name="log/altsvc-358" mode="text">
+# Your alt-svc cache. https://curl.haxx.se/docs/alt-svc.html
+# This file was generated by libcurl! Edit at your own risk.
+h2 %HOSTIP %HTTPPORT h2 %HOSTIP %HTTP2PORT TIMESTAMP 0 0
+</file>
+</verify>
+</testcase>
diff --git a/tests/data/test359 b/tests/data/test359
new file mode 100644
index 000000000..945131ca3
--- /dev/null
+++ b/tests/data/test359
@@ -0,0 +1,94 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+HTTPS GET
+Alt-Svc
+HTTP/2
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+Alt-Svc: h2=":9014", ma=315360000; persist=0
+
+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+alt-svc
+debug
+</features>
+<server>
+https
+http/2
+</server>
+ <name>
+HTTPS GET translated by alt-svc lookup to HTTP/2 GET
+ </name>
+<setenv>
+# make debug-curl accept Alt-Svc over plain HTTP
+CURL_ALTSVC_HTTP="yeah"
+</setenv>
+ <command>
+--http2 --alt-svc "log/altsvc-359" "http://%HOSTIP:%HTTPSPORT/359" "http://%HOSTIP:%HTTPSPORT/359"
+</command>
+<file name="log/altsvc-359">
+h2 %HOSTIP %HTTPSPORT h2 %HOSTIP %HTTP2PORT "20290222 22:19:28" 0 0
+</file>
+
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<stdout>
+HTTP/1.1 101 Switching Protocols
+Connection: Upgrade
+Upgrade: h2c
+
+HTTP/2 200
+date: Thu, 09 Nov 2010 14:49:00 GMT
+content-length: 6
+content-type: text/html
+funny-head: yesyes
+alt-svc: h2=":9014", ma=315360000; persist=0
+server: nghttpx
+via: 1.1 nghttpx
+
+-foo-
+HTTP/2 200
+date: Thu, 09 Nov 2010 14:49:00 GMT
+content-length: 6
+content-type: text/html
+funny-head: yesyes
+alt-svc: h2=":9014", ma=315360000; persist=0
+server: nghttpx
+via: 1.1 nghttpx
+
+-foo-
+</stdout>
+<stripfile>
+# strip out the (dynamic) expire date from the file so that the rest
+# matches
+s/\"2([^\"]*)\"/TIMESTAMP/
+</stripfile>
+<file name="log/altsvc-359" mode="text">
+# Your alt-svc cache. https://curl.haxx.se/docs/alt-svc.html
+# This file was generated by libcurl! Edit at your own risk.
+h2 %HOSTIP %HTTPSPORT h2 %HOSTIP %HTTP2PORT TIMESTAMP 0 0
+</file>
+</verify>
+</testcase>