我需要测试用户是否处于活动状态。我有这个功能:
Service.py
@validate_input({
'code': {'required': True}
})
def signup_complete(self, data):
try:
code = VerificationCode.objects.select_related('user').get(code=data["code"],
code_type="registration",
expiration_date__gt=timezone.now())
except VerificationCode.DoesNotExist:
raise NotFound(_(u"Неверный код восстановленыя"), 1001)
user = code.user
user.is_active = True
user.save()
code.delete()
我试着为这个函数写一个测试,但我不知道我需要发送什么参数。
Test.py
def test_signup_complete(self):
user = SiteUser.objects.get(email="Test@gmail.com")
code = VerificationCode.objects.get_or_create(user=user, code_type="registration", code=user.code)
UserService(user).signup_complete()
self.assertEqual(user.is_active, True)
答案 0 :(得分:1)
您可以重现用户注册和激活所需的所有步骤。访问注册页面,发送填写的表单,检查带有激活码的电子邮件等。使用这种方法(与您当前的代码相比更加可靠),您可以获得与真实用户获取确认代码相同的方式(例如,来自个人资料激活电子邮件)。