mirror of
https://github.com/haiwen/seahub.git
synced 2025-09-12 04:10:47 +00:00
add api for getting groups that user can share repo to
This commit is contained in:
59
tests/api/endpoints/test_shareable_groups.py
Normal file
59
tests/api/endpoints/test_shareable_groups.py
Normal file
@@ -0,0 +1,59 @@
|
||||
# Copyright (c) 2011-2016 Seafile Ltd.
|
||||
# -*- coding: utf-8 -*-
|
||||
import json
|
||||
from django.core.urlresolvers import reverse
|
||||
from seahub.test_utils import BaseTestCase
|
||||
from tests.common.utils import randstring
|
||||
from constance import config
|
||||
|
||||
|
||||
class ShareableGroupsTest(BaseTestCase):
|
||||
|
||||
def setUp(self):
|
||||
self.login_as(self.user)
|
||||
self.group_id = self.group.id
|
||||
self.group_name = self.group.group_name
|
||||
self.admin_user = self.admin.username
|
||||
|
||||
self.url = reverse('api-v2.1-shareable-groups')
|
||||
|
||||
def tearDown(self):
|
||||
self.remove_group()
|
||||
self.remove_repo()
|
||||
|
||||
def test_can_get(self):
|
||||
|
||||
config.ENABLE_SHARE_TO_ALL_GROUPS = 1
|
||||
|
||||
admin_group_name = randstring(10)
|
||||
admin_group = self.create_group(group_name=admin_group_name,
|
||||
username=self.admin_user)
|
||||
|
||||
resp = self.client.get(self.url)
|
||||
self.assertEqual(200, resp.status_code)
|
||||
json_resp = json.loads(resp.content)
|
||||
group_names = [g["name"] for g in json_resp]
|
||||
self.assertIn(admin_group_name, group_names)
|
||||
self.assertIn(self.group.group_name, group_names)
|
||||
|
||||
|
||||
self.remove_group(admin_group.group_id)
|
||||
self.clear_cache()
|
||||
|
||||
def test_can_get_with_disable_config(self):
|
||||
|
||||
config.ENABLE_SHARE_TO_ALL_GROUPS = 0
|
||||
|
||||
admin_group_name = randstring(10)
|
||||
admin_group = self.create_group(group_name=admin_group_name,
|
||||
username=self.admin_user)
|
||||
|
||||
resp = self.client.get(self.url)
|
||||
self.assertEqual(200, resp.status_code)
|
||||
json_resp = json.loads(resp.content)
|
||||
group_names = [g["name"] for g in json_resp]
|
||||
self.assertIn(self.group.group_name, group_names)
|
||||
self.assertNotIn(admin_group_name, group_names)
|
||||
|
||||
self.remove_group(admin_group.group_id)
|
||||
self.clear_cache()
|
Reference in New Issue
Block a user