Skip to content

Commit eb405a8

Browse files
author
Dean Troyer
committed
Refactor fake data for projects and users
* Move fake data structures into tests/identity/fakes.py * Use fake clients correctly and support multiple client versions Change-Id: Icacbb2ca740b63937bd2c4442af61b620638b53e
1 parent 1c495a5 commit eb405a8

8 files changed

Lines changed: 470 additions & 214 deletions

File tree

openstackclient/tests/fakes.py

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -37,18 +37,14 @@ def __init__(self, _stdout):
3737
self.stdin = sys.stdin
3838
self.stdout = _stdout or sys.stdout
3939
self.stderr = sys.stderr
40+
self.restapi = None
4041

4142

4243
class FakeClientManager(object):
4344
def __init__(self):
4445
pass
4546

4647

47-
class FakeRESTApi(object):
48-
def __init__(self):
49-
pass
50-
51-
5248
class FakeResource(object):
5349
def __init__(self, manager, info, loaded=False):
5450
self.manager = manager

openstackclient/tests/identity/fakes.py

Lines changed: 34 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,38 @@
1818
from openstackclient.tests import fakes
1919

2020

21+
user_id = 'aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa'
22+
user_name = 'paul'
23+
user_description = 'Sir Paul'
24+
user_email = 'paul@applecorps.com'
25+
26+
project_id = '8-9-64'
27+
project_name = 'beatles'
28+
project_description = 'Fab Four'
29+
30+
USER = {
31+
'id': user_id,
32+
'name': user_name,
33+
'tenantId': project_id,
34+
'email': user_email,
35+
'enabled': True,
36+
}
37+
38+
PROJECT = {
39+
'id': project_id,
40+
'name': project_name,
41+
'description': project_description,
42+
'enabled': True,
43+
}
44+
45+
PROJECT_2 = {
46+
'id': project_id + '-2222',
47+
'name': project_name + ' reprise',
48+
'description': project_description + 'plus four more',
49+
'enabled': True,
50+
}
51+
52+
2153
class FakeIdentityv2Client(object):
2254
def __init__(self, **kwargs):
2355
self.tenants = mock.Mock()
@@ -26,8 +58,8 @@ def __init__(self, **kwargs):
2658
self.users.resource_class = fakes.FakeResource(None, {})
2759
self.ec2 = mock.Mock()
2860
self.ec2.resource_class = fakes.FakeResource(None, {})
29-
self.auth_tenant_id = 'fake-tenant'
30-
self.auth_user_id = 'fake-user'
61+
self.auth_token = kwargs['token']
62+
self.management_url = kwargs['endpoint']
3163

3264

3365
class FakeIdentityv3Client(object):

openstackclient/tests/identity/test_identity.py

Lines changed: 16 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -22,27 +22,29 @@
2222
AUTH_URL = "http://0.0.0.0"
2323

2424

25-
class FakeClient(object):
26-
def __init__(self, endpoint=None, **kwargs):
27-
self.auth_token = AUTH_TOKEN
28-
self.auth_url = AUTH_URL
29-
30-
31-
class TestIdentity(utils.TestCase):
25+
class TestIdentity(utils.TestCommand):
3226
def setUp(self):
3327
super(TestIdentity, self).setUp()
3428

3529
api_version = {"identity": "2.0"}
3630

3731
identity_client.API_VERSIONS = {
38-
"2.0": "openstackclient.tests.identity.test_identity.FakeClient"
32+
"2.0": "openstackclient.tests.identity.fakes.FakeIdentityv2Client"
3933
}
4034

41-
self.cm = clientmanager.ClientManager(token=AUTH_TOKEN,
42-
url=AUTH_URL,
43-
auth_url=AUTH_URL,
44-
api_version=api_version)
35+
self.app.client_manager = clientmanager.ClientManager(
36+
token=AUTH_TOKEN,
37+
url=AUTH_URL,
38+
auth_url=AUTH_URL,
39+
api_version=api_version,
40+
)
4541

4642
def test_make_client(self):
47-
self.assertEqual(self.cm.identity.auth_token, AUTH_TOKEN)
48-
self.assertEqual(self.cm.identity.auth_url, AUTH_URL)
43+
self.assertEqual(
44+
self.app.client_manager.identity.auth_token,
45+
AUTH_TOKEN,
46+
)
47+
self.assertEqual(
48+
self.app.client_manager.identity.management_url,
49+
AUTH_URL,
50+
)

0 commit comments

Comments
 (0)