Extended PROTETED_URLS tests
This commit is contained in:
parent
4344cb978b
commit
caeee16657
@ -12,6 +12,8 @@ class AccessTestCase(TestCase):
|
|||||||
|
|
||||||
PROJECTS = ()
|
PROJECTS = ()
|
||||||
|
|
||||||
|
PROTECTED_URLS = ()
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def setUpTestData(cls):
|
def setUpTestData(cls):
|
||||||
|
|
||||||
@ -39,6 +41,14 @@ class AccessTestCase(TestCase):
|
|||||||
|
|
||||||
return
|
return
|
||||||
|
|
||||||
|
def test_protected_views(self):
|
||||||
|
|
||||||
|
self.assertAccess({ x: False for x in self.PROTECTED_URLS })
|
||||||
|
|
||||||
|
if 'admin' in self.users:
|
||||||
|
self.client.force_login(self.users['admin'])
|
||||||
|
self.assertAccess({ x: True for x in self.PROTECTED_URLS })
|
||||||
|
|
||||||
def login(self, user, passwd):
|
def login(self, user, passwd):
|
||||||
response = self.client.post('/login', {'username': user, 'password': passwd})
|
response = self.client.post('/login', {'username': user, 'password': passwd})
|
||||||
self.assertEqual(response.status_code, 302, f"Failed to login as {user}")
|
self.assertEqual(response.status_code, 302, f"Failed to login as {user}")
|
||||||
|
|||||||
@ -26,6 +26,20 @@ class InterfaceAccessTestCase(AccessTestCase):
|
|||||||
{'name': 'Current Repertoire', 'ensemble': 'be-sharps'},
|
{'name': 'Current Repertoire', 'ensemble': 'be-sharps'},
|
||||||
)
|
)
|
||||||
|
|
||||||
|
PROTECTED_URLS = (
|
||||||
|
'/ensembles/be-sharps',
|
||||||
|
'/ensembles/be-sharps/new-project',
|
||||||
|
|
||||||
|
'/projects/3',
|
||||||
|
'/projects/3/resources',
|
||||||
|
'/projects/3/resources/add',
|
||||||
|
|
||||||
|
'/admin/interface/ensemble/',
|
||||||
|
'/admin/interface/project/',
|
||||||
|
'/admin/interface/resource/',
|
||||||
|
'/admin/interface/wikipage/',
|
||||||
|
)
|
||||||
|
|
||||||
def test_bad_login(self):
|
def test_bad_login(self):
|
||||||
with self.assertRaisesMessage(self.failureException, 'Failed to login as admin'):
|
with self.assertRaisesMessage(self.failureException, 'Failed to login as admin'):
|
||||||
self.login('admin', 'admin')
|
self.login('admin', 'admin')
|
||||||
|
|||||||
@ -43,6 +43,13 @@ class LibraryTestCase(AccessTestCase):
|
|||||||
'/collections/2/works/1/add_to_project',
|
'/collections/2/works/1/add_to_project',
|
||||||
'/collections/2/works/1/upload',
|
'/collections/2/works/1/upload',
|
||||||
'/collections/2/docs/1/annotate',
|
'/collections/2/docs/1/annotate',
|
||||||
|
|
||||||
|
'/admin/library/collection/',
|
||||||
|
'/admin/library/document/',
|
||||||
|
'/admin/library/ensembleaccess/',
|
||||||
|
'/admin/library/orchestration/',
|
||||||
|
'/admin/library/projectitem/',
|
||||||
|
'/admin/library/work/',
|
||||||
)
|
)
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
@ -89,12 +96,12 @@ class LibraryTestCase(AccessTestCase):
|
|||||||
def test_integration(self):
|
def test_integration(self):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
def test_get_views(self):
|
# def test_get_views(self):
|
||||||
|
#
|
||||||
self.assertAccess({ x: False for x in self.PROTECTED_URLS })
|
# self.assertAccess({ x: False for x in self.PROTECTED_URLS })
|
||||||
|
#
|
||||||
self.login('admin', 'secret')
|
# self.login('admin', 'secret')
|
||||||
self.assertAccess({ x: True for x in self.PROTECTED_URLS })
|
# self.assertAccess({ x: True for x in self.PROTECTED_URLS })
|
||||||
|
|
||||||
def test_superuser_access(self):
|
def test_superuser_access(self):
|
||||||
self.login('admin', 'secret')
|
self.login('admin', 'secret')
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user