diff options
| author | Barry Warsaw | 2011-08-14 18:57:27 -0400 |
|---|---|---|
| committer | Barry Warsaw | 2011-08-14 18:57:27 -0400 |
| commit | 5fd5fd6ca3b2e0b3f7e25c815365f4ebaa0df247 (patch) | |
| tree | 98846b62b08aa5f6786dcc96753a981d874ebd3f /src | |
| parent | 061643ac76b4fba0b95b9e6260df44c69412ec07 (diff) | |
| download | mailman-5fd5fd6ca3b2e0b3f7e25c815365f4ebaa0df247.tar.gz mailman-5fd5fd6ca3b2e0b3f7e25c815365f4ebaa0df247.tar.zst mailman-5fd5fd6ca3b2e0b3f7e25c815365f4ebaa0df247.zip | |
* Fixed incorrect error code for /members/<bogus> (LP: #821020). Given by
Stephen A. Goss.
Diffstat (limited to 'src')
| -rw-r--r-- | src/mailman/docs/NEWS.rst | 2 | ||||
| -rw-r--r-- | src/mailman/rest/members.py | 2 | ||||
| -rw-r--r-- | src/mailman/rest/tests/test_membership.py | 10 |
3 files changed, 14 insertions, 0 deletions
diff --git a/src/mailman/docs/NEWS.rst b/src/mailman/docs/NEWS.rst index 4cb9a3bca..1057e2962 100644 --- a/src/mailman/docs/NEWS.rst +++ b/src/mailman/docs/NEWS.rst @@ -31,6 +31,8 @@ REST optional). (LP: #799612) * Fixed /lists/<fqdn_listname>/<role>/<email> (LP: #825570) * Remove role plurals from /lists/<fqdn_listname/rosters/<role> + * Fixed incorrect error code for /members/<bogus> (LP: #821020). Given by + Stephen A. Goss. Commands -------- diff --git a/src/mailman/rest/members.py b/src/mailman/rest/members.py index aea5df843..0a4b99470 100644 --- a/src/mailman/rest/members.py +++ b/src/mailman/rest/members.py @@ -96,6 +96,8 @@ class AMember(_MemberBase): @resource.GET() def member(self, request): """Return a single member end-point.""" + if self._member is None: + return http.not_found() return http.ok([], self._resource_as_json(self._member)) @resource.DELETE() diff --git a/src/mailman/rest/tests/test_membership.py b/src/mailman/rest/tests/test_membership.py index f82296355..db1c2e4d2 100644 --- a/src/mailman/rest/tests/test_membership.py +++ b/src/mailman/rest/tests/test_membership.py @@ -193,6 +193,16 @@ class TestMembership(unittest.TestCase): entry_0 = content['entries'][0] self.assertEqual(entry_0['address'], 'aperson@example.com') + def test_get_nonexistent_member(self): + # /members/<bogus> returns 404 + try: + # For Python 2.6 + call_api('http://localhost:9001/3.0/members/bogus') + except HTTPError as exc: + self.assertEqual(exc.code, 404) + else: + raise AssertionError('Expected HTTPError') + def test_suite(): |
