1#!/usr/bin/perl 2 3use strict; 4use warnings; 5 6use WgetFeature qw(iri); 7use HTTPTest; 8 9# " Kon'nichiwa <dot> Japan 10my $euc_jp_hostname = "\272\243\306\374\244\317.\306\374\313\334"; 11my $punycoded_hostname = 'xn--v9ju72g90p.xn--wgv71a'; 12 13############################################################################### 14 15my $starter_file = <<EOF; 16<meta http-equiv="Content-Type" content="text/html; charset=EUC-JP" /> 17<a href="http://$euc_jp_hostname/">The link</a> 18EOF 19 20my $result_file = <<EOF; 21Found me! 22EOF 23 24# code, msg, headers, content 25my %urls = ( 26 'http://start-here.com/start.html' => { 27 code => "200", 28 msg => "You want fries with that?", 29 headers => { 30 'Content-Type' => 'text/html; charset=UTF-8', 31 }, 32 content => $starter_file, 33 }, 34 "http://$punycoded_hostname/index.html" => { 35 code => "200", 36 msg => "Yes, please", 37 headers => { 38 'Content-Type' => 'text/plain', 39 }, 40 content => $result_file, 41 }, 42); 43 44my $cmdline = $WgetTest::WGETPATH . " --debug --iri -rH" 45 . " -e http_proxy=localhost:{{port}} http://start-here.com/start.html"; 46 47my $expected_error_code = 0; 48 49my %expected_downloaded_files = ( 50 'start-here.com/start.html' => { 51 content => $starter_file, 52 }, 53 "$punycoded_hostname/index.html" => { 54 content => $result_file, 55 }, 56); 57 58############################################################################### 59 60my $the_test = HTTPTest->new (name => "Test-idn-meta", 61 input => \%urls, 62 cmdline => $cmdline, 63 errcode => $expected_error_code, 64 output => \%expected_downloaded_files); 65exit $the_test->run(); 66 67# vim: et ts=4 sw=4 68 69