pecan.testing
– Pecan Testing¶
The pecan.testing
module includes fixtures to help test Pecan
applications.
- pecan.testing.load_test_app(config=None, **kwargs)¶
Used for functional tests where you need to test your literal application and its integration with the framework.
- Parameters
config – Can be a dictionary containing configuration, a string which represents a (relative) configuration filename or
None
which will fallback to get thePECAN_CONFIG
env variable.
returns a pecan.Pecan WSGI application wrapped in a webtest.TestApp instance.
- ::
app = load_test_app(‘path/to/some/config.py’)
resp = app.get(‘/path/to/some/resource’).status_int assert resp.status_int == 200
resp = app.post(‘/path/to/some/resource’, params={‘param’: ‘value’}) assert resp.status_int == 302
Alternatively you could call
load_test_app
with no parameters if the environment variable is setapp = load_test_app() resp = app.get('/path/to/some/resource').status_int assert resp.status_int == 200
- pecan.testing.reset_global_config()¶
When tests alter application configurations they can get sticky and pollute other tests that might rely on a pristine configuration. This helper will reset the config by overwriting it with
pecan.configuration.DEFAULT
.