about summary refs log tree commit homepage
diff options
context:
space:
mode:
authorEric Wong <e@yhbt.net>2020-05-26 09:05:23 +0000
committerEric Wong <e@yhbt.net>2020-05-27 22:31:26 +0000
commite97f478cd6ace58cbbe6287106f45f7809f5e8b1 (patch)
treeb01a4cb816f4eda5f2d25580a1386bea2bf32145
parent6fb0ce0b872baa1d2d7cb7e37e6282b2cd58feb6 (diff)
downloadpublic-inbox-e97f478cd6ace58cbbe6287106f45f7809f5e8b1.tar.gz
There is obviously a typo here, so fix it and add a test
case to guard against future regressions.

Fixes: 74a3206babe0572a ("mda: support multiple List-ID matches")
-rw-r--r--script/public-inbox-learn2
-rw-r--r--t/mda.t10
2 files changed, 10 insertions, 2 deletions
diff --git a/script/public-inbox-learn b/script/public-inbox-learn
index a33d813a..0cb2c8e9 100644
--- a/script/public-inbox-learn
+++ b/script/public-inbox-learn
@@ -97,7 +97,7 @@ if ($train eq 'spam') {
         }
         my $dests = PublicInbox::MDA->inboxes_for_list_id($pi_config, $mime);
         for my $ibx (@$dests) {
-                next if !$seen{"$ibx"}++;
+                next if $seen{"$ibx"}++;
                 remove_or_add($ibx, $train, $mime, $ibx->{-primary_address});
         }
 }
diff --git a/t/mda.t b/t/mda.t
index 759c0b02..c7caf3e0 100644
--- a/t/mda.t
+++ b/t/mda.t
@@ -299,9 +299,17 @@ EOF
         ok(run_script(['-mda'], undef, $rdr),
                 'mda OK with multiple List-Id matches');
         $cur = $git->qx(qw(diff HEAD~1..HEAD));
-        like($cur, qr/Message-ID: <2lids\@example>/,
+        like($cur, qr/^\+Message-ID: <2lids\@example>/sm,
                 'multi List-ID match delivered');
         like($err, qr/multiple List-ID/, 'warned about multiple List-ID');
+
+        # ensure -learn rm works after inbox address is updated
+        ($out, $err) = ('', '');
+        xsys(qw(git config --file), $pi_config, "$cfgpfx.address",
+                'updated-address@example.com');
+        ok(run_script(['-learn', 'rm'], undef, $rdr), 'rm-ed via -learn');
+        $cur = $git->qx(qw(diff HEAD~1..HEAD));
+        like($cur, qr/^-Message-ID: <2lids\@example>/sm, 'changed in git');
 }
 
 done_testing();