diff --git a/seahub/api2/endpoints/file_comment.py b/seahub/api2/endpoints/file_comment.py index 05c1e85064..87c13df30c 100644 --- a/seahub/api2/endpoints/file_comment.py +++ b/seahub/api2/endpoints/file_comment.py @@ -37,7 +37,7 @@ class FileCommentView(APIView): avatar_size = AVATAR_DEFAULT_SIZE comment = o.to_dict() - comment.update(user_to_dict(request.user.username, request=request, + comment.update(user_to_dict(o.author, request=request, avatar_size=avatar_size)) return Response(comment) diff --git a/seahub/api2/endpoints/file_comments.py b/seahub/api2/endpoints/file_comments.py index 9e8a2e03f1..9a3eeeeb94 100644 --- a/seahub/api2/endpoints/file_comments.py +++ b/seahub/api2/endpoints/file_comments.py @@ -39,7 +39,7 @@ class FileCommentsView(APIView): comments = [] for o in FileComment.objects.get_by_file_path(repo_id, path): comment = o.to_dict() - comment.update(user_to_dict(request.user.username, request=request, + comment.update(user_to_dict(o.author, request=request, avatar_size=avatar_size)) comments.append(comment) diff --git a/tests/api/endpoints/test_file_comment.py b/tests/api/endpoints/test_file_comment.py index d712210c18..495bf85d34 100644 --- a/tests/api/endpoints/test_file_comment.py +++ b/tests/api/endpoints/test_file_comment.py @@ -7,16 +7,18 @@ from seahub.test_utils import BaseTestCase class FileCommentTest(BaseTestCase): def setUp(self): - self.login_as(self.user) - + self.tmp_user = self.create_user() o = FileComment.objects.add_by_file_path(repo_id=self.repo.id, file_path=self.file, - author=self.user.username, + author=self.tmp_user.username, comment='test comment') + self.login_as(self.user) + self.endpoint = reverse('api2-file-comment', args=[self.repo.id, o.pk]) + '?p=' + self.file def tearDown(self): self.remove_repo() + self.remove_user(self.tmp_user.email) def test_can_get(self): resp = self.client.get(self.endpoint) @@ -25,6 +27,7 @@ class FileCommentTest(BaseTestCase): json_resp = json.loads(resp.content) assert json_resp['parent_path'] == '/' assert json_resp['item_name'] == 'test.txt' + assert json_resp['user_email'] == self.tmp_user.email assert 'avatars' in json_resp['avatar_url'] def test_can_get_with_avatar_size(self): @@ -34,6 +37,7 @@ class FileCommentTest(BaseTestCase): json_resp = json.loads(resp.content) assert json_resp['parent_path'] == '/' assert json_resp['item_name'] == 'test.txt' + assert json_resp['user_email'] == self.tmp_user.email assert 'avatars' in json_resp['avatar_url'] def test_can_delete(self): diff --git a/tests/api/endpoints/test_file_comments.py b/tests/api/endpoints/test_file_comments.py index 31b21743de..bb8377521b 100644 --- a/tests/api/endpoints/test_file_comments.py +++ b/tests/api/endpoints/test_file_comments.py @@ -7,16 +7,19 @@ from seahub.test_utils import BaseTestCase class FileCommentsTest(BaseTestCase): def setUp(self): + self.tmp_user = self.create_user() + self.login_as(self.user) self.endpoint = reverse('api2-file-comments', args=[self.repo.id]) + '?p=' + self.file def tearDown(self): self.remove_repo() + self.remove_user(self.tmp_user.email) def test_can_list(self): o = FileComment.objects.add_by_file_path(repo_id=self.repo.id, file_path=self.file, - author=self.user.username, + author=self.tmp_user.username, comment='test comment') resp = self.client.get(self.endpoint) self.assertEqual(200, resp.status_code) @@ -24,12 +27,13 @@ class FileCommentsTest(BaseTestCase): json_resp = json.loads(resp.content) assert len(json_resp['comments']) == 1 assert json_resp['comments'][0]['comment'] == o.comment + assert json_resp['comments'][0]['user_email'] == self.tmp_user.email assert 'avatars' in json_resp['comments'][0]['avatar_url'] def test_can_list_with_avatar_size(self): o = FileComment.objects.add_by_file_path(repo_id=self.repo.id, file_path=self.file, - author=self.user.username, + author=self.tmp_user.username, comment='test comment') resp = self.client.get(self.endpoint + '&avatar_size=20') self.assertEqual(200, resp.status_code) @@ -37,6 +41,7 @@ class FileCommentsTest(BaseTestCase): json_resp = json.loads(resp.content) assert len(json_resp['comments']) == 1 assert json_resp['comments'][0]['comment'] == o.comment + assert json_resp['comments'][0]['user_email'] == self.tmp_user.email assert 'avatars' in json_resp['comments'][0]['avatar_url'] def test_can_post(self):