summaryrefslogtreecommitdiff
path: root/src/mailman/model/tests/test_listmanager.py
diff options
context:
space:
mode:
authorBarry Warsaw2015-01-04 20:20:33 -0500
committerBarry Warsaw2015-01-04 20:20:33 -0500
commit4a612db8e89afed74173b93f3b64fa567b8417a3 (patch)
tree81a687d113079a25f93279f35c7eee2aa2572510 /src/mailman/model/tests/test_listmanager.py
parent84af79988a4e916604cba31843778206efb7d1b8 (diff)
parentde181c1a40965a3a7deedd56a034a946f45b6984 (diff)
downloadmailman-4a612db8e89afed74173b93f3b64fa567b8417a3.tar.gz
mailman-4a612db8e89afed74173b93f3b64fa567b8417a3.tar.zst
mailman-4a612db8e89afed74173b93f3b64fa567b8417a3.zip
Diffstat (limited to 'src/mailman/model/tests/test_listmanager.py')
-rw-r--r--src/mailman/model/tests/test_listmanager.py31
1 files changed, 20 insertions, 11 deletions
diff --git a/src/mailman/model/tests/test_listmanager.py b/src/mailman/model/tests/test_listmanager.py
index b290138f3..a28698eb1 100644
--- a/src/mailman/model/tests/test_listmanager.py
+++ b/src/mailman/model/tests/test_listmanager.py
@@ -17,9 +17,6 @@
"""Test the ListManager."""
-from __future__ import absolute_import, print_function, unicode_literals
-
-__metaclass__ = type
__all__ = [
'TestListCreation',
'TestListLifecycleEvents',
@@ -29,14 +26,13 @@ __all__ = [
import unittest
-from zope.component import getUtility
-
from mailman.app.lifecycle import create_list
from mailman.app.moderator import hold_message
from mailman.config import config
+from mailman.interfaces.address import InvalidEmailAddressError
from mailman.interfaces.listmanager import (
- IListManager, ListCreatedEvent, ListCreatingEvent, ListDeletedEvent,
- ListDeletingEvent)
+ IListManager, ListAlreadyExistsError, ListCreatedEvent, ListCreatingEvent,
+ ListDeletedEvent, ListDeletingEvent)
from mailman.interfaces.messages import IMessageStore
from mailman.interfaces.requests import IListRequests
from mailman.interfaces.subscriptions import ISubscriptionService
@@ -45,6 +41,7 @@ from mailman.model.mime import ContentFilter
from mailman.testing.helpers import (
event_subscribers, specialized_message_from_string)
from mailman.testing.layers import ConfigLayer
+from zope.component import getUtility
@@ -157,11 +154,23 @@ Message-ID: <argon>
class TestListCreation(unittest.TestCase):
layer = ConfigLayer
+ def setUp(self):
+ self._manager = getUtility(IListManager)
+
def test_create_list_case_folding(self):
# LP: #1117176 describes a problem where list names created in upper
# case are not actually usable by the LMTP server.
- manager = getUtility(IListManager)
- manager.create('my-LIST@example.com')
- self.assertIsNone(manager.get('my-LIST@example.com'))
- mlist = manager.get('my-list@example.com')
+ self._manager.create('my-LIST@example.com')
+ self.assertIsNone(self._manager.get('my-LIST@example.com'))
+ mlist = self._manager.get('my-list@example.com')
self.assertEqual(mlist.list_id, 'my-list.example.com')
+
+ def test_cannot_create_a_list_twice(self):
+ self._manager.create('ant@example.com')
+ self.assertRaises(ListAlreadyExistsError,
+ self._manager.create, 'ant@example.com')
+
+ def test_list_name_must_be_fully_qualified(self):
+ with self.assertRaises(InvalidEmailAddressError) as cm:
+ self._manager.create('foo')
+ self.assertEqual(cm.exception.email, 'foo')