def test_user_revoke(self): """Test for revoking all roles from the user on owner's project.""" # NOTE(Adriant): SKIPPING FOR NOW. # Revoke roles doesn't work. self.skip("NotImplemented") project_setup = self.create_project_and_owner(username_is_email=True) self.identity_utils.assign_user_role( project_setup['owner'], project_setup['project'], "Member" ) self.identity_utils.assign_user_role( project_setup['owner'], project_setup['project'], "project_mod" ) roles = self.identity_utils.identity_client.list_user_roles( project_setup['project']['id'], project_setup['owner']['id']) has_member = False has_mod = False for role in roles['roles']: if role['name'] == "Member": has_member = True if role['name'] == "project_mod": has_mod = True self.assertTrue(has_member) self.assertTrue(has_mod) auth = { "name": project_setup['owner']['username'], "password": project_setup['owner']['password'], "project_id": project_setup['project']['id'], "url": self.identity_utils.identity_client.base_url, } api.user_revoke( auth, project_setup['owner']['id'] ) roles = self.identity_utils.identity_client.list_user_roles( project_setup['project']['id'], project_setup['owner']['id']) print roles['roles'] self.assertEqual(len(roles['roles']), 0)
def test_cancel_user_invite(self): """Test canceling of a user invite.""" project_setup = self.create_project_and_owner(username_is_email=True) new_email = "*****@*****.**" new_password = uuid4().hex auth = { "name": project_setup['owner']['username'], "password": project_setup['owner']['password'], "project_id": project_setup['project']['id'], "url": self.identity_utils.identity_client.base_url, } api.user_invite( auth, {"username": new_email, "email": new_email, "roles": ["Member"]} ) tasks = api.get_tasks(auth, {}).json() api.user_revoke( auth, tasks['tasks'][0]['uuid'] ) auth['user_token'] = self.identity_utils.identity_client.token tokens = api.get_tokens( auth, {}, {'task_id': {"exact": tasks['tasks'][0]['uuid']}} ).json() token = tokens['tokens'][0]['token'] response = api.token_submit(auth, token, {"password": new_password}) self.assertEqual(response.status_code, 400) self.assertEqual( response.json(), {u'errors': [u'This task has been cancelled.']})