def test_validate_viewable_entities_allowed(self):
        user = self.login(is_superuser=False)
        a = FakeContact.objects.create(last_name='Doe',
                                       first_name='A',
                                       user=self.other_user)
        b = FakeContact.objects.create(last_name='Doe',
                                       first_name='B',
                                       user=self.other_user)

        self._set_user_credentials(user, EntityCredentials.VIEW,
                                   SetCredentials.ESET_ALL)

        with self.assertNoException():
            validators.validate_viewable_entities([a, b], user)
Exemple #2
0
    def test_validate_viewable_entities_notallowed_all(self):
        user = self.login(is_superuser=False)

        create_contact = partial(FakeContact.objects.create,
                                 user=self.other_user)
        a = create_contact(last_name='Doe', first_name='John')
        b = create_contact(last_name='Doe', first_name='B')

        self._set_user_credentials(user, EntityCredentials.CHANGE,
                                   SetCredentials.ESET_ALL)

        with self.assertRaises(ValidationError) as e:
            validators.validate_viewable_entities([a, b], user)

        self.assertEqual(e.exception.code, 'viewnotallowed')
    def test_validate_viewable_entities_notallowed_other(self):
        user = self.login(is_superuser=False)
        a = FakeContact.objects.create(last_name='Doe',
                                       first_name='John',
                                       user=self.other_user)
        b = FakeContact.objects.create(last_name='Doe',
                                       first_name='B',
                                       user=self.other_user)

        self._set_user_credentials(user, EntityCredentials.VIEW,
                                   SetCredentials.ESET_OWN)

        with self.assertRaises(ValidationError) as e:
            validators.validate_viewable_entities([a, b], user)

        self.assertEqual(e.exception.code, 'viewnotallowed')
    def test_validate_viewable_entities_anonymous(self):
        other_user = CremeUser.objects.create(username='******')
        a = FakeContact.objects.create(last_name='Doe',
                                       first_name='John',
                                       user=other_user)
        b = FakeContact.objects.create(last_name='Doe',
                                       first_name='B',
                                       user=other_user)

        user = get_user(self.client)
        self.assertTrue(user.is_anonymous)

        with self.assertRaises(ValidationError) as e:
            validators.validate_viewable_entities([a, b], user)

        self.assertEqual(e.exception.code, 'viewnotallowed')