1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-09-08 10:22:46 +00:00

add api of admin create default repo for common user

This commit is contained in:
lian
2017-02-17 11:46:37 +08:00
parent 5b7706e1c1
commit b7cad9a707
3 changed files with 195 additions and 0 deletions

View File

@@ -0,0 +1,57 @@
import json
from django.core.urlresolvers import reverse
from seahub.options.models import UserOptions
from seahub.test_utils import BaseTestCase
class DefaultLibraryTest(BaseTestCase):
def setUp(self):
self.user_name = self.user.username
self.admin_name = self.admin.username
self.group_id = self.group.id
self.repo_id = self.repo.id
self.endpoint = reverse('api-v2.1-admin-default-library')
def tearDown(self):
self.remove_group()
def test_can_get(self):
self.login_as(self.admin)
assert UserOptions.objects.get_default_repo(self.user_name) is None
resp = self.client.get(self.endpoint + '?user_email=%s' % self.user_name)
json_resp = json.loads(resp.content)
assert json_resp['user_email'] == self.user_name
assert json_resp['exists'] == False
def test_can_create(self):
self.login_as(self.admin)
assert UserOptions.objects.get_default_repo(self.user_name) is None
data = {'user_email': self.user_name}
resp = self.client.post(self.endpoint, data)
json_resp = json.loads(resp.content)
new_default_repo_id = UserOptions.objects.get_default_repo(self.user_name)
assert json_resp['user_email'] == self.user_name
assert json_resp['exists'] == True
assert json_resp['repo_id'] == new_default_repo_id
def test_can_not_get_if_not_admin(self):
self.login_as(self.user)
resp = self.client.get(self.endpoint + '?user_email=%s' % self.user_name)
self.assertEqual(403, resp.status_code)
def test_can_not_create_if_not_admin(self):
self.login_as(self.user)
data = {'user_email': self.user_name}
resp = self.client.post(self.endpoint, data)
self.assertEqual(403, resp.status_code)