Пример #1
0
class CaseGroupPermissionViewTestCase(PermissionStatusMixin, TestCase):
    permission = ["cases.can_manage_permission", "cases.can_assign"]

    def setUp(self):
        self.user = UserFactory(username="******")
        self.user_with_permission = UserFactory(is_staff=True)
        self.object = CaseFactory()
        self.url = reverse("cases:permission_grant",
                           kwargs={"pk": self.object.pk})

    def test_view_loads_correctly(self):
        self.login_permitted_user()
        resp = self.client.get(self.url)
        self.assertEqual(resp.status_code, 200)
        self.assertContains(resp, self.object.name)

    def test_assign_permission(self):
        self.login_permitted_user()
        self.assertFalse(
            self.user_with_permission.has_perm("can_send_to_client",
                                               self.object))

        pg = PermissionGroupFactory(permissions=("can_send_to_client", ))
        resp = self.client.post(self.url,
                                data={
                                    "user": self.user_with_permission.pk,
                                    "group": pg.pk
                                })
        self.assertEqual(resp.status_code, 302)

        self.assertTrue(
            self.user_with_permission.has_perm("cases.can_send_to_client",
                                               self.object))
Пример #2
0
class CaseGroupPermissionViewTestCase(PermissionStatusMixin, TestCase):
    permission = ['cases.can_manage_permission', 'cases.can_assign']

    def setUp(self):
        self.user = UserFactory(username="******")
        self.user_with_permission = UserFactory(is_staff=True)
        self.object = CaseFactory()
        self.url = reverse('cases:permission_grant', kwargs={
            'pk': self.object.pk
        })

    def test_view_loads_correctly(self):
        self.login_permitted_user()
        resp = self.client.get(self.url)
        self.assertEqual(resp.status_code, 200)
        self.assertContains(resp, self.object.name)

    def test_assign_permission(self):
        self.login_permitted_user()
        self.assertFalse(self.user_with_permission.has_perm('can_send_to_client',
                                                            self.object))

        pg = PermissionGroupFactory(permissions=('can_send_to_client',))
        resp = self.client.post(self.url, data={'user': self.user_with_permission.pk,
                                                'group': pg.pk})
        self.assertEqual(resp.status_code, 302)

        self.assertTrue(self.user_with_permission.has_perm('cases.can_send_to_client',
                                                           self.object))
Пример #3
0
class CaseGroupPermissionViewTestCase(TestCase):
    def setUp(self):
        self.actor = UserFactory()
        self.user_with_permission = UserFactory(is_staff=True)
        self.object = CaseFactory()
        assign_perm('cases.can_assign', self.actor)
        self.client.login(username=self.actor, password='******')
        self.url = reverse_lazy('cases:permission_grant', kwargs={
            'pk': self.object.pk
        })

    def test_view_loads_correctly(self):
        resp = self.client.get(self.url)
        self.assertEqual(resp.status_code, 200)
        self.assertContains(resp, self.object.name)

    def test_assign_permission(self):
        self.assertFalse(self.user_with_permission.has_perm('can_send_to_client',
                                                            self.object))

        pg = PermissionGroupFactory(permissions=('can_send_to_client', ))
        resp = self.client.post(self.url, data={'user': self.user_with_permission.pk,
                                                'group': pg.pk})
        self.assertEqual(resp.status_code, 302)

        self.assertTrue(self.user_with_permission.has_perm('cases.can_send_to_client',
                                                           self.object))
Пример #4
0
class TranslatedUserObjectPermissionsFormTestCase(TestCase):
    def setUp(self):
        self.obj = UserFactory()
        self.user = UserFactory()

    def test_delete_all_permissions(self):
        assign_perm('users.change_user', self.user, self.obj)
        self.assertTrue(self.user.has_perm('users.change_user', self.obj))
        form = TranslatedUserObjectPermissionsForm(data={'permissions': ''},
                                                   user=self.user,
                                                   obj=self.obj)
        self.assertTrue(form.is_valid())
        form.save_obj_perms()
        self.assertFalse(self.user.has_perm('users.change_user', self.obj))
        self.assertEqual(get_perms(self.user, self.obj), [])
Пример #5
0
class TranslatedUserObjectPermissionsFormTestCase(TestCase):
    def setUp(self):
        self.obj = UserFactory()
        self.user = UserFactory()

    def test_delete_all_permissions(self):
        assign_perm('users.change_user', self.user, self.obj)
        self.assertTrue(self.user.has_perm('users.change_user', self.obj))
        form = TranslatedUserObjectPermissionsForm(data={'permissions': ''},
                                                   user=self.user,
                                                   obj=self.obj)
        self.assertTrue(form.is_valid())
        form.save_obj_perms()
        self.assertFalse(self.user.has_perm('users.change_user', self.obj))
        self.assertEqual(get_perms(self.user, self.obj), [])