2016-05-01 09:41:18 +00:00
|
|
|
import json
|
|
|
|
|
|
|
|
from django.core.urlresolvers import reverse
|
|
|
|
|
|
|
|
from seahub.base.models import FileComment
|
|
|
|
from seahub.test_utils import BaseTestCase
|
|
|
|
|
|
|
|
class FileCommentsCountsTest(BaseTestCase):
|
|
|
|
def setUp(self):
|
|
|
|
self.login_as(self.user)
|
|
|
|
self.endpoint = reverse('api2-file-comments-counts', args=[self.repo.id]) + '?p=/'
|
|
|
|
|
|
|
|
self.file2 = self.create_file(repo_id=self.repo.id, parent_dir='/',
|
|
|
|
filename='test2.txt',
|
|
|
|
username=self.user.username)
|
|
|
|
|
|
|
|
def tearDown(self):
|
|
|
|
self.remove_repo()
|
|
|
|
|
|
|
|
def test_can_get(self):
|
|
|
|
FileComment.objects.add_by_file_path(repo_id=self.repo.id,
|
|
|
|
file_path=self.file,
|
|
|
|
author=self.user.username,
|
|
|
|
comment='test comment')
|
|
|
|
|
|
|
|
FileComment.objects.add_by_file_path(repo_id=self.repo.id,
|
|
|
|
file_path=self.file,
|
|
|
|
author=self.user.username,
|
|
|
|
comment='reply test comment')
|
|
|
|
|
|
|
|
FileComment.objects.add_by_file_path(repo_id=self.repo.id,
|
|
|
|
file_path=self.file2,
|
|
|
|
author=self.user.username,
|
|
|
|
comment='test comment on other file')
|
|
|
|
|
|
|
|
resp = self.client.get(self.endpoint)
|
|
|
|
self.assertEqual(200, resp.status_code)
|
|
|
|
|
|
|
|
json_resp = json.loads(resp.content)
|
|
|
|
assert len(json_resp) == 2
|
|
|
|
for d in json_resp:
|
|
|
|
if d.keys()[0] == 'test.txt':
|
|
|
|
assert d['test.txt'] == 2
|
|
|
|
|
|
|
|
if d.keys()[0] == 'test2.txt':
|
|
|
|
assert d['test2.txt'] == 1
|
2017-09-15 08:15:10 +00:00
|
|
|
|
|
|
|
def test_can_get_file(self):
|
|
|
|
FileComment.objects.add_by_file_path(repo_id=self.repo.id,
|
|
|
|
file_path=self.file2,
|
|
|
|
author=self.user.username,
|
|
|
|
comment='test comment on other file')
|
|
|
|
|
|
|
|
FileComment.objects.add_by_file_path(repo_id=self.repo.id,
|
|
|
|
file_path=self.file2,
|
|
|
|
author=self.user.username,
|
|
|
|
comment='test comment on other file123')
|
|
|
|
self.file_request= reverse('api2-file-comments-counts', args=[self.repo.id]) + '?p=' + self.file2
|
|
|
|
resp = self.client.get(self.file_request)
|
|
|
|
self.assertEqual(404, resp.status_code)
|