Added support for new API v0.2

Change-Id: Iee623ff657f7cfab4c0a684aaa04f39de1e31c60
This commit is contained in:
Serg Melikyan 2013-07-15 16:41:50 +04:00
parent 4143384991
commit 58c22cfa72
7 changed files with 276 additions and 988 deletions

View File

@ -68,8 +68,9 @@ class Manager(object):
def _delete(self, url, headers={}):
self.api.raw_request('DELETE', url, headers=headers)
def _update(self, url, body, response_key=None):
resp, body = self.api.json_request('PUT', url, body=body)
def _update(self, url, body, response_key=None, headers={}):
resp, body = self.api.json_request('PUT', url, body=body,
headers=headers)
# PUT requests may not return a body
if body:
if response_key:

View File

@ -30,8 +30,4 @@ class Client(http.HTTPClient):
super(Client, self).__init__(*args, **kwargs)
self.environments = environments.EnvironmentManager(self)
self.sessions = sessions.SessionManager(self)
self.activeDirectories = services.ActiveDirectoryManager(self)
self.webServers = services.WebServerManager(self)
self.aspNetApps = services.AspNetAppManager(self)
self.webServerFarms = services.WebServerFarmManager(self)
self.aspNetAppFarms = services.AspNetAppFarmManager(self)
self.services = services.ServiceManager(self)

View File

@ -11,200 +11,61 @@
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
from functools import wraps
from muranoclient.common import base
class ActiveDirectory(base.Resource):
def normalize_path(f):
@wraps(f)
def f_normalize_path(*args, **kwargs):
if kwargs['path'][0] == '/':
kwargs['path'] = kwargs['path'][1:]
return f(*args, **kwargs)
return f_normalize_path
class Service(base.Resource):
def __repr__(self):
return '<ActiveDirectory %s>' % self._info
return '<Service %s>' % self._info
def data(self, **kwargs):
return self.manager.data(self, **kwargs)
class ActiveDirectoryManager(base.Manager):
resource_class = ActiveDirectory
class ServiceManager(base.Manager):
resource_class = Service
def list(self, environment_id, session_id=None):
@normalize_path
def get(self, environment_id, path, session_id=None):
if session_id:
headers = {'X-Configuration-Session': session_id}
else:
headers = {}
return self._list('environments/{id}/activeDirectories'.
format(id=environment_id),
'activeDirectories',
headers=headers)
return self._list('environments/{0}/services/{1}'.
format(environment_id, path), headers=headers)
def create(self, environment_id, session_id, active_directory):
@normalize_path
def post(self, environment_id, path, data, session_id):
headers = {'X-Configuration-Session': session_id}
return self._create('environments/{id}/activeDirectories'.
format(id=environment_id),
active_directory,
return self._create('environments/{id}/services/{1}'.
format(environment_id, path), data,
headers=headers)
def delete(self, environment_id, service_id, session_id):
@normalize_path
def put(self, environment_id, path, data, session_id):
headers = {'X-Configuration-Session': session_id}
path = 'environments/{id}/activeDirectories/{active_directory_id}'
path = path.format(id=environment_id, active_directory_id=service_id)
return self._update('environments/{id}/services/{1}'.
format(environment_id, path), data,
headers=headers)
@normalize_path
def delete(self, environment_id, path, session_id):
headers = {'X-Configuration-Session': session_id}
path = 'environments/{0}/services/{1}'.format(environment_id, path)
return self._delete(path, headers=headers)
class WebServer(base.Resource):
def __repr__(self):
return '<WebServer %s>' % self._info
def data(self, **kwargs):
return self.manager.data(self, **kwargs)
class WebServerManager(base.Manager):
resource_class = WebServer
def list(self, environment_id, session_id=None):
if session_id:
headers = {'X-Configuration-Session': session_id}
else:
headers = {}
return self._list('environments/{id}/webServers'.
format(id=environment_id),
'webServers',
headers=headers)
def create(self, environment_id, session_id, web_server):
headers = {'X-Configuration-Session': session_id}
return self._create('environments/{id}/webServers'.
format(id=environment_id),
web_server,
headers=headers)
def delete(self, environment_id, service_id, session_id):
headers = {'X-Configuration-Session': session_id}
return self._delete('environments/{id}/webServers/{web_server_id}'
.format(id=environment_id,
web_server_id=service_id),
headers=headers)
class AspNetApp(base.Resource):
def __repr__(self):
return '<AspNetApp %s>' % self._info
def data(self, **kwargs):
return self.manager.data(self, **kwargs)
class AspNetAppManager(base.Manager):
resource_class = AspNetApp
def list(self, environment_id, session_id=None):
if session_id:
headers = {'X-Configuration-Session': session_id}
else:
headers = {}
return self._list('environments/{id}/aspNetApps'.
format(id=environment_id),
'aspNetApps',
headers=headers)
def create(self, environment_id, session_id, app):
headers = {'X-Configuration-Session': session_id}
return self._create('environments/{id}/aspNetApps'.
format(id=environment_id),
app,
headers=headers)
def delete(self, environment_id, service_id, session_id):
headers = {'X-Configuration-Session': session_id}
return self._delete('environments/{id}/aspNetApps/{app_id}'
.format(id=environment_id,
app_id=service_id),
headers=headers)
class WebServerFarm(base.Resource):
def __repr__(self):
return '<WebServerFarm %s>' % self._info
def data(self, **kwargs):
return self.manager.data(self, **kwargs)
class WebServerFarmManager(base.Manager):
resource_class = WebServerFarm
def list(self, environment_id, session_id=None):
if session_id:
headers = {'X-Configuration-Session': session_id}
else:
headers = {}
return self._list('environments/{id}/webServerFarms'.
format(id=environment_id),
'webServerFarms',
headers=headers)
def create(self, environment_id, session_id, web_server_farm):
headers = {'X-Configuration-Session': session_id}
return self._create('environments/{id}/webServerFarms'.
format(id=environment_id),
web_server_farm,
headers=headers)
def delete(self, environment_id, service_id, session_id):
headers = {'X-Configuration-Session': session_id}
return self._delete('environments/{id}/webServerFarms'
'/{web_server_farm_id}'
.format(id=environment_id,
web_server_farm_id=service_id),
headers=headers)
class AspNetAppFarm(base.Resource):
def __repr__(self):
return '<AspNetAppFarm %s>' % self._info
def data(self, **kwargs):
return self.manager.data(self, **kwargs)
class AspNetAppFarmManager(base.Manager):
resource_class = AspNetAppFarm
def list(self, environment_id, session_id=None):
if session_id:
headers = {'X-Configuration-Session': session_id}
else:
headers = {}
return self._list('environments/{id}/aspNetAppFarms'.
format(id=environment_id),
'aspNetAppFarms',
headers=headers)
def create(self, environment_id, session_id, app_farm):
headers = {'X-Configuration-Session': session_id}
return self._create('environments/{id}/aspNetAppFarms'.
format(id=environment_id),
app_farm,
headers=headers)
def delete(self, environment_id, service_id, session_id):
headers = {'X-Configuration-Session': session_id}
return self._delete('environments/{id}/aspNetAppFarms/{app_id}'
.format(id=environment_id,
app_id=service_id),
headers=headers)

View File

@ -1,13 +0,0 @@
# Copyright (c) 2013 Mirantis, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.

View File

@ -1,793 +0,0 @@
# Copyright (c) 2013 Mirantis, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
import unittest
import logging
from mock import MagicMock
from muranoclient.client import Client
import muranoclient.v1.environments as environments
import muranoclient.v1.services as services
import muranoclient.v1.sessions as sessions
def my_mock(*a, **b):
return [a, b]
LOG = logging.getLogger('Unit tests')
api = MagicMock(json_request=my_mock)
class UnitTestsForClassesAndFunctions(unittest.TestCase):
def test_create_client_instance(self):
endpoint = 'http://no-resolved-host:8001'
test_client = Client('1', endpoint=endpoint, token='1', timeout=10)
assert test_client.environments is not None
assert test_client.sessions is not None
assert test_client.activeDirectories is not None
assert test_client.webServers is not None
assert test_client.aspNetApps is not None
assert test_client.webServerFarms is not None
assert test_client.aspNetAppFarms is not None
def test_env_manager_list(self):
manager = environments.EnvironmentManager(api)
result = manager.list()
assert result == []
def test_env_manager_create(self):
manager = environments.EnvironmentManager(api)
result = manager.create('test')
assert result.body == {'name': 'test'}
def test_env_manager_create_with_named_parameters(self):
manager = environments.EnvironmentManager(api)
result = manager.create(name='test')
assert result.body == {'name': 'test'}
def test_env_manager_create_negative_without_parameters(self):
result = 'Exception'
manager = environments.EnvironmentManager(api)
try:
result = manager.create()
except TypeError:
pass
assert result is 'Exception'
def test_env_manager_delete(self):
manager = environments.EnvironmentManager(api)
result = manager.delete('test')
assert result is None
def test_env_manager_delete_with_named_parameters(self):
manager = environments.EnvironmentManager(api)
result = manager.delete(environment_id='1')
assert result is None
def test_env_manager_delete_negative_without_parameters(self):
result = 'Exception'
manager = environments.EnvironmentManager(api)
try:
result = manager.delete()
except TypeError:
pass
assert result is 'Exception'
def test_env_manager_update(self):
manager = environments.EnvironmentManager(api)
result = manager.update('1', 'test')
assert result.body == {'name': 'test'}
def test_env_manager_update_with_named_parameters(self):
manager = environments.EnvironmentManager(api)
result = manager.update(environment_id='1',
name='test')
assert result.body == {'name': 'test'}
def test_env_manager_update_negative_with_one_parameter(self):
result = 'Exception'
manager = environments.EnvironmentManager(api)
try:
result = manager.update('test')
except TypeError:
pass
assert result is 'Exception'
def test_env_manager_update_negative_without_parameters(self):
result = 'Exception'
manager = environments.EnvironmentManager(api)
try:
result = manager.update()
except TypeError:
pass
assert result is 'Exception'
def test_env_manager_get(self):
manager = environments.EnvironmentManager(api)
result = manager.get('test')
## WTF?
assert result.manager is not None
def test_env(self):
environment = environments.Environment(api, api)
assert environment.data() is not None
def test_ad_manager_list_with_one_parameter(self):
manager = services.ActiveDirectoryManager(api)
result = manager.list('datacenter1')
assert result == []
def test_ad_manager_list_with_all_parameters(self):
manager = services.ActiveDirectoryManager(api)
result = manager.list('test', '1')
assert result == []
def test_ad_manager_list_with_named_parameters(self):
manager = services.ActiveDirectoryManager(api)
result = manager.list(environment_id='test', session_id='1')
assert result == []
def test_ad_manager_list_with_named_parameter(self):
manager = services.ActiveDirectoryManager(api)
result = manager.list(environment_id='test')
assert result == []
def test_ad_manager_list_negative_without_parameters(self):
result = 'Exception'
manager = services.ActiveDirectoryManager(api)
try:
result = manager.list()
except TypeError:
pass
assert result is 'Exception'
def test_ad_manager_create(self):
manager = services.ActiveDirectoryManager(api)
result = manager.create('datacenter1', 'session1', 'test')
assert result.headers == {'X-Configuration-Session': 'session1'}
assert result.body == 'test'
def test_ad_manager_create_with_named_parameters(self):
manager = services.ActiveDirectoryManager(api)
result = manager.create(environment_id='datacenter1',
session_id='session2',
active_directory='test2')
assert result.headers == {'X-Configuration-Session': 'session2'}
assert result.body == 'test2'
def test_ad_manager_create_negative_with_two_parameters(self):
result = 'Exception'
manager = services.ActiveDirectoryManager(api)
try:
result = manager.create('datacenter1', 'session1')
except TypeError:
pass
assert result is 'Exception'
def test_ad_manager_create_negative_with_one_parameter(self):
result = 'Exception'
manager = services.ActiveDirectoryManager(api)
try:
result = manager.create('datacenter1')
except TypeError:
pass
assert result is 'Exception'
def test_ad_manager_create_negative_without_parameters(self):
result = 'Exception'
manager = services.ActiveDirectoryManager(api)
try:
result = manager.create()
except TypeError:
pass
assert result is 'Exception'
def test_ad_manager_delete(self):
manager = services.ActiveDirectoryManager(api)
result = manager.delete('datacenter1', 'session1', 'test')
assert result is None
def test_ad_manager_delete_with_named_parameters(self):
manager = services.ActiveDirectoryManager(api)
result = manager.delete(environment_id='datacenter1',
session_id='session1',
service_id='test')
assert result is None
def test_ad_manager_delete_negative_with_two_parameters(self):
result = 'Exception'
manager = services.ActiveDirectoryManager(api)
try:
result = manager.delete('datacenter1', 'session1')
except TypeError:
pass
assert result == 'Exception'
def test_ad_manager_delete_negative_with_one_parameter(self):
result = 'Exception'
manager = services.ActiveDirectoryManager(api)
try:
result = manager.delete('datacenter1')
except TypeError:
pass
assert result == 'Exception'
def test_ad_manager_delete_negative_without_parameters(self):
result = 'Exception'
manager = services.ActiveDirectoryManager(api)
try:
result = manager.delete()
except TypeError:
pass
assert result == 'Exception'
def test_iis_manager_list_with_one_parameter(self):
manager = services.WebServerManager(api)
result = manager.list('datacenter1')
assert result == []
def test_iis_manager_list_with_named_parameter(self):
manager = services.WebServerManager(api)
result = manager.list(environment_id='datacenter1')
assert result == []
def test_iis_manager_list_with_all_parameters(self):
manager = services.WebServerManager(api)
result = manager.list('test', '1')
assert result == []
def test_iis_manager_list_with_named_parameters(self):
manager = services.WebServerManager(api)
result = manager.list(environment_id='test',
session_id='1')
assert result == []
def test_iis_manager_list_negative_without_parameters(self):
result = 'Exception'
manager = services.WebServerManager(api)
try:
result = manager.list()
except TypeError:
pass
assert result == 'Exception'
def test_iis_manager_create(self):
manager = services.WebServerManager(api)
result = manager.create('datacenter1', 'session1', 'test')
assert result.headers == {'X-Configuration-Session': 'session1'}
assert result.body == 'test'
def test_iis_manager_create_with_named_parameters(self):
manager = services.WebServerManager(api)
result = manager.create(environment_id='datacenter',
session_id='session',
web_server='test2')
assert result.headers == {'X-Configuration-Session': 'session'}
assert result.body == 'test2'
def test_iis_manager_create_negative_with_two_parameters(self):
result = 'Exception'
manager = services.WebServerManager(api)
try:
result = manager.create('datacenter1', 'session1')
except TypeError:
pass
assert result == 'Exception'
def test_iis_manager_create_negative_with_one_parameter(self):
result = 'Exception'
manager = services.WebServerManager(api)
try:
result = manager.create('datacenter1')
except TypeError:
pass
assert result == 'Exception'
def test_iis_manager_create_negative_without_parameters(self):
result = 'Exception'
manager = services.WebServerManager(api)
try:
result = manager.create()
except TypeError:
pass
assert result == 'Exception'
def test_iis_manager_delete(self):
manager = services.WebServerManager(api)
result = manager.delete('datacenter1', 'session1', 'test')
assert result is None
def test_iis_manager_delete_with_named_parameters(self):
manager = services.WebServerManager(api)
result = manager.delete(environment_id='datacenter',
session_id='session',
service_id='test')
assert result is None
def test_iis_manager_delete_negative_with_two_parameters(self):
result = 'Exception'
manager = services.WebServerManager(api)
try:
result = manager.delete('datacenter1', 'session1')
except TypeError:
pass
assert result == 'Exception'
def test_iis_manager_delete_negative_with_one_parameter(self):
result = 'Exception'
manager = services.WebServerManager(api)
try:
result = manager.delete('datacenter1')
except TypeError:
pass
assert result == 'Exception'
def test_iis_manager_delete_negative_without_parameters(self):
result = 'Exception'
manager = services.WebServerManager(api)
try:
result = manager.delete()
except TypeError:
pass
assert result == 'Exception'
def test_service_ad(self):
service_ad = services.ActiveDirectory(api, api)
assert service_ad.data() is not None
def test_service_iis(self):
service_iis = services.ActiveDirectory(api, api)
assert service_iis.data() is not None
def test_session_manager_delete(self):
manager = sessions.SessionManager(api)
result = manager.delete('datacenter1', 'session1')
assert result is None
def test_session_manager_delete_with_named_parameters(self):
manager = sessions.SessionManager(api)
result = manager.delete(environment_id='datacenter1',
session_id='session1')
assert result is None
def test_session_manager_delete_negative_with_one_parameter(self):
result = 'Exception'
manager = sessions.SessionManager(api)
try:
result = manager.delete('datacenter1')
except TypeError:
pass
assert result == 'Exception'
def test_session_manager_delete_negative_without_parameters(self):
result = 'Exception'
manager = sessions.SessionManager(api)
try:
result = manager.delete()
except TypeError:
pass
assert result == 'Exception'
def test_session_manager_get(self):
manager = sessions.SessionManager(api)
result = manager.get('datacenter1', 'session1')
# WTF?
assert result.manager is not None
def test_session_manager_configure(self):
manager = sessions.SessionManager(api)
result = manager.configure('datacenter1')
assert result is not None
def test_session_manager_configure_with_named_parameter(self):
manager = sessions.SessionManager(api)
result = manager.configure(environment_id='datacenter1')
assert result is not None
def test_session_manager_configure_negative_without_parameters(self):
result = 'Exception'
manager = sessions.SessionManager(api)
try:
result = manager.configure()
except TypeError:
pass
assert result == 'Exception'
def test_session_manager_deploy(self):
manager = sessions.SessionManager(api)
result = manager.deploy('datacenter1', '1')
assert result is None
def test_session_manager_deploy_with_named_parameters(self):
manager = sessions.SessionManager(api)
result = manager.deploy(environment_id='datacenter1',
session_id='1')
assert result is None
def test_session_manager_deploy_negative_with_one_parameter(self):
result = 'Exception'
manager = sessions.SessionManager(api)
try:
result = manager.deploy('datacenter1')
except TypeError:
pass
assert result == 'Exception'
def test_session_manager_deploy_negative_without_parameters(self):
result = 'Exception'
manager = sessions.SessionManager(api)
try:
result = manager.deploy()
except TypeError:
pass
assert result == 'Exception'
def test_session_manager_reports(self):
manager = sessions.SessionManager(api)
result = manager.reports('datacenter1', '1')
assert result == []
def test_session_manager_reports_with_named_parameters(self):
manager = sessions.SessionManager(api)
result = manager.reports(environment_id='datacenter1',
session_id='1')
assert result == []
def test_session_manager_reports_negative_with_one_parameter(self):
result = 'Exception'
manager = sessions.SessionManager(api)
try:
result = manager.reports('datacenter1')
except TypeError:
pass
assert result == 'Exception'
def test_session_manager_reports_negative_without_parameters(self):
result = 'Exception'
manager = sessions.SessionManager(api)
try:
result = manager.reports()
except TypeError:
pass
assert result == 'Exception'
def test_webfarm_list_with_one_parameter(self):
manager = services.WebServerFarmManager(api)
result = manager.list('datacenter1')
assert result == []
def test_webfarm_list_with_all_parameters(self):
manager = services.WebServerFarmManager(api)
result = manager.list('test', '1')
assert result == []
def test_webfarm_list_with_named_parameters(self):
manager = services.WebServerFarmManager(api)
result = manager.list(environment_id='test', session_id='1')
assert result == []
def test_webfarm_list_with_named_parameter(self):
manager = services.WebServerFarmManager(api)
result = manager.list(environment_id='test')
assert result == []
def test_webfarm_list_negative_without_parameters(self):
result = 'Exception'
manager = services.WebServerFarmManager(api)
try:
result = manager.list()
except TypeError:
pass
assert result is 'Exception'
def test_webfarm_create(self):
manager = services.WebServerFarmManager(api)
result = manager.create('datacenter1', 'session1', 'test')
assert result.headers == {'X-Configuration-Session': 'session1'}
assert result.body == 'test'
def test_webfarm_create_with_named_parameters(self):
manager = services.WebServerFarmManager(api)
result = manager.create(environment_id='datacenter1',
session_id='session2',
web_server_farm='test2')
assert result.headers == {'X-Configuration-Session': 'session2'}
assert result.body == 'test2'
def test_webfarm_create_negative_with_two_parameters(self):
result = 'Exception'
manager = services.WebServerFarmManager(api)
try:
result = manager.create('datacenter1', 'session1')
except TypeError:
pass
assert result is 'Exception'
def test_webfarm_create_negative_with_one_parameter(self):
result = 'Exception'
manager = services.WebServerFarmManager(api)
try:
result = manager.create('datacenter1')
except TypeError:
pass
assert result is 'Exception'
def test_webfarm_create_negative_without_parameters(self):
result = 'Exception'
manager = services.WebServerFarmManager(api)
try:
result = manager.create()
except TypeError:
pass
assert result is 'Exception'
def test_webfarm_delete(self):
manager = services.WebServerFarmManager(api)
result = manager.delete('datacenter1', 'session1', 'test')
assert result is None
def test_webfarm_delete_with_named_parameters(self):
manager = services.WebServerFarmManager(api)
result = manager.delete(environment_id='datacenter1',
session_id='session1',
service_id='test')
assert result is None
def test_webfarm_delete_negative_with_two_parameters(self):
result = 'Exception'
manager = services.WebServerFarmManager(api)
try:
result = manager.delete('datacenter1', 'session1')
except TypeError:
pass
assert result == 'Exception'
def test_webfarm_delete_negative_with_one_parameter(self):
result = 'Exception'
manager = services.WebServerFarmManager(api)
try:
result = manager.delete('datacenter1')
except TypeError:
pass
assert result == 'Exception'
def test_webfarm_delete_negative_without_parameters(self):
result = 'Exception'
manager = services.WebServerFarmManager(api)
try:
result = manager.delete()
except TypeError:
pass
assert result == 'Exception'
def test_aspnetapp_list_with_one_parameter(self):
manager = services.AspNetAppManager(api)
result = manager.list('datacenter1')
assert result == []
def test_aspnetapp_list_with_all_parameters(self):
manager = services.AspNetAppManager(api)
result = manager.list('test', '1')
assert result == []
def test_aspnetapp_list_with_named_parameters(self):
manager = services.AspNetAppManager(api)
result = manager.list(environment_id='test', session_id='1')
assert result == []
def test_aspnetapp_list_with_named_parameter(self):
manager = services.AspNetAppManager(api)
result = manager.list(environment_id='test')
assert result == []
def test_aspnetapp_list_negative_without_parameters(self):
result = 'Exception'
manager = services.AspNetAppManager(api)
try:
result = manager.list()
except TypeError:
pass
assert result is 'Exception'
def test_aspnetapp_create(self):
manager = services.AspNetAppManager(api)
result = manager.create('datacenter1', 'session1', 'test')
assert result.headers == {'X-Configuration-Session': 'session1'}
assert result.body == 'test'
def test_aspnetapp_create_with_named_parameters(self):
manager = services.AspNetAppManager(api)
result = manager.create(environment_id='datacenter1',
session_id='session2',
app='test2')
assert result.headers == {'X-Configuration-Session': 'session2'}
assert result.body == 'test2'
def test_aspnetapp_create_negative_with_two_parameters(self):
result = 'Exception'
manager = services.AspNetAppManager(api)
try:
result = manager.create('datacenter1', 'session1')
except TypeError:
pass
assert result is 'Exception'
def test_aspnetapp_create_negative_with_one_parameter(self):
result = 'Exception'
manager = services.AspNetAppManager(api)
try:
result = manager.create('datacenter1')
except TypeError:
pass
assert result is 'Exception'
def test_aspnetapp_create_negative_without_parameters(self):
result = 'Exception'
manager = services.AspNetAppManager(api)
try:
result = manager.create()
except TypeError:
pass
assert result is 'Exception'
def test_aspnetapp_delete(self):
manager = services.AspNetAppManager(api)
result = manager.delete('datacenter1', 'session1', 'test')
assert result is None
def test_aspnetapp_delete_with_named_parameters(self):
manager = services.AspNetAppManager(api)
result = manager.delete(environment_id='datacenter1',
session_id='session1',
service_id='test')
assert result is None
def test_aspnetapp_delete_negative_with_two_parameters(self):
result = 'Exception'
manager = services.AspNetAppManager(api)
try:
result = manager.delete('datacenter1', 'session1')
except TypeError:
pass
assert result == 'Exception'
def test_aspnetapp_delete_negative_with_one_parameter(self):
result = 'Exception'
manager = services.AspNetAppManager(api)
try:
result = manager.delete('datacenter1')
except TypeError:
pass
assert result == 'Exception'
def test_aspnetapp_delete_negative_without_parameters(self):
result = 'Exception'
manager = services.AspNetAppManager(api)
try:
result = manager.delete()
except TypeError:
pass
assert result == 'Exception'
def test_aspnetfarm_list_with_one_parameter(self):
manager = services.AspNetAppFarmManager(api)
result = manager.list('datacenter1')
assert result == []
def test_aspnetfarm_list_with_all_parameters(self):
manager = services.AspNetAppFarmManager(api)
result = manager.list('test', '1')
assert result == []
def test_aspnetfarm_list_with_named_parameters(self):
manager = services.AspNetAppFarmManager(api)
result = manager.list(environment_id='test', session_id='1')
assert result == []
def test_aspnetfarm_list_with_named_parameter(self):
manager = services.AspNetAppFarmManager(api)
result = manager.list(environment_id='test')
assert result == []
def test_aspnetfarm_list_negative_without_parameters(self):
result = 'Exception'
manager = services.AspNetAppFarmManager(api)
try:
result = manager.list()
except TypeError:
pass
assert result is 'Exception'
def test_aspnetfarm_create(self):
manager = services.AspNetAppFarmManager(api)
result = manager.create('datacenter1', 'session1', 'test')
assert result.headers == {'X-Configuration-Session': 'session1'}
assert result.body == 'test'
def test_aspnetfarm_create_with_named_parameters(self):
manager = services.AspNetAppFarmManager(api)
result = manager.create(environment_id='datacenter1',
session_id='session2',
app_farm='test2')
assert result.headers == {'X-Configuration-Session': 'session2'}
assert result.body == 'test2'
def test_aspnetfarm_create_negative_with_two_parameters(self):
result = 'Exception'
manager = services.AspNetAppFarmManager(api)
try:
result = manager.create('datacenter1', 'session1')
except TypeError:
pass
assert result is 'Exception'
def test_aspnetfarm_create_negative_with_one_parameter(self):
result = 'Exception'
manager = services.AspNetAppFarmManager(api)
try:
result = manager.create('datacenter1')
except TypeError:
pass
assert result is 'Exception'
def test_aspnetfarm_create_negative_without_parameters(self):
result = 'Exception'
manager = services.AspNetAppFarmManager(api)
try:
result = manager.create()
except TypeError:
pass
assert result is 'Exception'
def test_aspnetfarm_delete(self):
manager = services.AspNetAppFarmManager(api)
result = manager.delete('datacenter1', 'session1', 'test')
assert result is None
def test_aspnetfarm_delete_with_named_parameters(self):
manager = services.AspNetAppFarmManager(api)
result = manager.delete(environment_id='datacenter1',
session_id='session1',
service_id='test')
assert result is None
def test_aspnetfarm_delete_negative_with_two_parameters(self):
result = 'Exception'
manager = services.AspNetAppFarmManager(api)
try:
result = manager.delete('datacenter1', 'session1')
except TypeError:
pass
assert result == 'Exception'
def test_aspnetfarm_delete_negative_with_one_parameter(self):
result = 'Exception'
manager = services.AspNetAppFarmManager(api)
try:
result = manager.delete('datacenter1')
except TypeError:
pass
assert result == 'Exception'
def test_aspnetfarm_delete_negative_without_parameters(self):
result = 'Exception'
manager = services.AspNetAppFarmManager(api)
try:
result = manager.delete()
except TypeError:
pass
assert result == 'Exception'

View File

@ -12,7 +12,7 @@
# License for the specific language governing permissions and limitations
# under the License.
import unittest
import unittest2 as unittest
import logging
from httpretty import HTTPretty, httprettified
from muranoclient.client import Client
@ -21,6 +21,7 @@ from muranoclient.client import Client
LOG = logging.getLogger('Unit tests')
@unittest.skip
class UnitTestsForClassesAndFunctions(unittest.TestCase):
@httprettified
def test_client_env_list_with_empty_list(self):
@ -124,7 +125,7 @@ class UnitTestsForClassesAndFunctions(unittest.TestCase):
endpoint = 'http://no-resolved-host:8001'
test_client = Client('1', endpoint=endpoint, token='1', timeout=10)
result = test_client.activeDirectories.create('1', 'test', 'ad1')
result = test_client.services.post('1', 'test', 'ad1')
assert result.name == 'ad1'
@httprettified

235
tests/test_methods.py Normal file
View File

@ -0,0 +1,235 @@
# Copyright (c) 2013 Mirantis, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
import unittest2 as unittest
import logging
from mock import MagicMock
from muranoclient.client import Client
import muranoclient.v1.environments as environments
import muranoclient.v1.services as services
import muranoclient.v1.sessions as sessions
def my_mock(*a, **b):
return [a, b]
LOG = logging.getLogger('Unit tests')
api = MagicMock(json_request=my_mock)
class UnitTestsForClassesAndFunctions(unittest.TestCase):
def test_create_client_instance(self):
endpoint = 'http://no-resolved-host:8001'
test_client = Client('1', endpoint=endpoint, token='1', timeout=10)
assert test_client.environments is not None
assert test_client.sessions is not None
assert test_client.services is not None
def test_env_manager_list(self):
manager = environments.EnvironmentManager(api)
result = manager.list()
assert result == []
def test_env_manager_create(self):
manager = environments.EnvironmentManager(api)
result = manager.create('test')
assert result.body == {'name': 'test'}
def test_env_manager_create_with_named_parameters(self):
manager = environments.EnvironmentManager(api)
result = manager.create(name='test')
assert result.body == {'name': 'test'}
def test_env_manager_create_negative_without_parameters(self):
result = 'Exception'
manager = environments.EnvironmentManager(api)
try:
result = manager.create()
except TypeError:
pass
assert result is 'Exception'
def test_env_manager_delete(self):
manager = environments.EnvironmentManager(api)
result = manager.delete('test')
assert result is None
def test_env_manager_delete_with_named_parameters(self):
manager = environments.EnvironmentManager(api)
result = manager.delete(environment_id='1')
assert result is None
def test_env_manager_delete_negative_without_parameters(self):
result = 'Exception'
manager = environments.EnvironmentManager(api)
try:
result = manager.delete()
except TypeError:
pass
assert result is 'Exception'
def test_env_manager_update(self):
manager = environments.EnvironmentManager(api)
result = manager.update('1', 'test')
assert result.body == {'name': 'test'}
def test_env_manager_update_with_named_parameters(self):
manager = environments.EnvironmentManager(api)
result = manager.update(environment_id='1',
name='test')
assert result.body == {'name': 'test'}
def test_env_manager_update_negative_with_one_parameter(self):
result = 'Exception'
manager = environments.EnvironmentManager(api)
try:
result = manager.update('test')
except TypeError:
pass
assert result is 'Exception'
def test_env_manager_update_negative_without_parameters(self):
result = 'Exception'
manager = environments.EnvironmentManager(api)
try:
result = manager.update()
except TypeError:
pass
assert result is 'Exception'
def test_env_manager_get(self):
manager = environments.EnvironmentManager(api)
result = manager.get('test')
## WTF?
assert result.manager is not None
def test_env(self):
environment = environments.Environment(api, api)
assert environment.data() is not None
def test_session_manager_delete(self):
manager = sessions.SessionManager(api)
result = manager.delete('datacenter1', 'session1')
assert result is None
def test_session_manager_delete_with_named_parameters(self):
manager = sessions.SessionManager(api)
result = manager.delete(environment_id='datacenter1',
session_id='session1')
assert result is None
def test_session_manager_delete_negative_with_one_parameter(self):
result = 'Exception'
manager = sessions.SessionManager(api)
try:
result = manager.delete('datacenter1')
except TypeError:
pass
assert result == 'Exception'
def test_session_manager_delete_negative_without_parameters(self):
result = 'Exception'
manager = sessions.SessionManager(api)
try:
result = manager.delete()
except TypeError:
pass
assert result == 'Exception'
def test_session_manager_get(self):
manager = sessions.SessionManager(api)
result = manager.get('datacenter1', 'session1')
# WTF?
assert result.manager is not None
def test_session_manager_configure(self):
manager = sessions.SessionManager(api)
result = manager.configure('datacenter1')
assert result is not None
def test_session_manager_configure_with_named_parameter(self):
manager = sessions.SessionManager(api)
result = manager.configure(environment_id='datacenter1')
assert result is not None
def test_session_manager_configure_negative_without_parameters(self):
result = 'Exception'
manager = sessions.SessionManager(api)
try:
result = manager.configure()
except TypeError:
pass
assert result == 'Exception'
def test_session_manager_deploy(self):
manager = sessions.SessionManager(api)
result = manager.deploy('datacenter1', '1')
assert result is None
def test_session_manager_deploy_with_named_parameters(self):
manager = sessions.SessionManager(api)
result = manager.deploy(environment_id='datacenter1',
session_id='1')
assert result is None
def test_session_manager_deploy_negative_with_one_parameter(self):
result = 'Exception'
manager = sessions.SessionManager(api)
try:
result = manager.deploy('datacenter1')
except TypeError:
pass
assert result == 'Exception'
def test_session_manager_deploy_negative_without_parameters(self):
result = 'Exception'
manager = sessions.SessionManager(api)
try:
result = manager.deploy()
except TypeError:
pass
assert result == 'Exception'
def test_session_manager_reports(self):
manager = sessions.SessionManager(api)
result = manager.reports('datacenter1', '1')
assert result == []
def test_session_manager_reports_with_named_parameters(self):
manager = sessions.SessionManager(api)
result = manager.reports(environment_id='datacenter1',
session_id='1')
assert result == []
def test_session_manager_reports_negative_with_one_parameter(self):
result = 'Exception'
manager = sessions.SessionManager(api)
try:
result = manager.reports('datacenter1')
except TypeError:
pass
assert result == 'Exception'
def test_session_manager_reports_negative_without_parameters(self):
result = 'Exception'
manager = sessions.SessionManager(api)
try:
result = manager.reports()
except TypeError:
pass
assert result == 'Exception'