From d37c20ca72fbcdb929601b8af1ef8fedd76e1afd Mon Sep 17 00:00:00 2001 From: Jesse Andrews Date: Sun, 18 Dec 2011 22:08:26 -0800 Subject: [PATCH] remove X-Auth-Project-Id, re-add auth by token support (most tests pass) --- keystoneclient/v2_0/client.py | 1 + tests/test_http.py | 2 -- tests/utils.py | 4 ++-- tests/v2_0/test_auth.py | 20 ++++++++------------ tests/v2_0/test_roles.py | 6 ++---- tests/v2_0/test_services.py | 6 ++---- tests/v2_0/test_tenants.py | 6 ++---- tests/v2_0/test_tokens.py | 6 ++---- tests/v2_0/test_users.py | 6 ++---- 9 files changed, 21 insertions(+), 36 deletions(-) diff --git a/keystoneclient/v2_0/client.py b/keystoneclient/v2_0/client.py index b2d4e2251..66ee58462 100644 --- a/keystoneclient/v2_0/client.py +++ b/keystoneclient/v2_0/client.py @@ -96,6 +96,7 @@ class Client(client.HTTPClient): tenant_id=self.tenant_id, tenant_name=self.tenant_name, password=self.password, + token=self.auth_token, return_raw=True) self._extract_service_catalog(self.auth_url, raw_token) return True diff --git a/tests/test_http.py b/tests/test_http.py index e91d58fc0..96a38ee9c 100644 --- a/tests/test_http.py +++ b/tests/test_http.py @@ -33,7 +33,6 @@ class ClientTest(utils.TestCase): def test_get_call(): resp, body = cl.get("/hi") headers = {"X-Auth-Token": "token", - "X-Auth-Project-Id": "project_id", "User-Agent": cl.USER_AGENT, } mock_request.assert_called_with("http://127.0.0.1:5000/" @@ -52,7 +51,6 @@ class ClientTest(utils.TestCase): cl.post("/hi", body=[1, 2, 3]) headers = { "X-Auth-Token": "token", - "X-Auth-Project-Id": "project_id", "Content-Type": "application/json", "User-Agent": cl.USER_AGENT } diff --git a/tests/utils.py b/tests/utils.py index bf20e2155..6bdbb2d8c 100644 --- a/tests/utils.py +++ b/tests/utils.py @@ -8,7 +8,7 @@ from keystoneclient.v2_0 import client class TestCase(unittest.TestCase): - TEST_TENANT = '1' + TEST_TENANT_ID = '1' TEST_TENANT_NAME = 'aTenant' TEST_TOKEN = 'aToken' TEST_USER = 'test' @@ -70,7 +70,7 @@ class TestCase(unittest.TestCase): httplib2.Http.request = self.mox.CreateMockAnything() self.client = client.Client(username=self.TEST_USER, token=self.TEST_TOKEN, - project_id=self.TEST_TENANT, + tenant_name=self.TEST_TENANT_ID, auth_url=self.TEST_URL, endpoint=self.TEST_URL) diff --git a/tests/v2_0/test_auth.py b/tests/v2_0/test_auth.py index 00c3d8586..1b8f22ea2 100644 --- a/tests/v2_0/test_auth.py +++ b/tests/v2_0/test_auth.py @@ -36,7 +36,7 @@ class AuthenticateAgainstKeystoneTests(utils.TestCase): "username": self.TEST_USER, "password": self.TEST_TOKEN, }, - "tenantId": self.TEST_TENANT + "tenantId": self.TEST_TENANT_ID } } self.TEST_REQUEST_HEADERS = { @@ -47,7 +47,6 @@ class AuthenticateAgainstKeystoneTests(utils.TestCase): def test_authenticate_failure(self): self.TEST_REQUEST_BODY['auth']['passwordCredentials']['password'] = \ 'bad_key' - self.TEST_REQUEST_HEADERS['X-Auth-Project-Id'] = '1' resp = httplib2.Response({ "status": 401, "body": json.dumps({"unauthorized": { @@ -70,11 +69,10 @@ class AuthenticateAgainstKeystoneTests(utils.TestCase): with self.assertRaises(exceptions.Unauthorized): client.Client(username=self.TEST_USER, password="bad_key", - project_id=self.TEST_TENANT, + tenant_id=self.TEST_TENANT_ID, auth_url=self.TEST_URL) def test_auth_redirect(self): - self.TEST_REQUEST_HEADERS['X-Auth-Project-Id'] = '1' correct_response = json.dumps(self.TEST_RESPONSE_DICT) dict_responses = [ {"headers": {'location': self.TEST_ADMIN_URL + "/tokens"}, @@ -101,17 +99,16 @@ class AuthenticateAgainstKeystoneTests(utils.TestCase): cs = client.Client(username=self.TEST_USER, password=self.TEST_TOKEN, - project_id=self.TEST_TENANT, + tenant_id=self.TEST_TENANT_ID, auth_url=self.TEST_URL) self.assertEqual(cs.management_url, self.TEST_RESPONSE_DICT["access"]["serviceCatalog"][3] - ['endpoints'][0]["publicURL"]) + ['endpoints'][0]["adminURL"]) self.assertEqual(cs.auth_token, self.TEST_RESPONSE_DICT["access"]["token"]["id"]) def test_authenticate_success_password_scoped(self): - self.TEST_REQUEST_HEADERS['X-Auth-Project-Id'] = '1' resp = httplib2.Response({ "status": 200, "body": json.dumps(self.TEST_RESPONSE_DICT), @@ -126,11 +123,11 @@ class AuthenticateAgainstKeystoneTests(utils.TestCase): cs = client.Client(username=self.TEST_USER, password=self.TEST_TOKEN, - project_id=self.TEST_TENANT, + tenant_id=self.TEST_TENANT_ID, auth_url=self.TEST_URL) self.assertEqual(cs.management_url, self.TEST_RESPONSE_DICT["access"]["serviceCatalog"][3] - ['endpoints'][0]["publicURL"]) + ['endpoints'][0]["adminURL"]) self.assertEqual(cs.auth_token, self.TEST_RESPONSE_DICT["access"]["token"]["id"]) @@ -159,7 +156,6 @@ class AuthenticateAgainstKeystoneTests(utils.TestCase): def test_authenticate_success_token_scoped(self): del self.TEST_REQUEST_BODY['auth']['passwordCredentials'] self.TEST_REQUEST_BODY['auth']['token'] = {'id': self.TEST_TOKEN} - self.TEST_REQUEST_HEADERS['X-Auth-Project-Id'] = '1' self.TEST_REQUEST_HEADERS['X-Auth-Token'] = self.TEST_TOKEN resp = httplib2.Response({ "status": 200, @@ -174,11 +170,11 @@ class AuthenticateAgainstKeystoneTests(utils.TestCase): self.mox.ReplayAll() cs = client.Client(token=self.TEST_TOKEN, - project_id=self.TEST_TENANT, + tenant_id=self.TEST_TENANT_ID, auth_url=self.TEST_URL) self.assertEqual(cs.management_url, self.TEST_RESPONSE_DICT["access"]["serviceCatalog"][3] - ['endpoints'][0]["publicURL"]) + ['endpoints'][0]["adminURL"]) self.assertEqual(cs.auth_token, self.TEST_RESPONSE_DICT["access"]["token"]["id"]) diff --git a/tests/v2_0/test_roles.py b/tests/v2_0/test_roles.py index fe12658ff..f051243f6 100644 --- a/tests/v2_0/test_roles.py +++ b/tests/v2_0/test_roles.py @@ -10,11 +10,9 @@ from tests import utils class RoleTests(utils.TestCase): def setUp(self): super(RoleTests, self).setUp() - self.TEST_REQUEST_HEADERS = {'X-Auth-Project-Id': '1', - 'X-Auth-Token': 'aToken', + self.TEST_REQUEST_HEADERS = {'X-Auth-Token': 'aToken', 'User-Agent': 'python-keystoneclient'} - self.TEST_POST_HEADERS = {'X-Auth-Project-Id': '1', - 'Content-Type': 'application/json', + self.TEST_POST_HEADERS = {'Content-Type': 'application/json', 'X-Auth-Token': 'aToken', 'User-Agent': 'python-keystoneclient'} self.TEST_ROLES = { diff --git a/tests/v2_0/test_services.py b/tests/v2_0/test_services.py index 93f3d4569..1d3118ed7 100644 --- a/tests/v2_0/test_services.py +++ b/tests/v2_0/test_services.py @@ -10,11 +10,9 @@ from tests import utils class ServiceTests(utils.TestCase): def setUp(self): super(ServiceTests, self).setUp() - self.TEST_REQUEST_HEADERS = {'X-Auth-Project-Id': '1', - 'X-Auth-Token': 'aToken', + self.TEST_REQUEST_HEADERS = {'X-Auth-Token': 'aToken', 'User-Agent': 'python-keystoneclient'} - self.TEST_POST_HEADERS = {'X-Auth-Project-Id': '1', - 'Content-Type': 'application/json', + self.TEST_POST_HEADERS = {'Content-Type': 'application/json', 'X-Auth-Token': 'aToken', 'User-Agent': 'python-keystoneclient'} self.TEST_SERVICES = {"OS-KSADM:services": { diff --git a/tests/v2_0/test_tenants.py b/tests/v2_0/test_tenants.py index 77aa94ce7..ea4f78b54 100644 --- a/tests/v2_0/test_tenants.py +++ b/tests/v2_0/test_tenants.py @@ -10,11 +10,9 @@ from tests import utils class TenantTests(utils.TestCase): def setUp(self): super(TenantTests, self).setUp() - self.TEST_REQUEST_HEADERS = {'X-Auth-Project-Id': '1', - 'X-Auth-Token': 'aToken', + self.TEST_REQUEST_HEADERS = {'X-Auth-Token': 'aToken', 'User-Agent': 'python-keystoneclient'} - self.TEST_POST_HEADERS = {'X-Auth-Project-Id': '1', - 'Content-Type': 'application/json', + self.TEST_POST_HEADERS = {'Content-Type': 'application/json', 'X-Auth-Token': 'aToken', 'User-Agent': 'python-keystoneclient'} self.TEST_TENANTS = {"tenants": { diff --git a/tests/v2_0/test_tokens.py b/tests/v2_0/test_tokens.py index 49655595b..1edcba62a 100644 --- a/tests/v2_0/test_tokens.py +++ b/tests/v2_0/test_tokens.py @@ -10,11 +10,9 @@ from tests import utils class TokenTests(utils.TestCase): def setUp(self): #super(ServiceTests, self).setUp() - self.TEST_REQUEST_HEADERS = {'X-Auth-Project-Id': '1', - 'X-Auth-Token': 'aToken', + self.TEST_REQUEST_HEADERS = {'X-Auth-Token': 'aToken', 'User-Agent': 'python-keystoneclient'} - self.TEST_POST_HEADERS = {'X-Auth-Project-Id': '1', - 'Content-Type': 'application/json', + self.TEST_POST_HEADERS = {'Content-Type': 'application/json', 'X-Auth-Token': 'aToken', 'User-Agent': 'python-keystoneclient'} ''' diff --git a/tests/v2_0/test_users.py b/tests/v2_0/test_users.py index fb6955903..dbff00870 100644 --- a/tests/v2_0/test_users.py +++ b/tests/v2_0/test_users.py @@ -10,11 +10,9 @@ from tests import utils class UserTests(utils.TestCase): def setUp(self): super(UserTests, self).setUp() - self.TEST_REQUEST_HEADERS = {'X-Auth-Project-Id': '1', - 'X-Auth-Token': 'aToken', + self.TEST_REQUEST_HEADERS = {'X-Auth-Token': 'aToken', 'User-Agent': 'python-keystoneclient'} - self.TEST_POST_HEADERS = {'X-Auth-Project-Id': '1', - 'Content-Type': 'application/json', + self.TEST_POST_HEADERS = {'Content-Type': 'application/json', 'X-Auth-Token': 'aToken', 'User-Agent': 'python-keystoneclient'} self.TEST_USERS = {