diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/mailman/app/membership.py | 2 | ||||
| -rw-r--r-- | src/mailman/rest/tests/test_membership.py | 9 |
2 files changed, 10 insertions, 1 deletions
diff --git a/src/mailman/app/membership.py b/src/mailman/app/membership.py index c50169a7c..0a3b4b352 100644 --- a/src/mailman/app/membership.py +++ b/src/mailman/app/membership.py @@ -98,7 +98,7 @@ def add_member(mlist, email, display_name, password, delivery_mode, language, else: # The user exists and is linked to the address. for address in user.addresses: - if address.email == email: + if address.email == email.lower(): break else: raise AssertionError( diff --git a/src/mailman/rest/tests/test_membership.py b/src/mailman/rest/tests/test_membership.py index e1bff833b..a23f49763 100644 --- a/src/mailman/rest/tests/test_membership.py +++ b/src/mailman/rest/tests/test_membership.py @@ -98,6 +98,15 @@ class TestMembership(unittest.TestCase): self.assertEqual(cm.exception.code, 409) self.assertEqual(cm.exception.reason, b'Member already subscribed') + # Member subscription using case sensitive email + with self.assertRaises(HTTPError) as cm: + call_api('http://localhost:9001/3.0/members', { + 'list_id': 'test.example.com', + 'subscriber': 'ANNE@example.com', + }) + self.assertEqual(cm.exception.code, 409) + self.assertEqual(cm.exception.reason, b'Member already subscribed') + def test_join_with_invalid_delivery_mode(self): with self.assertRaises(HTTPError) as cm: call_api('http://localhost:9001/3.0/members', { |
