diff options
author | Eric Wong <e@80x24.org> | 2021-04-03 10:48:26 +0000 |
---|---|---|
committer | Eric Wong <e@80x24.org> | 2021-04-03 18:38:47 +0000 |
commit | b3e2975029ae938bb232aaa0cbc3dabda55d57d6 (patch) | |
tree | be5e7278753fa9314fded8c64c13d0d1c67e2990 /t | |
parent | e8ad075ab7d02b260fdf8470e6d851ade4eac6fa (diff) | |
download | public-inbox-b3e2975029ae938bb232aaa0cbc3dabda55d57d6.tar.gz |
We need a stable fallback time for digest2mid in the presence of messages without Received/Date headers. Furthermore, we must avoid using uninitialized smsg->{mid} when parsing References for draft replies.
Diffstat (limited to 't')
-rw-r--r-- | t/lei-import.t | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/t/lei-import.t b/t/lei-import.t index 99289748..9bb4e1fa 100644 --- a/t/lei-import.t +++ b/t/lei-import.t @@ -79,6 +79,27 @@ is($res->[1], undef, 'only one result'); is($res->[0]->{'m'}, 'k@y', 'got expected message'); is_deeply($res->[0]->{kw}, ['seen'], "`seen' keywords set"); +# no From, Sender, or Message-ID +$eml_str = <<'EOM'; +Subject: draft message with no sender +References: <y@y> + +No use for a name +EOM +lei_ok([qw(import -F eml -)], undef, { %$lei_opt, 0 => \$eml_str }); +lei_ok(['q', 's:draft message with no sender']); +my $draft_a = json_utf8->decode($lei_out); +ok(!exists $draft_a->[0]->{'m'}, 'no fake mid stored or exposed'); +lei_ok([qw(tag -F eml - +kw:draft)], undef, { %$lei_opt, 0 => \$eml_str }); +lei_ok(['q', 's:draft message with no sender']); +my $draft_b = json_utf8->decode($lei_out); +my $kw = delete $draft_b->[0]->{kw}; +is_deeply($kw, ['draft'], 'draft kw set'); +is_deeply($draft_a, $draft_b, 'fake Message-ID lookup') or + diag explain($draft_a, $draft_b); +lei_ok('blob', '--mail', $draft_b->[0]->{blob}); +is($lei_out, $eml_str, 'draft retrieved by blob'); + # see t/lei_to_mail.t for "import -F mbox*" }); done_testing; |