]> sjero.net Git - wget/commitdiff
Test for Content-Disposition in HTTP auth.
authorMicah Cowan <micah@cowan.name>
Tue, 8 Sep 2009 06:09:15 +0000 (23:09 -0700)
committerMicah Cowan <micah@cowan.name>
Tue, 8 Sep 2009 06:09:15 +0000 (23:09 -0700)
tests/ChangeLog
tests/Makefile.am
tests/Test-auth-with-content-disposition.px [new file with mode: 0755]
tests/run-px

index 7c8eb7108e019d5bc3534bbc6defae30dae65e84..02c64d2e8078dfed9ed76a8734b4965bcee4e73b 100644 (file)
@@ -1,5 +1,10 @@
 2009-09-07  Micah Cowan  <micah@cowan.name>
 
+       * Test-auth-with-content-disposition.px: New. Test Content-Disposition
+       support when HTTP authentication is required.
+       * run-px, Makefile.am (EXTRA_DIST): Added
+       Test-auth-with-content-disposition.px.
+
        * FTPServer.pm (FTPServer::run): Pass "server behavior" information to
        newly-constructed FTPPaths object.
        (FTPPaths::initialize): Accept "server behavior" hash.
index cd6df8d826b3fde735efca5b3b273a5c490e8df8..f1ae27ef14aa4e96965c4c0c7ceb97cfc964c36d 100644 (file)
@@ -64,6 +64,7 @@ EXTRA_DIST = FTPServer.pm FTPTest.pm HTTPServer.pm HTTPTest.pm \
              Test-auth-basic.px \
              Test-auth-no-challenge.px \
              Test-auth-no-challenge-url.px \
+             Test-auth-with-content-disposition.px \
              Test-c-full.px \
              Test-c-partial.px \
              Test-c.px \
@@ -73,8 +74,8 @@ EXTRA_DIST = FTPServer.pm FTPTest.pm HTTPServer.pm HTTPTest.pm \
              Test-E-k-K.px \
              Test-E-k.px \
              Test-ftp.px \
-            Test-ftp-pasv-fail.px \
-            Test-ftp-bad-list.px \
+             Test-ftp-pasv-fail.px \
+             Test-ftp-bad-list.px \
              Test-ftp-recursive.px \
              Test-ftp-iri.px \
              Test-ftp-iri-fallback.px \
diff --git a/tests/Test-auth-with-content-disposition.px b/tests/Test-auth-with-content-disposition.px
new file mode 100755 (executable)
index 0000000..a8849d8
--- /dev/null
@@ -0,0 +1,50 @@
+#!/usr/bin/perl
+
+use strict;
+use warnings;
+
+use HTTPTest;
+
+
+###############################################################################
+
+my $wholefile = "You're all authenticated.\n";
+
+# code, msg, headers, content
+my %urls = (
+    '/needs-auth.txt' => {
+        auth_method => 'Basic',
+        user => 'fiddle-dee-dee',
+        passwd => 'Dodgson',
+        code => "200",
+        msg => "You want fries with that?",
+        headers => {
+            "Content-type" => "text/plain",
+            "Content-Disposition" => "attachment; filename=\"Flubber\"",
+        },
+        content => $wholefile,
+    },
+);
+
+my $cmdline = $WgetTest::WGETPATH . " --user=fiddle-dee-dee --password=Dodgson"
+    . " --content-disposition http://localhost:{{port}}/needs-auth.txt";
+
+my $expected_error_code = 0;
+
+my %expected_downloaded_files = (
+    'Flubber' => {
+        content => $wholefile,
+    },
+);
+
+###############################################################################
+
+my $the_test = HTTPTest->new (name => "Test-auth-with-content-disposition",
+                              input => \%urls, 
+                              cmdline => $cmdline, 
+                              errcode => $expected_error_code, 
+                              output => \%expected_downloaded_files);
+exit $the_test->run();
+
+# vim: et ts=4 sw=4
+
index 1a441c7b843836ae41c72249c6e3860f2c016b70..5b2f6b5c38d98f0fd20168bca73f96faae2e6c03 100755 (executable)
@@ -13,6 +13,7 @@ my @tests = (
     'Test-auth-basic.px',
     'Test-auth-no-challenge.px',
     'Test-auth-no-challenge-url.px',
+    'Test-auth-with-content-disposition.px',
     'Test-cookies.px',
     'Test-cookies-401.px',
     'Test-proxy-auth-basic.px',