diff options
| author | Jeremy Kerr <jk@ozlabs.org> | 2014-05-07 09:06:15 +0800 | 
|---|---|---|
| committer | Jeremy Kerr <jk@ozlabs.org> | 2014-05-07 09:27:41 +0800 | 
| commit | a51649320771b8abe7259c0812874c15cab0da18 (patch) | |
| tree | 836846c153b3894dc6b3b350e074c4e47f7b6bf7 | |
| parent | acde732def21e9159fcd4916f2ebf11934e16c1e (diff) | |
| download | patchwork-a51649320771b8abe7259c0812874c15cab0da18.tar.bz2 patchwork-a51649320771b8abe7259c0812874c15cab0da18.tar.xz  | |
urls: Fix django-1.6 change in password change views
The expected name for the password change views no longer has the auth_
prefix. This change fixes this and adds a testcase.
Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
| -rw-r--r-- | apps/patchwork/tests/test_user.py | 38 | ||||
| -rw-r--r-- | apps/patchwork/urls.py | 4 | 
2 files changed, 40 insertions, 2 deletions
diff --git a/apps/patchwork/tests/test_user.py b/apps/patchwork/tests/test_user.py index 08b9fa5..0faa970 100644 --- a/apps/patchwork/tests/test_user.py +++ b/apps/patchwork/tests/test_user.py @@ -155,3 +155,41 @@ class UserProfileTest(TestCase):          self.assertContains(response, 'You have the following bundle')          self.assertContains(response, bundle.get_absolute_url()) + +class UserPasswordChangeTest(TestCase): +    form_url = reverse('django.contrib.auth.views.password_change') +    done_url = reverse('django.contrib.auth.views.password_change_done') + +    def testPasswordChangeForm(self): +        self.user = TestUser() +        self.client.login(username = self.user.username, +                          password = self.user.password) + +        response = self.client.get(self.form_url) +        self.assertContains(response, 'Change my password') + +    def testPasswordChange(self): +        self.user = TestUser() +        self.client.login(username = self.user.username, +                          password = self.user.password) + +        old_password = self.user.password +        new_password = User.objects.make_random_password() + +        data = { +            'old_password': old_password, +            'new_password1': new_password, +            'new_password2': new_password, +        } + +        response = self.client.post(self.form_url, data) +        self.assertRedirects(response, self.done_url) + +        user = User.objects.get(id = self.user.user.id) + +        self.assertFalse(user.check_password(old_password)) +        self.assertTrue(user.check_password(new_password)) + +        response = self.client.get(self.done_url) +        self.assertContains(response, +                "Your password has been changed sucessfully") diff --git a/apps/patchwork/urls.py b/apps/patchwork/urls.py index 41f01c1..9b681f9 100644 --- a/apps/patchwork/urls.py +++ b/apps/patchwork/urls.py @@ -45,9 +45,9 @@ urlpatterns = patterns('',      # password change      url(r'^user/password-change/$', auth_views.password_change, -            name='auth_password_change'), +            name='password_change'),      url(r'^user/password-change/done/$', auth_views.password_change_done, -            name='auth_password_change_done'), +            name='password_change_done'),      # login/logout      url(r'^user/login/$', auth_views.login,  | 
