blob: 620b240cc4753d04c2c2922f0cf561a1bf51d857 [file] [log] [blame]
chris fattarsi5098fa22012-04-17 13:27:00 -07001from tempest.common.rest_client import RestClient
donald-ngo20b6bca2011-12-15 13:35:12 -08002import json
3
4
Tiago Mello89126c32012-08-27 11:14:03 -03005class ExtensionsClientJSON(RestClient):
donald-ngo20b6bca2011-12-15 13:35:12 -08006
Daryl Walleck587385b2012-03-03 13:00:26 -06007 def __init__(self, config, username, password, auth_url, tenant_name=None):
Tiago Mello89126c32012-08-27 11:14:03 -03008 super(ExtensionsClientJSON, self).__init__(config, username, password,
Zhongyue Luo79d8d362012-09-25 13:49:27 +08009 auth_url, tenant_name)
chris fattarsi5098fa22012-04-17 13:27:00 -070010 self.service = self.config.compute.catalog_type
donald-ngo20b6bca2011-12-15 13:35:12 -080011
12 def list_extensions(self):
13 url = 'extensions'
chris fattarsi5098fa22012-04-17 13:27:00 -070014 resp, body = self.get(url)
donald-ngo20b6bca2011-12-15 13:35:12 -080015 body = json.loads(body)
16 return resp, body
Daryl Wallecke36d5002012-03-28 09:56:10 -050017
18 def is_enabled(self, extension):
19 _, extensions = self.list_extensions()
20 exts = extensions['extensions']
21 return any([e for e in exts if e['name'] == extension])