diff options
Diffstat (limited to 'src/mailman/rest/tests')
| -rw-r--r-- | src/mailman/rest/tests/test_addresses.py | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/src/mailman/rest/tests/test_addresses.py b/src/mailman/rest/tests/test_addresses.py index d03dc79d7..02c190c08 100644 --- a/src/mailman/rest/tests/test_addresses.py +++ b/src/mailman/rest/tests/test_addresses.py @@ -168,7 +168,26 @@ class TestAddresses(unittest.TestCase): 'email': 'anne@example.com', }) self.assertEqual(cm.exception.code, 400) - self.assertEqual(cm.exception.reason, b'Address already exists') + self.assertEqual(cm.exception.reason, b'Address belongs to other user.') + + def test_add_unlinked_address_to_user(self): + user_manager = getUtility(IUserManager) + with transaction(): + anne = user_manager.create_user('anne.person@example.com') + user_manager.create_address('anne@example.com') + response, content = call_api( + 'http://localhost:9001/3.0/users/anne.person@example.com/addresses', + { 'email': 'anne@example.com'}) + + self.assertIn('anne@example.com', + [addr.email for addr in anne.addresses]) + self.assertEqual(content['status'], '201') + self.assertEqual( + content['location'], + 'http://localhost:9001/3.0/addresses/anne@example.com') + # The address has no display name. + anne_person = user_manager.get_address('anne@example.com') + self.assertEqual(anne_person.display_name, '') def test_invalid_address_bad_request(self): # Trying to add an invalid address string returns 400. |
