summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorBarry Warsaw2016-03-24 21:56:56 -0400
committerBarry Warsaw2016-03-24 21:56:56 -0400
commit49d630f2761175e404f3b1d811e61bc43eb6b25b (patch)
tree123f51dc198b29a0c27451b3730c76521c4c4463 /src
parente1876e6f699ab4b212d689786297f6f1e70c1551 (diff)
downloadmailman-49d630f2761175e404f3b1d811e61bc43eb6b25b.tar.gz
mailman-49d630f2761175e404f3b1d811e61bc43eb6b25b.tar.zst
mailman-49d630f2761175e404f3b1d811e61bc43eb6b25b.zip
Diffstat (limited to 'src')
-rw-r--r--src/mailman/email/message.py17
-rw-r--r--src/mailman/email/tests/test_message.py13
-rw-r--r--src/mailman/email/validate.py8
3 files changed, 9 insertions, 29 deletions
diff --git a/src/mailman/email/message.py b/src/mailman/email/message.py
index 6a505a26e..994d44cce 100644
--- a/src/mailman/email/message.py
+++ b/src/mailman/email/message.py
@@ -23,27 +23,20 @@ safe pickle deserialization, even if the email package adds additional Message
attributes.
"""
-__all__ = [
- 'Message',
- 'MultipartDigestMessage',
- 'OwnerNotification',
- 'UserNotification',
- ]
-
-
import email
import email.message
import email.utils
from email.header import Header
from email.mime.multipart import MIMEMultipart
+from mailman import public
from mailman.config import config
COMMASPACE = ', '
-
+@public
class Message(email.message.Message):
# BAW: For debugging w/ bin/dumpdb. Apparently pprint uses repr.
def __repr__(self):
@@ -113,12 +106,12 @@ class Message(email.message.Message):
return clean_senders
-
+@public
class MultipartDigestMessage(MIMEMultipart, Message):
"""Mix-in class for MIME digest messages."""
-
+@public
class UserNotification(Message):
"""Class for internally crafted messages."""
@@ -182,7 +175,7 @@ class UserNotification(Message):
virginq.enqueue(self, **enqueue_kws)
-
+@public
class OwnerNotification(UserNotification):
"""Like user notifications, but this message goes to some owners."""
diff --git a/src/mailman/email/tests/test_message.py b/src/mailman/email/tests/test_message.py
index 829c1a90d..3ec099904 100644
--- a/src/mailman/email/tests/test_message.py
+++ b/src/mailman/email/tests/test_message.py
@@ -17,12 +17,6 @@
"""Test the message API."""
-__all__ = [
- 'TestMessage',
- 'TestMessageSubclass',
- ]
-
-
import unittest
from email.parser import FeedParser
@@ -32,7 +26,6 @@ from mailman.testing.helpers import get_queue_messages
from mailman.testing.layers import ConfigLayer
-
class TestMessage(unittest.TestCase):
"""Test the message API."""
@@ -53,13 +46,11 @@ class TestMessage(unittest.TestCase):
self.assertEqual(self._msg['precedence'], None)
self._msg['Precedence'] = 'omg wtf bbq'
self._msg.send(self._mlist)
- messages = get_queue_messages('virgin')
- self.assertEqual(len(messages), 1)
- self.assertEqual(messages[0].msg.get_all('precedence'),
+ items = get_queue_messages('virgin', expected_count=1)
+ self.assertEqual(items[0].msg.get_all('precedence'),
['omg wtf bbq'])
-
class TestMessageSubclass(unittest.TestCase):
def test_i18n_filenames(self):
parser = FeedParser(_factory=Message)
diff --git a/src/mailman/email/validate.py b/src/mailman/email/validate.py
index 517adc8e1..5643d6057 100644
--- a/src/mailman/email/validate.py
+++ b/src/mailman/email/validate.py
@@ -17,13 +17,9 @@
"""Email address validation."""
-__all__ = [
- 'Validator',
- ]
-
-
import re
+from mailman import public
from mailman.interfaces.address import (
IEmailValidator, InvalidEmailAddressError)
from mailman.utilities.email import split_email
@@ -34,7 +30,7 @@ from zope.interface import implementer
_badchars = re.compile(r'[][()<>|;^,\000-\037\177-\377]')
-
+@public
@implementer(IEmailValidator)
class Validator:
"""An email address validator."""