X-Git-Url: http://www.git.stargrave.org/?a=blobdiff_plain;f=t%2Fcontent_id.t;h=0325164df77de292075b2ec8c885e5642cf8a1b8;hb=e39585ee2bdcbeaab7b6bd33b3568021042d0879;hp=c0ae6ecde27a47bd440ebd5c93a456182365400e;hpb=ccafffd2888ae58be036b35e2323c2126fa633c9;p=public-inbox.git
diff --git a/t/content_id.t b/t/content_id.t
index c0ae6ecd..0325164d 100644
--- a/t/content_id.t
+++ b/t/content_id.t
@@ -1,24 +1,33 @@
-# Copyright (C) 2018 all contributors
+# Copyright (C) 2018-2020 all contributors
# License: AGPL-3.0+
use strict;
use warnings;
use Test::More;
use PublicInbox::ContentId qw(content_id);
-use Email::MIME;
+use PublicInbox::MIME;
-my $mime = Email::MIME->create(
- header => [
- From => 'a@example.com',
- To => 'b@example.com',
- 'Content-Type' => 'text/plain',
- Subject => 'this is a subject',
- 'Message-ID' => '',
- Date => 'Fri, 02 Oct 1993 00:00:00 +0000',
- ],
- body => "hello world\n",
-);
+my $mime = PublicInbox::MIME->new(<<'EOF');
+From: a@example.com
+To: b@example.com
+Subject: this is a subject
+Message-ID:
+Date: Fri, 02 Oct 1993 00:00:00 +0000
-my $res = content_id($mime);
-like($res, qr/\ASHA-256:[a-f0-9]{64}\z/, 'cid in format expected');
+hello world
+EOF
+
+my $orig = content_id($mime);
+my $reload = content_id(PublicInbox::MIME->new($mime->as_string));
+is($orig, $reload, 'content_id matches after serialization');
+
+foreach my $h (qw(From To Cc)) {
+ my $n = q("Quoted N'Ame" );
+ $mime->header_set($h, "$n");
+ my $q = content_id($mime);
+ is($mime->header($h), $n, "content_id does not mutate $h:");
+ $mime->header_set($h, 'Quoted N\'Ame ');
+ my $nq = content_id($mime);
+ is($nq, $q, "quotes ignored in $h:");
+}
done_testing();