summaryrefslogtreecommitdiff
path: root/tests/test_handlers.py
diff options
context:
space:
mode:
authorbwarsaw2001-10-20 21:00:25 +0000
committerbwarsaw2001-10-20 21:00:25 +0000
commit7dbe061ebe94c10e123811041ebbb303c43aa58c (patch)
tree6c984be453989629a9e800c51e916d692d7c34b8 /tests/test_handlers.py
parent20ef78e10ae2cb1397759566dbea2b4b43a931a5 (diff)
downloadmailman-7dbe061ebe94c10e123811041ebbb303c43aa58c.tar.gz
mailman-7dbe061ebe94c10e123811041ebbb303c43aa58c.tar.zst
mailman-7dbe061ebe94c10e123811041ebbb303c43aa58c.zip
Diffstat (limited to 'tests/test_handlers.py')
-rw-r--r--tests/test_handlers.py161
1 files changed, 53 insertions, 108 deletions
diff --git a/tests/test_handlers.py b/tests/test_handlers.py
index d76387f2e..139a56625 100644
--- a/tests/test_handlers.py
+++ b/tests/test_handlers.py
@@ -641,43 +641,49 @@ Subject: Re: [XTEST] About Mailman...
def test_reply_to_list(self):
eq = self.assertEqual
- self._mlist.reply_goes_to_list = 1
+ mlist = self._mlist
+ mlist.reply_goes_to_list = 1
msg = email.message_from_string("""\
From: aperson@dom.ain
""", Message.Message)
- CookHeaders.process(self._mlist, msg, {})
+ CookHeaders.process(mlist, msg, {})
eq(msg['reply-to'], '_xtest@dom.ain')
- eq(msg['x-reply-to'], None)
+ eq(msg.get_all('reply-to'), ['_xtest@dom.ain'])
- def test_reply_to_list_with_xreplyto(self):
+ def test_reply_to_list_with_strip(self):
eq = self.assertEqual
- self._mlist.reply_goes_to_list = 1
+ mlist = self._mlist
+ mlist.reply_goes_to_list = 1
+ mlist.first_strip_reply_to = 1
msg = email.message_from_string("""\
From: aperson@dom.ain
Reply-To: bperson@dom.ain
""", Message.Message)
- CookHeaders.process(self._mlist, msg, {})
+ CookHeaders.process(mlist, msg, {})
eq(msg['reply-to'], '_xtest@dom.ain')
- eq(msg['x-reply-to'], 'bperson@dom.ain')
+ eq(msg.get_all('reply-to'), ['_xtest@dom.ain'])
def test_reply_to_explicit(self):
eq = self.assertEqual
- self._mlist.reply_goes_to_list = 2
- self._mlist.reply_to_address = 'mlist@dom.ain'
+ mlist = self._mlist
+ mlist.reply_goes_to_list = 2
+ mlist.reply_to_address = 'mlist@dom.ain'
msg = email.message_from_string("""\
From: aperson@dom.ain
""", Message.Message)
- CookHeaders.process(self._mlist, msg, {})
+ CookHeaders.process(mlist, msg, {})
eq(msg['reply-to'], 'mlist@dom.ain')
- eq(msg['x-reply-to'], None)
+ eq(msg.get_all('reply-to'), ['mlist@dom.ain'])
- def test_reply_to_list_with_xreplyto2(self):
+ def test_reply_to_explicit_with_strip(self):
eq = self.assertEqual
- self._mlist.reply_goes_to_list = 2
- self._mlist.reply_to_address = 'mlist@dom.ain'
+ mlist = self._mlist
+ mlist.reply_goes_to_list = 2
+ mlist.first_strip_reply_to = 1
+ mlist.reply_to_address = 'mlist@dom.ain'
msg = email.message_from_string("""\
From: aperson@dom.ain
Reply-To: bperson@dom.ain
@@ -685,21 +691,49 @@ Reply-To: bperson@dom.ain
""", Message.Message)
CookHeaders.process(self._mlist, msg, {})
eq(msg['reply-to'], 'mlist@dom.ain')
- eq(msg['x-reply-to'], 'bperson@dom.ain')
+ eq(msg.get_all('reply-to'), ['mlist@dom.ain'])
def test_reply_to_explicit_with_bad_address(self):
eq = self.assertEqual
- self._mlist.reply_goes_to_list = 2
+ mlist = self._mlist
+ mlist.reply_goes_to_list = 2
+ mlist.first_strip_reply_to = 0
# A bad address that is missing the domain part
- self._mlist.reply_to_address = 'mlist'
+ mlist.reply_to_address = 'mlist'
msg = email.message_from_string("""\
From: aperson@dom.ain
Reply-To: bperson@dom.ain
""", Message.Message)
- CookHeaders.process(self._mlist, msg, {})
+ CookHeaders.process(mlist, msg, {})
eq(msg['reply-to'], 'bperson@dom.ain')
- eq(msg['x-reply-to'], None)
+
+ def test_reply_to_extends_to_list(self):
+ eq = self.assertEqual
+ mlist = self._mlist
+ mlist.reply_goes_to_list = 1
+ mlist.first_strip_reply_to = 0
+ msg = email.message_from_string("""\
+From: aperson@dom.ain
+Reply-To: bperson@dom.ain
+
+""", Message.Message)
+ CookHeaders.process(mlist, msg, {})
+ eq(msg['reply-to'], '_xtest@dom.ain, bperson@dom.ain')
+
+ def test_reply_to_extends_to_explicit(self):
+ eq = self.assertEqual
+ mlist = self._mlist
+ mlist.reply_goes_to_list = 2
+ mlist.first_strip_reply_to = 0
+ mlist.reply_to_address = 'mlist@dom.ain'
+ msg = email.message_from_string("""\
+From: aperson@dom.ain
+Reply-To: bperson@dom.ain
+
+""", Message.Message)
+ CookHeaders.process(mlist, msg, {})
+ eq(msg['reply-to'], 'mlist@dom.ain, bperson@dom.ain')
def test_list_headers_nolist(self):
eq = self.assertEqual
@@ -1130,95 +1164,6 @@ Subject: unsubscribe
self.assertRaises(Hold.Administrivia, Hold.process,
self._mlist, msg, {})
- def test_forbidden_posters(self):
- self._mlist.forbidden_posters = ['aperson@dom.ain']
- msg = email.message_from_string("""\
-From: aperson@dom.ain
-Subject: The forbidden donut
-
-""", Message.Message)
- self.assertRaises(Hold.ForbiddenPoster, Hold.process,
- self._mlist, msg, {})
-
- def test_moderated_no_posters(self):
- self._mlist.moderated = 1
- msg = email.message_from_string("""\
-From: aperson@dom.ain
-Subject: An unapproved message
-
-""", Message.Message)
- self.assertRaises(Hold.ModeratedPost, Hold.process,
- self._mlist, msg, {})
-
- def test_moderated_posters(self):
- self._mlist.moderated = 1
- self._mlist.posters = ['aperson@dom.ain']
- msg = email.message_from_string("""\
-From: aperson@dom.ain
-To: _xtest@dom.ain
-Subject: An unapproved message
-
-""", Message.Message)
- rtn = Hold.process(self._mlist, msg, {})
- self.assertEqual(rtn, None)
-
- def test_member_posting_only(self):
- self._mlist.member_posting_only = 1
- msg = email.message_from_string("""\
-From: bperson@dom.ain
-To: _xtest@dom.ain
-Subject: An unapproved message
-
-""", Message.Message)
- self.assertRaises(Hold.NonMemberPost, Hold.process,
- self._mlist, msg, {})
-
- def test_member_posting_only_ok_member(self):
- self._mlist.addNewMember('aperson@dom.ain')
- self._mlist.member_posting_only = 1
- msg = email.message_from_string("""\
-From: aperson@dom.ain
-To: _xtest@dom.ain
-Subject: An unapproved message
-
-""", Message.Message)
- rtn = Hold.process(self._mlist, msg, {})
- self.assertEqual(rtn, None)
-
- def test_member_posting_only_ok_poster(self):
- self._mlist.member_posting_only = 1
- self._mlist.posters = ['aperson@dom.ain']
- msg = email.message_from_string("""\
-From: aperson@dom.ain
-To: _xtest@dom.ain
-Subject: An unapproved message
-
-""", Message.Message)
- rtn = Hold.process(self._mlist, msg, {})
- self.assertEqual(rtn, None)
-
- def test_posters_ok(self):
- self._mlist.posters = ['aperson@dom.ain']
- msg = email.message_from_string("""\
-From: aperson@dom.ain
-To: _xtest@dom.ain
-Subject: An unapproved message
-
-""", Message.Message)
- rtn = Hold.process(self._mlist, msg, {})
- self.assertEqual(rtn, None)
-
- def test_posters(self):
- self._mlist.posters = ['bperson@dom.ain']
- msg = email.message_from_string("""\
-From: aperson@dom.ain
-To: _xtest@dom.ain
-Subject: An unapproved message
-
-""", Message.Message)
- self.assertRaises(Hold.NotExplicitlyAllowed, Hold.process,
- self._mlist, msg, {})
-
def test_max_recips(self):
self._mlist.max_num_recipients = 5
msg = email.message_from_string("""\