def test_project_specific(self): """Project specificity test. Project-level actions should only be affected by Group ACLs that are specific to the project, and don't have other criteria. E.g., if a GroupACL lists project+language, this should not give you project-level permissions. """ permission = Permission.objects.get(codename='author_translation', content_type__app_label='trans') self.group.permissions.add(permission) acl_project_lang = GroupACL.objects.create(language=self.language, project=self.project) acl_project_lang.groups.add(self.group) self.assertFalse( has_group_perm(self.privileged, 'trans.author_translation', project=self.project)) acl_project_only = GroupACL.objects.get( language=None, project=self.project, ) acl_project_only.groups.add(self.group) self.clear_permission_cache() self.assertTrue( has_group_perm(self.privileged, 'trans.author_translation', project=self.project))
def test_project_specific(self): """Project specificity test. Project-level actions should only be affected by Group ACLs that are specific to the project, and don't have other criteria. E.g., if a GroupACL lists project+language, this should not give you project-level permissions. """ permission = Permission.objects.get( codename='author_translation', content_type__app_label='trans' ) self.group.permissions.add(permission) acl_project_lang = GroupACL.objects.create( language=self.language, project=self.project ) acl_project_lang.groups.add(self.group) self.assertFalse(has_group_perm( self.privileged, 'trans.author_translation', project=self.project )) acl_project_only = GroupACL.objects.get( language=None, project=self.project, ) acl_project_only.groups.add(self.group) self.clear_permission_cache() self.assertTrue(has_group_perm( self.privileged, 'trans.author_translation', project=self.project ))
def test_check_user(self): self.assertFalse( has_group_perm(self.user, 'trans.author_translation', project=self.project))
def test_check_owner(self): self.assertTrue( has_group_perm(self.owner, 'trans.author_translation', project=self.project))
def test_owner_no_perm(self): self.assertFalse( has_group_perm(self.owner, 'trans.delete_project', project=self.project))
def test_check_user(self): self.assertFalse( has_group_perm( self.user, 'trans.author_translation', project=self.project ) )
def test_check_owner(self): self.assertTrue( has_group_perm( self.owner, 'trans.author_translation', project=self.project ) )
def test_owner_no_perm(self): self.assertFalse( has_group_perm( self.owner, 'trans.delete_project', project=self.project ) )