diff options
author | Dan Fandrich <dan@coneharvesters.com> | 2008-07-30 21:04:44 +0000 |
---|---|---|
committer | Dan Fandrich <dan@coneharvesters.com> | 2008-07-30 21:04:44 +0000 |
commit | bc649593e4b27b17c5f9d4455d50123cdf6a66d3 (patch) | |
tree | c41bc6be649472535ed4df64b12fe17763e67311 /tests/data | |
parent | cc0285da7f99fd4cb87db7059552db929b6f24f2 (diff) |
Added test cases 1052 through 1055 to test uploading data from files
during redirects. Test cases 1052 and 1055 show problems (maybe the same
root cause as 1051) and are disabled.
Diffstat (limited to 'tests/data')
-rw-r--r-- | tests/data/DISABLED | 2 | ||||
-rw-r--r-- | tests/data/Makefile.am | 2 | ||||
-rw-r--r-- | tests/data/test1028 | 2 | ||||
-rw-r--r-- | tests/data/test1052 | 97 | ||||
-rw-r--r-- | tests/data/test1053 | 125 | ||||
-rw-r--r-- | tests/data/test1054 | 80 | ||||
-rw-r--r-- | tests/data/test1055 | 89 |
7 files changed, 395 insertions, 2 deletions
diff --git a/tests/data/DISABLED b/tests/data/DISABLED index 562ee823b..4b41d668a 100644 --- a/tests/data/DISABLED +++ b/tests/data/DISABLED @@ -5,3 +5,5 @@ # Lines starting with '#' letters are treated as comments. 1041 1051 +1052 +1055 diff --git a/tests/data/Makefile.am b/tests/data/Makefile.am index c47ee476a..df25a7247 100644 --- a/tests/data/Makefile.am +++ b/tests/data/Makefile.am @@ -54,7 +54,7 @@ EXTRA_DIST = test1 test108 test117 test127 test20 test27 test34 test46 \ test556 test1031 test628 test629 test630 test631 test632 test1032 \ test1033 test539 test1034 test1035 test1036 test1037 test1038 test1039 \ test1040 test1041 test1042 test1043 test1044 test1045 test1046 test1047 \ - test1048 test1049 test1050 test1051 + test1048 test1049 test1050 test1051 test1052 test1053 test1054 test1055 filecheck: @mkdir test-place; \ diff --git a/tests/data/test1028 b/tests/data/test1028 index 327b3c2c0..fd5162a70 100644 --- a/tests/data/test1028 +++ b/tests/data/test1028 @@ -45,7 +45,7 @@ ftp HTTP Location: redirect to FTP URL </name> <command> --k http://%HOSTIP:%HTTPPORT/10280001 -L +http://%HOSTIP:%HTTPPORT/10280001 -L </command> # The data section doesn't do variable substitution, so we must assert this <precheck> diff --git a/tests/data/test1052 b/tests/data/test1052 new file mode 100644 index 000000000..fac7e7d2f --- /dev/null +++ b/tests/data/test1052 @@ -0,0 +1,97 @@ +<testcase> +<info> +<keywords> +HTTP +HTTP PUT +followlocation +</keywords> + +</info> +# Server-side +<reply> +<data> +HTTP/1.0 301 Redirect swsclose
+Date: Thu, 29 Jul 2008 14:49:00 GMT
+Server: test-server/fake
+Location: data/10520002.txt?coolsite=yes
+Content-Length: 0
+Connection: close
+
+</data> +<data2> +HTTP/1.0 200 Followed here fine swsclose
+Date: Thu, 29 Jul 2008 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 51
+
+If this is received, the location following worked +</data2> +<datacheck> +HTTP/1.0 301 Redirect
+Date: Thu, 29 Jul 2008 14:49:00 GMT
+Server: test-server/fake
+Location: data/10520002.txt?coolsite=yes
+Content-Length: 0
+Connection: Keep-Alive
+
+HTTP/1.0 200 Followed here fine swsclose
+Date: Thu, 29 Jul 2008 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 51
+
+If this is received, the location following worked +</datacheck> +</reply> + +# Client-side +<client> +<server> +http +</server> + <name> +HTTP 1.0 PUT with Location: following + </name> + <command> +http://%HOSTIP:%HTTPPORT/want/1052 -0 -L -T log/test1052.txt +</command> +<file name="log/test1052.txt"> +Weird + file + to + upload +for + testing +the + PUT + feature +</file> +</client> + +# Verify data after the test has been "shot" +<verify> +<strip> +^User-Agent:.* +</strip> +<protocol> +PUT /want/1052 HTTP/1.1
+Host: %HOSTIP:%HTTPPORT
+Accept: */*
+Content-Length: 78
+
+PUT /want/data/10520002.txt?coolsite=yes HTTP/1.1
+Host: %HOSTIP:%HTTPPORT
+Accept: */*
+Content-Length: 78
+
+Weird + file + to + upload +for + testing +the + PUT + feature +</protocol> +</verify> +</testcase> diff --git a/tests/data/test1053 b/tests/data/test1053 new file mode 100644 index 000000000..a898dbaf1 --- /dev/null +++ b/tests/data/test1053 @@ -0,0 +1,125 @@ +<testcase> +# Based on test 9 +<info> +<keywords> +HTTP +HTTP FORMPOST +HTTP file upload +followredirect +</keywords> +</info> + +# Server-side +<reply> +<data> +HTTP/1.0 307 Redirect swsclose
+Date: Thu, 29 Jul 2008 14:49:00 GMT
+Server: test-server/fake
+Location: data/10530002.txt?coolsite=yes
+Content-Length: 0
+Connection: close
+
+</data> +<data2> +HTTP/1.0 200 OK swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+
+blablabla + +</data2> +<datacheck> +HTTP/1.0 307 Redirect swsclose
+Date: Thu, 29 Jul 2008 14:49:00 GMT
+Server: test-server/fake
+Location: data/10530002.txt?coolsite=yes
+Content-Length: 0
+Connection: close
+
+HTTP/1.0 200 OK swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+
+blablabla + +</datacheck> +</reply> + +# Client-side +<client> +<server> +http +</server> + <name> +HTTP RFC1867-type formposting from file with Location following + </name> + <command> +http://%HOSTIP:%HTTPPORT/we/want/1053 -L -F name=daniel -F tool=curl -F file=@log/test1053.txt +</command> +# We create this file before the command is invoked! +<file name="log/test1053.txt"> +foo- +This is a moo- +bar +</file> +</client> + +# Verify data after the test has been "shot" +<verify> +<strip> +^(User-Agent:|Content-Type: multipart/form-data;|------------).* +</strip> +<protocol> +POST /we/want/1053 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: 410
+Expect: 100-continue
+Content-Type: multipart/form-data; boundary=----------------------------9ef8d6205763
+
+------------------------------9ef8d6205763
+Content-Disposition: form-data; name="name"
+
+daniel
+------------------------------9ef8d6205763
+Content-Disposition: form-data; name="tool"
+
+curl
+------------------------------9ef8d6205763
+Content-Disposition: form-data; name="file"; filename="test1053.txt"
+Content-Type: text/plain
+
+foo- +This is a moo- +bar +
+------------------------------9ef8d6205763--
+POST /we/want/data/10530002.txt?coolsite=yes 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: 410
+Expect: 100-continue
+Content-Type: multipart/form-data; boundary=----------------------------9ef8d6205763
+
+------------------------------9ef8d6205763
+Content-Disposition: form-data; name="name"
+
+daniel
+------------------------------9ef8d6205763
+Content-Disposition: form-data; name="tool"
+
+curl
+------------------------------9ef8d6205763
+Content-Disposition: form-data; name="file"; filename="test1053.txt"
+Content-Type: text/plain
+
+foo- +This is a moo- +bar +
+------------------------------9ef8d6205763--
+</protocol> +</verify> +</testcase> diff --git a/tests/data/test1054 b/tests/data/test1054 new file mode 100644 index 000000000..72389b376 --- /dev/null +++ b/tests/data/test1054 @@ -0,0 +1,80 @@ +<testcase> +<info> +<keywords> +HTTP +HTTP POST +followlocation +</keywords> +</info> + +# +# Server-side +<reply> +<data> +HTTP/1.1 301 OK swsclose
+Location: moo.html&testcase=/10540002
+Date: Thu, 31 Jul 2008 14:49:00 GMT
+Connection: close
+
+</data> +<data2> +HTTP/1.1 200 OK swsclose
+Date: Thu, 31 Jul 2008 14:49:00 GMT
+Connection: close
+
+body +</data2> +<datacheck> +HTTP/1.1 301 OK swsclose
+Location: moo.html&testcase=/10540002
+Date: Thu, 31 Jul 2008 14:49:00 GMT
+Connection: close
+
+HTTP/1.1 200 OK swsclose
+Date: Thu, 31 Jul 2008 14:49:00 GMT
+Connection: close
+
+body +</datacheck> +</reply> + +# +# Client-side +<client> +<server> +http +</server> + <name> +HTTP POST from file with 301 redirect and --post301 + </name> +<file name="log/test1054.txt"> +field=data +</file> + <command> +http://%HOSTIP:%HTTPPORT/blah/1054 -L -d @log/test1054.txt --post301 +</command> +</client> + +# +# Verify data after the test has been "shot" +<verify> +<strip> +^User-Agent:.* +</strip> +<protocol nonewline="yes"> +POST /blah/1054 HTTP/1.1
+Host: %HOSTIP:%HTTPPORT
+Accept: */*
+Content-Length: 10
+Content-Type: application/x-www-form-urlencoded
+
+field=dataPOST /blah/moo.html&testcase=/10540002 HTTP/1.1
+Host: %HOSTIP:%HTTPPORT
+Accept: */*
+Content-Length: 10
+Content-Type: application/x-www-form-urlencoded
+
+field=data +</protocol> +</verify> +</testcase> diff --git a/tests/data/test1055 b/tests/data/test1055 new file mode 100644 index 000000000..7e2eae1b8 --- /dev/null +++ b/tests/data/test1055 @@ -0,0 +1,89 @@ +<testcase> +<info> +<keywords> +HTTP +HTTP PUT +followlocation +FTP +EPSV +STOR +</keywords> +</info> + +# +# Server-side +<reply> +<data> +HTTP/1.1 307 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake swsclose
+Content-Type: text/html
+Location: ftp://127.0.0.1:8992/1055
+Content-Length: 0
+Connection: close
+
+</data> +</reply> + +# +# Client-side +<client> +<server> +http +ftp +</server> + <name> +HTTP PUT Location: redirect to FTP URL + </name> + <command> +http://%HOSTIP:%HTTPPORT/1055 -L -T log/test1055.txt +</command> +# The data section doesn't do variable substitution, so we must assert this +<precheck> +perl -e "print 'Test requires default test server host and port' if ( '%HOSTIP' ne '127.0.0.1' || '%FTPPORT' ne '8992' );" +</precheck> +<file name="log/test1055.txt"> +Weird + file + to + upload +for + testing +the + PUT + feature +</file> +</client> + +# +# Verify data after the test has been "shot" +<verify> +<strip> +^User-Agent:.* +</strip> +<protocol> +PUT /1055 HTTP/1.1
+Host: %HOSTIP:%HTTPPORT
+Accept: */*
+
+USER anonymous
+PASS ftp@example.com
+PWD
+EPSV
+TYPE I
+STOR 1055
+QUIT
+</protocol> +<upload> +Weird + file + to + upload +for + testing +the + PUT + feature +</upload> +</verify> +</testcase> |