def test_constructor(self): permission_logic = OneselfPermissionLogic() add_permission_logic(self.user1.__class__, permission_logic) self.assertTrue(isinstance(permission_logic, OneselfPermissionLogic)) self.assertEqual(permission_logic.any_permission, True) self.assertEqual(permission_logic.change_permission, True) self.assertEqual(permission_logic.delete_permission, True)
def create_user(self, username, password): user = self.model(username=username) user.set_password(password) user.save(using=self._db) return user def create_superuser(self, username, password): user = self.create_user(username, password) user.is_superuser = True user.is_staff = True user.save(using=self._db) return user @permission_logic(OneselfPermissionLogic()) @permission_logic(RootBarRolePermissionLogic()) class User(AbstractBaseUser): class Meta: app_label = 'bars_core' username = models.CharField(max_length=128, unique=True) firstname = models.CharField(max_length=128, blank=True) lastname = models.CharField(max_length=128, blank=True) pseudo = models.CharField(max_length=128, blank=True) email = models.EmailField(max_length=254, blank=True) is_active = models.BooleanField(default=True) last_modified = models.DateTimeField(auto_now=True) is_superuser = models.BooleanField(default=False)
def test_has_perm_delete_with_obj(self): permission_logic = OneselfPermissionLogic() add_permission_logic(self.user1.__class__, permission_logic) self.assertFalse( permission_logic.has_perm(self.user1, self.perm3, self.user2))
def test_has_perm_delete_without_obj_with_anonymous(self): permission_logic = OneselfPermissionLogic() add_permission_logic(self.user1.__class__, permission_logic) self.assertFalse(permission_logic.has_perm(self.anonymous, self.perm3))
def test_has_perm_change_without_obj(self): permission_logic = OneselfPermissionLogic() add_permission_logic(self.user1.__class__, permission_logic) self.assertTrue(permission_logic.has_perm(self.user1, self.perm2))
def test_has_perm_delete_with_himself_non_any_no_delete(self): permission_logic = OneselfPermissionLogic(any_permission=False, delete_permission=False) add_permission_logic(self.user1.__class__, permission_logic) self.assertFalse( permission_logic.has_perm(self.user1, self.perm3, self.user1))
def test_has_perm_change_with_himself_non_any(self): permission_logic = OneselfPermissionLogic(any_permission=False) add_permission_logic(self.user1.__class__, permission_logic) self.assertTrue( permission_logic.has_perm(self.user1, self.perm2, self.user1))
def test_has_perm_delete_with_himself(self): permission_logic = OneselfPermissionLogic() add_permission_logic(self.user1.__class__, permission_logic) self.assertTrue( permission_logic.has_perm(self.user1, self.perm3, self.user1))
def test_has_perm_add_with_obj_with_anonymous(self): permission_logic = OneselfPermissionLogic() add_permission_logic(self.user1.__class__, permission_logic) self.assertFalse( permission_logic.has_perm(self.anonymous, self.perm1, self.user1))
def test_constructor_with_specifying_delete_permission(self): permission_logic = OneselfPermissionLogic(delete_permission=False) add_permission_logic(self.user1.__class__, permission_logic) self.assertTrue(isinstance(permission_logic, OneselfPermissionLogic)) self.assertEqual(permission_logic.delete_permission, False)