1*6236dae4SAndroid Build Coastguard Worker<testcase> 2*6236dae4SAndroid Build Coastguard Worker<info> 3*6236dae4SAndroid Build Coastguard Worker<keywords> 4*6236dae4SAndroid Build Coastguard WorkerCURLINFO_EFFECTIVE_URL 5*6236dae4SAndroid Build Coastguard Worker</keywords> 6*6236dae4SAndroid Build Coastguard Worker</info> 7*6236dae4SAndroid Build Coastguard Worker 8*6236dae4SAndroid Build Coastguard Worker# Server-side 9*6236dae4SAndroid Build Coastguard Worker<reply> 10*6236dae4SAndroid Build Coastguard Worker<data nocheck="yes"> 11*6236dae4SAndroid Build Coastguard WorkerHTTP/1.1 200 OK swsbounce 12*6236dae4SAndroid Build Coastguard WorkerDate: Tue, 09 Nov 2010 14:49:00 GMT 13*6236dae4SAndroid Build Coastguard WorkerServer: test-server/fake 14*6236dae4SAndroid Build Coastguard WorkerContent-Type: text/html 15*6236dae4SAndroid Build Coastguard WorkerFunny-head: yesyes swsclose 16*6236dae4SAndroid Build Coastguard WorkerContent-Length: 0 17*6236dae4SAndroid Build Coastguard Workeralt-svc: h2="3dbbdetxoyw4nsp6c3cc456oj2ays6s43ezxzsfxxri3h5xqd.example:443"; ma=315360000; persist=1 18*6236dae4SAndroid Build Coastguard Worker 19*6236dae4SAndroid Build Coastguard Worker</data> 20*6236dae4SAndroid Build Coastguard Worker 21*6236dae4SAndroid Build Coastguard Worker# This is the second response 22*6236dae4SAndroid Build Coastguard Worker<data1 nocheck="yes"> 23*6236dae4SAndroid Build Coastguard WorkerHTTP/1.1 200 OK 24*6236dae4SAndroid Build Coastguard WorkerConnection: close 25*6236dae4SAndroid Build Coastguard WorkerContent-Length: 0 26*6236dae4SAndroid Build Coastguard Workeralt-svc: h2="second.example:443"; ma=315360000; 27*6236dae4SAndroid Build Coastguard Worker 28*6236dae4SAndroid Build Coastguard Worker</data1> 29*6236dae4SAndroid Build Coastguard Worker</reply> 30*6236dae4SAndroid Build Coastguard Worker 31*6236dae4SAndroid Build Coastguard Worker# Client-side 32*6236dae4SAndroid Build Coastguard Worker<client> 33*6236dae4SAndroid Build Coastguard Worker<server> 34*6236dae4SAndroid Build Coastguard Workerhttp 35*6236dae4SAndroid Build Coastguard Worker</server> 36*6236dae4SAndroid Build Coastguard Worker 37*6236dae4SAndroid Build Coastguard Worker# require debug so that alt-svc can work over plain old HTTP 38*6236dae4SAndroid Build Coastguard Worker<features> 39*6236dae4SAndroid Build Coastguard Workeralt-svc 40*6236dae4SAndroid Build Coastguard WorkerDebug 41*6236dae4SAndroid Build Coastguard Worker</features> 42*6236dae4SAndroid Build Coastguard Worker<name> 43*6236dae4SAndroid Build Coastguard Workeralt-svc cache save after resetting the handle 44*6236dae4SAndroid Build Coastguard Worker</name> 45*6236dae4SAndroid Build Coastguard Worker<setenv> 46*6236dae4SAndroid Build Coastguard Worker# make debug-curl accept Alt-Svc over plain HTTP 47*6236dae4SAndroid Build Coastguard WorkerCURL_ALTSVC_HTTP="yeah" 48*6236dae4SAndroid Build Coastguard Worker</setenv> 49*6236dae4SAndroid Build Coastguard Worker<tool> 50*6236dae4SAndroid Build Coastguard Workerlib%TESTNUMBER 51*6236dae4SAndroid Build Coastguard Worker</tool> 52*6236dae4SAndroid Build Coastguard Worker 53*6236dae4SAndroid Build Coastguard Worker<command> 54*6236dae4SAndroid Build Coastguard Worker%HOSTIP:%HTTPPORT/%TESTNUMBER %LOGDIR/altsvc-%TESTNUMBER 55*6236dae4SAndroid Build Coastguard Worker</command> 56*6236dae4SAndroid Build Coastguard Worker</client> 57*6236dae4SAndroid Build Coastguard Worker 58*6236dae4SAndroid Build Coastguard Worker# Verify data after the test has been "shot" 59*6236dae4SAndroid Build Coastguard Worker<verify> 60*6236dae4SAndroid Build Coastguard Worker<protocol> 61*6236dae4SAndroid Build Coastguard WorkerGET /%TESTNUMBER HTTP/1.1 62*6236dae4SAndroid Build Coastguard WorkerHost: %HOSTIP:%HTTPPORT 63*6236dae4SAndroid Build Coastguard WorkerAccept: */* 64*6236dae4SAndroid Build Coastguard Worker 65*6236dae4SAndroid Build Coastguard WorkerGET /%TESTNUMBER HTTP/1.1 66*6236dae4SAndroid Build Coastguard WorkerHost: %HOSTIP:%HTTPPORT 67*6236dae4SAndroid Build Coastguard WorkerAccept: */* 68*6236dae4SAndroid Build Coastguard Worker 69*6236dae4SAndroid Build Coastguard Worker</protocol> 70*6236dae4SAndroid Build Coastguard Worker<stripfile> 71*6236dae4SAndroid Build Coastguard Worker# strip out the (dynamic) expire date from the file so that the rest 72*6236dae4SAndroid Build Coastguard Worker# matches 73*6236dae4SAndroid Build Coastguard Workers/\"([^\"]*)\"/TIMESTAMP/ 74*6236dae4SAndroid Build Coastguard Worker</stripfile> 75*6236dae4SAndroid Build Coastguard Worker<file name="%LOGDIR/altsvc-%TESTNUMBER" mode="text"> 76*6236dae4SAndroid Build Coastguard Worker# Your alt-svc cache. https://curl.se/docs/alt-svc.html 77*6236dae4SAndroid Build Coastguard Worker# This file was generated by libcurl! Edit at your own risk. 78*6236dae4SAndroid Build Coastguard Workerh1 127.0.0.1 %HTTPPORT h2 3dbbdetxoyw4nsp6c3cc456oj2ays6s43ezxzsfxxri3h5xqd.example 443 TIMESTAMP 1 0 79*6236dae4SAndroid Build Coastguard Worker</file> 80*6236dae4SAndroid Build Coastguard Worker</verify> 81*6236dae4SAndroid Build Coastguard Worker</testcase> 82