|
@@ -10,6 +10,45 @@ class UserModerationTestCase(AdminTestCase):
|
|
|
super(UserModerationTestCase, self).setUp()
|
|
|
self.test_user = get_user_model().objects.create_user(
|
|
|
"Bob", "bob@bob.com", "Pass.123")
|
|
|
+ self.link_kwargs = {'user_slug': 'bob', 'user_id': self.test_user.pk}
|
|
|
+
|
|
|
+
|
|
|
+class RenameUserTests(UserModerationTestCase):
|
|
|
+ def test_no_rename_permission(self):
|
|
|
+ """user with no permission fails to rename other user"""
|
|
|
+ override_acl(self.test_admin, {
|
|
|
+ 'misago.users.permissions.moderation': {
|
|
|
+ 'can_rename_users': 0,
|
|
|
+ },
|
|
|
+ })
|
|
|
+
|
|
|
+ response = self.client.get(
|
|
|
+ reverse('misago:rename_user', kwargs=self.link_kwargs))
|
|
|
+
|
|
|
+ self.assertEqual(response.status_code, 403)
|
|
|
+ self.assertIn("You can't rename users.", response.content)
|
|
|
+
|
|
|
+ def test_rename_user(self):
|
|
|
+ """user with permission renames other user"""
|
|
|
+ override_acl(self.test_admin, {
|
|
|
+ 'misago.users.permissions.moderation': {
|
|
|
+ 'can_rename_users': 1,
|
|
|
+ }
|
|
|
+ })
|
|
|
+
|
|
|
+ response = self.client.get(
|
|
|
+ reverse('misago:rename_user', kwargs=self.link_kwargs))
|
|
|
+
|
|
|
+ self.assertEqual(response.status_code, 200)
|
|
|
+
|
|
|
+ response = self.client.post(
|
|
|
+ reverse('misago:rename_user', kwargs=self.link_kwargs),
|
|
|
+ data={'new_username': 'LoremIpsum'})
|
|
|
+ self.assertEqual(response.status_code, 302)
|
|
|
+
|
|
|
+ response = self.client.post(reverse('misago:index'))
|
|
|
+ self.assertEqual(response.status_code, 200)
|
|
|
+ self.assertIn('Bob's username has been changed.', response.content)
|
|
|
|
|
|
|
|
|
class DeleteUserTests(UserModerationTestCase):
|
|
@@ -22,9 +61,8 @@ class DeleteUserTests(UserModerationTestCase):
|
|
|
},
|
|
|
})
|
|
|
|
|
|
- response = self.client.post(reverse('misago:delete_user', kwargs={
|
|
|
- 'user_id': self.test_user.pk
|
|
|
- }))
|
|
|
+ response = self.client.post(
|
|
|
+ reverse('misago:delete_user', kwargs=self.link_kwargs))
|
|
|
|
|
|
self.assertEqual(response.status_code, 403)
|
|
|
self.assertIn("You can't delete users.", response.content)
|
|
@@ -38,9 +76,8 @@ class DeleteUserTests(UserModerationTestCase):
|
|
|
}
|
|
|
})
|
|
|
|
|
|
- response = self.client.post(reverse('misago:delete_user', kwargs={
|
|
|
- 'user_id': self.test_user.pk
|
|
|
- }))
|
|
|
+ response = self.client.post(
|
|
|
+ reverse('misago:delete_user', kwargs=self.link_kwargs))
|
|
|
self.assertEqual(response.status_code, 302)
|
|
|
|
|
|
response = self.client.post(reverse('misago:index'))
|