I would like to write doctests for my pyramid web app, using the webtest module. I tried it like this:
from my_webapp import main
from webtest import TestApp
app = TestApp(main({}))
result = app.get('/')
This raises a KeyError
(because some.url
is not known) when my code reaches this line:
url = request.registry.settings['some.url']
The value of some.url
is specified in the paster ini file of my application. Is there a simple way to use my development.ini
when running my test code? I did not yet fully understand how/when the ini file is loaded during pyramid start up, so it's hard to figure out where to load it while testing.
main
is invoked with the contents of your ini file. A simple way to load your app from an ini is:This expects "testing.ini" to be in the current working directory, so you may need to tweak that. If you'd like it to be relative to a spot in your tree you can use: