【发布时间】:2015-02-14 01:15:35
【问题描述】:
我有一个 Pyramid 应用程序,它在请求对象上使用了许多自定义项,特别是,我想确保我的设置已正确配置并且它们已实际配置。
例如,我有以下(为简洁起见):
config = Configurator()
config.add_request_method(lambda self: portal_object, name="portal", property=True)
config.set_default_permission('view')
config.add_request_method(auth.get_user, 'user', reify=True)
如果配置上没有设置这些东西,应用程序将无法运行,或者将完全打开。
我有兴趣测试的东西是:
- 我要在请求中设置的
portal属性是我在配置应用程序时传递的属性 - 默认情况下,我的视图具有权限集(因此未经身份验证的用户具有被禁止的访问权限)
- 我的请求总是有一个
user属性,并且这个属性被缓存了。
到目前为止,我尝试生成一个“真正的” Pyramid 请求,其中涉及从 pyramid.router 复制/粘贴代码(不酷:( ),虽然我没有尝试过,但我想如果我正在设置类似WebTest 的东西,但我会测试整个堆栈,我目前对此不太感兴趣(尤其是视图已经单独测试过。)
我有什么可能测试我的应用程序的配置,(希望)只有这个?
【问题讨论】:
标签: python unit-testing configuration integration-testing pyramid