单元测试A @verified_email_required视图

问题描述 投票:0回答:1

我正在尝试对使用@verified_email_required装饰的视图之一进行单元测试。我无法找出如何将用户设置为已验证其电子邮件,以便允许他们查看该页面并断言该页面使用正确的模板(创建超级用户无济于事)。

这是我收到的错误

AssertionError: False is not true : Template 'enrolment/index.html' was not a template used to render the response. Actual template(s) used: account/verified_email_required.html, account/base.html, base.html

这是我的测试

def test_verified_user_uses_correct_template(self):
    user = User.objects.create_superuser('username')
    self.client.force_login(user)
    response = self.client.get('/enrolment/')
    self.assertTemplateUsed(response, 'enrolment/index.html')

谢谢。

django selenium testing tdd
1个回答
1
投票

这不是标准的Django身份验证,而是django-allauth软件包中的一个。

要验证电子邮件地址,您必须使用EmailAdress创建一个verified=True对象>

 EmailAddress.objects.create(user=user, email="[email protected]", primary=True, verified=True)

您可以在source of django-allauth中看到以下模型,也可以在package tests中看到一些

© www.soinside.com 2019 - 2024. All rights reserved.