summaryrefslogtreecommitdiff
path: root/src/mailman/utilities/tests
diff options
context:
space:
mode:
authorAurélien Bompard2015-03-16 11:22:04 +0100
committerAurélien Bompard2015-03-16 11:22:04 +0100
commita75be4230498933792e6ed02504ab4ab3e600f90 (patch)
treed51697f2d0009d8d159bcebce868e7864753b6fc /src/mailman/utilities/tests
parent6280c5ffcd2fdebf80f170f7c9a4e47adf0c6c4a (diff)
parent16ab6ac0cc2653f6123ba0781cd3270b4eedc776 (diff)
downloadmailman-a75be4230498933792e6ed02504ab4ab3e600f90.tar.gz
mailman-a75be4230498933792e6ed02504ab4ab3e600f90.tar.zst
mailman-a75be4230498933792e6ed02504ab4ab3e600f90.zip
Diffstat (limited to 'src/mailman/utilities/tests')
-rw-r--r--src/mailman/utilities/tests/test_import.py35
1 files changed, 35 insertions, 0 deletions
diff --git a/src/mailman/utilities/tests/test_import.py b/src/mailman/utilities/tests/test_import.py
index b0ab9938d..83ad06108 100644
--- a/src/mailman/utilities/tests/test_import.py
+++ b/src/mailman/utilities/tests/test_import.py
@@ -38,6 +38,7 @@ from mailman.app.lifecycle import create_list
from mailman.config import config
from mailman.handlers.decorate import decorate
from mailman.interfaces.action import Action, FilterAction
+from mailman.interfaces.address import InvalidEmailAddressError
from mailman.interfaces.archiver import ArchivePolicy
from mailman.interfaces.autorespond import ResponseAction
from mailman.interfaces.bans import IBanManager
@@ -747,6 +748,40 @@ class TestRosterImport(unittest.TestCase):
anne = self._usermanager.get_user('anne@example.com')
self.assertTrue(anne.controls('anne@example.com'))
+ def test_invalid_original_email(self):
+ self._pckdict["members"]["anne@example.com"] = b'invalid email address'
+ try:
+ import_config_pck(self._mlist, self._pckdict)
+ except InvalidEmailAddressError as e:
+ self.fail(e)
+ self.assertIn('anne@example.com',
+ [a.email for a in self._mlist.members.addresses])
+ anne = self._usermanager.get_address('anne@example.com')
+ self.assertEqual(anne.original_email, 'anne@example.com')
+
+ def test_invalid_email(self):
+ self._pckdict["members"] = {
+ 'anne@example.com': 0,
+ 'invalid email address': b'invalid email address'
+ }
+ self._pckdict["digest_members"] = {}
+ try:
+ import_config_pck(self._mlist, self._pckdict)
+ except InvalidEmailAddressError as e:
+ self.fail(e)
+ self.assertEqual(['anne@example.com'],
+ [a.email for a in self._mlist.members.addresses])
+
+ def test_no_email_sent(self):
+ self._pckdict
+ import_config_pck(self._mlist, self._pckdict)
+ self.assertIn("anne@example.com",
+ [a.email for a in self._mlist.members.addresses])
+ # no email in any queue
+ for qname, sb in config.switchboards.items():
+ self.assertEqual(len(sb.files), 0,
+ "Queue '{}' has {} emails".format(qname, len(sb.files)))
+ self.assertTrue(self._mlist.send_welcome_message)