예제 #1
0
 def test_GET(self):
     self.assertGET(
         200,
         'account:reset-password:reset',
         get_token(self.user),
         login=False,
     )
예제 #2
0
    def test_logged_in(self):
        response = self.assertGET(
            302,
            'account:reset-password:reset',
            get_token(self.user),
        )

        self.assertRedirectsToUrl(response, settings.LOGIN_REDIRECT_URL)
예제 #3
0
    def save(self):
        user = self.cleaned_data['user']

        if user is None:
            return

        send_mail((user.email, ), 'account/reset_password/reset.email', {
            'token': get_token(user),
        })
예제 #4
0
    def save(self):
        user = super().save()

        send_mail((user.email, ),
                  'registration/validate.email', {
                      'token': get_token(user),
                  },
                  fail_silently=True)

        return user
예제 #5
0
    def test_GET_invalid_token(self):
        token = '{}invalid-suffix'.format(get_token(self.user))

        response = self.assertGET(
            302,
            'account:reset-password:reset',
            token,
            login=False,
        )

        self.assertRedirectsToUrl(response, settings.LOGIN_REDIRECT_URL)
예제 #6
0
    def test_POST_missing(self):
        response = self.assertPOST(
            {},
            'account:reset-password:reset',
            get_token(self.user),
            login=False,
            status_code=200,
        )

        self.assertFormError(response, 'form', 'new_password1',
                             ["This field is required."])
예제 #7
0
파일: tests.py 프로젝트: Fuchs/freenodejobs
    def test_validate(self):
        user = self.assertRegister()

        self.assertGET(
            200,
            'registration:validate',
            get_token(user),
            login=None,
            follow=True,
        )

        user.refresh_from_db()
        self.assertTrue(user.email_validated)
예제 #8
0
    def save(self):
        # Ensure that we generate tokens using their existing email
        self.instance.refresh_from_db()

        new_email = self.cleaned_data['email']

        send_mail((new_email, ),
                  'account/change_email/validate.email', {
                      'token': get_token(self.instance, new_email),
                  },
                  fail_silently=True)

        return new_email
예제 #9
0
    def test_POST(self):
        old_password = self.user.password

        self.assertPOST(
            {
                'new_password1': 'foobarbaz',
                'new_password2': 'foobarbaz',
            },
            'account:reset-password:reset',
            get_token(self.user),
            login=False,
        )

        self.user.refresh_from_db()
        self.assertNotEqual(old_password, self.user.password)
예제 #10
0
    def test_POST_not_match(self):
        response = self.assertPOST(
            {
                'new_password1': 'foobarbaz1',
                'new_password2': 'foobarbaz2',
            },
            'account:reset-password:reset',
            get_token(self.user),
            login=False,
            status_code=200,
        )

        self.assertFormError(response, 'form', 'new_password2', [
            "The two password fields didn't match.",
        ])