| <testcase> |
| <info> |
| <keywords> |
| Metalink |
| HTTP |
| HTTP GET |
| </keywords> |
| </info> |
| |
| # |
| # Server-side |
| <reply> |
| <data nocheck="yes"> |
| HTTP/1.1 200 OK |
| Date: Thu, 21 Jun 2012 15:23:48 GMT |
| Server: test-server/fake |
| Content-Length: 43 |
| Connection: close |
| Content-Type: text/html |
| Content-Disposition: filename=name2008; charset=funny; option=strange |
| Funny-head: yesyes |
| |
| Some stuff delivered from an HTTP resource |
| </data> |
| </reply> |
| |
| # |
| # Client-side |
| <client> |
| <features> |
| file |
| Metalink |
| </features> |
| <server> |
| http |
| </server> |
| <name> |
| Metalink local XML file, HTTP resource, using -o fname -D file |
| </name> |
| <command option="no-output,no-include"> |
| --metalink file://%PWD/log/test2008.metalink -o log/outfile2008 -D log/heads2008 |
| </command> |
| # local metalink file written before test command runs |
| <file name="log/test2008.metalink"> |
| <?xml version="1.0" encoding="utf-8"?> |
| <metalink version="3.0" xmlns="http://www.metalinker.org/"> |
| <files> |
| <file name="log/download2008"> |
| <verification> |
| <hash type="md5">we-only-check-the-strongest-hash-provided</hash> |
| <hash type="sha256">711b1b566b536c5baae9b36f2f5c1830a7c8ff126d1afa2febc5b59f8d0aab54</hash> |
| </verification> |
| <resources maxconnections="1"> |
| <url type="http" preference="90">http://%HOSTIP:%HTTPPORT/2008</url> |
| </resources> |
| </file> |
| </files> |
| </metalink> |
| </file> |
| <postcheck> |
| perl %SRCDIR/libtest/notexists.pl log/2008 log/name2008 log/outfile2008 |
| </postcheck> |
| </client> |
| |
| # |
| # Verify data after the test has been "shot" |
| <verify> |
| <strip> |
| ^User-Agent:.* |
| </strip> |
| <protocol> |
| GET /2008 HTTP/1.1
|
| Host: %HOSTIP:%HTTPPORT
|
| Accept: */*
|
|
|
| </protocol> |
| <file1 name="log/download2008"> |
| Some stuff delivered from an HTTP resource |
| </file1> |
| <file2 name="log/heads2008"> |
| HTTP/1.1 200 OK |
| Date: Thu, 21 Jun 2012 15:23:48 GMT |
| Server: test-server/fake |
| Content-Length: 43 |
| Connection: close |
| Content-Type: text/html |
| Content-Disposition: filename=name2008; charset=funny; option=strange |
| Funny-head: yesyes |
| |
| </file2> |
| <file3 name="log/stdout2008"> |
| </file3> |
| <file4 name="log/stderr2008"> |
| Metalink: parsing (file://%PWD/log/test2008.metalink) metalink/XML... |
| Metalink: parsing (file://%PWD/log/test2008.metalink) OK |
| Metalink: fetching (log/download2008) from (http://%HOSTIP:%HTTPPORT/2008)... |
| Metalink: fetching (log/download2008) from (http://%HOSTIP:%HTTPPORT/2008) OK |
| Metalink: validating (log/download2008)... |
| Metalink: validating (log/download2008) [sha-256] OK |
| </file4> |
| <stripfile4> |
| $_ = '' if (($_ !~ /^Metalink: /) && ($_ !~ /error/i) && ($_ !~ /warn/i)) |
| </stripfile4> |
| </verify> |
| </testcase> |