def test_role_cannot_be_assigned_to_non_story_manager(self): with self.assertRaisesRegexp( Exception, 'The assignee doesn\'t have enough rights to become a manager.'): story_services.assign_role( self.user_admin, self.user_b, story_domain.ROLE_MANAGER, self.STORY_ID)
def test_reassigning_none_role_to_same_user(self): with self.assertRaisesRegexp( Exception, 'This user already has no role for this story'): story_services.assign_role(self.user_admin, self.user_a, story_domain.ROLE_NONE, self.STORY_ID) story_rights = story_services.get_story_rights(self.STORY_ID) self.assertFalse( story_services.check_can_edit_story(self.user_a, story_rights))
def test_create_new_story_rights(self): story_services.assign_role(self.user_admin, self.user_a, story_domain.ROLE_MANAGER, self.STORY_ID) story_rights = story_services.get_story_rights(self.STORY_ID) self.assertTrue( story_services.check_can_edit_story(self.user_a, story_rights)) self.assertFalse( story_services.check_can_edit_story(self.user_b, story_rights))
def test_non_admin_cannot_assign_roles(self): with self.assertRaisesRegexp( Exception, 'UnauthorizedUserException: Could not assign new role.'): story_services.assign_role(self.user_b, self.user_a, story_domain.ROLE_MANAGER, self.STORY_ID) story_rights = story_services.get_story_rights(self.STORY_ID) self.assertFalse( story_services.check_can_edit_story(self.user_a, story_rights)) self.assertFalse( story_services.check_can_edit_story(self.user_b, story_rights))
def test_reassigning_manager_role_to_same_user(self): story_services.assign_role(self.user_admin, self.user_a, story_domain.ROLE_MANAGER, self.STORY_ID) with self.assertRaisesRegexp( Exception, 'This user already is a manager for this story'): story_services.assign_role(self.user_admin, self.user_a, story_domain.ROLE_MANAGER, self.STORY_ID) story_rights = story_services.get_story_rights(self.STORY_ID) self.assertTrue( story_services.check_can_edit_story(self.user_a, story_rights)) self.assertFalse( story_services.check_can_edit_story(self.user_b, story_rights))
def test_invalid_dict(self): with self.assertRaisesRegexp(Exception, 'Invalid role: invalid_role'): story_services.assign_role(self.user_admin, self.user_a, 'invalid_role', self.STORY_ID)