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

[tests] Fix django_constance in tests

Conflicts:
	tests/seahub/notifications/management/commands/test_notify_admins_on_virus.py
This commit is contained in:
zhengxie 2018-03-21 13:54:14 +08:00
parent aa689f9bfe
commit 1cc0d09775
19 changed files with 159 additions and 88 deletions

View File

@ -1,15 +1,20 @@
# Copyright (c) 2011-2016 Seafile Ltd. # Copyright (c) 2011-2016 Seafile Ltd.
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
import json import json
import pytest
pytestmark = pytest.mark.django_db
from django.core.urlresolvers import reverse from django.core.urlresolvers import reverse
from seahub.test_utils import BaseTestCase from seahub.test_utils import BaseTestCase
from tests.common.utils import randstring from tests.common.utils import randstring
from constance import config
class ShareableGroupsTest(BaseTestCase): class ShareableGroupsTest(BaseTestCase):
def setUp(self): def setUp(self):
from constance import config
self.config = config
self.login_as(self.user) self.login_as(self.user)
self.group_id = self.group.id self.group_id = self.group.id
self.group_name = self.group.group_name self.group_name = self.group.group_name
@ -20,10 +25,11 @@ class ShareableGroupsTest(BaseTestCase):
def tearDown(self): def tearDown(self):
self.remove_group() self.remove_group()
self.remove_repo() self.remove_repo()
self.clear_cache()
def test_can_get(self): def test_can_get(self):
config.ENABLE_SHARE_TO_ALL_GROUPS = 1 self.config.ENABLE_SHARE_TO_ALL_GROUPS = 1
admin_group_name = randstring(10) admin_group_name = randstring(10)
admin_group = self.create_group(group_name=admin_group_name, admin_group = self.create_group(group_name=admin_group_name,
@ -42,7 +48,7 @@ class ShareableGroupsTest(BaseTestCase):
def test_can_get_with_disable_config(self): def test_can_get_with_disable_config(self):
config.ENABLE_SHARE_TO_ALL_GROUPS = 0 self.config.ENABLE_SHARE_TO_ALL_GROUPS = 0
admin_group_name = randstring(10) admin_group_name = randstring(10)
admin_group = self.create_group(group_name=admin_group_name, admin_group = self.create_group(group_name=admin_group_name,

View File

@ -1,6 +1,8 @@
import json import json
from constance import config import pytest
pytestmark = pytest.mark.django_db
from seaserv import seafile_api, ccnet_threaded_rpc from seaserv import seafile_api, ccnet_threaded_rpc
from seahub.test_utils import BaseTestCase from seahub.test_utils import BaseTestCase
@ -8,13 +10,16 @@ from seahub.test_utils import BaseTestCase
class RepoPublicTest(BaseTestCase): class RepoPublicTest(BaseTestCase):
def setUp(self): def setUp(self):
from constance import config
self.config = config
self.repo_id = self.create_repo(name='test-admin-repo', desc='', self.repo_id = self.create_repo(name='test-admin-repo', desc='',
username=self.admin.username, username=self.admin.username,
passwd=None) passwd=None)
self.url = '/api2/shared-repos/%s/' % self.repo_id self.url = '/api2/shared-repos/%s/' % self.repo_id
self.user_repo_url = '/api2/shared-repos/%s/' % self.repo.id self.user_repo_url = '/api2/shared-repos/%s/' % self.repo.id
config.ENABLE_USER_CREATE_ORG_REPO = 1 self.config.ENABLE_USER_CREATE_ORG_REPO = 1
def tearDown(self): def tearDown(self):
self.remove_repo(self.repo_id) self.remove_repo(self.repo_id)
@ -48,9 +53,9 @@ class RepoPublicTest(BaseTestCase):
assert 'success' in json_resp assert 'success' in json_resp
def test_admin_can_set_pub_repo_when_setting_disalbed(self): def test_admin_can_set_pub_repo_when_setting_disalbed(self):
assert bool(config.ENABLE_USER_CREATE_ORG_REPO) is True assert bool(self.config.ENABLE_USER_CREATE_ORG_REPO) is True
config.ENABLE_USER_CREATE_ORG_REPO = False self.config.ENABLE_USER_CREATE_ORG_REPO = False
assert bool(config.ENABLE_USER_CREATE_ORG_REPO) is False assert bool(self.config.ENABLE_USER_CREATE_ORG_REPO) is False
self.login_as(self.admin) self.login_as(self.admin)
@ -60,9 +65,9 @@ class RepoPublicTest(BaseTestCase):
assert 'success' in json_resp assert 'success' in json_resp
def test_user_can_not_set_pub_repo_when_setting_disalbed(self): def test_user_can_not_set_pub_repo_when_setting_disalbed(self):
assert bool(config.ENABLE_USER_CREATE_ORG_REPO) is True assert bool(self.config.ENABLE_USER_CREATE_ORG_REPO) is True
config.ENABLE_USER_CREATE_ORG_REPO = False self.config.ENABLE_USER_CREATE_ORG_REPO = False
assert bool(config.ENABLE_USER_CREATE_ORG_REPO) is False assert bool(self.config.ENABLE_USER_CREATE_ORG_REPO) is False
self.login_as(self.user) self.login_as(self.user)

View File

@ -2,7 +2,10 @@
""" """
import json import json
from mock import patch from mock import patch
from constance import config
import pytest
pytestmark = pytest.mark.django_db
from django.core.urlresolvers import reverse from django.core.urlresolvers import reverse
from django.template.defaultfilters import filesizeformat from django.template.defaultfilters import filesizeformat
@ -18,6 +21,9 @@ class RepoTest(BaseTestCase):
self.url = reverse('api2-repos') self.url = reverse('api2-repos')
self.repo_id = self.repo self.repo_id = self.repo
from constance import config
self.config = config
def test_can_fetch(self): def test_can_fetch(self):
self.login_as(self.user) self.login_as(self.user)
@ -189,7 +195,7 @@ class RepoTest(BaseTestCase):
self.remove_repo(share_repo.id) self.remove_repo(share_repo.id)
def test_can_get_share_group_repo(self): def test_can_get_share_group_repo(self):
config.ENABLE_SHARE_TO_ALL_GROUPS = True self.config.ENABLE_SHARE_TO_ALL_GROUPS = True
self.logout() self.logout()
self.login_as(self.admin) self.login_as(self.admin)

View File

@ -2,16 +2,20 @@
""" """
import json import json
import pytest
pytestmark = pytest.mark.django_db
from django.core.urlresolvers import reverse from django.core.urlresolvers import reverse
from constance import config
from seahub.test_utils import BaseTestCase from seahub.test_utils import BaseTestCase
class RepoTest(BaseTestCase): class RepoTest(BaseTestCase):
def setUp(self): def setUp(self):
self.user_repo_id = self.repo.id self.user_repo_id = self.repo.id
from constance import config
self.config = config
def tearDown(self): def tearDown(self):
self.remove_repo() self.remove_repo()
@ -26,7 +30,7 @@ class RepoTest(BaseTestCase):
def test_can_get_history_limit_if_setting_not_enabled(self): def test_can_get_history_limit_if_setting_not_enabled(self):
self.login_as(self.user) self.login_as(self.user)
config.ENABLE_REPO_HISTORY_SETTING = False self.config.ENABLE_REPO_HISTORY_SETTING = False
resp = self.client.get(reverse("api2-repo-history-limit", args=[self.user_repo_id])) resp = self.client.get(reverse("api2-repo-history-limit", args=[self.user_repo_id]))
json_resp = json.loads(resp.content) json_resp = json.loads(resp.content)
@ -90,7 +94,7 @@ class RepoTest(BaseTestCase):
def test_can_not_set_if_setting_not_enabled(self): def test_can_not_set_if_setting_not_enabled(self):
self.login_as(self.user) self.login_as(self.user)
config.ENABLE_REPO_HISTORY_SETTING = False self.config.ENABLE_REPO_HISTORY_SETTING = False
url = reverse("api2-repo-history-limit", args=[self.user_repo_id]) url = reverse("api2-repo-history-limit", args=[self.user_repo_id])
data = 'keep_days=%s' % 6 data = 'keep_days=%s' % 6

View File

@ -6,7 +6,8 @@ import json
import time import time
import pytest import pytest
import uuid import uuid
from constance import config import pytest
pytestmark = pytest.mark.django_db
from django.core.urlresolvers import reverse from django.core.urlresolvers import reverse
from seaserv import seafile_api from seaserv import seafile_api
@ -163,7 +164,11 @@ class NewReposApiTest(BaseTestCase):
def setUp(self): def setUp(self):
self.clear_cache() self.clear_cache()
self.login_as(self.admin) self.login_as(self.admin)
config.ENABLE_ENCRYPTED_LIBRARY = True
from constance import config
self.config = config
self.config.ENABLE_ENCRYPTED_LIBRARY = True
def test_create_encrypted_repo(self): def test_create_encrypted_repo(self):
"""Test create an encrypted repo with the secure keys generated on client """Test create an encrypted repo with the secure keys generated on client
@ -198,7 +203,7 @@ class NewReposApiTest(BaseTestCase):
"""Test create an encrypted repo with the secure keys generated on client """Test create an encrypted repo with the secure keys generated on client
side. side.
""" """
config.ENABLE_ENCRYPTED_LIBRARY = False self.config.ENABLE_ENCRYPTED_LIBRARY = False
repo_id = str(uuid.uuid4()) repo_id = str(uuid.uuid4())
password = randstring(16) password = randstring(16)
enc_version = 2 enc_version = 2

View File

@ -1,18 +1,21 @@
import json import json
import pytest
pytestmark = pytest.mark.django_db
from seahub.test_utils import BaseTestCase from seahub.test_utils import BaseTestCase
from constance import config
from seaserv import seafile_api, ccnet_threaded_rpc from seaserv import seafile_api, ccnet_threaded_rpc
class SharedRepoTest(BaseTestCase): class SharedRepoTest(BaseTestCase):
def setUp(self): def setUp(self):
from constance import config
self.config = config
self.repo_id = self.create_repo(name='test-admin-repo', desc='', self.repo_id = self.create_repo(name='test-admin-repo', desc='',
username=self.admin.username, username=self.admin.username,
passwd=None) passwd=None)
self.shared_repo_url = '/api2/shared-repos/%s/?share_type=public&permission=rw' self.shared_repo_url = '/api2/shared-repos/%s/?share_type=public&permission=rw'
config.ENABLE_USER_CREATE_ORG_REPO = 1 self.config.ENABLE_USER_CREATE_ORG_REPO = 1
def tearDown(self): def tearDown(self):
self.remove_repo(self.repo_id) self.remove_repo(self.repo_id)
@ -35,9 +38,9 @@ class SharedRepoTest(BaseTestCase):
assert "success" in resp.content assert "success" in resp.content
def test_admin_can_set_pub_repo_when_setting_disalbed(self): def test_admin_can_set_pub_repo_when_setting_disalbed(self):
assert bool(config.ENABLE_USER_CREATE_ORG_REPO) is True assert bool(self.config.ENABLE_USER_CREATE_ORG_REPO) is True
config.ENABLE_USER_CREATE_ORG_REPO = False self.config.ENABLE_USER_CREATE_ORG_REPO = False
assert bool(config.ENABLE_USER_CREATE_ORG_REPO) is False assert bool(self.config.ENABLE_USER_CREATE_ORG_REPO) is False
self.login_as(self.admin) self.login_as(self.admin)
@ -46,9 +49,9 @@ class SharedRepoTest(BaseTestCase):
assert "success" in resp.content assert "success" in resp.content
def test_user_can_not_set_pub_repo_when_setting_disalbed(self): def test_user_can_not_set_pub_repo_when_setting_disalbed(self):
assert bool(config.ENABLE_USER_CREATE_ORG_REPO) is True assert bool(self.config.ENABLE_USER_CREATE_ORG_REPO) is True
config.ENABLE_USER_CREATE_ORG_REPO = False self.config.ENABLE_USER_CREATE_ORG_REPO = False
assert bool(config.ENABLE_USER_CREATE_ORG_REPO) is False assert bool(self.config.ENABLE_USER_CREATE_ORG_REPO) is False
self.login_as(self.user) self.login_as(self.user)

View File

@ -1,6 +1,7 @@
#coding: UTF-8 #coding: UTF-8
from django.core.cache import cache from django.core.cache import cache
from constance import config import pytest
pytestmark = pytest.mark.django_db
from seahub.share.models import FileShare, UploadLinkShare from seahub.share.models import FileShare, UploadLinkShare
from seahub.test_utils import BaseTestCase from seahub.test_utils import BaseTestCase
@ -11,12 +12,15 @@ class FileSharedLinkApiTest(BaseTestCase):
def setUp(self): def setUp(self):
cache.clear() cache.clear()
self.curr_passwd_len = config.SHARE_LINK_PASSWORD_MIN_LENGTH from constance import config
config.SHARE_LINK_PASSWORD_MIN_LENGTH = 3 self.config = config
self.curr_passwd_len = self.config.SHARE_LINK_PASSWORD_MIN_LENGTH
self.config.SHARE_LINK_PASSWORD_MIN_LENGTH = 3
def tearDown(self): def tearDown(self):
self.remove_repo() self.remove_repo()
config.SHARE_LINK_PASSWORD_MIN_LENGTH = self.curr_passwd_len self.config.SHARE_LINK_PASSWORD_MIN_LENGTH = self.curr_passwd_len
def test_create_file_shared_link_with_invalid_path(self): def test_create_file_shared_link_with_invalid_path(self):
self.login_as(self.user) self.login_as(self.user)

View File

@ -3,7 +3,8 @@ from django.core.cache import cache
from django.core.urlresolvers import reverse from django.core.urlresolvers import reverse
from django.utils.http import urlquote from django.utils.http import urlquote
from constance import config import pytest
pytestmark = pytest.mark.django_db
from seahub.base.accounts import User from seahub.base.accounts import User
from seahub.auth.forms import AuthenticationForm, CaptchaAuthenticationForm from seahub.auth.forms import AuthenticationForm, CaptchaAuthenticationForm
@ -118,8 +119,11 @@ class LoginCaptchaTest(BaseTestCase, LoginTestMixin):
def setUp(self): def setUp(self):
self.clear_cache() # make sure cache is clean self.clear_cache() # make sure cache is clean
config.LOGIN_ATTEMPT_LIMIT = 3 from constance import config
config.FREEZE_USER_ON_LOGIN_FAILED = False self.config = config
self.config.LOGIN_ATTEMPT_LIMIT = 3
self.config.FREEZE_USER_ON_LOGIN_FAILED = False
def tearDown(self): def tearDown(self):
self.clear_cache() self.clear_cache()
@ -185,8 +189,11 @@ class FreezeUserOnLoginFailedTest(BaseTestCase, LoginTestMixin):
def setUp(self): def setUp(self):
self.clear_cache() # make sure cache is clean self.clear_cache() # make sure cache is clean
config.LOGIN_ATTEMPT_LIMIT = 3 from constance import config
config.FREEZE_USER_ON_LOGIN_FAILED = True self.config = config
self.config.LOGIN_ATTEMPT_LIMIT = 3
self.config.FREEZE_USER_ON_LOGIN_FAILED = True
self.tmp_user = self.create_user() self.tmp_user = self.create_user()
@ -195,7 +202,7 @@ class FreezeUserOnLoginFailedTest(BaseTestCase, LoginTestMixin):
self.remove_user(self.tmp_user.username) self.remove_user(self.tmp_user.username)
def test_can_freeze(self): def test_can_freeze(self):
assert bool(config.FREEZE_USER_ON_LOGIN_FAILED) is True assert bool(self.config.FREEZE_USER_ON_LOGIN_FAILED) is True
resp = self._login_page() resp = self._login_page()
assert isinstance(resp.context['form'], AuthenticationForm) is True assert isinstance(resp.context['form'], AuthenticationForm) is True

View File

@ -1,6 +1,6 @@
from django.core import mail from django.core import mail
from django.core.management import call_command from django.core.management import call_command
from django.conf.urls import patterns, url from django.conf.urls import url
from django.test import override_settings from django.test import override_settings
import seahub import seahub
@ -12,7 +12,6 @@ urlpatterns = seahub.urls.urlpatterns + [
url(r'^sys/virus_scan_records/$', sys_virus_scan_records, name='sys_virus_scan_records'), url(r'^sys/virus_scan_records/$', sys_virus_scan_records, name='sys_virus_scan_records'),
] ]
@override_settings(ROOT_URLCONF=__name__) @override_settings(ROOT_URLCONF=__name__)
class CommandTest(BaseTestCase): class CommandTest(BaseTestCase):

View File

@ -1,11 +1,11 @@
from mock import patch from mock import patch
from django.core.cache import cache from django.core.cache import cache
from django.contrib.auth.models import AnonymousUser
from django.http import HttpResponse, Http404 from django.http import HttpResponse, Http404
from django.test import override_settings from django.test import override_settings
from django.test.client import RequestFactory from django.test.client import RequestFactory
from seahub.auth.models import AnonymousUser
from seahub.test_utils import BaseTestCase from seahub.test_utils import BaseTestCase
from seahub.share.decorators import share_link_audit from seahub.share.decorators import share_link_audit
from seahub.share.models import FileShare from seahub.share.models import FileShare

View File

@ -2,9 +2,11 @@ from django.core import mail
from django.core.urlresolvers import reverse from django.core.urlresolvers import reverse
from django.test import override_settings from django.test import override_settings
import pytest
pytestmark = pytest.mark.django_db
from seahub.test_utils import BaseTestCase from seahub.test_utils import BaseTestCase
from registration import signals from registration import signals
from constance import config
class RegisterSignalMixin(object): class RegisterSignalMixin(object):
@ -19,11 +21,14 @@ class EmailAdminOnRegistrationTest(BaseTestCase, RegisterSignalMixin):
""" """
def setUp(self): def setUp(self):
self.clear_cache() self.clear_cache()
self.old_config = config.ACTIVATE_AFTER_REGISTRATION from constance import config
config.ACTIVATE_AFTER_REGISTRATION = True self.config = config
self.old_config = self.config.ACTIVATE_AFTER_REGISTRATION
self.config.ACTIVATE_AFTER_REGISTRATION = True
def tearDown(self): def tearDown(self):
config.ACTIVATE_AFTER_REGISTRATION = self.old_config self.config.ACTIVATE_AFTER_REGISTRATION = self.old_config
@override_settings( @override_settings(
NOTIFY_ADMIN_AFTER_REGISTRATION=True, NOTIFY_ADMIN_AFTER_REGISTRATION=True,
@ -44,25 +49,28 @@ class EmailAdminOnRegistrationTest2(BaseTestCase, RegisterSignalMixin):
def setUp(self): def setUp(self):
self.clear_cache() self.clear_cache()
self.old_cfg1 = config.ENABLE_SIGNUP from constance import config
self.old_cfg2 = config.ACTIVATE_AFTER_REGISTRATION self.config = config
self.old_cfg3 = config.REGISTRATION_SEND_MAIL
config.ENABLE_SIGNUP = True self.old_cfg1 = self.config.ENABLE_SIGNUP
self.old_cfg2 = self.config.ACTIVATE_AFTER_REGISTRATION
self.old_cfg3 = self.config.REGISTRATION_SEND_MAIL
self.config.ENABLE_SIGNUP = True
self.email = 'newuser@test.com' self.email = 'newuser@test.com'
self.remove_user(self.email) self.remove_user(self.email)
def tearDown(self): def tearDown(self):
config.ENABLE_SIGNUP = self.old_cfg1 self.config.ENABLE_SIGNUP = self.old_cfg1
config.ACTIVATE_AFTER_REGISTRATION = self.old_cfg2 self.config.ACTIVATE_AFTER_REGISTRATION = self.old_cfg2
config.REGISTRATION_SEND_MAIL = self.old_cfg3 self.config.REGISTRATION_SEND_MAIL = self.old_cfg3
def test_notify_admin_to_activate(self): def test_notify_admin_to_activate(self):
assert bool(config.ENABLE_SIGNUP) is True assert bool(self.config.ENABLE_SIGNUP) is True
self.assertEqual(len(mail.outbox), 0) self.assertEqual(len(mail.outbox), 0)
config.ACTIVATE_AFTER_REGISTRATION = False self.config.ACTIVATE_AFTER_REGISTRATION = False
config.REGISTRATION_SEND_MAIL = False self.config.REGISTRATION_SEND_MAIL = False
self._send_signal() self._send_signal()

View File

@ -1,5 +1,6 @@
from django.core.urlresolvers import reverse from django.core.urlresolvers import reverse
from constance import config import pytest
pytestmark = pytest.mark.django_db
from seahub.two_factor.models import StaticDevice, user_has_device from seahub.two_factor.models import StaticDevice, user_has_device
from seahub.test_utils import BaseTestCase from seahub.test_utils import BaseTestCase
@ -9,13 +10,16 @@ class BackupTokensViewTest(BaseTestCase):
def setUp(self): def setUp(self):
self.clear_cache() self.clear_cache()
from constance import config
self.config = config
self.login_as(self.user) self.login_as(self.user)
self.url = reverse('two_factor:backup_tokens') self.url = reverse('two_factor:backup_tokens')
self.old_conf = config.ENABLE_TWO_FACTOR_AUTH self.old_conf = self.config.ENABLE_TWO_FACTOR_AUTH
config.ENABLE_TWO_FACTOR_AUTH = True self.config.ENABLE_TWO_FACTOR_AUTH = True
def tearDown(self): def tearDown(self):
config.ENABLE_TWO_FACTOR_AUTH = self.old_conf self.config.ENABLE_TWO_FACTOR_AUTH = self.old_conf
def test_user_2fa_not_enabled(self): def test_user_2fa_not_enabled(self):
resp = self.client.get(self.url) resp = self.client.get(self.url)

View File

@ -1,4 +1,6 @@
from constance import config import pytest
pytestmark = pytest.mark.django_db
from django.conf import settings from django.conf import settings
from seahub.utils import get_conf_text_ext from seahub.utils import get_conf_text_ext
@ -9,12 +11,15 @@ class GetConfTextExtTest(BaseTestCase):
def setUp(self): def setUp(self):
self.clear_cache() self.clear_cache()
from constance import config
self.config = config
def tearDown(self): def tearDown(self):
self.clear_cache() self.clear_cache()
def test_get(self): def test_get(self):
assert config.TEXT_PREVIEW_EXT == settings.TEXT_PREVIEW_EXT assert self.config.TEXT_PREVIEW_EXT == settings.TEXT_PREVIEW_EXT
orig_preview_ext = settings.TEXT_PREVIEW_EXT orig_preview_ext = settings.TEXT_PREVIEW_EXT
config.TEXT_PREVIEW_EXT = orig_preview_ext + ',az' self.config.TEXT_PREVIEW_EXT = orig_preview_ext + ',az'
assert 'az' in get_conf_text_ext() assert 'az' in get_conf_text_ext()

View File

@ -1,6 +1,6 @@
from django.contrib.auth.models import AnonymousUser
from django.test.client import RequestFactory from django.test.client import RequestFactory
from seahub.auth.models import AnonymousUser
from seahub.test_utils import BaseTestCase from seahub.test_utils import BaseTestCase
from seahub.views.file import send_file_access_msg from seahub.views.file import send_file_access_msg

View File

@ -1,8 +1,8 @@
import json import json
from django.core.urlresolvers import reverse from django.core.urlresolvers import reverse
import pytest
from constance import config pytestmark = pytest.mark.django_db
from seahub.options.models import UserOptions from seahub.options.models import UserOptions
from seahub.test_utils import BaseTestCase from seahub.test_utils import BaseTestCase
@ -10,6 +10,8 @@ from seahub.test_utils import BaseTestCase
class LibrariesTest(BaseTestCase): class LibrariesTest(BaseTestCase):
def setUp(self): def setUp(self):
self.url = reverse('libraries') self.url = reverse('libraries')
from constance import config
self.config = config
def test_user_guide(self): def test_user_guide(self):
self.login_as(self.user) self.login_as(self.user)
@ -34,15 +36,15 @@ class LibrariesTest(BaseTestCase):
# user # user
self.login_as(self.user) self.login_as(self.user)
config.ENABLE_USER_CREATE_ORG_REPO = 1 self.config.ENABLE_USER_CREATE_ORG_REPO = 1
assert bool(config.ENABLE_USER_CREATE_ORG_REPO) is True assert bool(self.config.ENABLE_USER_CREATE_ORG_REPO) is True
resp = self.client.get(self.url) resp = self.client.get(self.url)
self.assertEqual(200, resp.status_code) self.assertEqual(200, resp.status_code)
assert resp.context['can_add_pub_repo'] is True assert resp.context['can_add_pub_repo'] is True
config.ENABLE_USER_CREATE_ORG_REPO = 0 self.config.ENABLE_USER_CREATE_ORG_REPO = 0
assert bool(config.ENABLE_USER_CREATE_ORG_REPO) is False assert bool(self.config.ENABLE_USER_CREATE_ORG_REPO) is False
resp = self.client.get(self.url) resp = self.client.get(self.url)
self.assertEqual(200, resp.status_code) self.assertEqual(200, resp.status_code)
@ -54,15 +56,15 @@ class LibrariesTest(BaseTestCase):
# admin # admin
self.login_as(self.admin) self.login_as(self.admin)
config.ENABLE_USER_CREATE_ORG_REPO = 1 self.config.ENABLE_USER_CREATE_ORG_REPO = 1
assert bool(config.ENABLE_USER_CREATE_ORG_REPO) is True assert bool(self.config.ENABLE_USER_CREATE_ORG_REPO) is True
resp = self.client.get(self.url) resp = self.client.get(self.url)
self.assertEqual(200, resp.status_code) self.assertEqual(200, resp.status_code)
assert resp.context['can_add_pub_repo'] is True assert resp.context['can_add_pub_repo'] is True
config.ENABLE_USER_CREATE_ORG_REPO = 0 self.config.ENABLE_USER_CREATE_ORG_REPO = 0
assert bool(config.ENABLE_USER_CREATE_ORG_REPO) is False assert bool(self.config.ENABLE_USER_CREATE_ORG_REPO) is False
resp = self.client.get(self.url) resp = self.client.get(self.url)
self.assertEqual(200, resp.status_code) self.assertEqual(200, resp.status_code)

View File

@ -1,6 +1,7 @@
from django.core.urlresolvers import reverse from django.core.urlresolvers import reverse
from constance import config import pytest
pytestmark = pytest.mark.django_db
from seahub.test_utils import BaseTestCase from seahub.test_utils import BaseTestCase
@ -8,15 +9,17 @@ from seahub.test_utils import BaseTestCase
class SysSettingsTest(BaseTestCase): class SysSettingsTest(BaseTestCase):
def setUp(self): def setUp(self):
self.clear_cache() # make sure cache is clean self.clear_cache() # make sure cache is clean
from constance import config
self.config = config
self.old_config = config.LOGIN_ATTEMPT_LIMIT self.old_config = self.config.LOGIN_ATTEMPT_LIMIT
config.LOGIN_ATTEMPT_LIMIT = 1 self.config.LOGIN_ATTEMPT_LIMIT = 1
self.url = reverse('sys_sudo_mode') self.url = reverse('sys_sudo_mode')
self.login_as(self.admin) self.login_as(self.admin)
def tearDown(self): def tearDown(self):
config.LOGIN_ATTEMPT_LIMIT = self.old_config self.config.LOGIN_ATTEMPT_LIMIT = self.old_config
self.clear_cache() self.clear_cache()
def test_can_get(self): def test_can_get(self):

View File

@ -10,7 +10,8 @@ from seahub.options.models import (UserOptions, KEY_FORCE_PASSWD_CHANGE)
from seahub.test_utils import BaseTestCase from seahub.test_utils import BaseTestCase
from seahub.utils.ms_excel import write_xls as real_write_xls from seahub.utils.ms_excel import write_xls as real_write_xls
from constance import config import pytest
pytestmark = pytest.mark.django_db
from seaserv import ccnet_threaded_rpc from seaserv import ccnet_threaded_rpc
@ -167,6 +168,9 @@ class BatchAddUserTest(BaseTestCase):
self.clear_cache() self.clear_cache()
self.login_as(self.admin) self.login_as(self.admin)
from constance import config
self.config = config
self.new_users = [] self.new_users = []
self.excel_file = os.path.join(os.getcwd(), 'tests/seahub/views/sysadmin/batch_add_user.xlsx') self.excel_file = os.path.join(os.getcwd(), 'tests/seahub/views/sysadmin/batch_add_user.xlsx')
data_list = [] data_list = []
@ -209,7 +213,7 @@ class BatchAddUserTest(BaseTestCase):
assert User.objects.get(e) is not None assert User.objects.get(e) is not None
def test_can_batch_add_when_pwd_change_required(self): def test_can_batch_add_when_pwd_change_required(self):
config.FORCE_PASSWORD_CHANGE = 1 self.config.FORCE_PASSWORD_CHANGE = 1
for e in self.new_users: for e in self.new_users:
assert len(UserOptions.objects.filter( assert len(UserOptions.objects.filter(
@ -234,7 +238,7 @@ class BatchAddUserTest(BaseTestCase):
assert UserOptions.objects.passwd_change_required(e) assert UserOptions.objects.passwd_change_required(e)
def test_can_batch_add_when_pwd_change_not_required(self): def test_can_batch_add_when_pwd_change_not_required(self):
config.FORCE_PASSWORD_CHANGE = 0 self.config.FORCE_PASSWORD_CHANGE = 0
for e in self.new_users: for e in self.new_users:
assert len(UserOptions.objects.filter( assert len(UserOptions.objects.filter(

View File

@ -1,5 +1,6 @@
from django.core.urlresolvers import reverse from django.core.urlresolvers import reverse
from constance import config import pytest
pytestmark = pytest.mark.django_db
from seahub.options.models import (UserOptions, KEY_FORCE_PASSWD_CHANGE, from seahub.options.models import (UserOptions, KEY_FORCE_PASSWD_CHANGE,
VAL_FORCE_PASSWD_CHANGE) VAL_FORCE_PASSWD_CHANGE)
@ -9,13 +10,15 @@ from seahub.test_utils import BaseTestCase
class UserAddTest(BaseTestCase): class UserAddTest(BaseTestCase):
def setUp(self): def setUp(self):
self.clear_cache() self.clear_cache()
from constance import config
self.config = config
self.new_user = 'new_user@test.com' self.new_user = 'new_user@test.com'
self.login_as(self.admin) self.login_as(self.admin)
self.remove_user(self.new_user) self.remove_user(self.new_user)
def test_can_add_when_pwd_change_required(self): def test_can_add_when_pwd_change_required(self):
config.FORCE_PASSWORD_CHANGE = 1 self.config.FORCE_PASSWORD_CHANGE = 1
assert len(UserOptions.objects.filter( assert len(UserOptions.objects.filter(
email=self.new_user, option_key=KEY_FORCE_PASSWD_CHANGE)) == 0 email=self.new_user, option_key=KEY_FORCE_PASSWD_CHANGE)) == 0
@ -34,7 +37,7 @@ class UserAddTest(BaseTestCase):
option_key=KEY_FORCE_PASSWD_CHANGE).option_val == VAL_FORCE_PASSWD_CHANGE option_key=KEY_FORCE_PASSWD_CHANGE).option_val == VAL_FORCE_PASSWD_CHANGE
def test_can_add_when_pwd_change_not_required(self): def test_can_add_when_pwd_change_not_required(self):
config.FORCE_PASSWORD_CHANGE = 0 self.config.FORCE_PASSWORD_CHANGE = 0
assert len(UserOptions.objects.filter( assert len(UserOptions.objects.filter(
email=self.new_user, option_key=KEY_FORCE_PASSWD_CHANGE)) == 0 email=self.new_user, option_key=KEY_FORCE_PASSWD_CHANGE)) == 0

View File

@ -1,7 +1,8 @@
from mock import patch from mock import patch
from django.core import mail from django.core import mail
from django.core.urlresolvers import reverse from django.core.urlresolvers import reverse
from constance import config import pytest
pytestmark = pytest.mark.django_db
from seahub.base.accounts import User from seahub.base.accounts import User
from seahub.options.models import (UserOptions, KEY_FORCE_PASSWD_CHANGE, from seahub.options.models import (UserOptions, KEY_FORCE_PASSWD_CHANGE,
@ -13,6 +14,8 @@ from seahub.test_utils import BaseTestCase
class UserResetTest(BaseTestCase): class UserResetTest(BaseTestCase):
def setUp(self): def setUp(self):
self.clear_cache() self.clear_cache()
from constance import config
self.config = config
self.login_as(self.admin) self.login_as(self.admin)
@ -37,7 +40,7 @@ class UserResetTest(BaseTestCase):
self.assertEqual(len(mail.outbox), 1) self.assertEqual(len(mail.outbox), 1)
def test_can_reset_when_pwd_change_required(self): def test_can_reset_when_pwd_change_required(self):
config.FORCE_PASSWORD_CHANGE = 1 self.config.FORCE_PASSWORD_CHANGE = 1
assert len(UserOptions.objects.filter( assert len(UserOptions.objects.filter(
email=self.user.username, option_key=KEY_FORCE_PASSWD_CHANGE)) == 0 email=self.user.username, option_key=KEY_FORCE_PASSWD_CHANGE)) == 0
@ -55,7 +58,7 @@ class UserResetTest(BaseTestCase):
option_key=KEY_FORCE_PASSWD_CHANGE).option_val == VAL_FORCE_PASSWD_CHANGE option_key=KEY_FORCE_PASSWD_CHANGE).option_val == VAL_FORCE_PASSWD_CHANGE
def test_can_reset_when_pwd_change_not_required(self): def test_can_reset_when_pwd_change_not_required(self):
config.FORCE_PASSWORD_CHANGE = 0 self.config.FORCE_PASSWORD_CHANGE = 0
assert len(UserOptions.objects.filter( assert len(UserOptions.objects.filter(
email=self.user.username, option_key=KEY_FORCE_PASSWD_CHANGE)) == 0 email=self.user.username, option_key=KEY_FORCE_PASSWD_CHANGE)) == 0