summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorTim Graham <timograham@gmail.com>2018-09-27 19:52:01 -0400
committerCarlton Gibson <carlton.gibson@noumenal.es>2018-10-01 10:09:50 +0200
commita7284cc0c3620030b43034cdf41216c0941bf411 (patch)
tree6dd3d0f4db2c52578b9a6051d462ebc0eed96d3a /tests
parentbf39978a53f117ca02e9a0c78b76664a41a54745 (diff)
Fixed #29809 -- Fixed a crash when a "view only" user POSTs to the admin user change form.
Diffstat (limited to 'tests')
-rw-r--r--tests/auth_tests/test_views.py9
1 files changed, 9 insertions, 0 deletions
diff --git a/tests/auth_tests/test_views.py b/tests/auth_tests/test_views.py
index f29f5f0949..d12830ddc8 100644
--- a/tests/auth_tests/test_views.py
+++ b/tests/auth_tests/test_views.py
@@ -1221,6 +1221,7 @@ class ChangelistTests(AuthViewsTestCase):
u = User.objects.get(username='testclient')
u.is_superuser = False
u.save()
+ original_password = u.password
u.user_permissions.add(get_perm(User, 'view_user'))
response = self.client.get(reverse('auth_test_admin:auth_user_change', args=(u.pk,)),)
algo, salt, hash_string = (u.password.split('$'))
@@ -1235,6 +1236,14 @@ class ChangelistTests(AuthViewsTestCase):
),
html=True,
)
+ # Value in POST data is ignored.
+ data = self.get_user_data(u)
+ data['password'] = 'shouldnotchange'
+ change_url = reverse('auth_test_admin:auth_user_change', args=(u.pk,))
+ response = self.client.post(change_url, data)
+ self.assertRedirects(response, reverse('auth_test_admin:auth_user_changelist'))
+ u.refresh_from_db()
+ self.assertEqual(u.password, original_password)
@override_settings(