__init__.py
36 lines
| 1.1 KiB
| text/x-python
|
PythonLexer
Marcin Kuzminski
|
r0 | """Pylons application test package | ||
This package assumes the Pylons environment is already loaded, such as | ||||
when this script is imported from the `nosetests --with-pylons=test.ini` | ||||
command. | ||||
This module initializes the application via ``websetup`` (`paster | ||||
setup-app`) and provides the base testing objects. | ||||
""" | ||||
from unittest import TestCase | ||||
from paste.deploy import loadapp | ||||
from paste.script.appinstall import SetupCommand | ||||
from pylons import config, url | ||||
from routes.util import URLGenerator | ||||
from webtest import TestApp | ||||
import pylons.test | ||||
__all__ = ['environ', 'url', 'TestController'] | ||||
# Invoke websetup with the current config file | ||||
SetupCommand('setup-app').run([config['__file__']]) | ||||
environ = {} | ||||
class TestController(TestCase): | ||||
def __init__(self, *args, **kwargs): | ||||
if pylons.test.pylonsapp: | ||||
wsgiapp = pylons.test.pylonsapp | ||||
else: | ||||
wsgiapp = loadapp('config:%s' % config['__file__']) | ||||
self.app = TestApp(wsgiapp) | ||||
url._push_object(URLGenerator(config['routes.map'], environ)) | ||||
TestCase.__init__(self, *args, **kwargs) | ||||