diff options
| author | Barry Warsaw | 2015-03-24 22:39:51 -0400 |
|---|---|---|
| committer | Barry Warsaw | 2015-03-24 22:39:51 -0400 |
| commit | 3f0b367751acf7ab5201c3961f2b75c2acb730dc (patch) | |
| tree | 45a8a228f3fce65d67a0083791ae343cb4608b09 /src/mailman/rest/tests/test_lists.py | |
| parent | 18b7980823d2f9d5b7b0f50596cc05e8efb845e8 (diff) | |
| download | mailman-3f0b367751acf7ab5201c3961f2b75c2acb730dc.tar.gz mailman-3f0b367751acf7ab5201c3961f2b75c2acb730dc.tar.zst mailman-3f0b367751acf7ab5201c3961f2b75c2acb730dc.zip | |
Diffstat (limited to 'src/mailman/rest/tests/test_lists.py')
| -rw-r--r-- | src/mailman/rest/tests/test_lists.py | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/mailman/rest/tests/test_lists.py b/src/mailman/rest/tests/test_lists.py index a365db969..8e89f423c 100644 --- a/src/mailman/rest/tests/test_lists.py +++ b/src/mailman/rest/tests/test_lists.py @@ -28,8 +28,12 @@ __all__ = [ import unittest from mailman.app.lifecycle import create_list +from mailman.config import config from mailman.database.transaction import transaction +from mailman.interfaces.listmanager import IListManager +from mailman.interfaces.mailinglist import IAcceptableAliasSet from mailman.interfaces.usermanager import IUserManager +from mailman.model.mailinglist import AcceptableAlias from mailman.testing.helpers import call_api from mailman.testing.layers import RESTLayer from urllib.error import HTTPError @@ -176,6 +180,18 @@ class TestLists(unittest.TestCase): self.assertEqual(member['email'], 'bart@example.com') self.assertEqual(member['role'], 'member') + def test_delete_list_with_acceptable_aliases(self): + # LP: #1432239 - deleting a mailing list with acceptable aliases + # causes a SQLAlchemy error. The aliases must be deleted first. + with transaction(): + alias_set = IAcceptableAliasSet(self._mlist) + alias_set.add('bee@example.com') + call_api('http://localhost:9001/3.0/lists/test.example.com', + method='DELETE') + # Neither the mailing list, nor the aliases are present. + self.assertIsNone(getUtility(IListManager).get('test@example.com')) + self.assertEqual(config.db.store.query(AcceptableAlias).count(), 0) + class TestListArchivers(unittest.TestCase): |
