summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBarry Warsaw2016-01-14 17:27:11 -0500
committerBarry Warsaw2016-01-14 17:27:11 -0500
commit29ad7d4a658081a442c6cb120943f7014d36dade (patch)
treeac9c699fa3e925d51de39e66180485fe33f59404
parent08d8cae4f79bdf0a0773efdd2f795411f280cd1e (diff)
downloadmailman-29ad7d4a658081a442c6cb120943f7014d36dade.tar.gz
mailman-29ad7d4a658081a442c6cb120943f7014d36dade.tar.zst
mailman-29ad7d4a658081a442c6cb120943f7014d36dade.zip
-rw-r--r--src/mailman/interfaces/bans.py2
-rw-r--r--src/mailman/model/tests/test_bans.py16
2 files changed, 13 insertions, 5 deletions
diff --git a/src/mailman/interfaces/bans.py b/src/mailman/interfaces/bans.py
index 3682be5f0..eabfa7247 100644
--- a/src/mailman/interfaces/bans.py
+++ b/src/mailman/interfaces/bans.py
@@ -102,5 +102,5 @@ class IBanManager(Interface):
"""Iterate over all banned addresses.
:return: The list of all banned addresses.
- :rtype: list of `str`
+ :rtype: list of `IBan`
"""
diff --git a/src/mailman/model/tests/test_bans.py b/src/mailman/model/tests/test_bans.py
index a7ff8ed4f..636ee7e35 100644
--- a/src/mailman/model/tests/test_bans.py
+++ b/src/mailman/model/tests/test_bans.py
@@ -1,4 +1,4 @@
-# Copyright (C) 2013-2016 by the Free Software Foundation, Inc.
+# Copyright (C) 2016 by the Free Software Foundation, Inc.
#
# This file is part of GNU Mailman.
#
@@ -40,7 +40,15 @@ class TestMailingListBans(unittest.TestCase):
self._manager = IBanManager(self._mlist)
def test_delete_list(self):
- # All list bans must be deleted when the list is deleted
- self._manager.ban("anne@example.com")
+ # All list bans must be deleted when the list is deleted.
+ self._manager.ban('anne@example.com')
getUtility(IListManager).delete(self._mlist)
- self.assertEqual(len(list(self._manager)), 0)
+ self.assertEqual(list(self._manager), [])
+
+ def test_delete_list_does_not_delete_global_bans(self):
+ # Global bans are not deleted when the list is deleted.
+ global_ban_manager = IBanManager(None)
+ global_ban_manager.ban('bart@example.com')
+ getUtility(IListManager).delete(self._mlist)
+ self.assertEqual([ban.email for ban in global_ban_manager],
+ ['bart@example.com'])