diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2019-09-23 12:19:40 +0200 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2019-09-23 12:19:40 +0200 |
commit | d267f410a54aa76b7f9fe02cd754a270f56b3a04 (patch) | |
tree | 9e28d1c11c7b46bb339de45f93cc2a0cae31935e /ishtar_common/tests.py | |
parent | 89766f4de2ae42d3cafc196211e211058ca66987 (diff) | |
download | Ishtar-d267f410a54aa76b7f9fe02cd754a270f56b3a04.tar.bz2 Ishtar-d267f410a54aa76b7f9fe02cd754a270f56b3a04.zip |
Fix default django permission
Diffstat (limited to 'ishtar_common/tests.py')
-rw-r--r-- | ishtar_common/tests.py | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/ishtar_common/tests.py b/ishtar_common/tests.py index 2bd4afef1..4596f9b5e 100644 --- a/ishtar_common/tests.py +++ b/ishtar_common/tests.py @@ -1172,6 +1172,36 @@ class AccessControlTest(TestCase): ).count(), 1 ) + def test_django_admin(self): + username, password = "myusername", "mypassword" + __, __, user = create_user(username=username, password=password) + user.is_superuser = False + user.is_staff = False + user.save() + client = Client() + + url = "/admin/" + client.login(username=username, password=password) + response = client.get(url) + self.assertRedirects(response, "/admin/login/?next={}".format(url)) + + User.objects.filter(username='myusername').update(is_staff=True) + client.logout() + client.login(username=username, password=password) + response = client.get(url) + self.assertEqual(response.status_code, 200) + + url += "ishtar_common/persontype/" + response = client.get(url) + self.assertEqual(response.status_code, 403) + + user.user_permissions.add(Permission.objects.get( + codename='change_persontype')) + client.logout() + client.login(username=username, password=password) + response = client.get(url) + self.assertEqual(response.status_code, 200) + class UserProfileTest(TestCase): fixtures = OPERATION_FIXTURES |