fix:...
This commit is contained in:
@@ -1,96 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
RETR
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
# file1362 contents...
|
||||
<data nocheck="yes">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1362; charset=funny; option=strange
|
||||
|
||||
MOOOO
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
# this relies on the debug feature to allow us to set directory to store the
|
||||
# -O output in, using the CURL_TESTDIR variable
|
||||
<features>
|
||||
debug
|
||||
</features>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<name>
|
||||
FTP download, file with C-D inside, using -O -i -D stdout
|
||||
</name>
|
||||
<setenv>
|
||||
CURL_TESTDIR=%PWD/log
|
||||
</setenv>
|
||||
<command option="no-output,no-include">
|
||||
ftp://%HOSTIP:%FTPPORT/path/file1362 -O -i -D -
|
||||
</command>
|
||||
<postcheck>
|
||||
perl %SRCDIR/libtest/notexists.pl log/name1362
|
||||
</postcheck>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
PWD
|
||||
CWD path
|
||||
EPSV
|
||||
TYPE I
|
||||
SIZE file1362
|
||||
RETR file1362
|
||||
QUIT
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/file1362">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1362; charset=funny; option=strange
|
||||
|
||||
MOOOO
|
||||
</file1>
|
||||
|
||||
<file2 name="log/stdout1362">
|
||||
220- _ _ ____ _
|
||||
220- ___| | | | _ \| |
|
||||
220- / __| | | | |_) | |
|
||||
220- | (__| |_| | _ {| |___
|
||||
220 \___|\___/|_| \_\_____|
|
||||
331 We are happy you popped in!
|
||||
230 Welcome you silly person
|
||||
257 "/" is current directory
|
||||
250 CWD command successful.
|
||||
229 Entering Passive Mode (stripped)
|
||||
200 I modify TYPE as you wanted
|
||||
213 214
|
||||
150 Binary data connection for 1362 () (214 bytes).
|
||||
226 File transfer complete
|
||||
</file2>
|
||||
<stripfile2>
|
||||
s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
|
||||
</stripfile2>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,79 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
RETR
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
# file1363 contents...
|
||||
<data nocheck="yes">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1363; charset=funny; option=strange
|
||||
|
||||
MOOOO
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
# this relies on the debug feature to allow us to set directory to store the
|
||||
# -O output in, using the CURL_TESTDIR variable
|
||||
<features>
|
||||
debug
|
||||
</features>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<name>
|
||||
FTP download, file with C-D inside, using -O -i, without -D
|
||||
</name>
|
||||
<setenv>
|
||||
CURL_TESTDIR=%PWD/log
|
||||
</setenv>
|
||||
<command option="no-output,no-include">
|
||||
ftp://%HOSTIP:%FTPPORT/path/file1363 -O -i
|
||||
</command>
|
||||
<postcheck>
|
||||
perl %SRCDIR/libtest/notexists.pl log/name1363
|
||||
</postcheck>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
PWD
|
||||
CWD path
|
||||
EPSV
|
||||
TYPE I
|
||||
SIZE file1363
|
||||
RETR file1363
|
||||
QUIT
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/file1363">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1363; charset=funny; option=strange
|
||||
|
||||
MOOOO
|
||||
</file1>
|
||||
|
||||
<file2 name="log/stdout1363">
|
||||
</file2>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,71 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
#
|
||||
<reply>
|
||||
<data nocheck="yes">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
|
||||
12345
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
HTTP GET -o fname without Content-Disposition, -D file
|
||||
</name>
|
||||
<command option="no-output,no-include">
|
||||
http://%HOSTIP:%HTTPPORT/1364 -o log/outfile1364 -D log/heads1364
|
||||
</command>
|
||||
<postcheck>
|
||||
perl %SRCDIR/libtest/notexists.pl log/1364
|
||||
</postcheck>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1364 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/outfile1364">
|
||||
12345
|
||||
</file1>
|
||||
|
||||
<file2 name="log/heads1364">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
|
||||
</file2>
|
||||
|
||||
<file3 name="log/stdout1364">
|
||||
</file3>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,68 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
#
|
||||
<reply>
|
||||
<data nocheck="yes">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
|
||||
12345
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
HTTP GET -o fname without Content-Disposition, -D stdout
|
||||
</name>
|
||||
<command option="no-output,no-include">
|
||||
http://%HOSTIP:%HTTPPORT/1365 -o log/outfile1365 -D -
|
||||
</command>
|
||||
<postcheck>
|
||||
perl %SRCDIR/libtest/notexists.pl log/1365
|
||||
</postcheck>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1365 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/outfile1365">
|
||||
12345
|
||||
</file1>
|
||||
|
||||
<file2 name="log/stdout1365">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
|
||||
</file2>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,73 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
#
|
||||
<reply>
|
||||
<data nocheck="yes">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1366; charset=funny; option=strange
|
||||
|
||||
12345
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
HTTP GET -o fname and Content-Disposition, -D file
|
||||
</name>
|
||||
<command option="no-output,no-include">
|
||||
http://%HOSTIP:%HTTPPORT/1366 -o log/outfile1366 -D log/heads1366
|
||||
</command>
|
||||
<postcheck>
|
||||
perl %SRCDIR/libtest/notexists.pl log/1366 log/name1366
|
||||
</postcheck>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1366 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/outfile1366">
|
||||
12345
|
||||
</file1>
|
||||
|
||||
<file2 name="log/heads1366">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1366; charset=funny; option=strange
|
||||
|
||||
</file2>
|
||||
|
||||
<file3 name="log/stdout1366">
|
||||
</file3>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,70 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
#
|
||||
<reply>
|
||||
<data nocheck="yes">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1367; charset=funny; option=strange
|
||||
|
||||
12345
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
HTTP GET -o fname and Content-Disposition, -D stdout
|
||||
</name>
|
||||
<command option="no-output,no-include">
|
||||
http://%HOSTIP:%HTTPPORT/1367 -o log/outfile1367 -D -
|
||||
</command>
|
||||
<postcheck>
|
||||
perl %SRCDIR/libtest/notexists.pl log/1367 log/name1367
|
||||
</postcheck>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1367 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/outfile1367">
|
||||
12345
|
||||
</file1>
|
||||
|
||||
<file2 name="log/stdout1367">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1367; charset=funny; option=strange
|
||||
|
||||
</file2>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,72 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
-J
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
#
|
||||
<reply>
|
||||
<data nocheck="yes">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
|
||||
12345
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
HTTP GET -o fname -J without Content-Disposition, -D file
|
||||
</name>
|
||||
<command option="no-output,no-include">
|
||||
http://%HOSTIP:%HTTPPORT/1368 -J -o log/outfile1368 -D log/heads1368
|
||||
</command>
|
||||
<postcheck>
|
||||
perl %SRCDIR/libtest/notexists.pl log/1368
|
||||
</postcheck>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1368 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/outfile1368">
|
||||
12345
|
||||
</file1>
|
||||
|
||||
<file2 name="log/heads1368">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
|
||||
</file2>
|
||||
|
||||
<file3 name="log/stdout1368">
|
||||
</file3>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,69 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
-J
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
#
|
||||
<reply>
|
||||
<data nocheck="yes">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
|
||||
12345
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
HTTP GET -o fname -J without Content-Disposition, -D stdout
|
||||
</name>
|
||||
<command option="no-output,no-include">
|
||||
http://%HOSTIP:%HTTPPORT/1369 -J -o log/outfile1369 -D -
|
||||
</command>
|
||||
<postcheck>
|
||||
perl %SRCDIR/libtest/notexists.pl log/1369
|
||||
</postcheck>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1369 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/outfile1369">
|
||||
12345
|
||||
</file1>
|
||||
|
||||
<file2 name="log/stdout1369">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
|
||||
</file2>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,47 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
RETR
|
||||
--data-binary
|
||||
</keywords>
|
||||
</info>
|
||||
# Server-side
|
||||
<reply>
|
||||
<data>
|
||||
this is file contents
|
||||
</data>
|
||||
<servercmd>
|
||||
RETRNOSIZE
|
||||
</servercmd>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<name>
|
||||
FTP download without size in RETR string
|
||||
</name>
|
||||
<command>
|
||||
ftp://%HOSTIP:%FTPPORT/blalbla/lululul/137
|
||||
</command>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
PWD
|
||||
CWD blalbla
|
||||
CWD lululul
|
||||
EPSV
|
||||
TYPE I
|
||||
SIZE 137
|
||||
RETR 137
|
||||
QUIT
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,74 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
-J
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
#
|
||||
<reply>
|
||||
<data nocheck="yes">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1370; charset=funny; option=strange
|
||||
|
||||
12345
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
HTTP GET -o fname -J and Content-Disposition, -D file
|
||||
</name>
|
||||
<command option="no-output,no-include">
|
||||
http://%HOSTIP:%HTTPPORT/1370 -J -o log/outfile1370 -D log/heads1370
|
||||
</command>
|
||||
<postcheck>
|
||||
perl %SRCDIR/libtest/notexists.pl log/1370 log/name1370
|
||||
</postcheck>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1370 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/outfile1370">
|
||||
12345
|
||||
</file1>
|
||||
|
||||
<file2 name="log/heads1370">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1370; charset=funny; option=strange
|
||||
|
||||
</file2>
|
||||
|
||||
<file3 name="log/stdout1370">
|
||||
</file3>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,71 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
-J
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
#
|
||||
<reply>
|
||||
<data nocheck="yes">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1371; charset=funny; option=strange
|
||||
|
||||
12345
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
HTTP GET -o fname -J and Content-Disposition, -D stdout
|
||||
</name>
|
||||
<command option="no-output,no-include">
|
||||
http://%HOSTIP:%HTTPPORT/1371 -J -o log/outfile1371 -D -
|
||||
</command>
|
||||
<postcheck>
|
||||
perl %SRCDIR/libtest/notexists.pl log/1371 log/name1371
|
||||
</postcheck>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1371 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/outfile1371">
|
||||
12345
|
||||
</file1>
|
||||
|
||||
<file2 name="log/stdout1371">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1371; charset=funny; option=strange
|
||||
|
||||
</file2>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,78 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
#
|
||||
<reply>
|
||||
<data nocheck="yes">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
|
||||
12345
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
HTTP GET -o fname -i without Content-Disposition, -D file
|
||||
</name>
|
||||
<command option="no-output,no-include">
|
||||
http://%HOSTIP:%HTTPPORT/1372 -i -o log/outfile1372 -D log/heads1372
|
||||
</command>
|
||||
<postcheck>
|
||||
perl %SRCDIR/libtest/notexists.pl log/1372
|
||||
</postcheck>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1372 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/outfile1372">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
|
||||
12345
|
||||
</file1>
|
||||
|
||||
<file2 name="log/heads1372">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
|
||||
</file2>
|
||||
|
||||
<file3 name="log/stdout1372">
|
||||
</file3>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,75 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
#
|
||||
<reply>
|
||||
<data nocheck="yes">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
|
||||
12345
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
HTTP GET -o fname -i without Content-Disposition, -D stdout
|
||||
</name>
|
||||
<command option="no-output,no-include">
|
||||
http://%HOSTIP:%HTTPPORT/1373 -i -o log/outfile1373 -D -
|
||||
</command>
|
||||
<postcheck>
|
||||
perl %SRCDIR/libtest/notexists.pl log/1373
|
||||
</postcheck>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1373 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/outfile1373">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
|
||||
12345
|
||||
</file1>
|
||||
|
||||
<file2 name="log/stdout1373">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
|
||||
</file2>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,81 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
#
|
||||
<reply>
|
||||
<data nocheck="yes">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1374; charset=funny; option=strange
|
||||
|
||||
12345
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
HTTP GET -o fname -i and Content-Disposition, -D file
|
||||
</name>
|
||||
<command option="no-output,no-include">
|
||||
http://%HOSTIP:%HTTPPORT/1374 -i -o log/outfile1374 -D log/heads1374
|
||||
</command>
|
||||
<postcheck>
|
||||
perl %SRCDIR/libtest/notexists.pl log/1374 log/name1374
|
||||
</postcheck>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1374 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/outfile1374">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1374; charset=funny; option=strange
|
||||
|
||||
12345
|
||||
</file1>
|
||||
|
||||
<file2 name="log/heads1374">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1374; charset=funny; option=strange
|
||||
|
||||
</file2>
|
||||
|
||||
<file3 name="log/stdout1374">
|
||||
</file3>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,78 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
#
|
||||
<reply>
|
||||
<data nocheck="yes">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1375; charset=funny; option=strange
|
||||
|
||||
12345
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
HTTP GET -o fname -i and Content-Disposition, -D stdout
|
||||
</name>
|
||||
<command option="no-output,no-include">
|
||||
http://%HOSTIP:%HTTPPORT/1375 -i -o log/outfile1375 -D -
|
||||
</command>
|
||||
<postcheck>
|
||||
perl %SRCDIR/libtest/notexists.pl log/1375 log/name1375
|
||||
</postcheck>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1375 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/outfile1375">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1375; charset=funny; option=strange
|
||||
|
||||
12345
|
||||
</file1>
|
||||
|
||||
<file2 name="log/stdout1375">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1375; charset=funny; option=strange
|
||||
|
||||
</file2>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,68 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
#
|
||||
<reply>
|
||||
<data nocheck="yes">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
|
||||
12345
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
HTTP GET -o fname -i without Content-Disposition, without -D
|
||||
</name>
|
||||
<command option="no-output,no-include">
|
||||
http://%HOSTIP:%HTTPPORT/1376 -i -o log/outfile1376
|
||||
</command>
|
||||
<postcheck>
|
||||
perl %SRCDIR/libtest/notexists.pl log/1376
|
||||
</postcheck>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1376 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/outfile1376">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
|
||||
12345
|
||||
</file1>
|
||||
|
||||
<file2 name="log/stdout1376">
|
||||
</file2>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,70 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
#
|
||||
<reply>
|
||||
<data nocheck="yes">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1377; charset=funny; option=strange
|
||||
|
||||
12345
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
HTTP GET -o fname -i and Content-Disposition, without -D
|
||||
</name>
|
||||
<command option="no-output,no-include">
|
||||
http://%HOSTIP:%HTTPPORT/1377 -i -o log/outfile1377
|
||||
</command>
|
||||
<postcheck>
|
||||
perl %SRCDIR/libtest/notexists.pl log/1377 log/name1377
|
||||
</postcheck>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1377 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/outfile1377">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1377; charset=funny; option=strange
|
||||
|
||||
12345
|
||||
</file1>
|
||||
|
||||
<file2 name="log/stdout1377">
|
||||
</file2>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,56 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
RETR
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
<data nocheck="yes">
|
||||
fooo
|
||||
mooo
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<name>
|
||||
FTP DL, file without Content-Disposition inside, using -o fname
|
||||
</name>
|
||||
<command option="no-output,no-include">
|
||||
ftp://%HOSTIP:%FTPPORT/path/file1378 -o log/download1378
|
||||
</command>
|
||||
<postcheck>
|
||||
perl %SRCDIR/libtest/notexists.pl log/file1378
|
||||
</postcheck>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
PWD
|
||||
CWD path
|
||||
EPSV
|
||||
TYPE I
|
||||
SIZE file1378
|
||||
RETR file1378
|
||||
QUIT
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/download1378">
|
||||
fooo
|
||||
mooo
|
||||
</file1>
|
||||
|
||||
<file2 name="log/stdout1378">
|
||||
</file2>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,76 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
RETR
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
<data nocheck="yes">
|
||||
fooo
|
||||
mooo
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<name>
|
||||
FTP DL, file without C-D inside, using -o fname -D file
|
||||
</name>
|
||||
<command option="no-output,no-include">
|
||||
ftp://%HOSTIP:%FTPPORT/path/file1379 -o log/download1379 -D log/heads1379
|
||||
</command>
|
||||
<postcheck>
|
||||
perl %SRCDIR/libtest/notexists.pl log/file1379
|
||||
</postcheck>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
PWD
|
||||
CWD path
|
||||
EPSV
|
||||
TYPE I
|
||||
SIZE file1379
|
||||
RETR file1379
|
||||
QUIT
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/download1379">
|
||||
fooo
|
||||
mooo
|
||||
</file1>
|
||||
|
||||
<file2 name="log/heads1379">
|
||||
220- _ _ ____ _
|
||||
220- ___| | | | _ \| |
|
||||
220- / __| | | | |_) | |
|
||||
220- | (__| |_| | _ {| |___
|
||||
220 \___|\___/|_| \_\_____|
|
||||
331 We are happy you popped in!
|
||||
230 Welcome you silly person
|
||||
257 "/" is current directory
|
||||
250 CWD command successful.
|
||||
229 Entering Passive Mode (stripped)
|
||||
200 I modify TYPE as you wanted
|
||||
213 10
|
||||
150 Binary data connection for 1379 () (10 bytes).
|
||||
226 File transfer complete
|
||||
</file2>
|
||||
<stripfile2>
|
||||
s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
|
||||
</stripfile2>
|
||||
|
||||
<file3 name="log/stdout1379">
|
||||
</file3>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,49 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
RETR
|
||||
</keywords>
|
||||
</info>
|
||||
# Server-side
|
||||
<reply>
|
||||
<data>
|
||||
this is file contents
|
||||
</data>
|
||||
<size>
|
||||
-1
|
||||
</size>
|
||||
<servercmd>
|
||||
RETRNOSIZE
|
||||
</servercmd>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<name>
|
||||
FTP download without size in RETR string and no SIZE command
|
||||
</name>
|
||||
<command>
|
||||
ftp://%HOSTIP:%FTPPORT/blalbla/lululul/138
|
||||
</command>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
PWD
|
||||
CWD blalbla
|
||||
CWD lululul
|
||||
EPSV
|
||||
TYPE I
|
||||
SIZE 138
|
||||
RETR 138
|
||||
QUIT
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,73 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
RETR
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
<data nocheck="yes">
|
||||
fooo
|
||||
mooo
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<name>
|
||||
FTP DL, file without C-D inside, using -o fname -D stdout
|
||||
</name>
|
||||
<command option="no-output,no-include">
|
||||
ftp://%HOSTIP:%FTPPORT/path/file1380 -o log/download1380 -D -
|
||||
</command>
|
||||
<postcheck>
|
||||
perl %SRCDIR/libtest/notexists.pl log/file1380
|
||||
</postcheck>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
PWD
|
||||
CWD path
|
||||
EPSV
|
||||
TYPE I
|
||||
SIZE file1380
|
||||
RETR file1380
|
||||
QUIT
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/download1380">
|
||||
fooo
|
||||
mooo
|
||||
</file1>
|
||||
|
||||
<file2 name="log/stdout1380">
|
||||
220- _ _ ____ _
|
||||
220- ___| | | | _ \| |
|
||||
220- / __| | | | |_) | |
|
||||
220- | (__| |_| | _ {| |___
|
||||
220 \___|\___/|_| \_\_____|
|
||||
331 We are happy you popped in!
|
||||
230 Welcome you silly person
|
||||
257 "/" is current directory
|
||||
250 CWD command successful.
|
||||
229 Entering Passive Mode (stripped)
|
||||
200 I modify TYPE as you wanted
|
||||
213 10
|
||||
150 Binary data connection for 1380 () (10 bytes).
|
||||
226 File transfer complete
|
||||
</file2>
|
||||
<stripfile2>
|
||||
s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
|
||||
</stripfile2>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,77 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
RETR
|
||||
-J
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
<data nocheck="yes">
|
||||
fooo
|
||||
mooo
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<name>
|
||||
FTP DL, file without C-D inside, using -o fname -J -D file
|
||||
</name>
|
||||
<command option="no-output,no-include">
|
||||
ftp://%HOSTIP:%FTPPORT/path/file1381 -o log/download1381 -J -D log/heads1381
|
||||
</command>
|
||||
<postcheck>
|
||||
perl %SRCDIR/libtest/notexists.pl log/file1381
|
||||
</postcheck>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
PWD
|
||||
CWD path
|
||||
EPSV
|
||||
TYPE I
|
||||
SIZE file1381
|
||||
RETR file1381
|
||||
QUIT
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/download1381">
|
||||
fooo
|
||||
mooo
|
||||
</file1>
|
||||
|
||||
<file2 name="log/heads1381">
|
||||
220- _ _ ____ _
|
||||
220- ___| | | | _ \| |
|
||||
220- / __| | | | |_) | |
|
||||
220- | (__| |_| | _ {| |___
|
||||
220 \___|\___/|_| \_\_____|
|
||||
331 We are happy you popped in!
|
||||
230 Welcome you silly person
|
||||
257 "/" is current directory
|
||||
250 CWD command successful.
|
||||
229 Entering Passive Mode (stripped)
|
||||
200 I modify TYPE as you wanted
|
||||
213 10
|
||||
150 Binary data connection for 1381 () (10 bytes).
|
||||
226 File transfer complete
|
||||
</file2>
|
||||
<stripfile2>
|
||||
s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
|
||||
</stripfile2>
|
||||
|
||||
<file3 name="log/stdout1381">
|
||||
</file3>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,74 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
RETR
|
||||
-J
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
<data nocheck="yes">
|
||||
fooo
|
||||
mooo
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<name>
|
||||
FTP DL, file without C-D inside, using -o fname -J -D stdout
|
||||
</name>
|
||||
<command option="no-output,no-include">
|
||||
ftp://%HOSTIP:%FTPPORT/path/file1382 -o log/download1382 -J -D -
|
||||
</command>
|
||||
<postcheck>
|
||||
perl %SRCDIR/libtest/notexists.pl log/file1382
|
||||
</postcheck>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
PWD
|
||||
CWD path
|
||||
EPSV
|
||||
TYPE I
|
||||
SIZE file1382
|
||||
RETR file1382
|
||||
QUIT
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/download1382">
|
||||
fooo
|
||||
mooo
|
||||
</file1>
|
||||
|
||||
<file2 name="log/stdout1382">
|
||||
220- _ _ ____ _
|
||||
220- ___| | | | _ \| |
|
||||
220- / __| | | | |_) | |
|
||||
220- | (__| |_| | _ {| |___
|
||||
220 \___|\___/|_| \_\_____|
|
||||
331 We are happy you popped in!
|
||||
230 Welcome you silly person
|
||||
257 "/" is current directory
|
||||
250 CWD command successful.
|
||||
229 Entering Passive Mode (stripped)
|
||||
200 I modify TYPE as you wanted
|
||||
213 10
|
||||
150 Binary data connection for 1382 () (10 bytes).
|
||||
226 File transfer complete
|
||||
</file2>
|
||||
<stripfile2>
|
||||
s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
|
||||
</stripfile2>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,76 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
RETR
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
<data nocheck="yes">
|
||||
fooo
|
||||
mooo
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<name>
|
||||
FTP DL, file without C-D inside, using -o fname -i -D file
|
||||
</name>
|
||||
<command option="no-output,no-include">
|
||||
ftp://%HOSTIP:%FTPPORT/path/file1383 -o log/download1383 -i -D log/heads1383
|
||||
</command>
|
||||
<postcheck>
|
||||
perl %SRCDIR/libtest/notexists.pl log/file1383
|
||||
</postcheck>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
PWD
|
||||
CWD path
|
||||
EPSV
|
||||
TYPE I
|
||||
SIZE file1383
|
||||
RETR file1383
|
||||
QUIT
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/download1383">
|
||||
fooo
|
||||
mooo
|
||||
</file1>
|
||||
|
||||
<file2 name="log/heads1383">
|
||||
220- _ _ ____ _
|
||||
220- ___| | | | _ \| |
|
||||
220- / __| | | | |_) | |
|
||||
220- | (__| |_| | _ {| |___
|
||||
220 \___|\___/|_| \_\_____|
|
||||
331 We are happy you popped in!
|
||||
230 Welcome you silly person
|
||||
257 "/" is current directory
|
||||
250 CWD command successful.
|
||||
229 Entering Passive Mode (stripped)
|
||||
200 I modify TYPE as you wanted
|
||||
213 10
|
||||
150 Binary data connection for 1383 () (10 bytes).
|
||||
226 File transfer complete
|
||||
</file2>
|
||||
<stripfile2>
|
||||
s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
|
||||
</stripfile2>
|
||||
|
||||
<file3 name="log/stdout1383">
|
||||
</file3>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,73 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
RETR
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
<data nocheck="yes">
|
||||
fooo
|
||||
mooo
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<name>
|
||||
FTP DL, file without C-D inside, using -o fname -i -D stdout
|
||||
</name>
|
||||
<command option="no-output,no-include">
|
||||
ftp://%HOSTIP:%FTPPORT/path/file1384 -o log/download1384 -i -D -
|
||||
</command>
|
||||
<postcheck>
|
||||
perl %SRCDIR/libtest/notexists.pl log/file1384
|
||||
</postcheck>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
PWD
|
||||
CWD path
|
||||
EPSV
|
||||
TYPE I
|
||||
SIZE file1384
|
||||
RETR file1384
|
||||
QUIT
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/download1384">
|
||||
fooo
|
||||
mooo
|
||||
</file1>
|
||||
|
||||
<file2 name="log/stdout1384">
|
||||
220- _ _ ____ _
|
||||
220- ___| | | | _ \| |
|
||||
220- / __| | | | |_) | |
|
||||
220- | (__| |_| | _ {| |___
|
||||
220 \___|\___/|_| \_\_____|
|
||||
331 We are happy you popped in!
|
||||
230 Welcome you silly person
|
||||
257 "/" is current directory
|
||||
250 CWD command successful.
|
||||
229 Entering Passive Mode (stripped)
|
||||
200 I modify TYPE as you wanted
|
||||
213 10
|
||||
150 Binary data connection for 1384 () (10 bytes).
|
||||
226 File transfer complete
|
||||
</file2>
|
||||
<stripfile2>
|
||||
s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
|
||||
</stripfile2>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,56 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
RETR
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
<data nocheck="yes">
|
||||
fooo
|
||||
mooo
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<name>
|
||||
FTP DL, file without C-D inside, using -o fname -i, without -D
|
||||
</name>
|
||||
<command option="no-output,no-include">
|
||||
ftp://%HOSTIP:%FTPPORT/path/file1385 -o log/download1385 -i
|
||||
</command>
|
||||
<postcheck>
|
||||
perl %SRCDIR/libtest/notexists.pl log/file1385
|
||||
</postcheck>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
PWD
|
||||
CWD path
|
||||
EPSV
|
||||
TYPE I
|
||||
SIZE file1385
|
||||
RETR file1385
|
||||
QUIT
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/download1385">
|
||||
fooo
|
||||
mooo
|
||||
</file1>
|
||||
|
||||
<file2 name="log/stdout1385">
|
||||
</file2>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,71 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
RETR
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
# file1386 contents...
|
||||
<data nocheck="yes">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1386; charset=funny; option=strange
|
||||
|
||||
MOOOO
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<name>
|
||||
FTP DL, file with Content-Disposition inside, using -o fname
|
||||
</name>
|
||||
<command option="no-output,no-include">
|
||||
ftp://%HOSTIP:%FTPPORT/path/file1386 -o log/download1386
|
||||
</command>
|
||||
<postcheck>
|
||||
perl %SRCDIR/libtest/notexists.pl log/file1386 log/name1386
|
||||
</postcheck>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
PWD
|
||||
CWD path
|
||||
EPSV
|
||||
TYPE I
|
||||
SIZE file1386
|
||||
RETR file1386
|
||||
QUIT
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/download1386">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1386; charset=funny; option=strange
|
||||
|
||||
MOOOO
|
||||
</file1>
|
||||
|
||||
<file2 name="log/stdout1386">
|
||||
</file2>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,91 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
RETR
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
# file1387 contents...
|
||||
<data nocheck="yes">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1387; charset=funny; option=strange
|
||||
|
||||
MOOOO
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<name>
|
||||
FTP DL, file with C-D inside, using -o fname -D file
|
||||
</name>
|
||||
<command option="no-output,no-include">
|
||||
ftp://%HOSTIP:%FTPPORT/path/file1387 -o log/download1387 -D log/heads1387
|
||||
</command>
|
||||
<postcheck>
|
||||
perl %SRCDIR/libtest/notexists.pl log/file1387 log/name1387
|
||||
</postcheck>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
PWD
|
||||
CWD path
|
||||
EPSV
|
||||
TYPE I
|
||||
SIZE file1387
|
||||
RETR file1387
|
||||
QUIT
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/download1387">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1387; charset=funny; option=strange
|
||||
|
||||
MOOOO
|
||||
</file1>
|
||||
|
||||
<file2 name="log/heads1387">
|
||||
220- _ _ ____ _
|
||||
220- ___| | | | _ \| |
|
||||
220- / __| | | | |_) | |
|
||||
220- | (__| |_| | _ {| |___
|
||||
220 \___|\___/|_| \_\_____|
|
||||
331 We are happy you popped in!
|
||||
230 Welcome you silly person
|
||||
257 "/" is current directory
|
||||
250 CWD command successful.
|
||||
229 Entering Passive Mode (stripped)
|
||||
200 I modify TYPE as you wanted
|
||||
213 222
|
||||
150 Binary data connection for 1387 () (222 bytes).
|
||||
226 File transfer complete
|
||||
</file2>
|
||||
<stripfile2>
|
||||
s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
|
||||
</stripfile2>
|
||||
|
||||
<file3 name="log/stdout1387">
|
||||
</file3>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,88 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
RETR
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
# file1388 contents...
|
||||
<data nocheck="yes">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1388; charset=funny; option=strange
|
||||
|
||||
MOOOO
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<name>
|
||||
FTP DL, file with C-D inside, using -o fname -D stdout
|
||||
</name>
|
||||
<command option="no-output,no-include">
|
||||
ftp://%HOSTIP:%FTPPORT/path/file1388 -o log/download1388 -D -
|
||||
</command>
|
||||
<postcheck>
|
||||
perl %SRCDIR/libtest/notexists.pl log/file1388 log/name1388
|
||||
</postcheck>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
PWD
|
||||
CWD path
|
||||
EPSV
|
||||
TYPE I
|
||||
SIZE file1388
|
||||
RETR file1388
|
||||
QUIT
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/download1388">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1388; charset=funny; option=strange
|
||||
|
||||
MOOOO
|
||||
</file1>
|
||||
|
||||
<file2 name="log/stdout1388">
|
||||
220- _ _ ____ _
|
||||
220- ___| | | | _ \| |
|
||||
220- / __| | | | |_) | |
|
||||
220- | (__| |_| | _ {| |___
|
||||
220 \___|\___/|_| \_\_____|
|
||||
331 We are happy you popped in!
|
||||
230 Welcome you silly person
|
||||
257 "/" is current directory
|
||||
250 CWD command successful.
|
||||
229 Entering Passive Mode (stripped)
|
||||
200 I modify TYPE as you wanted
|
||||
213 222
|
||||
150 Binary data connection for 1388 () (222 bytes).
|
||||
226 File transfer complete
|
||||
</file2>
|
||||
<stripfile2>
|
||||
s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
|
||||
</stripfile2>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,92 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
RETR
|
||||
-J
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
# file1389 contents...
|
||||
<data nocheck="yes">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1389; charset=funny; option=strange
|
||||
|
||||
MOOOO
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<name>
|
||||
FTP DL, file with C-D inside, using -o fname -J -D file
|
||||
</name>
|
||||
<command option="no-output,no-include">
|
||||
ftp://%HOSTIP:%FTPPORT/path/file1389 -o log/download1389 -J -D log/heads1389
|
||||
</command>
|
||||
<postcheck>
|
||||
perl %SRCDIR/libtest/notexists.pl log/file1389 log/name1389
|
||||
</postcheck>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
PWD
|
||||
CWD path
|
||||
EPSV
|
||||
TYPE I
|
||||
SIZE file1389
|
||||
RETR file1389
|
||||
QUIT
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/download1389">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1389; charset=funny; option=strange
|
||||
|
||||
MOOOO
|
||||
</file1>
|
||||
|
||||
<file2 name="log/heads1389">
|
||||
220- _ _ ____ _
|
||||
220- ___| | | | _ \| |
|
||||
220- / __| | | | |_) | |
|
||||
220- | (__| |_| | _ {| |___
|
||||
220 \___|\___/|_| \_\_____|
|
||||
331 We are happy you popped in!
|
||||
230 Welcome you silly person
|
||||
257 "/" is current directory
|
||||
250 CWD command successful.
|
||||
229 Entering Passive Mode (stripped)
|
||||
200 I modify TYPE as you wanted
|
||||
213 222
|
||||
150 Binary data connection for 1389 () (222 bytes).
|
||||
226 File transfer complete
|
||||
</file2>
|
||||
<stripfile2>
|
||||
s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
|
||||
</stripfile2>
|
||||
|
||||
<file3 name="log/stdout1389">
|
||||
</file3>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,47 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
RETR
|
||||
-z
|
||||
</keywords>
|
||||
</info>
|
||||
# Server-side
|
||||
<reply>
|
||||
<data>
|
||||
this is file contents
|
||||
</data>
|
||||
<mdtm>
|
||||
213 20030409102659
|
||||
</mdtm>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<name>
|
||||
FTP download a newer file with -z
|
||||
</name>
|
||||
<command>
|
||||
ftp://%HOSTIP:%FTPPORT/blalbla/139 -z "1 jan 1989"
|
||||
</command>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
PWD
|
||||
CWD blalbla
|
||||
MDTM 139
|
||||
EPSV
|
||||
TYPE I
|
||||
SIZE 139
|
||||
RETR 139
|
||||
QUIT
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,89 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
RETR
|
||||
-J
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
# file1390 contents...
|
||||
<data nocheck="yes">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1390; charset=funny; option=strange
|
||||
|
||||
MOOOO
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<name>
|
||||
FTP DL, file with C-D inside, using -o fname -J -D stdout
|
||||
</name>
|
||||
<command option="no-output,no-include">
|
||||
ftp://%HOSTIP:%FTPPORT/path/file1390 -o log/download1390 -J -D -
|
||||
</command>
|
||||
<postcheck>
|
||||
perl %SRCDIR/libtest/notexists.pl log/file1390 log/name1390
|
||||
</postcheck>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
PWD
|
||||
CWD path
|
||||
EPSV
|
||||
TYPE I
|
||||
SIZE file1390
|
||||
RETR file1390
|
||||
QUIT
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/download1390">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1390; charset=funny; option=strange
|
||||
|
||||
MOOOO
|
||||
</file1>
|
||||
|
||||
<file2 name="log/stdout1390">
|
||||
220- _ _ ____ _
|
||||
220- ___| | | | _ \| |
|
||||
220- / __| | | | |_) | |
|
||||
220- | (__| |_| | _ {| |___
|
||||
220 \___|\___/|_| \_\_____|
|
||||
331 We are happy you popped in!
|
||||
230 Welcome you silly person
|
||||
257 "/" is current directory
|
||||
250 CWD command successful.
|
||||
229 Entering Passive Mode (stripped)
|
||||
200 I modify TYPE as you wanted
|
||||
213 222
|
||||
150 Binary data connection for 1390 () (222 bytes).
|
||||
226 File transfer complete
|
||||
</file2>
|
||||
<stripfile2>
|
||||
s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
|
||||
</stripfile2>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,91 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
RETR
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
# file1391 contents...
|
||||
<data nocheck="yes">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1391; charset=funny; option=strange
|
||||
|
||||
MOOOO
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<name>
|
||||
FTP DL, file with C-D inside, using -o fname -i -D file
|
||||
</name>
|
||||
<command option="no-output,no-include">
|
||||
ftp://%HOSTIP:%FTPPORT/path/file1391 -o log/download1391 -i -D log/heads1391
|
||||
</command>
|
||||
<postcheck>
|
||||
perl %SRCDIR/libtest/notexists.pl log/file1391 log/name1391
|
||||
</postcheck>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
PWD
|
||||
CWD path
|
||||
EPSV
|
||||
TYPE I
|
||||
SIZE file1391
|
||||
RETR file1391
|
||||
QUIT
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/download1391">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1391; charset=funny; option=strange
|
||||
|
||||
MOOOO
|
||||
</file1>
|
||||
|
||||
<file2 name="log/heads1391">
|
||||
220- _ _ ____ _
|
||||
220- ___| | | | _ \| |
|
||||
220- / __| | | | |_) | |
|
||||
220- | (__| |_| | _ {| |___
|
||||
220 \___|\___/|_| \_\_____|
|
||||
331 We are happy you popped in!
|
||||
230 Welcome you silly person
|
||||
257 "/" is current directory
|
||||
250 CWD command successful.
|
||||
229 Entering Passive Mode (stripped)
|
||||
200 I modify TYPE as you wanted
|
||||
213 222
|
||||
150 Binary data connection for 1391 () (222 bytes).
|
||||
226 File transfer complete
|
||||
</file2>
|
||||
<stripfile2>
|
||||
s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
|
||||
</stripfile2>
|
||||
|
||||
<file3 name="log/stdout1391">
|
||||
</file3>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,88 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
RETR
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
# file1392 contents...
|
||||
<data nocheck="yes">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1392; charset=funny; option=strange
|
||||
|
||||
MOOOO
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<name>
|
||||
FTP DL, file with C-D inside, using -o fname -i -D stdout
|
||||
</name>
|
||||
<command option="no-output,no-include">
|
||||
ftp://%HOSTIP:%FTPPORT/path/file1392 -o log/download1392 -i -D -
|
||||
</command>
|
||||
<postcheck>
|
||||
perl %SRCDIR/libtest/notexists.pl log/file1392 log/name1392
|
||||
</postcheck>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
PWD
|
||||
CWD path
|
||||
EPSV
|
||||
TYPE I
|
||||
SIZE file1392
|
||||
RETR file1392
|
||||
QUIT
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/download1392">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1392; charset=funny; option=strange
|
||||
|
||||
MOOOO
|
||||
</file1>
|
||||
|
||||
<file2 name="log/stdout1392">
|
||||
220- _ _ ____ _
|
||||
220- ___| | | | _ \| |
|
||||
220- / __| | | | |_) | |
|
||||
220- | (__| |_| | _ {| |___
|
||||
220 \___|\___/|_| \_\_____|
|
||||
331 We are happy you popped in!
|
||||
230 Welcome you silly person
|
||||
257 "/" is current directory
|
||||
250 CWD command successful.
|
||||
229 Entering Passive Mode (stripped)
|
||||
200 I modify TYPE as you wanted
|
||||
213 222
|
||||
150 Binary data connection for 1392 () (222 bytes).
|
||||
226 File transfer complete
|
||||
</file2>
|
||||
<stripfile2>
|
||||
s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
|
||||
</stripfile2>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,71 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
RETR
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
# file1393 contents...
|
||||
<data nocheck="yes">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1393; charset=funny; option=strange
|
||||
|
||||
MOOOO
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<name>
|
||||
FTP DL, file with C-D inside, using -o fname -i, without -D
|
||||
</name>
|
||||
<command option="no-output,no-include">
|
||||
ftp://%HOSTIP:%FTPPORT/path/file1393 -o log/download1393 -i
|
||||
</command>
|
||||
<postcheck>
|
||||
perl %SRCDIR/libtest/notexists.pl log/file1393 log/name1393
|
||||
</postcheck>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
PWD
|
||||
CWD path
|
||||
EPSV
|
||||
TYPE I
|
||||
SIZE file1393
|
||||
RETR file1393
|
||||
QUIT
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/download1393">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1393; charset=funny; option=strange
|
||||
|
||||
MOOOO
|
||||
</file1>
|
||||
|
||||
<file2 name="log/stdout1393">
|
||||
</file2>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,30 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
unittest
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
none
|
||||
</server>
|
||||
<features>
|
||||
unittest
|
||||
</features>
|
||||
<name>
|
||||
unit test for parse_cert_parameter()
|
||||
</name>
|
||||
<tool>
|
||||
unit1394
|
||||
</tool>
|
||||
</client>
|
||||
|
||||
<verify>
|
||||
<stdout mode="text">
|
||||
</stdout>
|
||||
</verify>
|
||||
|
||||
</testcase>
|
||||
@@ -1,26 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
unittest
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
none
|
||||
</server>
|
||||
<features>
|
||||
unittest
|
||||
</features>
|
||||
<name>
|
||||
Curl_dedotdotify
|
||||
</name>
|
||||
<tool>
|
||||
unit1395
|
||||
</tool>
|
||||
|
||||
</client>
|
||||
|
||||
</testcase>
|
||||
@@ -1,27 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
unittest
|
||||
curl_easy_escape
|
||||
curl_easy_unescape
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
none
|
||||
</server>
|
||||
<features>
|
||||
unittest
|
||||
</features>
|
||||
<name>
|
||||
curl_easy_escape and curl_easy_unescape
|
||||
</name>
|
||||
<tool>
|
||||
unit1396
|
||||
</tool>
|
||||
</client>
|
||||
|
||||
</testcase>
|
||||
@@ -1,27 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
unittest
|
||||
ssl
|
||||
wildcard
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
none
|
||||
</server>
|
||||
<features>
|
||||
unittest
|
||||
</features>
|
||||
<name>
|
||||
Check wildcard certificate matching function Curl_cert_hostcheck
|
||||
</name>
|
||||
<tool>
|
||||
unit1397
|
||||
</tool>
|
||||
</client>
|
||||
|
||||
</testcase>
|
||||
@@ -1,26 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
unittest
|
||||
curl_msnprintf
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
none
|
||||
</server>
|
||||
<features>
|
||||
unittest
|
||||
</features>
|
||||
<name>
|
||||
curl_msnprintf unit tests
|
||||
</name>
|
||||
<tool>
|
||||
unit1398
|
||||
</tool>
|
||||
</client>
|
||||
|
||||
</testcase>
|
||||
@@ -1,44 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP HEAD
|
||||
</keywords>
|
||||
</info>
|
||||
# Server-side
|
||||
<reply>
|
||||
<data>
|
||||
HTTP/1.1 200 OK
|
||||
Server: thebest/1.0
|
||||
Connection: close
|
||||
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
HTTP HEAD with Connection: close
|
||||
</name>
|
||||
<command>
|
||||
http://%HOSTIP:%HTTPPORT/want/14 -i --head
|
||||
</command>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
HEAD /want/14 HTTP/1.1
|
||||
User-Agent: curl/7.4.2-pre4 (sparc-sun-solaris2.7) libcurl 7.4.2-pre4
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,42 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
-z
|
||||
--data-binary
|
||||
</keywords>
|
||||
</info>
|
||||
# Server-side
|
||||
<reply>
|
||||
<data>
|
||||
</data>
|
||||
<mdtm>
|
||||
213 20030409102659
|
||||
</mdtm>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<name>
|
||||
FTP download file with -z, expected to not transfer
|
||||
</name>
|
||||
<command>
|
||||
ftp://%HOSTIP:%FTPPORT/blalbla/140 -z "1 jan 2004"
|
||||
</command>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
PWD
|
||||
CWD blalbla
|
||||
MDTM 140
|
||||
QUIT
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,105 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
--libcurl
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
<data>
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 29 Jul 2008 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 0
|
||||
Connection: close
|
||||
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
--libcurl for simple HTTP GET
|
||||
</name>
|
||||
<command>
|
||||
http://%HOSTIP:%HTTPPORT/we/want/1400 --libcurl log/test1400.c
|
||||
</command>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /we/want/1400 HTTP/1.1
|
||||
User-Agent: curl/7.18.2 (i686-pc-linux-gnu) libcurl/7.18.2 OpenSSL/0.9.7a ipv6 zlib/1.1.4
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
<stripfile>
|
||||
s/(USERAGENT, \")[^\"]+/${1}stripped/
|
||||
# CURLOPT_SSL_VERIFYPEER, SSH_KNOWNHOSTS and HTTP_VERSION vary with
|
||||
# configurations - just ignore them
|
||||
$_ = '' if /CURLOPT_SSL_VERIFYPEER/
|
||||
$_ = '' if /CURLOPT_SSH_KNOWNHOSTS/
|
||||
$_ = '' if /CURLOPT_HTTP_VERSION/
|
||||
</stripfile>
|
||||
<file name="log/test1400.c" mode="text">
|
||||
/********* Sample code generated by the curl command line tool **********
|
||||
* All curl_easy_setopt() options are documented at:
|
||||
* https://curl.haxx.se/libcurl/c/curl_easy_setopt.html
|
||||
************************************************************************/
|
||||
#include <curl/curl.h>
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
CURLcode ret;
|
||||
CURL *hnd;
|
||||
|
||||
hnd = curl_easy_init();
|
||||
curl_easy_setopt(hnd, CURLOPT_URL, "http://%HOSTIP:%HTTPPORT/we/want/1400");
|
||||
curl_easy_setopt(hnd, CURLOPT_HEADER, 1L);
|
||||
curl_easy_setopt(hnd, CURLOPT_USERAGENT, "stripped");
|
||||
curl_easy_setopt(hnd, CURLOPT_MAXREDIRS, 50L);
|
||||
curl_easy_setopt(hnd, CURLOPT_VERBOSE, 1L);
|
||||
curl_easy_setopt(hnd, CURLOPT_TCP_KEEPALIVE, 1L);
|
||||
|
||||
/* Here is a list of options the curl code used that cannot get generated
|
||||
as source easily. You may select to either not use them or implement
|
||||
them yourself.
|
||||
|
||||
CURLOPT_WRITEDATA set to a objectpointer
|
||||
CURLOPT_INTERLEAVEDATA set to a objectpointer
|
||||
CURLOPT_WRITEFUNCTION set to a functionpointer
|
||||
CURLOPT_READDATA set to a objectpointer
|
||||
CURLOPT_READFUNCTION set to a functionpointer
|
||||
CURLOPT_SEEKDATA set to a objectpointer
|
||||
CURLOPT_SEEKFUNCTION set to a functionpointer
|
||||
CURLOPT_ERRORBUFFER set to a objectpointer
|
||||
CURLOPT_STDERR set to a objectpointer
|
||||
CURLOPT_DEBUGFUNCTION set to a functionpointer
|
||||
CURLOPT_DEBUGDATA set to a objectpointer
|
||||
CURLOPT_HEADERFUNCTION set to a functionpointer
|
||||
CURLOPT_HEADERDATA set to a objectpointer
|
||||
|
||||
*/
|
||||
|
||||
ret = curl_easy_perform(hnd);
|
||||
|
||||
curl_easy_cleanup(hnd);
|
||||
hnd = NULL;
|
||||
|
||||
return (int)ret;
|
||||
}
|
||||
/**** End of sample code ****/
|
||||
</file>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,128 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
HTTP Basic auth
|
||||
HTTP set cookie
|
||||
cookies
|
||||
--libcurl
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
<data>
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 29 Jul 2008 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 0
|
||||
Content-Type: text/plain
|
||||
Connection: close
|
||||
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
--libcurl for GET with various options
|
||||
</name>
|
||||
<command>
|
||||
http://%HOSTIP:%HTTPPORT/we/want/1401 --libcurl log/test1401.c --basic -u fake:user -H "X-Files: Mulder" -H "X-Men: cyclops, iceman" -A MyUA -b chocolate=chip --proto "=http,ftp,file"
|
||||
</command>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /we/want/1401 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
User-Agent: stripped
|
||||
Authorization: Basic ZmFrZTp1c2Vy
|
||||
Accept: */*
|
||||
Cookie: chocolate=chip
|
||||
X-Files: Mulder
|
||||
X-Men: cyclops, iceman
|
||||
|
||||
</protocol>
|
||||
<stripfile>
|
||||
# CURLOPT_SSL_VERIFYPEER, SSH_KNOWNHOSTS and HTTP_VERSION vary with
|
||||
# configurations - just ignore them
|
||||
$_ = '' if /CURLOPT_SSL_VERIFYPEER/
|
||||
$_ = '' if /CURLOPT_SSH_KNOWNHOSTS/
|
||||
$_ = '' if /CURLOPT_HTTP_VERSION/
|
||||
</stripfile>
|
||||
<file name="log/test1401.c" mode="text">
|
||||
/********* Sample code generated by the curl command line tool **********
|
||||
* All curl_easy_setopt() options are documented at:
|
||||
* https://curl.haxx.se/libcurl/c/curl_easy_setopt.html
|
||||
************************************************************************/
|
||||
#include <curl/curl.h>
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
CURLcode ret;
|
||||
CURL *hnd;
|
||||
struct curl_slist *slist1;
|
||||
|
||||
slist1 = NULL;
|
||||
slist1 = curl_slist_append(slist1, "X-Files: Mulder");
|
||||
slist1 = curl_slist_append(slist1, "X-Men: cyclops, iceman");
|
||||
|
||||
hnd = curl_easy_init();
|
||||
curl_easy_setopt(hnd, CURLOPT_URL, "http://%HOSTIP:%HTTPPORT/we/want/1401");
|
||||
curl_easy_setopt(hnd, CURLOPT_HEADER, 1L);
|
||||
curl_easy_setopt(hnd, CURLOPT_USERPWD, "fake:user");
|
||||
curl_easy_setopt(hnd, CURLOPT_USERAGENT, "MyUA");
|
||||
curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, slist1);
|
||||
curl_easy_setopt(hnd, CURLOPT_MAXREDIRS, 50L);
|
||||
curl_easy_setopt(hnd, CURLOPT_HTTPAUTH, (long)CURLAUTH_BASIC);
|
||||
curl_easy_setopt(hnd, CURLOPT_COOKIE, "chocolate=chip");
|
||||
curl_easy_setopt(hnd, CURLOPT_VERBOSE, 1L);
|
||||
curl_easy_setopt(hnd, CURLOPT_TCP_KEEPALIVE, 1L);
|
||||
curl_easy_setopt(hnd, CURLOPT_PROTOCOLS, (long)CURLPROTO_FILE |
|
||||
(long)CURLPROTO_FTP |
|
||||
(long)CURLPROTO_HTTP);
|
||||
|
||||
/* Here is a list of options the curl code used that cannot get generated
|
||||
as source easily. You may select to either not use them or implement
|
||||
them yourself.
|
||||
|
||||
CURLOPT_WRITEDATA set to a objectpointer
|
||||
CURLOPT_INTERLEAVEDATA set to a objectpointer
|
||||
CURLOPT_WRITEFUNCTION set to a functionpointer
|
||||
CURLOPT_READDATA set to a objectpointer
|
||||
CURLOPT_READFUNCTION set to a functionpointer
|
||||
CURLOPT_SEEKDATA set to a objectpointer
|
||||
CURLOPT_SEEKFUNCTION set to a functionpointer
|
||||
CURLOPT_ERRORBUFFER set to a objectpointer
|
||||
CURLOPT_STDERR set to a objectpointer
|
||||
CURLOPT_DEBUGFUNCTION set to a functionpointer
|
||||
CURLOPT_DEBUGDATA set to a objectpointer
|
||||
CURLOPT_HEADERFUNCTION set to a functionpointer
|
||||
CURLOPT_HEADERDATA set to a objectpointer
|
||||
|
||||
*/
|
||||
|
||||
ret = curl_easy_perform(hnd);
|
||||
|
||||
curl_easy_cleanup(hnd);
|
||||
hnd = NULL;
|
||||
curl_slist_free_all(slist1);
|
||||
slist1 = NULL;
|
||||
|
||||
return (int)ret;
|
||||
}
|
||||
/**** End of sample code ****/
|
||||
</file>
|
||||
<stdout>
|
||||
</stdout>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,114 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP POST
|
||||
--libcurl
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
<data>
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 29 Jul 2008 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 0
|
||||
Content-Type: text/plain
|
||||
Connection: close
|
||||
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
--libcurl for simple POST
|
||||
</name>
|
||||
<command>
|
||||
http://%HOSTIP:%HTTPPORT/we/want/1402 --libcurl log/test1402.c -d "foo=bar" -d "baz=quux"
|
||||
</command>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol nonewline="yes">
|
||||
POST /we/want/1402 HTTP/1.1
|
||||
User-Agent: curl/7.18.2 (i686-pc-linux-gnu) libcurl/7.18.2 OpenSSL/0.9.7a ipv6 zlib/1.1.4
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
Content-Length: 16
|
||||
Content-Type: application/x-www-form-urlencoded
|
||||
|
||||
foo=bar&baz=quux
|
||||
</protocol>
|
||||
<stripfile>
|
||||
# curl's default user-agent varies with version, libraries etc.
|
||||
s/(USERAGENT, \")[^\"]+/${1}stripped/
|
||||
# CURLOPT_SSL_VERIFYPEER, SSH_KNOWNHOSTS and HTTP_VERSION vary with
|
||||
# configurations - just ignore them
|
||||
$_ = '' if /CURLOPT_SSL_VERIFYPEER/
|
||||
$_ = '' if /CURLOPT_SSH_KNOWNHOSTS/
|
||||
$_ = '' if /CURLOPT_HTTP_VERSION/
|
||||
</stripfile>
|
||||
<file name="log/test1402.c" mode="text">
|
||||
/********* Sample code generated by the curl command line tool **********
|
||||
* All curl_easy_setopt() options are documented at:
|
||||
* https://curl.haxx.se/libcurl/c/curl_easy_setopt.html
|
||||
************************************************************************/
|
||||
#include <curl/curl.h>
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
CURLcode ret;
|
||||
CURL *hnd;
|
||||
|
||||
hnd = curl_easy_init();
|
||||
curl_easy_setopt(hnd, CURLOPT_URL, "http://%HOSTIP:%HTTPPORT/we/want/1402");
|
||||
curl_easy_setopt(hnd, CURLOPT_HEADER, 1L);
|
||||
curl_easy_setopt(hnd, CURLOPT_POSTFIELDS, "foo=bar&baz=quux");
|
||||
curl_easy_setopt(hnd, CURLOPT_POSTFIELDSIZE_LARGE, (curl_off_t)16);
|
||||
curl_easy_setopt(hnd, CURLOPT_USERAGENT, "stripped");
|
||||
curl_easy_setopt(hnd, CURLOPT_MAXREDIRS, 50L);
|
||||
curl_easy_setopt(hnd, CURLOPT_VERBOSE, 1L);
|
||||
curl_easy_setopt(hnd, CURLOPT_TCP_KEEPALIVE, 1L);
|
||||
|
||||
/* Here is a list of options the curl code used that cannot get generated
|
||||
as source easily. You may select to either not use them or implement
|
||||
them yourself.
|
||||
|
||||
CURLOPT_WRITEDATA set to a objectpointer
|
||||
CURLOPT_INTERLEAVEDATA set to a objectpointer
|
||||
CURLOPT_WRITEFUNCTION set to a functionpointer
|
||||
CURLOPT_READDATA set to a objectpointer
|
||||
CURLOPT_READFUNCTION set to a functionpointer
|
||||
CURLOPT_SEEKDATA set to a objectpointer
|
||||
CURLOPT_SEEKFUNCTION set to a functionpointer
|
||||
CURLOPT_ERRORBUFFER set to a objectpointer
|
||||
CURLOPT_STDERR set to a objectpointer
|
||||
CURLOPT_DEBUGFUNCTION set to a functionpointer
|
||||
CURLOPT_DEBUGDATA set to a objectpointer
|
||||
CURLOPT_HEADERFUNCTION set to a functionpointer
|
||||
CURLOPT_HEADERDATA set to a objectpointer
|
||||
|
||||
*/
|
||||
|
||||
ret = curl_easy_perform(hnd);
|
||||
|
||||
curl_easy_cleanup(hnd);
|
||||
hnd = NULL;
|
||||
|
||||
return (int)ret;
|
||||
}
|
||||
/**** End of sample code ****/
|
||||
</file>
|
||||
<stdout>
|
||||
</stdout>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,109 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
--libcurl
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
<data>
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 29 Jul 2008 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 0
|
||||
Content-Type: text/plain
|
||||
Connection: close
|
||||
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
--libcurl for GET with query
|
||||
</name>
|
||||
<command>
|
||||
http://%HOSTIP:%HTTPPORT/we/want/1403 --libcurl log/test1403.c -G -d "foo=bar" -d "baz=quux"
|
||||
</command>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /we/want/1403?foo=bar&baz=quux HTTP/1.1
|
||||
User-Agent: curl/7.18.2 (i686-pc-linux-gnu) libcurl/7.18.2 OpenSSL/0.9.7a ipv6 zlib/1.1.4
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
<stripfile>
|
||||
# curl's default user-agent varies with version, libraries etc.
|
||||
s/(USERAGENT, \")[^\"]+/${1}stripped/
|
||||
# CURLOPT_SSL_VERIFYPEER, SSH_KNOWNHOSTS and HTTP_VERSION vary with
|
||||
# configurations - just ignore them
|
||||
$_ = '' if /CURLOPT_SSL_VERIFYPEER/
|
||||
$_ = '' if /CURLOPT_SSH_KNOWNHOSTS/
|
||||
$_ = '' if /CURLOPT_HTTP_VERSION/
|
||||
</stripfile>
|
||||
<file name="log/test1403.c" mode="text">
|
||||
/********* Sample code generated by the curl command line tool **********
|
||||
* All curl_easy_setopt() options are documented at:
|
||||
* https://curl.haxx.se/libcurl/c/curl_easy_setopt.html
|
||||
************************************************************************/
|
||||
#include <curl/curl.h>
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
CURLcode ret;
|
||||
CURL *hnd;
|
||||
|
||||
hnd = curl_easy_init();
|
||||
curl_easy_setopt(hnd, CURLOPT_URL, "http://%HOSTIP:%HTTPPORT/we/want/1403?foo=bar&baz=quux");
|
||||
curl_easy_setopt(hnd, CURLOPT_HEADER, 1L);
|
||||
curl_easy_setopt(hnd, CURLOPT_USERAGENT, "stripped");
|
||||
curl_easy_setopt(hnd, CURLOPT_MAXREDIRS, 50L);
|
||||
curl_easy_setopt(hnd, CURLOPT_VERBOSE, 1L);
|
||||
curl_easy_setopt(hnd, CURLOPT_TCP_KEEPALIVE, 1L);
|
||||
|
||||
/* Here is a list of options the curl code used that cannot get generated
|
||||
as source easily. You may select to either not use them or implement
|
||||
them yourself.
|
||||
|
||||
CURLOPT_WRITEDATA set to a objectpointer
|
||||
CURLOPT_INTERLEAVEDATA set to a objectpointer
|
||||
CURLOPT_WRITEFUNCTION set to a functionpointer
|
||||
CURLOPT_READDATA set to a objectpointer
|
||||
CURLOPT_READFUNCTION set to a functionpointer
|
||||
CURLOPT_SEEKDATA set to a objectpointer
|
||||
CURLOPT_SEEKFUNCTION set to a functionpointer
|
||||
CURLOPT_ERRORBUFFER set to a objectpointer
|
||||
CURLOPT_STDERR set to a objectpointer
|
||||
CURLOPT_DEBUGFUNCTION set to a functionpointer
|
||||
CURLOPT_DEBUGDATA set to a objectpointer
|
||||
CURLOPT_HEADERFUNCTION set to a functionpointer
|
||||
CURLOPT_HEADERDATA set to a objectpointer
|
||||
|
||||
*/
|
||||
|
||||
ret = curl_easy_perform(hnd);
|
||||
|
||||
curl_easy_cleanup(hnd);
|
||||
hnd = NULL;
|
||||
|
||||
return (int)ret;
|
||||
}
|
||||
/**** End of sample code ****/
|
||||
</file>
|
||||
<stdout>
|
||||
</stdout>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,163 +0,0 @@
|
||||
<testcase>
|
||||
# Based on test 1315
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP FORMPOST
|
||||
HTTP file upload
|
||||
--libcurl
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
<data>
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 29 Jul 2008 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 0
|
||||
Connection: close
|
||||
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
--libcurl for HTTP RFC1867-type formposting - -F with three files, one with explicit type
|
||||
</name>
|
||||
<command>
|
||||
http://%HOSTIP:%HTTPPORT/we/want/1404 -F name=value -F 'file=@log/test1404.txt,log/test1404.txt;type=magic/content,log/test1404.txt' --libcurl log/test1404.c
|
||||
</command>
|
||||
# We create this file before the command is invoked!
|
||||
<file name="log/test1404.txt">
|
||||
dummy data
|
||||
</file>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
(^User-Agent:.*|-----+\w+)
|
||||
</strip>
|
||||
<protocol>
|
||||
POST /we/want/1404 HTTP/1.1
|
||||
User-Agent: curl/7.18.2 (i686-pc-linux-gnu) libcurl/7.18.2 OpenSSL/0.9.7a ipv6 zlib/1.1.4
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
Content-Length: 795
|
||||
Expect: 100-continue
|
||||
Content-Type: multipart/form-data; boundary=----------------------------9ef8d6205763
|
||||
|
||||
------------------------------9ef8d6205763
|
||||
Content-Disposition: form-data; name="name"
|
||||
|
||||
value
|
||||
------------------------------9ef8d6205763
|
||||
Content-Disposition: form-data; name="file"
|
||||
Content-Type: multipart/mixed; boundary=----------------------------aaaaaaaaaaaa
|
||||
|
||||
Content-Disposition: attachment; filename="test1404.txt"
|
||||
Content-Type: text/plain
|
||||
|
||||
dummy data
|
||||
|
||||
------------------------------9ef8d6205763
|
||||
Content-Disposition: attachment; filename="test1404.txt"
|
||||
Content-Type: magic/content
|
||||
|
||||
dummy data
|
||||
|
||||
------------------------------9ef8d6205763
|
||||
Content-Disposition: attachment; filename="test1404.txt"
|
||||
Content-Type: text/plain
|
||||
|
||||
dummy data
|
||||
|
||||
------------------------------aaaaaaaaaaaa--
|
||||
------------------------------9ef8d6205763--
|
||||
</protocol>
|
||||
<stripfile>
|
||||
# curl's default user-agent varies with version, libraries etc.
|
||||
s/(USERAGENT, \")[^\"]+/${1}stripped/
|
||||
# CURLOPT_SSL_VERIFYPEER, SSH_KNOWNHOSTS and HTTP_VERSION vary with
|
||||
# configurations - just ignore them
|
||||
$_ = '' if /CURLOPT_SSL_VERIFYPEER/
|
||||
$_ = '' if /CURLOPT_SSH_KNOWNHOSTS/
|
||||
$_ = '' if /CURLOPT_HTTP_VERSION/
|
||||
</stripfile>
|
||||
<file name="log/test1404.c" mode="text">
|
||||
/********* Sample code generated by the curl command line tool **********
|
||||
* All curl_easy_setopt() options are documented at:
|
||||
* https://curl.haxx.se/libcurl/c/curl_easy_setopt.html
|
||||
************************************************************************/
|
||||
#include <curl/curl.h>
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
CURLcode ret;
|
||||
CURL *hnd;
|
||||
struct curl_httppost *post1;
|
||||
struct curl_httppost *postend;
|
||||
|
||||
post1 = NULL;
|
||||
postend = NULL;
|
||||
curl_formadd(&post1, &postend,
|
||||
CURLFORM_COPYNAME, "name",
|
||||
CURLFORM_COPYCONTENTS, "value",
|
||||
CURLFORM_END);
|
||||
curl_formadd(&post1, &postend,
|
||||
CURLFORM_COPYNAME, "file",
|
||||
CURLFORM_FILE, "log/test1404.txt",
|
||||
CURLFORM_CONTENTTYPE, "text/plain",
|
||||
CURLFORM_FILE, "log/test1404.txt",
|
||||
CURLFORM_CONTENTTYPE, "magic/content",
|
||||
CURLFORM_FILE, "log/test1404.txt",
|
||||
CURLFORM_CONTENTTYPE, "text/plain",
|
||||
CURLFORM_END);
|
||||
|
||||
hnd = curl_easy_init();
|
||||
curl_easy_setopt(hnd, CURLOPT_URL, "http://%HOSTIP:%HTTPPORT/we/want/1404");
|
||||
curl_easy_setopt(hnd, CURLOPT_HEADER, 1L);
|
||||
curl_easy_setopt(hnd, CURLOPT_HTTPPOST, post1);
|
||||
curl_easy_setopt(hnd, CURLOPT_USERAGENT, "stripped");
|
||||
curl_easy_setopt(hnd, CURLOPT_MAXREDIRS, 50L);
|
||||
curl_easy_setopt(hnd, CURLOPT_VERBOSE, 1L);
|
||||
curl_easy_setopt(hnd, CURLOPT_TCP_KEEPALIVE, 1L);
|
||||
|
||||
/* Here is a list of options the curl code used that cannot get generated
|
||||
as source easily. You may select to either not use them or implement
|
||||
them yourself.
|
||||
|
||||
CURLOPT_WRITEDATA set to a objectpointer
|
||||
CURLOPT_INTERLEAVEDATA set to a objectpointer
|
||||
CURLOPT_WRITEFUNCTION set to a functionpointer
|
||||
CURLOPT_READDATA set to a objectpointer
|
||||
CURLOPT_READFUNCTION set to a functionpointer
|
||||
CURLOPT_SEEKDATA set to a objectpointer
|
||||
CURLOPT_SEEKFUNCTION set to a functionpointer
|
||||
CURLOPT_ERRORBUFFER set to a objectpointer
|
||||
CURLOPT_STDERR set to a objectpointer
|
||||
CURLOPT_DEBUGFUNCTION set to a functionpointer
|
||||
CURLOPT_DEBUGDATA set to a objectpointer
|
||||
CURLOPT_HEADERFUNCTION set to a functionpointer
|
||||
CURLOPT_HEADERDATA set to a objectpointer
|
||||
|
||||
*/
|
||||
|
||||
ret = curl_easy_perform(hnd);
|
||||
|
||||
curl_easy_cleanup(hnd);
|
||||
hnd = NULL;
|
||||
curl_formfree(post1);
|
||||
post1 = NULL;
|
||||
|
||||
return (int)ret;
|
||||
}
|
||||
/**** End of sample code ****/
|
||||
</file>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,138 +0,0 @@
|
||||
<testcase>
|
||||
# Derived from test227
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
post-quote
|
||||
pre-quote
|
||||
--libcurl
|
||||
</keywords>
|
||||
</info>
|
||||
# Server-side
|
||||
<reply>
|
||||
<data>
|
||||
data
|
||||
to
|
||||
see
|
||||
that FTP
|
||||
works
|
||||
so does it?
|
||||
</data>
|
||||
<servercmd>
|
||||
REPLY EPSV 500 no such command
|
||||
REPLY FAIL 500 this might not be a failure!
|
||||
</servercmd>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<name>
|
||||
--libcurl for FTP with quote ops
|
||||
</name>
|
||||
<command>
|
||||
ftp://%HOSTIP:%FTPPORT/1405 -Q "NOOP 1" -Q "+NOOP 2" -Q "-NOOP 3" -Q "*FAIL" -Q "+*FAIL HARD" --libcurl log/test1405.c
|
||||
</command>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
PWD
|
||||
NOOP 1
|
||||
FAIL
|
||||
EPSV
|
||||
PASV
|
||||
TYPE I
|
||||
NOOP 2
|
||||
FAIL HARD
|
||||
SIZE 1405
|
||||
RETR 1405
|
||||
NOOP 3
|
||||
QUIT
|
||||
</protocol>
|
||||
<file name="log/test1405.c" mode="text">
|
||||
/********* Sample code generated by the curl command line tool **********
|
||||
* All curl_easy_setopt() options are documented at:
|
||||
* https://curl.haxx.se/libcurl/c/curl_easy_setopt.html
|
||||
************************************************************************/
|
||||
#include <curl/curl.h>
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
CURLcode ret;
|
||||
CURL *hnd;
|
||||
struct curl_slist *slist1;
|
||||
struct curl_slist *slist2;
|
||||
struct curl_slist *slist3;
|
||||
|
||||
slist1 = NULL;
|
||||
slist1 = curl_slist_append(slist1, "NOOP 1");
|
||||
slist1 = curl_slist_append(slist1, "*FAIL");
|
||||
slist2 = NULL;
|
||||
slist2 = curl_slist_append(slist2, "NOOP 3");
|
||||
slist3 = NULL;
|
||||
slist3 = curl_slist_append(slist3, "NOOP 2");
|
||||
slist3 = curl_slist_append(slist3, "*FAIL HARD");
|
||||
|
||||
hnd = curl_easy_init();
|
||||
curl_easy_setopt(hnd, CURLOPT_URL, "ftp://%HOSTIP:%FTPPORT/1405");
|
||||
curl_easy_setopt(hnd, CURLOPT_HEADER, 1L);
|
||||
curl_easy_setopt(hnd, CURLOPT_QUOTE, slist1);
|
||||
curl_easy_setopt(hnd, CURLOPT_POSTQUOTE, slist2);
|
||||
curl_easy_setopt(hnd, CURLOPT_PREQUOTE, slist3);
|
||||
curl_easy_setopt(hnd, CURLOPT_VERBOSE, 1L);
|
||||
curl_easy_setopt(hnd, CURLOPT_TCP_KEEPALIVE, 1L);
|
||||
|
||||
/* Here is a list of options the curl code used that cannot get generated
|
||||
as source easily. You may select to either not use them or implement
|
||||
them yourself.
|
||||
|
||||
CURLOPT_WRITEDATA set to a objectpointer
|
||||
CURLOPT_INTERLEAVEDATA set to a objectpointer
|
||||
CURLOPT_WRITEFUNCTION set to a functionpointer
|
||||
CURLOPT_READDATA set to a objectpointer
|
||||
CURLOPT_READFUNCTION set to a functionpointer
|
||||
CURLOPT_SEEKDATA set to a objectpointer
|
||||
CURLOPT_SEEKFUNCTION set to a functionpointer
|
||||
CURLOPT_ERRORBUFFER set to a objectpointer
|
||||
CURLOPT_STDERR set to a objectpointer
|
||||
CURLOPT_DEBUGFUNCTION set to a functionpointer
|
||||
CURLOPT_DEBUGDATA set to a objectpointer
|
||||
CURLOPT_HEADERFUNCTION set to a functionpointer
|
||||
CURLOPT_HEADERDATA set to a objectpointer
|
||||
|
||||
*/
|
||||
|
||||
ret = curl_easy_perform(hnd);
|
||||
|
||||
curl_easy_cleanup(hnd);
|
||||
hnd = NULL;
|
||||
curl_slist_free_all(slist1);
|
||||
slist1 = NULL;
|
||||
curl_slist_free_all(slist2);
|
||||
slist2 = NULL;
|
||||
curl_slist_free_all(slist3);
|
||||
slist3 = NULL;
|
||||
|
||||
return (int)ret;
|
||||
}
|
||||
/**** End of sample code ****/
|
||||
</file>
|
||||
<stripfile>
|
||||
# CURLOPT_USERAGENT and CURLOPT_MAXREDIRS requires HTTP protocol
|
||||
# support, IOW depends on configuration - just ignore these.
|
||||
$_ = '' if /CURLOPT_USERAGENT/
|
||||
$_ = '' if /CURLOPT_MAXREDIRS/
|
||||
# CURLOPT_SSL_VERIFYPEER, SSH_KNOWNHOSTS and HTTP_VERSION vary with
|
||||
# configurations - just ignore them
|
||||
$_ = '' if /CURLOPT_SSL_VERIFYPEER/
|
||||
$_ = '' if /CURLOPT_SSH_KNOWNHOSTS/
|
||||
$_ = '' if /CURLOPT_HTTP_VERSION/
|
||||
</stripfile>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,127 +0,0 @@
|
||||
<testcase>
|
||||
# Based on test900
|
||||
# N.B. --libcurl output not sufficient to deal with uploaded files.
|
||||
<info>
|
||||
<keywords>
|
||||
SMTP
|
||||
--libcurl
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
#
|
||||
# Server-side
|
||||
<reply>
|
||||
<servercmd>
|
||||
CAPA SIZE
|
||||
</servercmd>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
smtp
|
||||
</server>
|
||||
<name>
|
||||
--libcurl for SMTP
|
||||
</name>
|
||||
<file name="log/test1406.eml">
|
||||
From: different
|
||||
To: another
|
||||
|
||||
body
|
||||
</file>
|
||||
<command>
|
||||
smtp://%HOSTIP:%SMTPPORT/1406 --mail-rcpt recipient.one@example.com --mail-rcpt recipient.two@example.com --mail-from sender@example.com -T log/test1406.eml --libcurl log/test1406.c
|
||||
</command>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<protocol>
|
||||
EHLO 1406
|
||||
MAIL FROM:<sender@example.com> SIZE=38
|
||||
RCPT TO:<recipient.one@example.com>
|
||||
RCPT TO:<recipient.two@example.com>
|
||||
DATA
|
||||
QUIT
|
||||
</protocol>
|
||||
<upload>
|
||||
From: different
|
||||
To: another
|
||||
|
||||
body
|
||||
.
|
||||
</upload>
|
||||
<file name="log/test1406.c" mode="text">
|
||||
/********* Sample code generated by the curl command line tool **********
|
||||
* All curl_easy_setopt() options are documented at:
|
||||
* https://curl.haxx.se/libcurl/c/curl_easy_setopt.html
|
||||
************************************************************************/
|
||||
#include <curl/curl.h>
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
CURLcode ret;
|
||||
CURL *hnd;
|
||||
struct curl_slist *slist1;
|
||||
|
||||
slist1 = NULL;
|
||||
slist1 = curl_slist_append(slist1, "recipient.one@example.com");
|
||||
slist1 = curl_slist_append(slist1, "recipient.two@example.com");
|
||||
|
||||
hnd = curl_easy_init();
|
||||
curl_easy_setopt(hnd, CURLOPT_INFILESIZE_LARGE, (curl_off_t)38);
|
||||
curl_easy_setopt(hnd, CURLOPT_URL, "smtp://%HOSTIP:%SMTPPORT/1406");
|
||||
curl_easy_setopt(hnd, CURLOPT_HEADER, 1L);
|
||||
curl_easy_setopt(hnd, CURLOPT_UPLOAD, 1L);
|
||||
curl_easy_setopt(hnd, CURLOPT_USERAGENT, "stripped");
|
||||
curl_easy_setopt(hnd, CURLOPT_MAXREDIRS, 50L);
|
||||
curl_easy_setopt(hnd, CURLOPT_VERBOSE, 1L);
|
||||
curl_easy_setopt(hnd, CURLOPT_TCP_KEEPALIVE, 1L);
|
||||
curl_easy_setopt(hnd, CURLOPT_MAIL_FROM, "sender@example.com");
|
||||
curl_easy_setopt(hnd, CURLOPT_MAIL_RCPT, slist1);
|
||||
|
||||
/* Here is a list of options the curl code used that cannot get generated
|
||||
as source easily. You may select to either not use them or implement
|
||||
them yourself.
|
||||
|
||||
CURLOPT_WRITEDATA set to a objectpointer
|
||||
CURLOPT_INTERLEAVEDATA set to a objectpointer
|
||||
CURLOPT_WRITEFUNCTION set to a functionpointer
|
||||
CURLOPT_READDATA set to a objectpointer
|
||||
CURLOPT_READFUNCTION set to a functionpointer
|
||||
CURLOPT_SEEKDATA set to a objectpointer
|
||||
CURLOPT_SEEKFUNCTION set to a functionpointer
|
||||
CURLOPT_ERRORBUFFER set to a objectpointer
|
||||
CURLOPT_STDERR set to a objectpointer
|
||||
CURLOPT_DEBUGFUNCTION set to a functionpointer
|
||||
CURLOPT_DEBUGDATA set to a objectpointer
|
||||
CURLOPT_HEADERFUNCTION set to a functionpointer
|
||||
CURLOPT_HEADERDATA set to a objectpointer
|
||||
|
||||
*/
|
||||
|
||||
ret = curl_easy_perform(hnd);
|
||||
|
||||
curl_easy_cleanup(hnd);
|
||||
hnd = NULL;
|
||||
curl_slist_free_all(slist1);
|
||||
slist1 = NULL;
|
||||
|
||||
return (int)ret;
|
||||
}
|
||||
/**** End of sample code ****/
|
||||
</file>
|
||||
<stripfile>
|
||||
# curl's default user-agent varies with version, libraries etc.
|
||||
s/(USERAGENT, \")[^\"]+/${1}stripped/
|
||||
# CURLOPT_SSL_VERIFYPEER, SSH_KNOWNHOSTS and HTTP_VERSION vary with
|
||||
# configurations - just ignore them
|
||||
$_ = '' if /CURLOPT_SSL_VERIFYPEER/
|
||||
$_ = '' if /CURLOPT_SSH_KNOWNHOSTS/
|
||||
$_ = '' if /CURLOPT_HTTP_VERSION/
|
||||
</stripfile>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,105 +0,0 @@
|
||||
<testcase>
|
||||
# Based on test851
|
||||
<info>
|
||||
<keywords>
|
||||
POP3
|
||||
Clear Text
|
||||
LIST
|
||||
--libcurl
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
#
|
||||
# Server-side
|
||||
<reply>
|
||||
<servercmd>
|
||||
REPLY LIST +OK 1407 100\r\n.
|
||||
</servercmd>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
pop3
|
||||
</server>
|
||||
<name>
|
||||
--libcurl for POP3 LIST one message
|
||||
</name>
|
||||
<command>
|
||||
pop3://%HOSTIP:%POP3PORT/1407 -l -u user:secret --libcurl log/test1407.c
|
||||
</command>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<protocol>
|
||||
CAPA
|
||||
USER user
|
||||
PASS secret
|
||||
LIST 1407
|
||||
QUIT
|
||||
</protocol>
|
||||
<file name="log/test1407.c" mode="text">
|
||||
/********* Sample code generated by the curl command line tool **********
|
||||
* All curl_easy_setopt() options are documented at:
|
||||
* https://curl.haxx.se/libcurl/c/curl_easy_setopt.html
|
||||
************************************************************************/
|
||||
#include <curl/curl.h>
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
CURLcode ret;
|
||||
CURL *hnd;
|
||||
|
||||
hnd = curl_easy_init();
|
||||
curl_easy_setopt(hnd, CURLOPT_URL, "pop3://%HOSTIP:%POP3PORT/1407");
|
||||
curl_easy_setopt(hnd, CURLOPT_HEADER, 1L);
|
||||
curl_easy_setopt(hnd, CURLOPT_DIRLISTONLY, 1L);
|
||||
curl_easy_setopt(hnd, CURLOPT_USERPWD, "user:secret");
|
||||
curl_easy_setopt(hnd, CURLOPT_USERAGENT, "stripped");
|
||||
curl_easy_setopt(hnd, CURLOPT_MAXREDIRS, 50L);
|
||||
curl_easy_setopt(hnd, CURLOPT_VERBOSE, 1L);
|
||||
curl_easy_setopt(hnd, CURLOPT_TCP_KEEPALIVE, 1L);
|
||||
|
||||
/* Here is a list of options the curl code used that cannot get generated
|
||||
as source easily. You may select to either not use them or implement
|
||||
them yourself.
|
||||
|
||||
CURLOPT_WRITEDATA set to a objectpointer
|
||||
CURLOPT_INTERLEAVEDATA set to a objectpointer
|
||||
CURLOPT_WRITEFUNCTION set to a functionpointer
|
||||
CURLOPT_READDATA set to a objectpointer
|
||||
CURLOPT_READFUNCTION set to a functionpointer
|
||||
CURLOPT_SEEKDATA set to a objectpointer
|
||||
CURLOPT_SEEKFUNCTION set to a functionpointer
|
||||
CURLOPT_ERRORBUFFER set to a objectpointer
|
||||
CURLOPT_STDERR set to a objectpointer
|
||||
CURLOPT_DEBUGFUNCTION set to a functionpointer
|
||||
CURLOPT_DEBUGDATA set to a objectpointer
|
||||
CURLOPT_HEADERFUNCTION set to a functionpointer
|
||||
CURLOPT_HEADERDATA set to a objectpointer
|
||||
|
||||
*/
|
||||
|
||||
ret = curl_easy_perform(hnd);
|
||||
|
||||
curl_easy_cleanup(hnd);
|
||||
hnd = NULL;
|
||||
|
||||
return (int)ret;
|
||||
}
|
||||
/**** End of sample code ****/
|
||||
</file>
|
||||
<stripfile>
|
||||
# curl's default user-agent varies with version, libraries etc.
|
||||
s/(USERAGENT, \")[^\"]+/${1}stripped/
|
||||
# CURLOPT_SSL_VERIFYPEER, SSH_KNOWNHOSTS and HTTP_VERSION vary with
|
||||
# configurations - just ignore them
|
||||
$_ = '' if /CURLOPT_SSL_VERIFYPEER/
|
||||
$_ = '' if /CURLOPT_SSH_KNOWNHOSTS/
|
||||
$_ = '' if /CURLOPT_HTTP_VERSION/
|
||||
</stripfile>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,74 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
IPv6
|
||||
cookies
|
||||
cookiejar
|
||||
</keywords>
|
||||
</info>
|
||||
#
|
||||
# Server-side
|
||||
<reply>
|
||||
<data1>
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Set-Cookie: time=1
|
||||
|
||||
-foo-
|
||||
</data1>
|
||||
<data2>
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Set-Cookie: time=2
|
||||
|
||||
-foo-
|
||||
</data2>
|
||||
|
||||
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<features>
|
||||
ipv6
|
||||
</features>
|
||||
<server>
|
||||
http-ipv6
|
||||
</server>
|
||||
<name>
|
||||
HTTP receive cookies over IPV6
|
||||
</name>
|
||||
<command>
|
||||
-c log/jar1408 -g http://%HOST6IP:%HTTP6PORT/path/14080001 http://%HOST6IP:%HTTP6PORT/path/14080002
|
||||
</command>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /path/14080001 HTTP/1.1
|
||||
Host: %HOST6IP:%HTTP6PORT
|
||||
Accept: */*
|
||||
|
||||
GET /path/14080002 HTTP/1.1
|
||||
Host: %HOST6IP:%HTTP6PORT
|
||||
Accept: */*
|
||||
Cookie: time=1
|
||||
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
|
||||
@@ -1,31 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
cmdline
|
||||
FAILURE
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
none
|
||||
</server>
|
||||
<name>
|
||||
Pass in string to -C
|
||||
</name>
|
||||
<command>
|
||||
http://%HOSTIP:%HTTPPORT/1409 -C wrong
|
||||
</command>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<errorcode>
|
||||
2
|
||||
</errorcode>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,52 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
NOBODY
|
||||
</keywords>
|
||||
</info>
|
||||
# Server-side
|
||||
<reply>
|
||||
<data>
|
||||
</data>
|
||||
<size>
|
||||
42
|
||||
</size>
|
||||
<mdtm>
|
||||
213 20030409102659
|
||||
</mdtm>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<name>
|
||||
FTP download info with -I
|
||||
</name>
|
||||
<command>
|
||||
ftp://%HOSTIP:%FTPPORT/blalbla/141 -I
|
||||
</command>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
PWD
|
||||
CWD blalbla
|
||||
MDTM 141
|
||||
TYPE I
|
||||
SIZE 141
|
||||
REST 0
|
||||
QUIT
|
||||
</protocol>
|
||||
<stdout>
|
||||
Last-Modified: Wed, 09 Apr 2003 10:26:59 GMT
|
||||
Content-Length: 42
|
||||
Accept-ranges: bytes
|
||||
</stdout>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,31 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
cmdline
|
||||
FAILURE
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
none
|
||||
</server>
|
||||
<name>
|
||||
Pass in negative number to --max-time
|
||||
</name>
|
||||
<command>
|
||||
http://%HOSTIP:%HTTPPORT/1410 --max-time -4
|
||||
</command>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<errorcode>
|
||||
2
|
||||
</errorcode>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,60 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
PUT
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
<reply>
|
||||
<data>
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
|
||||
ETag: "21025-dc7-39462498"
|
||||
Accept-Ranges: bytes
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Funny-head: yesyes
|
||||
|
||||
-foo-
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
|
||||
# make sure there's no Expect: 100-continue when there's no file to send!
|
||||
<name>
|
||||
HTTP with zero size file PUT
|
||||
</name>
|
||||
<command>
|
||||
http://%HOSTIP:%HTTPPORT/1411 -T log/empty1411
|
||||
</command>
|
||||
# create an empty file
|
||||
<file name="log/empty1411">
|
||||
</file>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
PUT /1411 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
Content-Length: 0
|
||||
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,118 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
HTTP Digest auth
|
||||
--anyauth
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
<servercmd>
|
||||
auth_required
|
||||
</servercmd>
|
||||
<data>
|
||||
HTTP/1.1 401 Authorization Required swsclose
|
||||
Server: Apache/1.3.27 (Darwin) PHP/4.1.2
|
||||
WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts"
|
||||
WWW-Authenticate: Basic realm="gimme all yer s3cr3ts"
|
||||
WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344"
|
||||
Content-Type: text/html; charset=iso-8859-1
|
||||
Connection: close
|
||||
|
||||
This is not the real page
|
||||
</data>
|
||||
|
||||
# This is supposed to be returned when the server gets a
|
||||
# Authorization: Digest line passed-in from the client
|
||||
<data1000>
|
||||
HTTP/1.1 200 OK swsclose
|
||||
Server: Apache/1.3.27 (Darwin) PHP/4.1.2
|
||||
Content-Type: text/html; charset=iso-8859-1
|
||||
Content-Length: 23
|
||||
Connection: close
|
||||
|
||||
This IS the real page!
|
||||
</data1000>
|
||||
|
||||
# This is the second request
|
||||
<data1001>
|
||||
HTTP/1.1 200 OK swsclose
|
||||
Server: Apache/1.3.27 (Darwin) PHP/4.1.2
|
||||
Content-Type: text/html; charset=iso-8859-1
|
||||
Content-Length: 23
|
||||
Connection: close
|
||||
|
||||
This IS the second real page!
|
||||
</data1001>
|
||||
|
||||
<datacheck>
|
||||
HTTP/1.1 401 Authorization Required swsclose
|
||||
Server: Apache/1.3.27 (Darwin) PHP/4.1.2
|
||||
WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts"
|
||||
WWW-Authenticate: Basic realm="gimme all yer s3cr3ts"
|
||||
WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344"
|
||||
Content-Type: text/html; charset=iso-8859-1
|
||||
Connection: close
|
||||
|
||||
HTTP/1.1 200 OK swsclose
|
||||
Server: Apache/1.3.27 (Darwin) PHP/4.1.2
|
||||
Content-Type: text/html; charset=iso-8859-1
|
||||
Content-Length: 23
|
||||
Connection: close
|
||||
|
||||
This IS the real page!
|
||||
</datacheck>
|
||||
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<features>
|
||||
!SSPI
|
||||
crypto
|
||||
</features>
|
||||
<name>
|
||||
HTTP GET with --anyauth with two URLs (picking Digest)
|
||||
</name>
|
||||
<command>
|
||||
http://%HOSTIP:%HTTPPORT/1412 -u testuser:testpass --anyauth http://%HOSTIP:%HTTPPORT/14120001
|
||||
</command>
|
||||
<file name="log/put1412">
|
||||
This is data we upload with PUT
|
||||
a second line
|
||||
line three
|
||||
four is the number of lines
|
||||
</file>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1412 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
GET /1412 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Authorization: Digest username="testuser", realm="gimme all yer s3cr3ts", nonce="11223344", uri="/1412", response="0390dbe89e31adca0413d11f91f30e7f"
|
||||
User-Agent: curl/7.10.5 (i686-pc-linux-gnu) libcurl/7.10.5 OpenSSL/0.9.7a ipv6 zlib/1.1.3
|
||||
Accept: */*
|
||||
|
||||
GET /14120001 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Authorization: Digest username="testuser", realm="gimme all yer s3cr3ts", nonce="11223344", uri="/14120001", response="0085df91870374c8bf4e94415e7fbf8e"
|
||||
User-Agent: curl/7.10.5 (i686-pc-linux-gnu) libcurl/7.10.5 OpenSSL/0.9.7a ipv6 zlib/1.1.3
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,73 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
followlocation
|
||||
</keywords>
|
||||
</info>
|
||||
#
|
||||
# Server-side
|
||||
<reply>
|
||||
<data>
|
||||
HTTP/1.1 302 OK swsclose
|
||||
Location: moo.html/14130002#fragmentpart
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Connection: close
|
||||
|
||||
</data>
|
||||
<data2>
|
||||
HTTP/1.1 200 OK swsclose
|
||||
Location: this should be ignored
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Connection: close
|
||||
|
||||
body
|
||||
</data2>
|
||||
<datacheck>
|
||||
HTTP/1.1 302 OK swsclose
|
||||
Location: moo.html/14130002#fragmentpart
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Connection: close
|
||||
|
||||
HTTP/1.1 200 OK swsclose
|
||||
Location: this should be ignored
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Connection: close
|
||||
|
||||
body
|
||||
</datacheck>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
HTTP redirect with fragment in new URL
|
||||
</name>
|
||||
<command>
|
||||
http://%HOSTIP:%HTTPPORT/this/1413 -L
|
||||
</command>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /this/1413 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
GET /this/moo.html/14130002 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,57 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
PORT
|
||||
RETR
|
||||
no SIZE
|
||||
</keywords>
|
||||
</info>
|
||||
# Server-side
|
||||
<reply>
|
||||
<data>
|
||||
data
|
||||
to
|
||||
see
|
||||
that FTP
|
||||
works
|
||||
so does it?
|
||||
</data>
|
||||
<servercmd>
|
||||
REPLY SIZE 502 no such command
|
||||
REPLY EPRT 502 no such command
|
||||
</servercmd>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<name>
|
||||
FTP PORT without SIZE or EPRT support
|
||||
</name>
|
||||
<command>
|
||||
ftp://%HOSTIP:%FTPPORT/1414 -P -
|
||||
</command>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strippart>
|
||||
s/^(EPRT \|1\|)(.*)/$1/
|
||||
s/^(PORT)(.*)/$1/
|
||||
</strippart>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
PWD
|
||||
EPRT |1|
|
||||
PORT
|
||||
TYPE I
|
||||
SIZE 1414
|
||||
RETR 1414
|
||||
QUIT
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,75 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
HTTP proxy
|
||||
cookies
|
||||
cookiejar
|
||||
delete expired cookie
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
<data>
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 4
|
||||
Content-Type: text/html
|
||||
Funny-head: yesyes
|
||||
Set-Cookie: test1value=test1; domain=example.com; path=/;
|
||||
Set-Cookie: test2value=test2; expires=Friday, 01-Jan-2037 00:00:00 GMT; domain=example.com; path=/;
|
||||
Set-Cookie: test3value=test3; expires=Monday, 13-Jun-1988 03:04:55 GMT; domain=example.com; path=/;
|
||||
Set-Cookie: test4value=test4; expires=Friday, 01-Jan-2037 00:00:00 GMT; domain=example.com; path=/;
|
||||
Set-Cookie: test5value=test5; expires=Monday, 13-Jun-1988 03:04:55 GMT; domain=example.com; path=/;
|
||||
Set-Cookie: test6value=test6; expires=Monday, 13-Jun-1988 03:04:55 GMT; domain=example.com; path=/;
|
||||
Set-Cookie: test7value=test7; expires=Friday, 01-Jan-2037 00:00:00 GMT; domain=example.com; path=/;
|
||||
Set-Cookie: test8value=test8; expires=Monday, 13-Jun-1988 03:04:55 GMT; domain=example.com; path=/;
|
||||
|
||||
boo
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
Delete expired cookies
|
||||
</name>
|
||||
<setenv>
|
||||
TZ=GMT
|
||||
</setenv>
|
||||
<command>
|
||||
http://example.com/we/want/1415 -b none -c log/jar1415.txt -x %HOSTIP:%HTTPPORT
|
||||
</command>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET http://example.com/we/want/1415 HTTP/1.1
|
||||
Host: example.com
|
||||
Accept: */*
|
||||
Proxy-Connection: Keep-Alive
|
||||
|
||||
</protocol>
|
||||
|
||||
<file name="log/jar1415.txt" mode="text">
|
||||
# Netscape HTTP Cookie File
|
||||
# https://curl.haxx.se/docs/http-cookies.html
|
||||
# This file was generated by libcurl! Edit at your own risk.
|
||||
|
||||
.example.com TRUE / FALSE 0 test1value test1
|
||||
.example.com TRUE / FALSE 2114380800 test2value test2
|
||||
.example.com TRUE / FALSE 2114380800 test4value test4
|
||||
.example.com TRUE / FALSE 2114380800 test7value test7
|
||||
</file>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,63 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
chunked Transfer-Encoding
|
||||
</keywords>
|
||||
</info>
|
||||
#
|
||||
# Server-side
|
||||
<reply>
|
||||
<data nocheck="yes">
|
||||
HTTP/1.1 200 funky chunky!
|
||||
Server: fakeit/0.9 fakeitbad/1.0
|
||||
Transfer-Encoding: chunked
|
||||
Connection: mooo
|
||||
|
||||
12345678123456789
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
30
|
||||
bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||
21;heresatest=moooo
|
||||
cccccccccccccccccccccccccccccccc
|
||||
|
||||
0
|
||||
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
HTTP GET with chunked Transfer-Encoding overflowed chunked size
|
||||
</name>
|
||||
<command>
|
||||
http://%HOSTIP:%HTTPPORT/1416
|
||||
</command>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1416 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
|
||||
# 56 = CURLE_RECV_ERROR
|
||||
<errorcode>
|
||||
56
|
||||
</errorcode>
|
||||
</verify>
|
||||
|
||||
</testcase>
|
||||
@@ -1,78 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
chunked Transfer-Encoding
|
||||
</keywords>
|
||||
</info>
|
||||
#
|
||||
# Server-side
|
||||
<reply>
|
||||
<data>
|
||||
HTTP/1.1 200 funky chunky!
|
||||
Server: fakeit/0.9 fakeitbad/1.0
|
||||
Transfer-Encoding: chunked
|
||||
Trailer: chunky-trailer
|
||||
Connection: mooo
|
||||
|
||||
40
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
30
|
||||
bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||
21;heresatest=moooo
|
||||
cccccccccccccccccccccccccccccccc
|
||||
|
||||
0
|
||||
chunky-trailer: header data
|
||||
|
||||
</data>
|
||||
<datacheck>
|
||||
HTTP/1.1 200 funky chunky!
|
||||
Server: fakeit/0.9 fakeitbad/1.0
|
||||
Transfer-Encoding: chunked
|
||||
Trailer: chunky-trailer
|
||||
Connection: mooo
|
||||
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbcccccccccccccccccccccccccccccccc
|
||||
</datacheck>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
HTTP GET with chunked encoding and chunked trailer without CRs
|
||||
</name>
|
||||
<command>
|
||||
http://%HOSTIP:%HTTPPORT/1417 -D log/heads1417
|
||||
</command>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1417 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
<file name="log/heads1417">
|
||||
HTTP/1.1 200 funky chunky!
|
||||
Server: fakeit/0.9 fakeitbad/1.0
|
||||
Transfer-Encoding: chunked
|
||||
Trailer: chunky-trailer
|
||||
Connection: mooo
|
||||
|
||||
chunky-trailer: header data
|
||||
</file>
|
||||
</verify>
|
||||
|
||||
</testcase>
|
||||
@@ -1,108 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
HTTP NTLM auth
|
||||
connection re-use
|
||||
</keywords>
|
||||
</info>
|
||||
# Server-side
|
||||
<reply>
|
||||
<servercmd>
|
||||
connection-monitor
|
||||
</servercmd>
|
||||
|
||||
<data>
|
||||
HTTP/1.1 401 Authentication please!
|
||||
Content-Length: 20
|
||||
WWW-Authenticate: Digest realm="loonie", nonce="314156592"
|
||||
WWW-Authenticate: Basic
|
||||
|
||||
Please auth with me
|
||||
</data>
|
||||
|
||||
# This is supposed to be returned when the server gets the second
|
||||
# Authorization: NTLM line passed-in from the client
|
||||
<data1000>
|
||||
HTTP/1.1 200 Things are fine in server land
|
||||
Server: Microsoft-IIS/5.0
|
||||
Content-Length: 4
|
||||
|
||||
moo
|
||||
</data1000>
|
||||
|
||||
<data1003>
|
||||
HTTP/1.1 200 OK
|
||||
Server: Another one/1.0
|
||||
Content-Length: 4
|
||||
|
||||
boo
|
||||
</data1003>
|
||||
|
||||
# This is the first reply after the redirection
|
||||
<data1011>
|
||||
HTTP/1.1 200 OK
|
||||
Server: Microsoft-IIS/5.0
|
||||
Content-Type: text/html; charset=iso-8859-1
|
||||
Content-Length: 34
|
||||
|
||||
This is not the real page either!
|
||||
</data1011>
|
||||
|
||||
<datacheck>
|
||||
HTTP/1.1 401 Authentication please!
|
||||
Content-Length: 20
|
||||
WWW-Authenticate: Digest realm="loonie", nonce="314156592"
|
||||
WWW-Authenticate: Basic
|
||||
|
||||
HTTP/1.1 200 Things are fine in server land
|
||||
Server: Microsoft-IIS/5.0
|
||||
Content-Length: 4
|
||||
|
||||
moo
|
||||
</datacheck>
|
||||
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<features>
|
||||
!SSPI
|
||||
crypto
|
||||
</features>
|
||||
<name>
|
||||
HTTP with --anyauth and connection re-use
|
||||
</name>
|
||||
<command>
|
||||
http://%HOSTIP:%HTTPPORT/1418 -u testuser:testpass --anyauth http://%HOSTIP:%HTTPPORT/14180003
|
||||
</command>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1418 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
GET /1418 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Authorization: Digest username="testuser", realm="loonie", nonce="314156592", uri="/1418", response="986238b7e0077754944c966f56d9bc77"
|
||||
Accept: */*
|
||||
|
||||
GET /14180003 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Authorization: Digest username="testuser", realm="loonie", nonce="314156592", uri="/14180003", response="1c6390a67bac3283a9b023402f3b3540"
|
||||
Accept: */*
|
||||
|
||||
[DISCONNECT]
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,69 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
HTTP NTLM auth
|
||||
connection re-use
|
||||
</keywords>
|
||||
</info>
|
||||
# Server-side
|
||||
<reply>
|
||||
<servercmd>
|
||||
connection-monitor
|
||||
</servercmd>
|
||||
|
||||
<data>
|
||||
HTTP/1.1 200 fine!
|
||||
Content-Length: 20
|
||||
|
||||
Feel free to get it
|
||||
</data>
|
||||
|
||||
<data3>
|
||||
HTTP/1.1 200 OK
|
||||
Server: Another one/1.0
|
||||
Content-Length: 4
|
||||
|
||||
boo
|
||||
</data3>
|
||||
|
||||
<datacheck>
|
||||
HTTP/1.1 200 fine!
|
||||
Content-Length: 20
|
||||
|
||||
Feel free to get it
|
||||
</datacheck>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
HTTP with --anyauth (but no auth!) and connection re-use
|
||||
</name>
|
||||
<command>
|
||||
http://%HOSTIP:%HTTPPORT/1419 --anyauth http://%HOSTIP:%HTTPPORT/14190003
|
||||
</command>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1419 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
GET /14190003 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
[DISCONNECT]
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,190 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
</keywords>
|
||||
</info>
|
||||
# Server-side
|
||||
<reply>
|
||||
<data>
|
||||
many parts there are
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<name>
|
||||
FTP URL with 150 dir levels
|
||||
</name>
|
||||
<command>
|
||||
ftp://%HOSTIP:%FTPPORT/part1/part2/part3/part4/part5/part6/part7/part8/part9/part10/part11/part12/part13/part14/part15/part16/part17/part18/part19/part20/part21/part22/part23/part24/part25/part26/part27/part28/part29/part30/part31/part32/part33/part34/part35/part36/part37/part38/part39/part40/part41/part42/part43/part44/part45/part46/part47/part48/part49/part50/part51/part52/part53/part54/part55/part56/part57/part58/part59/part60/part61/part62/part63/part64/part65/part66/part67/part68/part69/part70/part71/part72/part73/part74/part75/part76/part77/part78/part79/part80/part81/part82/part83/part84/part85/part86/part87/part88/part89/part90/part91/part92/part93/part94/part95/part96/part97/part98/part99/part100/part101/part102/part103/part104/part105/part106/part107/part108/part109/part110/part111/part112/part113/part114/part115/part116/part117/part118/part119/part120/part121/part122/part123/part124/part125/part126/part127/part128/part129/part130/part131/part132/part133/part134/part135/part136/part137/part138/part139/part140/part141/part142/part143/part144/part145/part146/part147/part148/part149/part150/142
|
||||
</command>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
PWD
|
||||
CWD part1
|
||||
CWD part2
|
||||
CWD part3
|
||||
CWD part4
|
||||
CWD part5
|
||||
CWD part6
|
||||
CWD part7
|
||||
CWD part8
|
||||
CWD part9
|
||||
CWD part10
|
||||
CWD part11
|
||||
CWD part12
|
||||
CWD part13
|
||||
CWD part14
|
||||
CWD part15
|
||||
CWD part16
|
||||
CWD part17
|
||||
CWD part18
|
||||
CWD part19
|
||||
CWD part20
|
||||
CWD part21
|
||||
CWD part22
|
||||
CWD part23
|
||||
CWD part24
|
||||
CWD part25
|
||||
CWD part26
|
||||
CWD part27
|
||||
CWD part28
|
||||
CWD part29
|
||||
CWD part30
|
||||
CWD part31
|
||||
CWD part32
|
||||
CWD part33
|
||||
CWD part34
|
||||
CWD part35
|
||||
CWD part36
|
||||
CWD part37
|
||||
CWD part38
|
||||
CWD part39
|
||||
CWD part40
|
||||
CWD part41
|
||||
CWD part42
|
||||
CWD part43
|
||||
CWD part44
|
||||
CWD part45
|
||||
CWD part46
|
||||
CWD part47
|
||||
CWD part48
|
||||
CWD part49
|
||||
CWD part50
|
||||
CWD part51
|
||||
CWD part52
|
||||
CWD part53
|
||||
CWD part54
|
||||
CWD part55
|
||||
CWD part56
|
||||
CWD part57
|
||||
CWD part58
|
||||
CWD part59
|
||||
CWD part60
|
||||
CWD part61
|
||||
CWD part62
|
||||
CWD part63
|
||||
CWD part64
|
||||
CWD part65
|
||||
CWD part66
|
||||
CWD part67
|
||||
CWD part68
|
||||
CWD part69
|
||||
CWD part70
|
||||
CWD part71
|
||||
CWD part72
|
||||
CWD part73
|
||||
CWD part74
|
||||
CWD part75
|
||||
CWD part76
|
||||
CWD part77
|
||||
CWD part78
|
||||
CWD part79
|
||||
CWD part80
|
||||
CWD part81
|
||||
CWD part82
|
||||
CWD part83
|
||||
CWD part84
|
||||
CWD part85
|
||||
CWD part86
|
||||
CWD part87
|
||||
CWD part88
|
||||
CWD part89
|
||||
CWD part90
|
||||
CWD part91
|
||||
CWD part92
|
||||
CWD part93
|
||||
CWD part94
|
||||
CWD part95
|
||||
CWD part96
|
||||
CWD part97
|
||||
CWD part98
|
||||
CWD part99
|
||||
CWD part100
|
||||
CWD part101
|
||||
CWD part102
|
||||
CWD part103
|
||||
CWD part104
|
||||
CWD part105
|
||||
CWD part106
|
||||
CWD part107
|
||||
CWD part108
|
||||
CWD part109
|
||||
CWD part110
|
||||
CWD part111
|
||||
CWD part112
|
||||
CWD part113
|
||||
CWD part114
|
||||
CWD part115
|
||||
CWD part116
|
||||
CWD part117
|
||||
CWD part118
|
||||
CWD part119
|
||||
CWD part120
|
||||
CWD part121
|
||||
CWD part122
|
||||
CWD part123
|
||||
CWD part124
|
||||
CWD part125
|
||||
CWD part126
|
||||
CWD part127
|
||||
CWD part128
|
||||
CWD part129
|
||||
CWD part130
|
||||
CWD part131
|
||||
CWD part132
|
||||
CWD part133
|
||||
CWD part134
|
||||
CWD part135
|
||||
CWD part136
|
||||
CWD part137
|
||||
CWD part138
|
||||
CWD part139
|
||||
CWD part140
|
||||
CWD part141
|
||||
CWD part142
|
||||
CWD part143
|
||||
CWD part144
|
||||
CWD part145
|
||||
CWD part146
|
||||
CWD part147
|
||||
CWD part148
|
||||
CWD part149
|
||||
CWD part150
|
||||
EPSV
|
||||
TYPE I
|
||||
SIZE 142
|
||||
RETR 142
|
||||
QUIT
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,110 +0,0 @@
|
||||
<testcase>
|
||||
# Based on test800
|
||||
<info>
|
||||
<keywords>
|
||||
IMAP
|
||||
Clear Text
|
||||
FETCH
|
||||
--libcurl
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
#
|
||||
# Server-side
|
||||
<reply>
|
||||
<data>
|
||||
From: me@somewhere
|
||||
To: fake@nowhere
|
||||
|
||||
body
|
||||
|
||||
--
|
||||
yours sincerely
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
imap
|
||||
</server>
|
||||
<name>
|
||||
--libcurl for IMAP FETCH message
|
||||
</name>
|
||||
<command>
|
||||
'imap://%HOSTIP:%IMAPPORT/1420/;UID=1' -u user:secret --libcurl log/test1420.c
|
||||
</command>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<protocol>
|
||||
A001 CAPABILITY
|
||||
A002 LOGIN user secret
|
||||
A003 SELECT 1420
|
||||
A004 FETCH 1 BODY[]
|
||||
A005 LOGOUT
|
||||
</protocol>
|
||||
<file name="log/test1420.c" mode="text">
|
||||
/********* Sample code generated by the curl command line tool **********
|
||||
* All curl_easy_setopt() options are documented at:
|
||||
* https://curl.haxx.se/libcurl/c/curl_easy_setopt.html
|
||||
************************************************************************/
|
||||
#include <curl/curl.h>
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
CURLcode ret;
|
||||
CURL *hnd;
|
||||
|
||||
hnd = curl_easy_init();
|
||||
curl_easy_setopt(hnd, CURLOPT_URL, "imap://%HOSTIP:%IMAPPORT/1420/;UID=1");
|
||||
curl_easy_setopt(hnd, CURLOPT_HEADER, 1L);
|
||||
curl_easy_setopt(hnd, CURLOPT_USERPWD, "user:secret");
|
||||
curl_easy_setopt(hnd, CURLOPT_USERAGENT, "stripped");
|
||||
curl_easy_setopt(hnd, CURLOPT_MAXREDIRS, 50L);
|
||||
curl_easy_setopt(hnd, CURLOPT_VERBOSE, 1L);
|
||||
curl_easy_setopt(hnd, CURLOPT_TCP_KEEPALIVE, 1L);
|
||||
|
||||
/* Here is a list of options the curl code used that cannot get generated
|
||||
as source easily. You may select to either not use them or implement
|
||||
them yourself.
|
||||
|
||||
CURLOPT_WRITEDATA set to a objectpointer
|
||||
CURLOPT_INTERLEAVEDATA set to a objectpointer
|
||||
CURLOPT_WRITEFUNCTION set to a functionpointer
|
||||
CURLOPT_READDATA set to a objectpointer
|
||||
CURLOPT_READFUNCTION set to a functionpointer
|
||||
CURLOPT_SEEKDATA set to a objectpointer
|
||||
CURLOPT_SEEKFUNCTION set to a functionpointer
|
||||
CURLOPT_ERRORBUFFER set to a objectpointer
|
||||
CURLOPT_STDERR set to a objectpointer
|
||||
CURLOPT_DEBUGFUNCTION set to a functionpointer
|
||||
CURLOPT_DEBUGDATA set to a objectpointer
|
||||
CURLOPT_HEADERFUNCTION set to a functionpointer
|
||||
CURLOPT_HEADERDATA set to a objectpointer
|
||||
|
||||
*/
|
||||
|
||||
ret = curl_easy_perform(hnd);
|
||||
|
||||
curl_easy_cleanup(hnd);
|
||||
hnd = NULL;
|
||||
|
||||
return (int)ret;
|
||||
}
|
||||
/**** End of sample code ****/
|
||||
</file>
|
||||
<stripfile>
|
||||
# curl's default user-agent varies with version, libraries etc.
|
||||
s/(USERAGENT, \")[^\"]+/${1}stripped/
|
||||
# CURLOPT_SSL_VERIFYPEER, SSH_KNOWNHOSTS and HTTP_VERSION vary with
|
||||
# configurations - just ignore them
|
||||
$_ = '' if /CURLOPT_SSL_VERIFYPEER/
|
||||
$_ = '' if /CURLOPT_SSH_KNOWNHOSTS/
|
||||
$_ = '' if /CURLOPT_HTTP_VERSION/
|
||||
</stripfile>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,72 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
HTTP proxy
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
#
|
||||
# Server-side
|
||||
<reply>
|
||||
<data nocheck="yes">
|
||||
HTTP/1.1 200 OK
|
||||
Uknown-header: blrub
|
||||
Content-Length: 6
|
||||
|
||||
-foo-
|
||||
</data>
|
||||
|
||||
<servercmd>
|
||||
connection-monitor
|
||||
</servercmd>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
Re-using HTTP proxy connection for two different host names
|
||||
</name>
|
||||
<command>
|
||||
--proxy http://%HOSTIP:%HTTPPORT http://test.remote.haxx.se.1421:8990/ http://different.remote.haxx.se.1421:8990
|
||||
</command>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<stdout>
|
||||
HTTP/1.1 200 OK
|
||||
Uknown-header: blrub
|
||||
Content-Length: 6
|
||||
|
||||
-foo-
|
||||
HTTP/1.1 200 OK
|
||||
Uknown-header: blrub
|
||||
Content-Length: 6
|
||||
|
||||
-foo-
|
||||
</stdout>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET http://test.remote.haxx.se.1421:8990/ HTTP/1.1
|
||||
Host: test.remote.haxx.se.1421:8990
|
||||
Accept: */*
|
||||
Proxy-Connection: Keep-Alive
|
||||
|
||||
GET http://different.remote.haxx.se.1421:8990/ HTTP/1.1
|
||||
Host: different.remote.haxx.se.1421:8990
|
||||
Accept: */*
|
||||
Proxy-Connection: Keep-Alive
|
||||
|
||||
[DISCONNECT]
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,63 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
-J
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
#
|
||||
<reply>
|
||||
<data nocheck="yes">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 0
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Content-Disposition: filename=name1422; charset=funny; option=strange
|
||||
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
# this relies on the debug feature to allow us to set directory to store the
|
||||
# -O and -J output in, using the CURL_TESTDIR variable
|
||||
<features>
|
||||
debug
|
||||
</features>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
HTTP GET with -O -J and Content-Disposition (empty file)
|
||||
</name>
|
||||
<setenv>
|
||||
CURL_TESTDIR=%PWD/log
|
||||
</setenv>
|
||||
<command option="no-output,no-include">
|
||||
http://%HOSTIP:%HTTPPORT/1422 -J -O file://%PWD/log/name1422
|
||||
</command>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1422 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/name1422">
|
||||
</file1>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,57 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
#
|
||||
<reply>
|
||||
<data nocheck="yes">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 0
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
file
|
||||
</server>
|
||||
<name>
|
||||
HTTP GET -o fname without Content-Disposition (empty file)
|
||||
</name>
|
||||
<command option="no-output,no-include">
|
||||
http://%HOSTIP:%HTTPPORT/1423 -o log/outfile1423 file://%PWD/log/outfile1423
|
||||
</command>
|
||||
<postcheck>
|
||||
perl %SRCDIR/libtest/notexists.pl log/1423
|
||||
</postcheck>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1423 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/outfile1423">
|
||||
</file1>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,76 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
If-Modified-Since
|
||||
-z
|
||||
</keywords>
|
||||
</info>
|
||||
#
|
||||
# Server-side
|
||||
<reply>
|
||||
<data nocheck="yes">
|
||||
HTTP/1.1 200 OK
|
||||
Server: test-server/fake
|
||||
Last-Modified: Tue, 13 Jun 1990 12:10:00 GMT
|
||||
ETag: "21025-dc7-39462498"
|
||||
Accept-Ranges: bytes
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Funny-head: yesyes
|
||||
|
||||
-foo-
|
||||
</data>
|
||||
<datacheck>
|
||||
HTTP/1.1 200 OK
|
||||
Server: test-server/fake
|
||||
Last-Modified: Tue, 13 Jun 1990 12:10:00 GMT
|
||||
ETag: "21025-dc7-39462498"
|
||||
Accept-Ranges: bytes
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Funny-head: yesyes
|
||||
|
||||
</datacheck>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
HTTP GET -o fname without Content-Disposition (unmet time condition)
|
||||
</name>
|
||||
<file name="log/outfile1424">
|
||||
original contents
|
||||
</file>
|
||||
<command option="no-output,no-include">
|
||||
http://%HOSTIP:%HTTPPORT/1424 -z "dec 12 11:00:00 1999 GMT" -o log/outfile1424
|
||||
</command>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1424 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
If-Modified-Since: Sun, 12 Dec 1999 11:00:00 GMT
|
||||
|
||||
</protocol>
|
||||
|
||||
<file1 name="log/outfile1424">
|
||||
original contents
|
||||
</file1>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,81 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
HTTP CONNECT
|
||||
HTTP Basic auth
|
||||
proxytunnel
|
||||
</keywords>
|
||||
</info>
|
||||
#
|
||||
# Server-side
|
||||
<reply>
|
||||
<data>
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake swsclose
|
||||
Content-Type: text/html
|
||||
Funny-head: yesyes
|
||||
Content-Length: 9
|
||||
|
||||
contents
|
||||
</data>
|
||||
<connect>
|
||||
HTTP/1.1 200 Mighty fine indeed
|
||||
|
||||
</connect>
|
||||
<datacheck>
|
||||
HTTP/1.1 200 Mighty fine indeed
|
||||
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake swsclose
|
||||
Content-Type: text/html
|
||||
Funny-head: yesyes
|
||||
Content-Length: 9
|
||||
|
||||
contents
|
||||
</datacheck>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
http-proxy
|
||||
</server>
|
||||
<name>
|
||||
HTTP over proxy-tunnel with --proxy-header and --header
|
||||
</name>
|
||||
<command>
|
||||
http://test.1428:%HTTPPORT/we/want/that/page/1428 -p -x %HOSTIP:%PROXYPORT --user 'iam:my:;self' --header "header-type: server" --proxy-header "header-type: proxy"
|
||||
</command>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<proxy>
|
||||
CONNECT test.1428:%HTTPPORT HTTP/1.1
|
||||
Host: test.1428:%HTTPPORT
|
||||
User-Agent: curl/7.10.7-pre2 (i686-pc-linux-gnu) libcurl/7.10.7-pre2 OpenSSL/0.9.7a zlib/1.1.3
|
||||
Proxy-Connection: Keep-Alive
|
||||
header-type: proxy
|
||||
|
||||
</proxy>
|
||||
<protocol>
|
||||
GET /we/want/that/page/1428 HTTP/1.1
|
||||
Host: test.1428:%HTTPPORT
|
||||
Authorization: Basic aWFtOm15OjtzZWxm
|
||||
User-Agent: curl/7.10.7-pre2 (i686-pc-linux-gnu) libcurl/7.10.7-pre2 OpenSSL/0.9.7a zlib/1.1.3
|
||||
Accept: */*
|
||||
header-type: server
|
||||
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,69 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
<reply>
|
||||
<data nocheck="yes">
|
||||
HTTP/1.1 1234 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
|
||||
ETag: "21025-dc7-39462498"
|
||||
Accept-Ranges: bytes
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Funny-head: yesyes
|
||||
|
||||
-foo-
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
|
||||
<name>
|
||||
HTTP GET with 4-digit reponse code
|
||||
</name>
|
||||
<command>
|
||||
http://%HOSTIP:%HTTPPORT/1429 --write-out '%{response_code}'
|
||||
</command>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<stdout nonewline="yes">
|
||||
HTTP/1.1 1234 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
|
||||
ETag: "21025-dc7-39462498"
|
||||
Accept-Ranges: bytes
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Funny-head: yesyes
|
||||
|
||||
-foo-
|
||||
1234
|
||||
</stdout>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1429 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,44 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
RETR
|
||||
type=
|
||||
</keywords>
|
||||
</info>
|
||||
# Server-side
|
||||
<reply>
|
||||
<data>
|
||||
bla bla bla
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<name>
|
||||
FTP URL with type=a
|
||||
</name>
|
||||
<command>
|
||||
"ftp://%HOSTIP:%FTPPORT/%2ftmp/moo/143;type=a"
|
||||
</command>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
PWD
|
||||
CWD /tmp
|
||||
CWD moo
|
||||
EPSV
|
||||
TYPE A
|
||||
SIZE 143
|
||||
RETR 143
|
||||
QUIT
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,53 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
<reply>
|
||||
<data>
|
||||
HTTP/1.1 -12 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
|
||||
ETag: "21025-dc7-39462498"
|
||||
Accept-Ranges: bytes
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Funny-head: yesyes
|
||||
|
||||
-foo-
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
HTTP GET with negative reponse code
|
||||
</name>
|
||||
<command>
|
||||
http://%HOSTIP:%HTTPPORT/1430
|
||||
</command>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1430 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,53 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
<reply>
|
||||
<data>
|
||||
HTTP/1.1 2 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
|
||||
ETag: "21025-dc7-39462498"
|
||||
Accept-Ranges: bytes
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Funny-head: yesyes
|
||||
|
||||
-foo-
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
HTTP GET with single-digit reponse code
|
||||
</name>
|
||||
<command>
|
||||
http://%HOSTIP:%HTTPPORT/1431
|
||||
</command>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1431 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,54 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
<reply>
|
||||
<data nocheck="yes">
|
||||
HTTP/1.1 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
|
||||
ETag: "21025-dc7-39462498"
|
||||
Accept-Ranges: bytes
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Funny-head: yesyes
|
||||
|
||||
-foo-
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
|
||||
<name>
|
||||
HTTP GET with 100-digit reponse code and survive
|
||||
</name>
|
||||
<command>
|
||||
http://%HOSTIP:%HTTPPORT/1432
|
||||
</command>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1432 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,69 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
<reply>
|
||||
<data nocheck="yes">
|
||||
HTTP/1.0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
|
||||
ETag: "21025-dc7-39462498"
|
||||
Accept-Ranges: bytes
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Funny-head: yesyes
|
||||
|
||||
-foo-
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
|
||||
<name>
|
||||
HTTP GET with 100-digit subversion number in response
|
||||
</name>
|
||||
<command>
|
||||
http://%HOSTIP:%HTTPPORT/1433 --write-out '%{response_code}'
|
||||
</command>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<stdout nonewline="yes">
|
||||
HTTP/1.0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
|
||||
ETag: "21025-dc7-39462498"
|
||||
Accept-Ranges: bytes
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Funny-head: yesyes
|
||||
|
||||
-foo-
|
||||
200
|
||||
</stdout>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1433 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,90 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
Resume
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
# Some servers (e.g. Apache 1.2) respond this way to an invalid byte range
|
||||
<data>
|
||||
HTTP/1.1 200 OK
|
||||
Connection: close
|
||||
Content-Length: 100
|
||||
Content-Type: text/plain
|
||||
|
||||
012345678
|
||||
012345678
|
||||
012345678
|
||||
012345678
|
||||
012345678
|
||||
012345678
|
||||
012345678
|
||||
012345678
|
||||
012345678
|
||||
012345678
|
||||
</data>
|
||||
|
||||
# The file data that exists at the start of the test must be included in
|
||||
# the verification.
|
||||
<datacheck>
|
||||
012345678
|
||||
012345678
|
||||
012345678
|
||||
012345678
|
||||
012345678
|
||||
012345678
|
||||
012345678
|
||||
012345678
|
||||
012345678
|
||||
012345678
|
||||
HTTP/1.1 200 OK
|
||||
Connection: close
|
||||
Content-Length: 100
|
||||
Content-Type: text/plain
|
||||
|
||||
</datacheck>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
HTTP GET resume at exactly the existing file size is fine
|
||||
</name>
|
||||
<command>
|
||||
http://%HOSTIP:%HTTPPORT/1434 -C 100
|
||||
</command>
|
||||
<file name="log/curl1434.out">
|
||||
012345678
|
||||
012345678
|
||||
012345678
|
||||
012345678
|
||||
012345678
|
||||
012345678
|
||||
012345678
|
||||
012345678
|
||||
012345678
|
||||
012345678
|
||||
</file>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1434 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Range: bytes=100-
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,46 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
unix sockets
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
<reply>
|
||||
<data>
|
||||
HTTP/1.1 200 OK
|
||||
Date: Sun, 16 Nov 2014 23:47:38 GMT
|
||||
Content-Length: 17
|
||||
|
||||
Based on test300
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
<client>
|
||||
<features>
|
||||
unix-sockets
|
||||
</features>
|
||||
<server>
|
||||
http-unix
|
||||
</server>
|
||||
<name>
|
||||
simple HTTP GET over Unix socket
|
||||
</name>
|
||||
<command>
|
||||
--unix-socket %HTTPUNIXPATH http://server-interpreted.example.com/1435
|
||||
</command>
|
||||
</client>
|
||||
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1435 HTTP/1.1
|
||||
Host: server-interpreted.example.com
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,85 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
unix sockets
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
<reply>
|
||||
<data1>
|
||||
HTTP/1.1 200 OK
|
||||
Date: Mon, 17 Nov 2014 13:42:47 GMT
|
||||
Content-Length: 6
|
||||
|
||||
First
|
||||
</data1>
|
||||
<data2>
|
||||
HTTP/1.1 200 OK
|
||||
Date: Mon, 17 Nov 2014 13:42:48 GMT
|
||||
Content-Length: 7
|
||||
|
||||
Second
|
||||
</data2>
|
||||
<data3>
|
||||
HTTP/1.1 200 OK
|
||||
Date: Mon, 17 Nov 2014 13:42:49 GMT
|
||||
Content-Length: 6
|
||||
|
||||
Third
|
||||
</data3>
|
||||
</reply>
|
||||
|
||||
<client>
|
||||
<features>
|
||||
unix-sockets
|
||||
</features>
|
||||
<server>
|
||||
http-unix
|
||||
</server>
|
||||
<name>
|
||||
HTTP requests with multiple connections over Unix socket
|
||||
</name>
|
||||
<command>
|
||||
--unix-socket %HTTPUNIXPATH http://one.example.com/14360001 http://two.example.com/14360002 http://one.example.com/14360003
|
||||
</command>
|
||||
</client>
|
||||
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /14360001 HTTP/1.1
|
||||
Host: one.example.com
|
||||
Accept: */*
|
||||
|
||||
GET /14360002 HTTP/1.1
|
||||
Host: two.example.com
|
||||
Accept: */*
|
||||
|
||||
GET /14360003 HTTP/1.1
|
||||
Host: one.example.com
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
<stdout>
|
||||
HTTP/1.1 200 OK
|
||||
Date: Mon, 17 Nov 2014 13:42:47 GMT
|
||||
Content-Length: 6
|
||||
|
||||
First
|
||||
HTTP/1.1 200 OK
|
||||
Date: Mon, 17 Nov 2014 13:42:48 GMT
|
||||
Content-Length: 7
|
||||
|
||||
Second
|
||||
HTTP/1.1 200 OK
|
||||
Date: Mon, 17 Nov 2014 13:42:49 GMT
|
||||
Content-Length: 6
|
||||
|
||||
Third
|
||||
</stdout>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,84 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
HTTP Digest auth
|
||||
</keywords>
|
||||
</info>
|
||||
# Server-side
|
||||
<reply>
|
||||
<data>
|
||||
HTTP/1.1 401 Authorization Required swsclose
|
||||
Server: Apache/1.3.27 (Darwin) PHP/4.1.2
|
||||
WWW-Authenticate: Digest realm="testrealm", algorithm=MD5, algorithm=MD5, nonce=1, nonce=2
|
||||
Content-Type: text/html; charset=iso-8859-1
|
||||
Content-Length: 26
|
||||
|
||||
This is not the real page
|
||||
</data>
|
||||
|
||||
# This is supposed to be returned when the server gets a
|
||||
# Authorization: Digest line passed-in from the client
|
||||
<data1000>
|
||||
HTTP/1.1 200 OK swsclose
|
||||
Server: Apache/1.3.27 (Darwin) PHP/4.1.2
|
||||
Content-Type: text/html; charset=iso-8859-1
|
||||
Content-Length: 23
|
||||
|
||||
This IS the real page!
|
||||
</data1000>
|
||||
|
||||
<datacheck>
|
||||
HTTP/1.1 401 Authorization Required swsclose
|
||||
Server: Apache/1.3.27 (Darwin) PHP/4.1.2
|
||||
WWW-Authenticate: Digest realm="testrealm", algorithm=MD5, algorithm=MD5, nonce=1, nonce=2
|
||||
Content-Type: text/html; charset=iso-8859-1
|
||||
Content-Length: 26
|
||||
|
||||
HTTP/1.1 200 OK swsclose
|
||||
Server: Apache/1.3.27 (Darwin) PHP/4.1.2
|
||||
Content-Type: text/html; charset=iso-8859-1
|
||||
Content-Length: 23
|
||||
|
||||
This IS the real page!
|
||||
</datacheck>
|
||||
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<features>
|
||||
!SSPI
|
||||
crypto
|
||||
</features>
|
||||
<name>
|
||||
HTTP with duplicated WWW-Authenticate parameters
|
||||
</name>
|
||||
<command>
|
||||
http://%HOSTIP:%HTTPPORT/1437 -u testuser:testpass --digest
|
||||
</command>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1437 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
GET /1437 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Authorization: Digest username="testuser", realm="testrealm", nonce="2", uri="/1437", response="4376eb639bf8e7343a6e7b56e1b89c4f", algorithm="MD5"
|
||||
User-Agent: curl/7.10.5 (i686-pc-linux-gnu) libcurl/7.10.5 OpenSSL/0.9.7a ipv6 zlib/1.1.3
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,58 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
protocol
|
||||
--write-out
|
||||
</keywords>
|
||||
</info>
|
||||
# Server-side
|
||||
<reply>
|
||||
<data nocheck="yes">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Content-Length: 9
|
||||
Connection: close
|
||||
Content-Type: text/plain
|
||||
|
||||
testdata
|
||||
</data>
|
||||
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
|
||||
<name>
|
||||
Check if %{scheme} returns HTTP
|
||||
</name>
|
||||
<command>
|
||||
http://%HOSTIP:%HTTPPORT/1438 --write-out '%{scheme}'
|
||||
</command>
|
||||
</client>
|
||||
|
||||
# Verify data
|
||||
<verify>
|
||||
<stdout nonewline="yes">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Content-Length: 9
|
||||
Connection: close
|
||||
Content-Type: text/plain
|
||||
|
||||
testdata
|
||||
HTTP
|
||||
</stdout>
|
||||
<protocol>
|
||||
GET /1438 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,58 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
--write-out
|
||||
</keywords>
|
||||
</info>
|
||||
# Server-side
|
||||
<reply>
|
||||
<data nocheck="yes">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Content-Length: 9
|
||||
Connection: close
|
||||
Content-Type: text/plain
|
||||
|
||||
testdata
|
||||
</data>
|
||||
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
|
||||
<name>
|
||||
Check if %{scheme} returns HTTP
|
||||
</name>
|
||||
<command>
|
||||
http://%HOSTIP:%HTTPPORT/1439 --write-out '%{http_version}'
|
||||
</command>
|
||||
</client>
|
||||
|
||||
# Verify data
|
||||
<verify>
|
||||
<stdout nonewline="yes">
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Content-Length: 9
|
||||
Connection: close
|
||||
Content-Type: text/plain
|
||||
|
||||
testdata
|
||||
1.1
|
||||
</stdout>
|
||||
<protocol>
|
||||
GET /1439 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,49 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
PORT
|
||||
NLST
|
||||
--data-binary
|
||||
</keywords>
|
||||
</info>
|
||||
# Server-side
|
||||
<reply>
|
||||
<data>
|
||||
</data>
|
||||
<servercmd>
|
||||
REPLY NLST 450 No files found
|
||||
</servercmd>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<name>
|
||||
FTP NLST dir list without contents, using PORT
|
||||
</name>
|
||||
<command>
|
||||
ftp://%HOSTIP:%FTPPORT/ -P - -l
|
||||
</command>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
# Strip all valid kinds of PORT and EPRT that curl can send
|
||||
<strip>
|
||||
^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3}
|
||||
^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\|
|
||||
</strip>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
PWD
|
||||
PORT 127,0,0,1,243,212
|
||||
TYPE A
|
||||
NLST
|
||||
QUIT
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,51 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
NLST
|
||||
PORT
|
||||
</keywords>
|
||||
</info>
|
||||
# Server-side
|
||||
<reply>
|
||||
<servercmd>
|
||||
REPLY NLST 550 Have a taste on this!
|
||||
</servercmd>
|
||||
<data>
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<name>
|
||||
FTP NLST dir list with weird reply code, using PORT
|
||||
</name>
|
||||
<command>
|
||||
ftp://%HOSTIP:%FTPPORT/ -P - -l
|
||||
</command>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<errorcode>
|
||||
19
|
||||
</errorcode>
|
||||
# Strip all valid kinds of PORT and EPRT that curl can send
|
||||
<strip>
|
||||
^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3}
|
||||
^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\|
|
||||
</strip>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
PWD
|
||||
PORT 127,0,0,1,243,212
|
||||
TYPE A
|
||||
NLST
|
||||
QUIT
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,55 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
RETR
|
||||
persistent connection
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
<data>
|
||||
this is file contents
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<name>
|
||||
persistent FTP with different paths
|
||||
</name>
|
||||
<command>
|
||||
ftp://%HOSTIP:%FTPPORT/first/dir/here/146 ftp://%HOSTIP:%FTPPORT/146
|
||||
</command>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
# Strip all valid kinds of PORT and EPRT that curl can send
|
||||
<strip>
|
||||
^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3}
|
||||
^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\|
|
||||
</strip>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
PWD
|
||||
CWD first
|
||||
CWD dir
|
||||
CWD here
|
||||
EPSV
|
||||
TYPE I
|
||||
SIZE 146
|
||||
RETR 146
|
||||
CWD /
|
||||
EPSV
|
||||
SIZE 146
|
||||
RETR 146
|
||||
QUIT
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,55 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
<data>
|
||||
foo
|
||||
</data>
|
||||
<servercmd>
|
||||
REPLY CWD 550 I won't allow this on my server
|
||||
COUNT CWD 1
|
||||
</servercmd>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<name>
|
||||
FTP with --ftp-create-dirs (failing CWD)
|
||||
</name>
|
||||
<command>
|
||||
ftp://%HOSTIP:%FTPPORT/first/dir/here/147 --ftp-create-dirs
|
||||
</command>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
# Strip all valid kinds of PORT and EPRT that curl can send
|
||||
<strip>
|
||||
^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3}
|
||||
^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\|
|
||||
</strip>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
PWD
|
||||
CWD first
|
||||
MKD first
|
||||
CWD first
|
||||
CWD dir
|
||||
CWD here
|
||||
EPSV
|
||||
TYPE I
|
||||
SIZE 147
|
||||
RETR 147
|
||||
QUIT
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,49 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
<servercmd>
|
||||
REPLY CWD 550 I won't allow this on my server
|
||||
REPLY MKD 550 We will have no such thing
|
||||
</servercmd>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<name>
|
||||
FTP with --ftp-create-dirs (failing MKD)
|
||||
</name>
|
||||
<command>
|
||||
ftp://%HOSTIP:%FTPPORT/attempt/to/get/this/148 --ftp-create-dirs
|
||||
</command>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
# Strip all valid kinds of PORT and EPRT that curl can send
|
||||
<strip>
|
||||
^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3}
|
||||
^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\|
|
||||
</strip>
|
||||
<errorcode>
|
||||
9
|
||||
</errorcode>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
PWD
|
||||
CWD attempt
|
||||
MKD attempt
|
||||
CWD attempt
|
||||
QUIT
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,53 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<name>
|
||||
FTP with multiple uploads
|
||||
</name>
|
||||
<command>
|
||||
-T log/upload149 ftp://%HOSTIP:%FTPPORT/dir1/149 -T log/upload149 ftp://%HOSTIP:%FTPPORT/dir2/149
|
||||
</command>
|
||||
<file name="log/upload149">
|
||||
send away this contents
|
||||
</file>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
# Strip all valid kinds of PORT and EPRT that curl can send
|
||||
<strip>
|
||||
^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3}
|
||||
^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\|
|
||||
</strip>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
PWD
|
||||
CWD dir1
|
||||
EPSV
|
||||
TYPE I
|
||||
STOR 149
|
||||
CWD /
|
||||
CWD dir2
|
||||
EPSV
|
||||
STOR 149
|
||||
QUIT
|
||||
</protocol>
|
||||
<file name="log/upload149">
|
||||
send away this contents
|
||||
</file>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,57 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
--write-out
|
||||
</keywords>
|
||||
</info>
|
||||
# Server-side
|
||||
<reply>
|
||||
<data nocheck="yes">
|
||||
HTTP/1.4 200 OK
|
||||
Fake: yes
|
||||
Fake: yes
|
||||
Fake: yes
|
||||
Content-Length: 26
|
||||
|
||||
Repeated nonsense-headers
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
--write-out test
|
||||
</name>
|
||||
<command>
|
||||
http://%HOSTIP:%HTTPPORT/want/15 --write-out "%{url_effective} %{http_code} %{size_download}\n"
|
||||
</command>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<stdout>
|
||||
HTTP/1.4 200 OK
|
||||
Fake: yes
|
||||
Fake: yes
|
||||
Fake: yes
|
||||
Content-Length: 26
|
||||
|
||||
Repeated nonsense-headers
|
||||
http://%HOSTIP:%HTTPPORT/want/15 200 26
|
||||
</stdout>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /want/15 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,103 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
HTTP NTLM auth
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
<!-- Server-side -->
|
||||
<reply>
|
||||
|
||||
<!-- no <data> in this test since we have NTLM from the start
|
||||
|
||||
This is supposed to be returned when the server gets a first
|
||||
Authorization: NTLM line passed-in from the client -->
|
||||
|
||||
<data1001>
|
||||
HTTP/1.1 401 Now gimme that second request of crap
|
||||
Server: Microsoft-IIS/5.0
|
||||
Content-Type: text/html; charset=iso-8859-1
|
||||
Content-Length: 34
|
||||
WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==
|
||||
|
||||
This is not the real page either!
|
||||
</data1001>
|
||||
|
||||
# This is supposed to be returned when the server gets the second
|
||||
# Authorization: NTLM line passed-in from the client
|
||||
<data1002>
|
||||
HTTP/1.1 200 Things are fine in server land swsclose
|
||||
Server: Microsoft-IIS/5.0
|
||||
Content-Type: text/html; charset=iso-8859-1
|
||||
Content-Length: 32
|
||||
|
||||
Finally, this is the real page!
|
||||
</data1002>
|
||||
|
||||
<datacheck>
|
||||
HTTP/1.1 401 Now gimme that second request of crap
|
||||
Server: Microsoft-IIS/5.0
|
||||
Content-Type: text/html; charset=iso-8859-1
|
||||
Content-Length: 34
|
||||
WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==
|
||||
|
||||
HTTP/1.1 200 Things are fine in server land swsclose
|
||||
Server: Microsoft-IIS/5.0
|
||||
Content-Type: text/html; charset=iso-8859-1
|
||||
Content-Length: 32
|
||||
|
||||
Finally, this is the real page!
|
||||
</datacheck>
|
||||
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<features>
|
||||
NTLM
|
||||
!SSPI
|
||||
debug
|
||||
</features>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<name>
|
||||
HTTP with NTLM authorization and --fail
|
||||
</name>
|
||||
<setenv>
|
||||
# we force our own host name, in order to make the test machine independent
|
||||
CURL_GETHOSTNAME=curlhost
|
||||
# we try to use the LD_PRELOAD hack, if not a debug build
|
||||
LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
|
||||
</setenv>
|
||||
<command>
|
||||
http://%HOSTIP:%HTTPPORT/150 -u testuser:testpass --ntlm --fail
|
||||
</command>
|
||||
<precheck>
|
||||
chkhostname curlhost
|
||||
</precheck>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /150 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
|
||||
User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3
|
||||
Accept: */*
|
||||
|
||||
GET /150 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAL9LNW5+nkyHZRmyFaL/LJ4xMjM0MjIzNGUCyhgQ9hw6eWAT13EbDa0BAQAAAAAAAACAPtXesZ0BMTIzNDIyMzQAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==
|
||||
User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,44 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
multi
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
<data>
|
||||
HTTP/1.1 200 all good!
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Type: text/html
|
||||
Content-Length: 12
|
||||
Connection: close
|
||||
|
||||
Hello World
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<features>
|
||||
http
|
||||
</features>
|
||||
# tool is what to use instead of 'curl'
|
||||
<tool>
|
||||
lib1500
|
||||
</tool>
|
||||
|
||||
<name>
|
||||
curl_multi_wait
|
||||
</name>
|
||||
<command>
|
||||
http://%HOSTIP:%HTTPPORT/1500
|
||||
</command>
|
||||
</client>
|
||||
</testcase>
|
||||
@@ -1,53 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
RETR
|
||||
multi
|
||||
LIST
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
<data>
|
||||
</data>
|
||||
<servercmd>
|
||||
DELAY LIST 2
|
||||
DELAY TYPE 2
|
||||
</servercmd>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<tool>
|
||||
lib1501
|
||||
</tool>
|
||||
<name>
|
||||
FTP with multi interface and slow LIST response
|
||||
</name>
|
||||
<command>
|
||||
ftp://%HOSTIP:%FTPPORT/1501/
|
||||
</command>
|
||||
</client>
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<errorcode>
|
||||
0
|
||||
</errorcode>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
PWD
|
||||
CWD 1501
|
||||
EPSV
|
||||
TYPE A
|
||||
LIST
|
||||
QUIT
|
||||
</protocol>
|
||||
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,58 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
multi
|
||||
CURLOPT_RESOLVE
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
<reply>
|
||||
<data>
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
|
||||
ETag: "21025-dc7-39462498"
|
||||
Accept-Ranges: bytes
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Funny-head: yesyes
|
||||
|
||||
-foo-
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<tool>
|
||||
lib1502
|
||||
</tool>
|
||||
<name>
|
||||
HTTP multi with CURLOPT_RESOLVE, cleanup sequence UA
|
||||
</name>
|
||||
<command>
|
||||
http://google.com:%HTTPPORT/1502 %HTTPPORT %HOSTIP
|
||||
</command>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1502 HTTP/1.1
|
||||
Host: google.com:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,58 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
multi
|
||||
CURLOPT_RESOLVE
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
<reply>
|
||||
<data>
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
|
||||
ETag: "21025-dc7-39462498"
|
||||
Accept-Ranges: bytes
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Funny-head: yesyes
|
||||
|
||||
-foo-
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<tool>
|
||||
lib1503
|
||||
</tool>
|
||||
<name>
|
||||
HTTP multi with CURLOPT_RESOLVE, cleanup sequence PA
|
||||
</name>
|
||||
<command>
|
||||
http://google.com:%HTTPPORT/1503 %HTTPPORT %HOSTIP
|
||||
</command>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1503 HTTP/1.1
|
||||
Host: google.com:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,58 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
multi
|
||||
CURLOPT_RESOLVE
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
<reply>
|
||||
<data>
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
|
||||
ETag: "21025-dc7-39462498"
|
||||
Accept-Ranges: bytes
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Funny-head: yesyes
|
||||
|
||||
-foo-
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<tool>
|
||||
lib1504
|
||||
</tool>
|
||||
<name>
|
||||
HTTP multi with CURLOPT_RESOLVE, cleanup sequence UB
|
||||
</name>
|
||||
<command>
|
||||
http://google.com:%HTTPPORT/1504 %HTTPPORT %HOSTIP
|
||||
</command>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1504 HTTP/1.1
|
||||
Host: google.com:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,58 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
multi
|
||||
CURLOPT_RESOLVE
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
<reply>
|
||||
<data>
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
|
||||
ETag: "21025-dc7-39462498"
|
||||
Accept-Ranges: bytes
|
||||
Content-Length: 6
|
||||
Connection: close
|
||||
Content-Type: text/html
|
||||
Funny-head: yesyes
|
||||
|
||||
-foo-
|
||||
</data>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<tool>
|
||||
lib1505
|
||||
</tool>
|
||||
<name>
|
||||
HTTP multi with CURLOPT_RESOLVE, cleanup sequence PB
|
||||
</name>
|
||||
<command>
|
||||
http://google.com:%HTTPPORT/1505 %HTTPPORT %HOSTIP
|
||||
</command>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
^User-Agent:.*
|
||||
</strip>
|
||||
<protocol>
|
||||
GET /1505 HTTP/1.1
|
||||
Host: google.com:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,96 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
multi
|
||||
verbose logs
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
<data1>
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 47
|
||||
|
||||
file contents should appear once for each file
|
||||
</data1>
|
||||
<data2>
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 47
|
||||
|
||||
file contents should appear once for each file
|
||||
</data2>
|
||||
<data3>
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 47
|
||||
|
||||
file contents should appear once for each file
|
||||
</data3>
|
||||
<data4>
|
||||
HTTP/1.1 200 OK
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Content-Length: 47
|
||||
|
||||
file contents should appear once for each file
|
||||
</data4>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
</server>
|
||||
<tool>
|
||||
lib1506
|
||||
</tool>
|
||||
<name>
|
||||
HTTP GET connection cache limit (CURLMOPT_MAXCONNECTS)
|
||||
</name>
|
||||
<command>
|
||||
http://%HOSTIP:%HTTPPORT/path/1506 %HOSTIP %HTTPPORT
|
||||
</command>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<protocol>
|
||||
GET /path/15060001 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
GET /path/15060002 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
GET /path/15060003 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
GET /path/15060004 HTTP/1.1
|
||||
Host: %HOSTIP:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
</protocol>
|
||||
<strip>
|
||||
^Host:.*
|
||||
</strip>
|
||||
<file name="log/stderr1506" mode="text">
|
||||
* Connection #0 to host server1.example.com left intact
|
||||
* Connection #1 to host server2.example.com left intact
|
||||
* Connection #2 to host server3.example.com left intact
|
||||
* Closing connection 0
|
||||
* Connection #3 to host server4.example.com left intact
|
||||
</file>
|
||||
<stripfile>
|
||||
$_ = '' if (($_ !~ /left intact/) && ($_ !~ /Closing connection/))
|
||||
</stripfile>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,51 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
SMTP
|
||||
multi
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
#
|
||||
# Server-side
|
||||
<reply>
|
||||
</reply>
|
||||
|
||||
#
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
smtp
|
||||
</server>
|
||||
<tool>
|
||||
lib1507
|
||||
</tool>
|
||||
|
||||
# based on bug report #1184
|
||||
<name>
|
||||
SMTP with multi interface and CURLE_ABORTED_BY_CALLBACK
|
||||
</name>
|
||||
<stdin>
|
||||
From: different
|
||||
To: another
|
||||
|
||||
body
|
||||
</stdin>
|
||||
<command>
|
||||
smtp://%HOSTIP:%SMTPPORT/1507
|
||||
</command>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<protocol>
|
||||
EHLO 1507
|
||||
MAIL FROM:<1507-realuser@example.com>
|
||||
RCPT TO:<1507-recipient@example.com>
|
||||
DATA
|
||||
</protocol>
|
||||
<upload>
|
||||
</upload>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,31 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
multi
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
none
|
||||
</server>
|
||||
<tool>
|
||||
lib1508
|
||||
</tool>
|
||||
<name>
|
||||
Close a multi handle without using it
|
||||
</name>
|
||||
<command>
|
||||
http://%HOSTIP:%HTTPPORT/path/1508
|
||||
</command>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<file name="log/stdout1508">
|
||||
We are done
|
||||
</file>
|
||||
</verify>
|
||||
</testcase>
|
||||
@@ -1,88 +0,0 @@
|
||||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
HTTP
|
||||
HTTP GET
|
||||
HTTP CONNECT
|
||||
HTTP proxy
|
||||
proxytunnel
|
||||
</keywords>
|
||||
</info>
|
||||
|
||||
# Server-side
|
||||
<reply>
|
||||
<servercmd>
|
||||
connection-monitor
|
||||
</servercmd>
|
||||
<connect>
|
||||
HTTP/1.1 200 Mighty fine indeed
|
||||
Server: the beast that eats naughty clients
|
||||
|
||||
</connect>
|
||||
|
||||
<data>
|
||||
HTTP/1.1 200 OK swsclose
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
|
||||
ETag: "21025-dc7-39462498"
|
||||
|
||||
</data>
|
||||
<datacheck>
|
||||
HTTP/1.1 200 Mighty fine indeed
|
||||
Server: the beast that eats naughty clients
|
||||
|
||||
HTTP/1.1 200 OK swsclose
|
||||
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
||||
Server: test-server/fake
|
||||
Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
|
||||
ETag: "21025-dc7-39462498"
|
||||
|
||||
header length is ........: 245
|
||||
header length should be..: 245
|
||||
</datacheck>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
http
|
||||
http-proxy
|
||||
</server>
|
||||
# tool is what to use instead of 'curl'
|
||||
<tool>
|
||||
lib1509
|
||||
</tool>
|
||||
|
||||
<name>
|
||||
simple multi http:// through proxytunnel with authentication info
|
||||
</name>
|
||||
<command>
|
||||
http://the.old.moo.1509:%HTTPPORT/1509 %HOSTIP:%PROXYPORT
|
||||
</command>
|
||||
<file name="log/test1509.txt">
|
||||
foo
|
||||
bar
|
||||
bar
|
||||
foo
|
||||
moo
|
||||
</file>
|
||||
</client>
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<proxy>
|
||||
CONNECT the.old.moo.1509:%HTTPPORT HTTP/1.1
|
||||
Host: the.old.moo.1509:%HTTPPORT
|
||||
Proxy-Connection: Keep-Alive
|
||||
|
||||
</proxy>
|
||||
<protocol>
|
||||
GET /1509 HTTP/1.1
|
||||
Host: the.old.moo.1509:%HTTPPORT
|
||||
Accept: */*
|
||||
|
||||
[DISCONNECT]
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user