/usr/share/pyshared/tests/test_configuration.py is in python-turbogears2 2.1.5-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 | """
Testing for TG2 Configuration
"""
from nose.tools import eq_, raises
import atexit
from tg.util import Bunch
from tg.configuration import AppConfig, config
from tests.base import TestWSGIController, make_app, setup_session_dir, teardown_session_dir, create_request
def setup():
setup_session_dir()
def teardown():
teardown_session_dir()
class TestPylonsConfigWrapper:
def setup(self):
self.config = config
def test_create(self):
pass
def test_getitem(self):
expected_keys = ['global_conf', 'use_sqlalchemy', 'package', 'pylons.app_globals', 'call_on_shutdown']
for key in expected_keys:
self.config[key]
@raises(KeyError)
def test_getitem_bad(self):
self.config['no_such_key']
def test_setitem(self):
self.config['no_such_key'] = 'something'
def test_delattr(self):
del self.config.use_sqlalchemy
eq_(hasattr(self.config, 'use_sqlalchemy'), False)
self.config.use_sqlalchemy = True
@raises(AttributeError)
def test_delattr_bad(self):
del self.config.i_dont_exist
class TestAppConfig:
def setup(self):
self.config = AppConfig()
# set up some required paths and config settings
# FIXME: these seem to be needed so that
# other tests don't suffer - but that's a nasty
# side-effect. setup for those tests actually needs
# fixing.
config['pylons.paths']['static_files'] = "test"
config["pylons.app_globals"] = Bunch()
config["use_sqlalchemy"] = False
config["global_conf"] = Bunch()
config["package"] = "test"
config["call_on_shutdown"] = "foo"
config["render_functions"] = Bunch()
config['beaker.session.secret'] = 'some_secret'
def test_create(self):
pass
def test_setup_startup_and_shutdown_startup_callable(self):
def func():
a = 7
self.config.call_on_startup = [func]
self.config.setup_startup_and_shutdown()
def test_setup_startup_and_shutdown_callable_startup_with_exception(self):
def func():
raise Exception
self.config.call_on_startup = [func]
self.config.setup_startup_and_shutdown()
def test_setup_startup_and_shutdown_startup_not_callable(self):
self.config.call_on_startup = ['not callable']
self.config.setup_startup_and_shutdown()
def test_setup_startup_and_shutdown_shutdown_not_callable(self):
self.config.call_on_shutdown = ['not callable']
self.config.setup_startup_and_shutdown()
def test_setup_startup_and_shutdown_shutdown_callable(self):
def func():
a = 7
self.config.call_on_shutdown = [func]
self.config.setup_startup_and_shutdown()
assert (func, (), {}) in atexit._exithandlers
#this tests fails
def _test_setup_helpers_and_globals(self):
self.config.setup_helpers_and_globals()
def test_setup_sa_auth_backend(self):
self.config.setup_sa_auth_backend()
def test_setup_chameleon_genshi_renderer(self):
self.config.paths.templates = 'template_path'
self.config.setup_chameleon_genshi_renderer()
def test_setup_genshi_renderer(self):
self.config.paths.templates = 'template_path'
self.config.setup_genshi_renderer()
def test_setup_jinja_renderer(self):
self.config.paths.templates = 'template_path'
self.config.setup_jinja_renderer()
def test_setup_mako_renderer(self):
self.config.paths.templates = ['template_path']
self.config.setup_mako_renderer(use_dotted_templatenames=True)
def test_setup_sqlalchemy(self):
config['sqlalchemy.url'] = 'sqlite://'
class Package:
class model:
@classmethod
def init_model(package, engine):
pass
self.config.package = Package()
self.config.setup_sqlalchemy()
def test_add_auth_middleware(self):
class Dummy:pass
self.config.sa_auth.dbsession = Dummy()
self.config.sa_auth.user_class = Dummy
self.config.sa_auth.group_class = Dummy
self.config.sa_auth.permission_class = Dummy
self.config.sa_auth.cookie_secret = 'dummy'
self.config.sa_auth.password_encryption_method = 'sha'
self.config.add_auth_middleware(None, None)
def test_add_static_file_middleware(self):
self.config.add_static_file_middleware(None)
|