summaryrefslogtreecommitdiff
path: root/src/mailman/chains
diff options
context:
space:
mode:
Diffstat (limited to 'src/mailman/chains')
-rw-r--r--src/mailman/chains/headers.py2
-rw-r--r--src/mailman/chains/tests/test_headers.py9
2 files changed, 6 insertions, 5 deletions
diff --git a/src/mailman/chains/headers.py b/src/mailman/chains/headers.py
index ea4652062..c98726e21 100644
--- a/src/mailman/chains/headers.py
+++ b/src/mailman/chains/headers.py
@@ -143,7 +143,7 @@ class HeaderMatchChain(Chain):
# Then return all the list-specific header matches.
# Python 3.3: Use 'yield from'
for entry in mlist.header_matches:
- yield make_link(*entry)
+ yield make_link(entry.header, entry.pattern, entry.chain)
# Then return all the explicitly added links.
for link in self._extended_links:
yield link
diff --git a/src/mailman/chains/tests/test_headers.py b/src/mailman/chains/tests/test_headers.py
index cca2e041f..c55d39876 100644
--- a/src/mailman/chains/tests/test_headers.py
+++ b/src/mailman/chains/tests/test_headers.py
@@ -28,6 +28,7 @@ from mailman.app.lifecycle import create_list
from mailman.chains.headers import HeaderMatchRule
from mailman.config import config
from mailman.email.message import Message
+from mailman.model.mailinglist import HeaderMatch
from mailman.interfaces.chain import LinkAction
from mailman.testing.layers import ConfigLayer
from mailman.testing.helpers import LogFileMark, configuration
@@ -124,7 +125,7 @@ class TestHeaderChain(unittest.TestCase):
# Test that the header-match chain has the header checks from the
# mailing-list configuration.
chain = config.chains['header-match']
- self._mlist.header_matches = [('Foo', 'a+')]
+ self._mlist.header_matches = [HeaderMatch(header='Foo', pattern='a+')]
links = [ link for link in chain.get_links(self._mlist, Message(), {})
if link.rule.name != 'any' ]
self.assertEqual(len(links), 1)
@@ -137,9 +138,9 @@ class TestHeaderChain(unittest.TestCase):
# properly.
chain = config.chains['header-match']
self._mlist.header_matches = [
- ('Foo', 'a+', 'reject'),
- ('Bar', 'b+', 'discard'),
- ('Baz', 'z+', 'accept'),
+ HeaderMatch(header='Foo', pattern='a+', chain='reject'),
+ HeaderMatch(header='Bar', pattern='b+', chain='discard'),
+ HeaderMatch(header='Baz', pattern='z+', chain='accept'),
]
links = [ link for link in chain.get_links(self._mlist, Message(), {})
if link.rule.name != 'any' ]