Add project_name to the auth_token fixture

User and domain options allow you to set the _id and _name values
however project_name is missing. Add project_name to the available
parameters and enhance the tests to check more variables are set.

Closes-Bug: #1533463
Change-Id: Ia19aad0ff9e5c7667f702466e998c44a40f9a673
This commit is contained in:
Jamie Lennox 2016-01-13 14:43:56 +11:00
parent 9911497290
commit 45f37903fb
2 changed files with 16 additions and 5 deletions

View File

@ -44,9 +44,10 @@ class AuthTokenFixture(fixtures.Fixture):
return self._token_data.keys() return self._token_data.keys()
@utils.positional(1) @utils.positional(1)
def add_token_data(self, token_id=None, expires=None, user_id=None, def add_token_data(self, token_id=None, expires=None,
user_name=None, user_domain_id=None, user_id=None, user_name=None,
user_domain_name=None, project_id=None, user_domain_id=None, user_domain_name=None,
project_id=None, project_name=None,
project_domain_id=None, project_domain_name=None, project_domain_id=None, project_domain_name=None,
role_list=None, is_v2=False): role_list=None, is_v2=False):
"""Add token data to the auth_token fixture.""" """Add token data to the auth_token fixture."""
@ -60,11 +61,12 @@ class AuthTokenFixture(fixtures.Fixture):
if is_v2: if is_v2:
token = client_fixtures.V2Token( token = client_fixtures.V2Token(
token_id=token_id, expires=expires, tenant_id=project_id, token_id=token_id, expires=expires, tenant_id=project_id,
user_id=user_id, user_name=user_name) tenant_name=project_name, user_id=user_id, user_name=user_name)
else: else:
token = client_fixtures.V3Token( token = client_fixtures.V3Token(
expires=expires, user_id=user_id, user_name=user_name, expires=expires, user_id=user_id, user_name=user_name,
user_domain_id=user_domain_id, project_id=project_id, user_domain_id=user_domain_id, project_id=project_id,
project_name=project_name,
project_domain_id=project_domain_id, project_domain_id=project_domain_id,
user_domain_name=user_domain_name, user_domain_name=user_domain_name,
project_domain_name=project_domain_name) project_domain_name=project_domain_name)

View File

@ -25,16 +25,25 @@ class AuthTokenFixtureTest(
def setUp(self): def setUp(self):
self.token_id = uuid.uuid4().hex self.token_id = uuid.uuid4().hex
self.user_id = uuid.uuid4().hex self.user_id = uuid.uuid4().hex
self.username = uuid.uuid4().hex
self.project_id = uuid.uuid4().hex
self.project_name = uuid.uuid4().hex
self.role_list = [uuid.uuid4().hex, uuid.uuid4().hex] self.role_list = [uuid.uuid4().hex, uuid.uuid4().hex]
super(AuthTokenFixtureTest, self).setUp() super(AuthTokenFixtureTest, self).setUp()
self.atm_fixture = self.useFixture(fixture.AuthTokenFixture()) self.atm_fixture = self.useFixture(fixture.AuthTokenFixture())
self.atm_fixture.add_token_data(token_id=self.token_id, self.atm_fixture.add_token_data(token_id=self.token_id,
user_id=self.user_id, user_id=self.user_id,
role_list=self.role_list) user_name=self.username,
role_list=self.role_list,
project_id=self.project_id,
project_name=self.project_name)
self.set_middleware() self.set_middleware()
self.middleware._app.expected_env = { self.middleware._app.expected_env = {
'HTTP_X_USER_ID': self.user_id, 'HTTP_X_USER_ID': self.user_id,
'HTTP_X_USER_NAME': self.username,
'HTTP_X_PROJECT_ID': self.project_id,
'HTTP_X_PROJECT_NAME': self.project_name,
'HTTP_X_ROLES': ','.join(self.role_list)} 'HTTP_X_ROLES': ','.join(self.role_list)}
def test_auth_token_fixture_valid_token(self): def test_auth_token_fixture_valid_token(self):