]> git.ipfire.org Git - thirdparty/patchwork.git/commitdiff
Explicitly distinguish between comments on patch and cover
authorVeronika Kabatova <vkabatov@redhat.com>
Thu, 3 May 2018 10:55:16 +0000 (12:55 +0200)
committerStephen Finucane <stephen@that.guru>
Thu, 3 May 2018 14:23:49 +0000 (15:23 +0100)
reverse() gets confused when the same view name and kwargs are passed to
it, ignoring what endpoint the request originated from. Fix this by
using different view names for cover letter and patch comments views.

Reported-by: Daniel Axtens <dja@axtens.net>
Signed-off-by: Veronika Kabatova <vkabatov@redhat.com>
Reviewed-by: Stephen Finucane <stephen@that.guru>
patchwork/api/cover.py
patchwork/api/patch.py
patchwork/tests/api/test_comment.py
patchwork/urls.py

index 7c80064c8df0aa142fc90229dbde10f093cddd35..99cf9e68e09373accb0300317c74cc7ff4172e8b 100644 (file)
@@ -46,7 +46,7 @@ class CoverLetterListSerializer(BaseHyperlinkedModelSerializer):
 
     def get_comments(self, cover):
         return self.context.get('request').build_absolute_uri(
-            reverse('api-comment-list', kwargs={'pk': cover.id}))
+            reverse('api-cover-comment-list', kwargs={'pk': cover.id}))
 
     class Meta:
         model = CoverLetter
index d1931c013545d3372b9131df012a6a1bcd308e97..028d68544ea661070ec374196154ee7a6afd4a07 100644 (file)
@@ -94,7 +94,7 @@ class PatchListSerializer(BaseHyperlinkedModelSerializer):
 
     def get_comments(self, patch):
         return self.context.get('request').build_absolute_uri(
-            reverse('api-comment-list', kwargs={'pk': patch.id}))
+            reverse('api-patch-comment-list', kwargs={'pk': patch.id}))
 
     def get_check(self, instance):
         return instance.combined_check_state
index 9cad2addd8ff9b3722a07df87c16bda30cc5aa18..f79ea4695fe75ced4c88dea94f0edffd2c636cfa 100644 (file)
@@ -46,7 +46,7 @@ class TestCoverComments(APITestCase):
             kwargs['version'] = version
         kwargs['pk'] = cover.id
 
-        return reverse('api-comment-list', kwargs=kwargs)
+        return reverse('api-cover-comment-list', kwargs=kwargs)
 
     def assertSerialized(self, comment_obj, comment_json):
         self.assertEqual(comment_obj.id, comment_json['id'])
@@ -85,7 +85,7 @@ class TestPatchComments(APITestCase):
             kwargs['version'] = version
         kwargs['pk'] = patch.id
 
-        return reverse('api-comment-list', kwargs=kwargs)
+        return reverse('api-patch-comment-list', kwargs=kwargs)
 
     def assertSerialized(self, comment_obj, comment_json):
         self.assertEqual(comment_obj.id, comment_json['id'])
index 1dc4ffc2b7d374de8ecd20140bf966c3870d8ce3..e90de6b2c6ef981d5ff675c917e2d8a217d62f0b 100644 (file)
@@ -283,10 +283,10 @@ if settings.ENABLE_REST_API:
     api_1_1_patterns = [
         url(r'^patches/(?P<pk>[^/]+)/comments/$',
             api_comment_views.CommentList.as_view(),
-            name='api-comment-list'),
+            name='api-patch-comment-list'),
         url(r'^covers/(?P<pk>[^/]+)/comments/$',
             api_comment_views.CommentList.as_view(),
-            name='api-comment-list'),
+            name='api-cover-comment-list'),
     ]
 
     urlpatterns += [