tests: visit admin pages
This commit is contained in:
parent
99fd1f7193
commit
238a014684
|
@ -0,0 +1,97 @@
|
|||
import sys
|
||||
import shutil
|
||||
import tempfile
|
||||
|
||||
import pytest
|
||||
|
||||
from quixote import cleanup, get_publisher
|
||||
from qommon import errors, sessions
|
||||
from wcs import formdef, publisher
|
||||
from wcs.qommon.http_request import HTTPRequest
|
||||
from wcs.formdef import FormDef
|
||||
from wcs.categories import Category
|
||||
import wcs.forms.root
|
||||
|
||||
sys.modules['formdef'] = formdef
|
||||
|
||||
|
||||
def setup_module(module):
|
||||
cleanup()
|
||||
|
||||
global pub, req
|
||||
|
||||
publisher.WcsPublisher.APP_DIR = tempfile.mkdtemp()
|
||||
pub = publisher.WcsPublisher.create_publisher()
|
||||
|
||||
req = HTTPRequest(None, {'SCRIPT_NAME': '/', 'SERVER_NAME': 'example.net'})
|
||||
req._user = None
|
||||
req.language = 'en'
|
||||
pub._set_request(req)
|
||||
req.session = sessions.Session(id=1)
|
||||
|
||||
def create_superuser():
|
||||
global user1
|
||||
user1 = pub.user_class(name='user-one-role')
|
||||
user1.id = 'user-one-role'
|
||||
user1.is_admin = True
|
||||
user1.store()
|
||||
|
||||
def teardown_module(module):
|
||||
shutil.rmtree(pub.APP_DIR)
|
||||
|
||||
|
||||
def visit_page(path, user=None):
|
||||
req._user = req.session.user = user
|
||||
if req._user:
|
||||
req.session.user = user.id
|
||||
return str(get_publisher().root_directory._q_traverse(path.split('/')))
|
||||
|
||||
|
||||
def test_empty_site():
|
||||
visit_page('admin/')
|
||||
|
||||
|
||||
def test_with_user():
|
||||
create_superuser()
|
||||
with pytest.raises(errors.AccessUnauthorizedError):
|
||||
visit_page('admin/')
|
||||
visit_page('admin/', user=user1)
|
||||
|
||||
def test_forms():
|
||||
visit_page('admin/forms/', user=user1)
|
||||
visit_page('admin/forms/new', user=user1)
|
||||
|
||||
def test_workflows():
|
||||
visit_page('admin/workflows/', user=user1)
|
||||
visit_page('admin/workflows/new', user=user1)
|
||||
|
||||
def test_users():
|
||||
visit_page('admin/users/', user=user1)
|
||||
visit_page('admin/users/new', user=user1)
|
||||
|
||||
def test_roles():
|
||||
visit_page('admin/roles/', user=user1)
|
||||
visit_page('admin/roles/new', user=user1)
|
||||
|
||||
def test_categories():
|
||||
visit_page('admin/categories/', user=user1)
|
||||
visit_page('admin/categories/new', user=user1)
|
||||
|
||||
def test_settings():
|
||||
visit_page('admin/settings/', user=user1)
|
||||
visit_page('admin/settings/themes', user=user1)
|
||||
visit_page('admin/settings/users', user=user1)
|
||||
visit_page('admin/settings/template', user=user1)
|
||||
visit_page('admin/settings/misc', user=user1)
|
||||
visit_page('admin/settings/emails', user=user1)
|
||||
visit_page('admin/settings/debug_options', user=user1)
|
||||
visit_page('admin/settings/language', user=user1)
|
||||
visit_page('admin/settings/import', user=user1)
|
||||
visit_page('admin/settings/export', user=user1)
|
||||
visit_page('admin/settings/identification', user=user1)
|
||||
visit_page('admin/settings/sitename', user=user1)
|
||||
visit_page('admin/settings/sms', user=user1)
|
||||
visit_page('admin/settings/certificates', user=user1)
|
||||
visit_page('admin/settings/texts', user=user1)
|
||||
visit_page('admin/settings/session', user=user1)
|
||||
visit_page('admin/settings/admin-permissions', user=user1)
|
Loading…
Reference in New Issue