diff options
| author | Barry Warsaw | 2016-04-01 15:14:51 -0400 |
|---|---|---|
| committer | Barry Warsaw | 2016-04-01 15:14:51 -0400 |
| commit | f7e9e4698bdd4cee39c9eb485296cbbfa32369a9 (patch) | |
| tree | 6dc8557009cbddb4e416faecc329b38b1cc0ad0b /src/mailman/rules/tests/test_moderation.py | |
| parent | afdd3b6deb32cd8cfdad291aba173a63064514f8 (diff) | |
| download | mailman-f7e9e4698bdd4cee39c9eb485296cbbfa32369a9.tar.gz mailman-f7e9e4698bdd4cee39c9eb485296cbbfa32369a9.tar.zst mailman-f7e9e4698bdd4cee39c9eb485296cbbfa32369a9.zip | |
Diffstat (limited to 'src/mailman/rules/tests/test_moderation.py')
| -rw-r--r-- | src/mailman/rules/tests/test_moderation.py | 26 |
1 files changed, 16 insertions, 10 deletions
diff --git a/src/mailman/rules/tests/test_moderation.py b/src/mailman/rules/tests/test_moderation.py index 3e80aeeb5..05bae5e1b 100644 --- a/src/mailman/rules/tests/test_moderation.py +++ b/src/mailman/rules/tests/test_moderation.py @@ -160,15 +160,19 @@ MIME-Version: 1.0 A message body. """) - # First, the message should get held + # First, the message should get held. msgdata = {} result = rule.check(self._mlist, msg, msgdata) self.assertTrue(result) - self.assertEqual(msgdata.get('moderation_action'), 'hold') - # Then the list's default nonmember action is changed + self.assertEqual(msgdata['moderation_action'], 'hold') + # As a side-effect, Anne has been added as a nonmember with a + # moderation action that falls back to the list's default. + anne = self._mlist.nonmembers.get_member('anne@example.com') + self.assertIsNone(anne.moderation_action) + # Then the list's default nonmember action is changed. self._mlist.default_nonmember_action = Action.discard - msg.replace_header('Message-ID', '<ant2>') - # This time, the message should be discarded + msg.replace_header('Message-ID', '<bee>') + # This time, the message should be discarded. result = rule.check(self._mlist, msg, msgdata) self.assertTrue(result) self.assertEqual(msgdata.get('moderation_action'), 'discard') @@ -178,7 +182,9 @@ A message body. self._mlist.default_member_action = Action.accept user_manager = getUtility(IUserManager) anne = user_manager.create_address('anne@example.com') - self._mlist.subscribe(anne, MemberRole.member) + member = self._mlist.subscribe(anne, MemberRole.member) + # Anne's moderation rule falls back to the list default. + self.assertIsNone(member.moderation_action) rule = moderation.MemberModeration() msg = mfs("""\ From: anne@example.com @@ -189,15 +195,15 @@ MIME-Version: 1.0 A message body. """) - # First, the message should get held + # First, the message gets accepted. msgdata = {} result = rule.check(self._mlist, msg, msgdata) self.assertTrue(result) self.assertEqual(msgdata.get('moderation_action'), 'accept') - # Then the list's default nonmember action is changed + # Then the list's default member action is changed. self._mlist.default_member_action = Action.hold - msg.replace_header('Message-ID', '<ant2>') - # This time, the message should be discarded + msg.replace_header('Message-ID', '<bee>') + # This time, the message is held. result = rule.check(self._mlist, msg, msgdata) self.assertTrue(result) self.assertEqual(msgdata.get('moderation_action'), 'hold') |
