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:
57
tests/api/endpoints/admin/test_default_library.py
Normal file
57
tests/api/endpoints/admin/test_default_library.py
Normal 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)
|
Reference in New Issue
Block a user