
It tests CRUD and list operations for node group templates. Change-Id: Ib2c94db50db03998ad402d52b4f87032581fdc76
84 lines
3.2 KiB
Python
84 lines
3.2 KiB
Python
# 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.
|
|
|
|
from tempest.api.data_processing import base as dp_base
|
|
from tempest.common.utils import data_utils
|
|
from tempest.test import attr
|
|
|
|
|
|
class NodeGroupTemplateTest(dp_base.BaseDataProcessingTest):
|
|
def _create_simple_node_group_template(self, template_name=None):
|
|
"""Creates simple Node Group Template with optional name specified.
|
|
|
|
It creates template and ensures response status and template name.
|
|
Returns id and name of created template.
|
|
"""
|
|
|
|
if template_name is None:
|
|
# generate random name if it's not specified
|
|
template_name = data_utils.rand_name('savanna')
|
|
|
|
# create simple node group template
|
|
resp, body, template_id = self.create_node_group_template(
|
|
template_name, **self.simple_node_group_template)
|
|
|
|
# ensure that template created successfully
|
|
self.assertEqual(202, resp.status)
|
|
self.assertEqual(template_name, body['name'])
|
|
|
|
return template_id, template_name
|
|
|
|
@attr(type='smoke')
|
|
def test_node_group_template_create(self):
|
|
# just create and ensure template
|
|
self._create_simple_node_group_template()
|
|
|
|
@attr(type='smoke')
|
|
def test_node_group_template_list(self):
|
|
template_info = self._create_simple_node_group_template()
|
|
|
|
# check for node group template in list
|
|
resp, templates = self.client.list_node_group_templates()
|
|
|
|
self.assertEqual(200, resp.status)
|
|
templates_info = list([(template['id'], template['name'])
|
|
for template in templates])
|
|
self.assertIn(template_info, templates_info)
|
|
|
|
@attr(type='smoke')
|
|
def test_node_group_template_get(self):
|
|
template_id, template_name = self._create_simple_node_group_template()
|
|
|
|
# check node group template fetch by id
|
|
resp, template = self.client.get_node_group_template(template_id)
|
|
|
|
self.assertEqual(200, resp.status)
|
|
self.assertEqual(template_name, template['name'])
|
|
self.assertEqual(self.simple_node_group_template['plugin_name'],
|
|
template['plugin_name'])
|
|
self.assertEqual(self.simple_node_group_template['node_processes'],
|
|
template['node_processes'])
|
|
self.assertEqual(self.simple_node_group_template['flavor_id'],
|
|
template['flavor_id'])
|
|
|
|
@attr(type='smoke')
|
|
def test_node_group_template_delete(self):
|
|
template_id, template_name = self._create_simple_node_group_template()
|
|
|
|
# delete the node group template by id
|
|
resp = self.client.delete_node_group_template(template_id)
|
|
|
|
self.assertEqual('204', resp[0]['status'])
|