def test_confirm_verification_code(mock_confirm_code):
    helpers.confirm_verification_code(
        email='*****@*****.**',
        verification_code='1234',
    )
    assert mock_confirm_code.call_count == 1
    assert mock_confirm_code.call_args == mock.call({
        'email': '*****@*****.**', 'code': '1234'
    })
示例#2
0
 def clean_code(self):
     try:
         response = helpers.confirm_verification_code(
             email=self.cleaned_data['email'],
             verification_code=self.cleaned_data['code'],
         )
     except HTTPError as error:
         if error.response.status_code == 400:
             self.add_error('code', self.MESSAGE_INVALID_CODE)
         else:
             raise
     else:
         self.cleaned_data['cookies'] = helpers.parse_set_cookie_header(
             response.headers['set-cookie'])
     return None
示例#3
0
 def clean_code(self):
     try:
         response = helpers.confirm_verification_code(
             email=self.cleaned_data['email'],
             verification_code=self.cleaned_data['code'],
         )
     except HTTPError as error:
         if error.response.status_code == 400:
             self.add_error('code', self.MESSAGE_INVALID_CODE)
         else:
             raise
     else:
         self.cleaned_data['cookies'] = helpers.cookiekjar_to_simple_cookie(
             response.cookies)
     return None
 def validate_code(self, form, response):
     try:
         upstream_response = helpers.confirm_verification_code(
             email=form.cleaned_data['email'],
             verification_code=form.cleaned_data['code'],
         )
     except HTTPError as error:
         if error.response.status_code in [400, 404]:
             self.storage.set_step_data(
                 constants.VERIFICATION, {
                     form.add_prefix('email'): [form.cleaned_data['email']],
                     form.add_prefix('code'): [None]
                 })
             return self.render_revalidation_failure(
                 failed_step=constants.VERIFICATION, form=form)
         else:
             raise
     else:
         cookies = helpers.parse_set_cookie_header(
             upstream_response.headers['set-cookie'])
         response.cookies.update(cookies)
         self.storage.extra_data['is_new_enrollment'] = True
         return response