X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=t%2F13_utf8_mail.t;h=8fb49e414b4416659683477e4108f0272e486002;hb=a40fd8e928b333287f7f52f590c8e2d0c2f90821;hp=8ada76ab01b05a225987cd86c7e8947e357b23ab;hpb=2ca3d4b399934b4ee936f9a3f511b22fbcd48281;p=debbugs.git diff --git a/t/13_utf8_mail.t b/t/13_utf8_mail.t index 8ada76a..8fb49e4 100644 --- a/t/13_utf8_mail.t +++ b/t/13_utf8_mail.t @@ -1,11 +1,13 @@ # -*- mode: cperl;-*- # $Id: 05_mail.t,v 1.1 2005/08/17 21:46:17 don Exp $ -use Test::More tests => 12; +use Test::More tests => 13; use warnings; use strict; +use utf8; + # Here, we're going to shoot messages through a set of things that can # happen. @@ -22,13 +24,13 @@ use File::Basename qw(dirname basename); use lib qw(t/lib); use DebbugsTest qw(:all); use Data::Dumper; -use Encode qw(decode encode decode_utf8); +use Encode qw(decode encode decode_utf8 encode_utf8); # HTTP::Server:::Simple defines a SIG{CHLD} handler that breaks system; undef it here. $SIG{CHLD} = sub {}; my %config; eval { - %config = create_debbugs_configuration(debug => exists $ENV{DEBUG}?$ENV{DEBUG}:0); + %config = create_debbugs_configuration(); }; if ($@) { BAIL_OUT($@); @@ -38,23 +40,17 @@ my $sendmail_dir = $config{sendmail_dir}; my $spool_dir = $config{spool_dir}; my $config_dir = $config{config_dir}; -END{ - if ($ENV{DEBUG}) { - diag("spool_dir: $spool_dir\n"); - diag("config_dir: $config_dir\n"); - diag("sendmail_dir: $sendmail_dir\n"); - } -} + # We're going to use create mime message to create these messages, and # then just send them to receive. send_message(to=>'submit@bugs.something', headers => [To => 'submit@bugs.something', - From => 'foo@bugs.something', + From => 'föoff@bugs.something', Subject => 'Submiting a bug', ], - body => < [{Type=>"text/plain",Charset=>"utf-8",Data=>< < [{Type=>"text/plain",Charset=>"utf-8",Data=>encode_utf8(< '1@bugs.something', headers => [To => '1@bugs.something', - From => 'foo@bugs.something', + From => 'föoff@bugs.something', Subject => 'Sending a message to a bug', ], body => < 'control@bugs.something', headers => [To => 'control@bugs.something', - From => 'foo@bugs.something', + From => 'föoff@bugs.something', Subject => 'Munging a bug', ], body => <1); -ok($status->{subject} eq decode_utf8('ütff8 title encoding test'),'bug 1 retitled'); +ok($status->{subject} eq 'ütff8 title encoding test','bug 1 retitled'); ok($status->{severity} eq 'wishlist','bug 1 wishlisted'); ok(system('sh','-c','[ $(egrep "retitle.*encoding test" '.$spool_dir.'/db-h/01/1.log|grep -v "=C3=BCt=EF=AC=808"|wc -l) -eq 0 ]') == 0, 'Control messages escaped properly'); - +ok(system('sh','-c',encode_utf8('grep -q "föoff@bugs.something" '.$spool_dir.'/index.db'))==0, + 'index.db not double escaped');