Added environments tests
Change-Id: I4e343f44dd2ad405ee1e9050310f7836bf3d8936 Partly-Implements: blueprint murano-api-devstack-gates
This commit is contained in:
parent
90fd7b72d7
commit
fc8b256f6f
|
@ -12,9 +12,11 @@
|
|||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
import json
|
||||
from tempest import clients
|
||||
from tempest.common import rest_client
|
||||
from tempest import config
|
||||
from tempest import exceptions
|
||||
import testtools
|
||||
|
||||
CONF = config.CONF
|
||||
|
@ -24,16 +26,63 @@ class MuranoClient(rest_client.RestClient):
|
|||
|
||||
def __init__(self, auth_provider):
|
||||
super(MuranoClient, self).__init__(auth_provider)
|
||||
|
||||
self.service = 'application_catalog'
|
||||
self.endpoint_url = 'publicURL'
|
||||
|
||||
def get_environments_list(self):
|
||||
resp, body = self.get('environments')
|
||||
|
||||
return resp, json.loads(body)
|
||||
|
||||
def create_environment(self, name):
|
||||
post_body = '{"name": "%s"}' % name
|
||||
|
||||
resp, body = self.post('environments', post_body)
|
||||
|
||||
return resp, json.loads(body)
|
||||
|
||||
def delete_environment(self, environment_id):
|
||||
return self.delete('environments/{0}'.format(environment_id))
|
||||
|
||||
def update_environment(self, environment_id):
|
||||
post_body = '{"name": "%s"}' % ("changed-environment-name")
|
||||
|
||||
resp, body = self.put('environments/{0}'.format(environment_id),
|
||||
post_body)
|
||||
|
||||
return resp, json.loads(body)
|
||||
|
||||
def get_environment(self, environment_id):
|
||||
resp, body = self.get('environments/{0}'.format(environment_id))
|
||||
|
||||
return resp, json.loads(body)
|
||||
|
||||
|
||||
class TestCase(testtools.TestCase):
|
||||
def setUp(self):
|
||||
super(TestCase, self).setUp()
|
||||
@classmethod
|
||||
def setUpClass(cls):
|
||||
super(TestCase, cls).setUpClass()
|
||||
|
||||
username = CONF.identity.username
|
||||
password = CONF.identity.password
|
||||
tenant_name = CONF.identity.tenant_name
|
||||
|
||||
mgr = clients.Manager(username, password, tenant_name)
|
||||
auth_provider = mgr.get_auth_provider()
|
||||
self.client = MuranoClient(auth_provider)
|
||||
auth_provider = mgr.get_auth_provider(mgr.get_default_credentials())
|
||||
|
||||
cls.client = MuranoClient(auth_provider)
|
||||
|
||||
def setUp(self):
|
||||
super(TestCase, self).setUp()
|
||||
|
||||
self.environments = []
|
||||
|
||||
def tearDown(self):
|
||||
super(TestCase, self).tearDown()
|
||||
|
||||
for environment in self.environments:
|
||||
try:
|
||||
self.client.delete_environment(environment['id'])
|
||||
except exceptions.NotFound:
|
||||
pass
|
||||
|
|
|
@ -12,6 +12,7 @@
|
|||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
from tempest import exceptions
|
||||
from tempest.test import attr
|
||||
|
||||
from functionaltests.api import base
|
||||
|
@ -21,5 +22,85 @@ class TestEnvironments(base.TestCase):
|
|||
|
||||
@attr(type='smoke')
|
||||
def test_list_environments(self):
|
||||
resp, body = self.client.get('/environments')
|
||||
resp, body = self.client.get_environments_list()
|
||||
|
||||
self.assertIn('environments', body)
|
||||
self.assertEqual(resp.status, 200)
|
||||
|
||||
@attr(type='smoke')
|
||||
def test_create_and_delete_environment(self):
|
||||
_, environments_list_start = self.client.get_environments_list()
|
||||
|
||||
resp, env = self.client.create_environment('test')
|
||||
self.environments.append(env)
|
||||
|
||||
self.assertEqual(resp.status, 200)
|
||||
self.assertEqual('test', env['name'])
|
||||
|
||||
_, environments_list = self.client.get_environments_list()
|
||||
|
||||
self.assertEqual(len(environments_list_start['environments']) + 1,
|
||||
len(environments_list['environments']))
|
||||
|
||||
self.client.delete_environment(env['id'])
|
||||
|
||||
_, environments_list = self.client.get_environments_list()
|
||||
|
||||
self.assertEqual(len(environments_list_start['environments']),
|
||||
len(environments_list['environments']))
|
||||
|
||||
self.environments.pop(self.environments.index(env))
|
||||
|
||||
@attr(type='smoke')
|
||||
def test_get_environment(self):
|
||||
_, env = self.client.create_environment('test')
|
||||
self.environments.append(env)
|
||||
|
||||
resp, environment = self.client.get_environment(env['id'])
|
||||
|
||||
self.assertEqual(resp.status, 200)
|
||||
self.assertEqual(environment['name'], 'test')
|
||||
|
||||
@attr(type='smoke')
|
||||
def test_update_environment(self):
|
||||
_, env = self.client.create_environment('test')
|
||||
self.environments.append(env)
|
||||
|
||||
resp, environment = self.client.update_environment(env['id'])
|
||||
|
||||
self.assertEqual(resp.status, 200)
|
||||
self.assertEqual(environment['name'], 'changed-environment-name')
|
||||
|
||||
@attr(type='negative')
|
||||
def test_update_environment_with_wrong_env_id(self):
|
||||
self.assertRaises(exceptions.NotFound,
|
||||
self.client.update_environment,
|
||||
None)
|
||||
|
||||
@attr(type='negative')
|
||||
def test_delete_environment_with_wrong_env_id(self):
|
||||
self.assertRaises(exceptions.NotFound,
|
||||
self.client.delete_environment,
|
||||
None)
|
||||
|
||||
@attr(type='negative')
|
||||
def test_double_delete_environment(self):
|
||||
_, env = self.client.create_environment('test')
|
||||
self.environments.append(env)
|
||||
|
||||
self.client.delete_environment(env['id'])
|
||||
|
||||
self.assertRaises(exceptions.NotFound,
|
||||
self.client.delete_environment,
|
||||
env['id'])
|
||||
|
||||
@attr(type='negative')
|
||||
def test_get_deleted_environment(self):
|
||||
_, env = self.client.create_environment('test')
|
||||
self.environments.append(env)
|
||||
|
||||
self.client.delete_environment(env['id'])
|
||||
|
||||
self.assertRaises(exceptions.NotFound,
|
||||
self.client.get_environment,
|
||||
env['id'])
|
||||
|
|
Loading…
Reference in New Issue