diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/data/Makefile.inc | 4 | ||||
-rw-r--r-- | tests/data/test3008 | 59 | ||||
-rw-r--r-- | tests/data/test3009 | 59 | ||||
-rw-r--r-- | tests/data/test3011 | 59 | ||||
-rw-r--r-- | tests/data/test3012 | 62 | ||||
-rw-r--r-- | tests/data/test3013 | 69 | ||||
-rwxr-xr-x | tests/runtests.pl | 16 |
7 files changed, 321 insertions, 7 deletions
diff --git a/tests/data/Makefile.inc b/tests/data/Makefile.inc index 29d913f62..c13fb7307 100644 --- a/tests/data/Makefile.inc +++ b/tests/data/Makefile.inc @@ -224,5 +224,5 @@ test2078 \ test2080 \ test2100 \ \ -test3000 test3001 \ -test3002 test3003 test3004 test3005 test3006 test3007 test3010 +test3000 test3001 test3002 test3003 test3004 test3005 test3006 test3007 \ +test3008 test3009 test3010 test3011 test3012 test3013 diff --git a/tests/data/test3008 b/tests/data/test3008 new file mode 100644 index 000000000..154ce2056 --- /dev/null +++ b/tests/data/test3008 @@ -0,0 +1,59 @@ +<testcase> +<info> +<keywords> +-O +</keywords> +</info> +# +# Server-side +<reply> +<data nocheck="yes"> +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> +<features> +http +</features> +<name> +--output-dir +</name> +<command option="no-output,no-include"> +http://%HOSTIP:%HTTPPORT/this/is/the/3008 -O --output-dir %PWD/log +</command> +</client> + +# +# Verify data after the test has been "shot" +<verify> +<strip> +^User-Agent:.* +</strip> +<protocol> +GET /this/is/the/3008 HTTP/1.1
+Host: %HOSTIP:%HTTPPORT
+Accept: */*
+
+</protocol> +<file name="log/3008"> +-foo- +</file> +</verify> +</testcase> diff --git a/tests/data/test3009 b/tests/data/test3009 new file mode 100644 index 000000000..ec4bcea4d --- /dev/null +++ b/tests/data/test3009 @@ -0,0 +1,59 @@ +<testcase> +<info> +<keywords> +-O +</keywords> +</info> +# +# Server-side +<reply> +<data nocheck="yes"> +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> +<features> +http +</features> +<name> +--output-dir a non-existing directory +</name> +<command option="no-output,no-include"> +http://%HOSTIP:%HTTPPORT/this/is/the/3009 -O --output-dir %PWD/not-there +</command> +</client> + +# +# Verify data after the test has been "shot" +<verify> +<strip> +^User-Agent:.* +</strip> +<protocol> +GET /this/is/the/3009 HTTP/1.1
+Host: %HOSTIP:%HTTPPORT
+Accept: */*
+
+</protocol> +<errorcode> +23 +</errorcode> +</verify> +</testcase> diff --git a/tests/data/test3011 b/tests/data/test3011 new file mode 100644 index 000000000..fcf761050 --- /dev/null +++ b/tests/data/test3011 @@ -0,0 +1,59 @@ +<testcase> +<info> +<keywords> +-O +</keywords> +</info> +# +# Server-side +<reply> +<data nocheck="yes"> +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> +<features> +http +</features> +<name> +--output-dir with --create-dirs +</name> +<command option="no-output,no-include"> +http://%HOSTIP:%HTTPPORT/this/is/the/3011 -O --output-dir %PWD/log/tmp --create-dirs +</command> +</client> + +# +# Verify data after the test has been "shot" +<verify> +<strip> +^User-Agent:.* +</strip> +<protocol> +GET /this/is/the/3011 HTTP/1.1
+Host: %HOSTIP:%HTTPPORT
+Accept: */*
+
+</protocol> +<file name="log/tmp/3011"> +-foo- +</file> +</verify> +</testcase> diff --git a/tests/data/test3012 b/tests/data/test3012 new file mode 100644 index 000000000..0a64faac4 --- /dev/null +++ b/tests/data/test3012 @@ -0,0 +1,62 @@ +<testcase> +<info> +<keywords> +-O +-J +--output-dir +</keywords> +</info> +# +# Server-side +<reply> +<data nocheck="yes"> +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-Disposition: inline; filename="MMM3012MMM" +Content-Type: text/html +Funny-head: yesyes + +-foo- +</data> +</reply> + +# +# Client-side +<client> +<server> +http +</server> +<features> +http +</features> +<name> +--output-dir with -J +</name> +<command option="no-output,no-include"> +http://%HOSTIP:%HTTPPORT/this/is/the/3012 -OJ --output-dir %PWD/log +</command> +</client> + +# +# Verify data after the test has been "shot" +<verify> +<strip> +^User-Agent:.* +</strip> +<protocol> +GET /this/is/the/3012 HTTP/1.1
+Host: %HOSTIP:%HTTPPORT
+Accept: */*
+
+</protocol> +<file name="log/MMM3012MMM"> +-foo- +</file> +</verify> +</testcase> diff --git a/tests/data/test3013 b/tests/data/test3013 new file mode 100644 index 000000000..d2fcfa4c0 --- /dev/null +++ b/tests/data/test3013 @@ -0,0 +1,69 @@ +<testcase> +<info> +<keywords> +-O +-J +--output-dir +</keywords> +</info> +# +# Server-side +<reply> +<data nocheck="yes"> +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-Disposition: inline; filename="MMM3013MMM" +Content-Type: text/html +Funny-head: yesyes + +-foo- +</data> +</reply> + +# +# Client-side +<client> +<server> +http +</server> +<features> +http +</features> +<name> +Two --output-dir with --next in between +</name> +<command option="no-output,no-include"> +http://%HOSTIP:%HTTPPORT/this/is/the/3013 -O --output-dir %PWD/log http://%HOSTIP:%HTTPPORT/another/3013 -o second3013 --output-dir %PWD/log +</command> +</client> + +# +# Verify data after the test has been "shot" +<verify> +<strip> +^User-Agent:.* +</strip> +<protocol> +GET /this/is/the/3013 HTTP/1.1
+Host: %HOSTIP:%HTTPPORT
+Accept: */*
+
+GET /another/3013 HTTP/1.1
+Host: %HOSTIP:%HTTPPORT
+Accept: */*
+
+</protocol> +<file name="log/3013"> +-foo- +</file> +<file2 name="log/second3013"> +-foo- +</file2> +</verify> +</testcase> diff --git a/tests/runtests.pl b/tests/runtests.pl index b0bddba1c..3985f7fde 100755 --- a/tests/runtests.pl +++ b/tests/runtests.pl @@ -2713,15 +2713,21 @@ sub cleardir { my $file; # Get all files - opendir(DIR, $dir) || + opendir(my $dh, $dir) || return 0; # can't open dir - while($file = readdir(DIR)) { - if(($file !~ /^\.(|\.)$/)) { - unlink("$dir/$file"); + while($file = readdir($dh)) { + if(($file !~ /^(\.|\.\.)\z/)) { + if(-d "$dir/$file") { + cleardir("$dir/$file"); + rmdir("$dir/$file"); + } + else { + unlink("$dir/$file"); + } $count++; } } - closedir DIR; + closedir $dh; return $count; } |