diff options
| -rw-r--r-- | addons/mail/wizard/mail_compose_message.py | 2 | ||||
| -rw-r--r-- | addons/test_mass_mailing/tests/test_mailing.py | 9 |
2 files changed, 9 insertions, 2 deletions
diff --git a/addons/mail/wizard/mail_compose_message.py b/addons/mail/wizard/mail_compose_message.py index 517a797fc80..3384b32f94e 100644 --- a/addons/mail/wizard/mail_compose_message.py +++ b/addons/mail/wizard/mail_compose_message.py @@ -282,7 +282,7 @@ class MailComposer(models.TransientModel): blacklisted_rec_ids = set() if mass_mail_mode and issubclass(type(self.env[self.model]), self.pool['mail.thread.blacklist']): self.env['mail.blacklist'].flush(['email']) - self._cr.execute("SELECT email FROM mail_blacklist") + self._cr.execute("SELECT email FROM mail_blacklist WHERE active=true") blacklist = {x[0] for x in self._cr.fetchall()} if blacklist: targets = self.env[self.model].browse(res_ids).read(['email_normalized']) diff --git a/addons/test_mass_mailing/tests/test_mailing.py b/addons/test_mass_mailing/tests/test_mailing.py index c5a90927df5..4f6fa34f8ee 100644 --- a/addons/test_mass_mailing/tests/test_mailing.py +++ b/addons/test_mass_mailing/tests/test_mailing.py @@ -225,10 +225,17 @@ class TestMassMailing(TestMassMailCommon): mailing = self.env['mailing.mailing'].browse(self.mailing_bl.ids) recipients = self._create_mailing_test_records(count=5) - # blacklist records 3 and 4 + # blacklist records 2, 3, 4 + self.env['mail.blacklist'].create({'email': recipients[2].email_normalized}) self.env['mail.blacklist'].create({'email': recipients[3].email_normalized}) self.env['mail.blacklist'].create({'email': recipients[4].email_normalized}) + # unblacklist record 2 + self.env['mail.blacklist'].action_remove_with_reason( + recipients[2].email_normalized, "human error" + ) + self.env['mail.blacklist'].flush(['active']) + mailing.write({'mailing_domain': [('id', 'in', recipients.ids)]}) mailing.action_put_in_queue() with self.mock_mail_gateway(mail_unlink_sent=False): |
