Merge "Test that tenant list function can use auth_url"

This commit is contained in:
Jenkins
2014-07-17 07:38:57 +00:00
committed by Gerrit Code Review

View File

@@ -15,7 +15,9 @@ import uuid
import httpretty
from keystoneclient import exceptions
from keystoneclient import fixture
from keystoneclient.tests.v2_0 import utils
from keystoneclient.v2_0 import client
from keystoneclient.v2_0 import tenants
from keystoneclient.v2_0 import users
@@ -345,3 +347,38 @@ class TenantTests(utils.TestCase):
self.assertEqual(set([user_id1, user_id2]),
set([u.id for u in user_objs]))
@httpretty.activate
def test_list_tenants_use_admin_url(self):
self.stub_url(httpretty.GET, ['tenants'], json=self.TEST_TENANTS)
self.assertEqual(self.TEST_URL, self.client.management_url)
tenant_list = self.client.tenants.list()
[self.assertIsInstance(t, tenants.Tenant) for t in tenant_list]
self.assertEqual(len(self.TEST_TENANTS['tenants']['values']),
len(tenant_list))
@httpretty.activate
def test_list_tenants_fallback_to_auth_url(self):
new_auth_url = 'http://keystone.test:5000/v2.0'
token = fixture.V2Token(token_id=self.TEST_TOKEN,
user_name=self.TEST_USER,
user_id=self.TEST_USER_ID)
self.stub_auth(base_url=new_auth_url, json=token)
self.stub_url(httpretty.GET, ['tenants'], base_url=new_auth_url,
json=self.TEST_TENANTS)
c = client.Client(username=self.TEST_USER,
auth_url=new_auth_url,
password=uuid.uuid4().hex)
self.assertIsNone(c.management_url)
tenant_list = c.tenants.list()
[self.assertIsInstance(t, tenants.Tenant) for t in tenant_list]
self.assertEqual(len(self.TEST_TENANTS['tenants']['values']),
len(tenant_list))