]> sjero.net Git - wget/blobdiff - tests/Test-idn-robots.px
Fix build when libpsl is not available
[wget] / tests / Test-idn-robots.px
index bc9084efd698e12caa13da0893efd168154e2c64..ae22b7cd7134359e5df0cb9980e35f63a7b5b6dc 100755 (executable)
@@ -1,18 +1,22 @@
-#!/usr/bin/perl
+#!/usr/bin/env perl
 
 use strict;
 use warnings;
 
+use WgetFeature qw(iri);
 use HTTPTest;
 
 # " Kon'nichiwa <dot> Japan
 my $euc_jp_hostname = "\272\243\306\374\244\317.\306\374\313\334";
 my $punycoded_hostname = 'xn--v9ju72g90p.xn--wgv71a';
+my $escaped_hostname = "%ba%a3%c6%fc%a4%cf.%c6%fc%cb%dc";
 
 ###############################################################################
 
 my $starter_file = <<EOF;
 <a href="http://$euc_jp_hostname/foo.txt">The link</a>
+<a href="http://$punycoded_hostname/foo2.txt">The second link</a>
+<a href="http://$escaped_hostname/foo3.txt">The third link</a>
 EOF
 
 my $result_file = <<EOF;
@@ -37,6 +41,22 @@ my %urls = (
         },
         content => $result_file,
     },
+    "http://$punycoded_hostname/foo2.txt" => {
+        code => "200",
+        msg => "Uh-huh2",
+        headers => {
+            'Content-Type' => 'text/plain',
+        },
+        content => $result_file,
+    },
+    "http://$punycoded_hostname/foo3.txt" => {
+        code => "200",
+        msg => "Uh-huh3",
+        headers => {
+            'Content-Type' => 'text/plain',
+        },
+        content => $result_file,
+    },
     "http://$punycoded_hostname/robots.txt" => {
         code => "200",
         msg => "Uh-huh",
@@ -47,8 +67,8 @@ my %urls = (
     },
 );
 
-my $cmdline = $WgetTest::WGETPATH . " --debug --iri -rH"
-    . " -e http_proxy=localhost:{{port}} --locale=EUC-JP"
+my $cmdline = $WgetTest::WGETPATH . " --iri -r"
+    . " -e http_proxy=localhost:{{port}} --local-encoding=EUC-JP"
     . " http://$euc_jp_hostname/";
 
 my $expected_error_code = 0;
@@ -60,6 +80,12 @@ my %expected_downloaded_files = (
     "$punycoded_hostname/foo.txt" => {
         content => $result_file,
     },
+    "$punycoded_hostname/foo2.txt" => {
+        content => $result_file,
+    },
+    "$punycoded_hostname/foo3.txt" => {
+        content => $result_file,
+    },
     "$punycoded_hostname/robots.txt" => {
         content => '',
     },
@@ -68,9 +94,9 @@ my %expected_downloaded_files = (
 ###############################################################################
 
 my $the_test = HTTPTest->new (name => "Test-idn-robots",
-                              input => \%urls, 
-                              cmdline => $cmdline, 
-                              errcode => $expected_error_code, 
+                              input => \%urls,
+                              cmdline => $cmdline,
+                              errcode => $expected_error_code,
                               output => \%expected_downloaded_files);
 exit $the_test->run();