Improve smart settings tests
Use a test namepsace instead of a real one. Signed-off-by: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>
This commit is contained in:
@@ -2,3 +2,6 @@ from __future__ import unicode_literals
|
||||
|
||||
ENVIRONMENT_TEST_NAME = 'PAGINATE_BY'
|
||||
ENVIRONMENT_TEST_VALUE = '999999'
|
||||
|
||||
TEST_NAMESPACE_LABEL = 'test namespace label'
|
||||
TEST_NAMESPACE_NAME = 'test_namespace_name'
|
||||
|
||||
17
mayan/apps/smart_settings/tests/mixins.py
Normal file
17
mayan/apps/smart_settings/tests/mixins.py
Normal file
@@ -0,0 +1,17 @@
|
||||
from __future__ import absolute_import, unicode_literals
|
||||
|
||||
from ..classes import Namespace
|
||||
|
||||
from .literals import TEST_NAMESPACE_LABEL, TEST_NAMESPACE_NAME
|
||||
|
||||
|
||||
class SmartSettingTestMixin(object):
|
||||
def _create_test_settings_namespace(self):
|
||||
try:
|
||||
self.test_settings_namespace = Namespace.get(
|
||||
name=TEST_NAMESPACE_NAME
|
||||
)
|
||||
except KeyError:
|
||||
self.test_settings_namespace = Namespace(
|
||||
label=TEST_NAMESPACE_LABEL, name=TEST_NAMESPACE_NAME
|
||||
)
|
||||
@@ -1,32 +0,0 @@
|
||||
from __future__ import absolute_import, unicode_literals
|
||||
|
||||
from mayan.apps.common.tests import GenericViewTestCase
|
||||
|
||||
from ..permissions import permission_settings_view
|
||||
|
||||
|
||||
class SmartSettingViewPermissionsTestCase(GenericViewTestCase):
|
||||
def setUp(self):
|
||||
super(SmartSettingViewPermissionsTestCase, self).setUp()
|
||||
self.login_user()
|
||||
|
||||
def test_view_access_denied(self):
|
||||
response = self.get('settings:namespace_list')
|
||||
|
||||
self.assertEqual(response.status_code, 403)
|
||||
|
||||
response = self.get(
|
||||
'settings:namespace_detail', args=('common',)
|
||||
)
|
||||
self.assertEqual(response.status_code, 403)
|
||||
|
||||
def test_view_access_permitted(self):
|
||||
self.grant_permission(permission=permission_settings_view)
|
||||
|
||||
response = self.get('settings:namespace_list')
|
||||
self.assertEqual(response.status_code, 200)
|
||||
|
||||
response = self.get(
|
||||
'settings:namespace_detail', args=('common',)
|
||||
)
|
||||
self.assertEqual(response.status_code, 200)
|
||||
41
mayan/apps/smart_settings/tests/test_views.py
Normal file
41
mayan/apps/smart_settings/tests/test_views.py
Normal file
@@ -0,0 +1,41 @@
|
||||
from __future__ import absolute_import, unicode_literals
|
||||
|
||||
from mayan.apps.common.tests import GenericViewTestCase
|
||||
|
||||
from ..permissions import permission_settings_view
|
||||
|
||||
from .mixins import SmartSettingTestMixin
|
||||
|
||||
|
||||
class SmartSettingViewTestCase(SmartSettingTestMixin, GenericViewTestCase):
|
||||
def setUp(self):
|
||||
super(SmartSettingViewTestCase, self).setUp()
|
||||
self._create_test_settings_namespace()
|
||||
|
||||
def _request_namespace_list_view(self):
|
||||
return self.get(viewname='settings:namespace_list')
|
||||
|
||||
def _request_namespace_detail_view(self):
|
||||
return self.get(
|
||||
viewname='settings:namespace_detail', kwargs={
|
||||
'namespace_name': self.test_settings_namespace.name
|
||||
}
|
||||
)
|
||||
|
||||
def test_namespace_list_view_no_permission(self):
|
||||
response = self._request_namespace_list_view()
|
||||
self.assertEqual(response.status_code, 403)
|
||||
|
||||
def test_namespace_detail_view_no_permission(self):
|
||||
response = self._request_namespace_detail_view()
|
||||
self.assertEqual(response.status_code, 403)
|
||||
|
||||
def test_namespace_list_view_with_permission(self):
|
||||
self.grant_permission(permission=permission_settings_view)
|
||||
response = self._request_namespace_list_view()
|
||||
self.assertEqual(response.status_code, 200)
|
||||
|
||||
def test_namespace_detail_view_with_permission(self):
|
||||
self.grant_permission(permission=permission_settings_view)
|
||||
response = self._request_namespace_detail_view()
|
||||
self.assertEqual(response.status_code, 200)
|
||||
Reference in New Issue
Block a user