Metalink
HTTP
HTTP GET
-J
FILE
#
# Server-side
HTTP/1.1 200 OK
Date: Thu, 21 Jun 2012 16:27:17 GMT
Server: test-server/fake
Content-Length: 46
Connection: close
Content-Type: text/html
Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange
Funny-head: yesyes
Some contents delivered from an HTTP resource
#
# Client-side
file
Metalink
http
Metalink local XML file, HTTP resource, using -o fname -J -D file
--metalink file://%PWD/log/test%TESTNUMBER.metalink -J -o log/outfile%TESTNUMBER -D log/heads%TESTNUMBER
# local metalink file written before test command runs
we-only-check-the-strongest-hash-provided
e4c5b83384ba7d5f8e201d61747a14f29baacd7dfadce0fbd56661db4bba72b2
http://%HOSTIP:%HTTPPORT/%TESTNUMBER
perl %SRCDIR/libtest/notexists.pl log/%TESTNUMBER log/name%TESTNUMBER log/outfile%TESTNUMBER
#
# Verify data after the test has been "shot"
GET /%TESTNUMBER HTTP/1.1
Host: %HOSTIP:%HTTPPORT
User-Agent: curl/%VERSION
Accept: */*
Some contents delivered from an HTTP resource
# The Content-Length replace here is to handle with 4/5 digit port number in
# the content
s/Last-Modified:.*//
s/Content-Length: 49[67]/Content-Length: yeps/
Content-Length: yeps
Accept-ranges: bytes
HTTP/1.1 200 OK
Date: Thu, 21 Jun 2012 16:27:17 GMT
Server: test-server/fake
Content-Length: 46
Connection: close
Content-Type: text/html
Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange
Funny-head: yesyes
Metalink: parsing (file://%PWD/log/test%TESTNUMBER.metalink) metalink/XML...
Metalink: parsing (file://%PWD/log/test%TESTNUMBER.metalink) OK
Metalink: fetching (log/download%TESTNUMBER) from (http://%HOSTIP:%HTTPPORT/%TESTNUMBER)...
Metalink: fetching (log/download%TESTNUMBER) from (http://%HOSTIP:%HTTPPORT/%TESTNUMBER) OK
Metalink: validating (log/download%TESTNUMBER)...
Metalink: validating (log/download%TESTNUMBER) [sha-256] OK
$_ = '' if (($_ !~ /^Metalink: /) && ($_ !~ /error/i) && ($_ !~ /warn/i))