【发布时间】:2012-04-26 07:16:44
【问题描述】:
我编写了以下装饰器,用于一些我不希望用户登录的 Django 视图(如 register 和 forgot-password):
def not_logged_in(view, redirect_url=None):
def _wrapper(request, *args, **kwargs):
if request.user.is_authenticated():
return HttpResponseRedirect(
redirect_url or '/'
)
return view(*args, **kwargs)
return _wrapper
有了它,我就可以轻松写了:
@not_logged_in
def register(request):
...
我已经为正在使用它的视图编写了单元测试,并且它可以正常工作,但我想知道单独对 not_logged_in 函数进行单元测试的最佳方法是什么?
【问题讨论】:
-
您查看过 login_required 的测试吗? code.djangoproject.com/browser/django/trunk/django/contrib/auth/…
-
@dannyroa 非常感谢。我现在就去做。我很确定这将是一个很好的参考:)
标签: python django unit-testing decorator