blob: f216f3c2c511c7a7a09261dbc736b66af78233f6 [file] [log] [blame]
donald-ngo20b6bca2011-12-15 13:35:12 -08001from tempest.common import rest_client
2import json
3
4
5class ExtensionsClient(object):
6
Daryl Walleck587385b2012-03-03 13:00:26 -06007 def __init__(self, config, username, password, auth_url, tenant_name=None):
donald-ngo20b6bca2011-12-15 13:35:12 -08008 self.config = config
Daryl Walleck587385b2012-03-03 13:00:26 -06009 catalog_type = self.config.compute.catalog_type
10 self.client = rest_client.RestClient(config, username, password,
Daryl Walleckb90a1a62012-02-27 11:23:10 -060011 auth_url, catalog_type,
Daryl Walleck4aa82a92012-02-14 15:45:46 -060012 tenant_name)
donald-ngo20b6bca2011-12-15 13:35:12 -080013
14 def list_extensions(self):
15 url = 'extensions'
16 resp, body = self.client.get(url)
17 body = json.loads(body)
18 return resp, body
Daryl Wallecke36d5002012-03-28 09:56:10 -050019
20 def is_enabled(self, extension):
21 _, extensions = self.list_extensions()
22 exts = extensions['extensions']
23 return any([e for e in exts if e['name'] == extension])