From 6940f5c8a8436a7a5c846d2079b9d8588872459f Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Fri, 14 Feb 2020 07:05:22 +0000 Subject: t/msg_iter: test for X-UNKNOWN charset from Alpine A long overdue test for behavior established in 2016. Fixes: 1b28cc7f00a866cb ("view: try assuming UTF-8 for bogus charsets") --- t/msg_iter.t | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 't/msg_iter.t') diff --git a/t/msg_iter.t b/t/msg_iter.t index de9c39fa..e33bfc69 100644 --- a/t/msg_iter.t +++ b/t/msg_iter.t @@ -4,6 +4,7 @@ use strict; use warnings; use Test::More; use Email::MIME; +use PublicInbox::Hval qw(ascii_html); use_ok('PublicInbox::MsgIter'); { @@ -58,5 +59,24 @@ use_ok('PublicInbox::MsgIter'); is(index($raw, '$$$'), -1, 'no unescaped $$$'); } +{ + my $f = 't/x-unknown-alpine.eml'; + my $mime = Email::MIME->new(do { + open my $fh, '<', $f or die "open($f): $!"; + local $/; + binmode $fh; + <$fh>; + }); + my $raw = ''; + msg_iter($mime, sub { + my ($part, $level, @ex) = @{$_[0]}; + my ($s, $err) = msg_part_text($part, 'text/plain'); + $raw .= $s; + }); + like($raw, qr!^\thttps://!ms, 'tab expanded with X-UNKNOWN'); + like(ascii_html($raw), qr/• bullet point/s, + 'got bullet point when X-UNKNOWN assumes UTF-8'); +} + done_testing(); 1; -- cgit v1.2.3-24-ge0c7