1 <testcase> 2 <info> 3 <keywords> 4 Metalink 5 HTTP 6 HTTP GET 7 FILE 8 </keywords> 9 </info> 10 11 # 12 # Server-side 13 <reply> 14 <data nocheck="yes"> 15 HTTP/1.1 200 OK 16 Date: Thu, 21 Jun 2012 17:37:27 GMT 17 Server: test-server/fake 18 Content-Length: 41 19 Connection: close 20 Content-Type: text/html 21 Content-Disposition: filename=name2010; charset=funny; option=strange 22 Funny-head: yesyes 23 24 Contents delivered from an HTTP resource 25 </data> 26 </reply> 27 28 # 29 # Client-side 30 <client> 31 <features> 32 file 33 Metalink 34 </features> 35 <server> 36 http 37 </server> 38 <name> 39 Metalink local XML file, HTTP resource, using -o fname -D file 40 </name> 41 <command option="no-output,no-include"> 42 --metalink file://%PWD/log/test2010.metalink -o log/outfile2010 -D log/heads2010 43 </command> 44 # local metalink file written before test command runs 45 <file name="log/test2010.metalink"> 46 <?xml version="1.0" encoding="utf-8"?> 47 <metalink version="3.0" xmlns="http://www.metalinker.org/"> 48 <files> 49 <file name="log/download2010"> 50 <verification> 51 <hash type="md5">we-only-check-the-strongest-hash-provided</hash> 52 <hash type="sha256">19dcb4e2a99b9cd02c30b1ed6c55869b7ef8cda9f985648909c48a6dbb54356c</hash> 53 </verification> 54 <resources maxconnections="1"> 55 <url type="http" preference="90">http://%HOSTIP:%HTTPPORT/2010</url> 56 </resources> 57 </file> 58 </files> 59 </metalink> 60 </file> 61 <postcheck> 62 perl %SRCDIR/libtest/notexists.pl log/2010 log/name2010 log/outfile2010 63 </postcheck> 64 </client> 65 66 # 67 # Verify data after the test has been "shot" 68 <verify> 69 <strip> 70 ^User-Agent:.* 71 </strip> 72 <protocol> 73 GET /2010 HTTP/1.1 74 Host: %HOSTIP:%HTTPPORT 75 Accept: */* 76 77 </protocol> 78 <file1 name="log/download2010"> 79 Contents delivered from an HTTP resource 80 </file1> 81 <stripfile2> 82 s/Last-Modified:.*// 83 </stripfile2> 84 <file2 name="log/heads2010"> 85 Content-Length: 496 86 Accept-ranges: bytes 87 88 89 HTTP/1.1 200 OK 90 Date: Thu, 21 Jun 2012 17:37:27 GMT 91 Server: test-server/fake 92 Content-Length: 41 93 Connection: close 94 Content-Type: text/html 95 Content-Disposition: filename=name2010; charset=funny; option=strange 96 Funny-head: yesyes 97 98 </file2> 99 <file3 name="log/stdout2010"> 100 </file3> 101 <file4 name="log/stderr2010"> 102 Metalink: parsing (file://%PWD/log/test2010.metalink) metalink/XML... 103 Metalink: parsing (file://%PWD/log/test2010.metalink) OK 104 Metalink: fetching (log/download2010) from (http://%HOSTIP:%HTTPPORT/2010)... 105 Metalink: fetching (log/download2010) from (http://%HOSTIP:%HTTPPORT/2010) OK 106 Metalink: validating (log/download2010)... 107 Metalink: validating (log/download2010) [sha-256] OK 108 </file4> 109 <stripfile4> 110 $_ = '' if (($_ !~ /^Metalink: /) && ($_ !~ /error/i) && ($_ !~ /warn/i)) 111 </stripfile4> 112 </verify> 113 </testcase> 114