]> Sergey Matveev's repositories - public-inbox.git/blobdiff - t/content_id.t
treewide: run update-copyrights from gnulib for 2019
[public-inbox.git] / t / content_id.t
index c0ae6ecde27a47bd440ebd5c93a456182365400e..3fe44b95c6fd9bc1b4b28a1616138de580e279f9 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (C) 2018 all contributors <meta@public-inbox.org>
+# Copyright (C) 2018-2020 all contributors <meta@public-inbox.org>
 # License: AGPL-3.0+ <https://www.gnu.org/licenses/agpl-3.0.txt>
 use strict;
 use warnings;
@@ -18,7 +18,18 @@ my $mime = Email::MIME->create(
        body => "hello world\n",
 );
 
-my $res = content_id($mime);
-like($res, qr/\ASHA-256:[a-f0-9]{64}\z/, 'cid in format expected');
+my $orig = content_id($mime);
+my $reload = content_id(Email::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" <foo@EXAMPLE.com>);
+       $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 <foo@example.com>');
+       my $nq = content_id($mime);
+       is($nq, $q, "quotes ignored in $h:");
+}
 
 done_testing();