+# multipart collapsed to single quoted-printable text/plain
+{
+ my $parts = [
+ Email::MIME->create(
+ attributes => {
+ content_type => 'text/plain',
+ encoding => 'quoted-printable',
+ },
+ body => 'hi = bye',
+ )
+ ];
+ my $mime = Email::MIME->create(
+ header_str => [
+ From => 'qp@example.com',
+ Subject => 'QP',
+ 'Message-ID' => '<qp@example.com>',
+ ],
+ parts => $parts,
+ );
+
+ my $orig = $mime->body_raw;
+ my $html = msg_html($mime);
+ like($orig, qr/hi =3D bye=/, "our test used QP correctly");
+ like($html, qr/\bhi = bye\b/, "HTML output decoded QP");
+}
+
+{
+ use PublicInbox::MID qw/id_compress/;
+
+ # n.b: this is probably invalid since we dropped CGI for PSGI:
+ like(id_compress('foo%bar@wtf'), qr/\A[a-f0-9]{40}\z/,
+ "percent always converted to sha1 to workaround buggy httpds");
+
+ is(id_compress('foobar-wtf'), 'foobar-wtf',
+ 'regular ID not compressed');
+}
+
+{
+ my $cols = PublicInbox::View::COLS();
+ my @addr;
+ until (length(join(', ', @addr)) > ($cols * 2)) {
+ push @addr, '"l, f" <a@a>';
+ my $n = int(rand(20)) + 1;
+ push @addr, ('x'x$n).'@x';
+ }
+ my $orig = join(', ', @addr);
+ my $res = PublicInbox::View::fold_addresses($orig.'');
+ isnt($res, $orig, 'folded result');
+ unlike($res, qr/l,\n\tf/s, '"last, first" no broken');
+ my @nospc = ($res, $orig);
+ s/\s+//g for @nospc;
+ is($nospc[0], $nospc[1], 'no addresses lost in translation');
+ my $tws = PublicInbox::View::fold_addresses($orig.' ');
+ # (Email::Simple drops leading whitespace, but not trailing)
+ $tws =~ s/ \z//;
+ is($tws, $res, 'not thrown off by trailing whitespace');
+}
+