A raise was exchanged with return here, so that a 404 was not reported.
In addition, for cleanliness, base the context on the superclass
implementation so that format and view are included in the context.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
api/rest.py | 6 ++++--
tests/test_rest.py | 6 +++---
2 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/api/rest.py b/api/rest.py
index 2b0b611..df0640a 100644
--- a/api/rest.py
+++ b/api/rest.py
@@ -251,8 +251,10 @@ class ProjectMessagesViewSetMixin(mixins.RetrieveModelMixin):
def get_serializer_context(self):
if self.project is None:
- return Http404
- return {'project': self.project, 'request': self.request}
+ raise Http404
+ context = super(ProjectMessagesViewSetMixin, self).get_serializer_context()
+ context['project'] = self.project
+ return context
# Series
diff --git a/tests/test_rest.py b/tests/test_rest.py
index 980d61a..7b035bc 100755
--- a/tests/test_rest.py
+++ b/tests/test_rest.py
@@ -230,7 +230,7 @@ class RestTest(PatchewTestCase):
self.assertEqual(resp.data['count'], 2)
resp = self.api_client.get(self.REST_BASE + 'projects/12345/series/')
- self.assertEqual(resp.data['count'], 0)
+ self.assertEqual(resp.status_code, 404)
def test_series_results_list(self):
resp1 = self.apply_and_retrieve('0001-simple-patch.mbox.gz',
@@ -263,9 +263,9 @@ class RestTest(PatchewTestCase):
self.assertEqual('patches' in resp.data['results'][1], False)
resp = self.api_client.get(self.REST_BASE + 'projects/12345/series/?q=quorum')
- self.assertEqual(resp.data['count'], 0)
+ self.assertEqual(resp.status_code, 404)
resp = self.api_client.get(self.REST_BASE + 'projects/12345/series/?q=project:QEMU')
- self.assertEqual(resp.data['count'], 0)
+ self.assertEqual(resp.status_code, 404)
def test_series_delete(self):
test_message_id = '1469192015-16487-1-git-send-email-berrange@redhat.com'
--
2.17.1
_______________________________________________
Patchew-devel mailing list
Patchew-devel@redhat.com
https://www.redhat.com/mailman/listinfo/patchew-devel