Add test related to FMS
- create flavor with swap and ephemeral paramters - create flavor with disk size zero - verify additional paramters in list flavor - create flavor with region group type - create flavor with region group type and a single region - create flavor with two regions - create flavour with uuid passed explicitly fixed Issue with pylint - ranger_tempest_plugin/config.py:19: [C0103(invalid-name), ] - ranger_tempest_plugin/config.py:24: [C0103(invalid-name), ] - ranger_tempest_plugin/config.py:29: [C0103(invalid-name), ] - ranger_tempest_plugin/config.py:34: [C0103(invalid-name), ] Change-Id: I695a3f23d8c1d6034c465a03a709b877995ecb95
This commit is contained in:
parent
1637826d1e
commit
9eb04e2737
@ -16,22 +16,22 @@
|
||||
from oslo_config import cfg
|
||||
|
||||
|
||||
service_available_group = cfg.OptGroup(
|
||||
SERVICE_AVAILABLE_GROUP = cfg.OptGroup(
|
||||
name="service_available",
|
||||
title="Available OpenStack Services"
|
||||
)
|
||||
|
||||
ServiceAvailableGroup = [
|
||||
ORM_SERVICE_AVAILABLE_GROUP = [
|
||||
cfg.BoolOpt("ranger", default=False,
|
||||
help="Whether or not ranger is expected to be available")
|
||||
]
|
||||
|
||||
orm_group = cfg.OptGroup(
|
||||
ORM_GROUP = cfg.OptGroup(
|
||||
name="ranger",
|
||||
title="Ranger Service option"
|
||||
)
|
||||
|
||||
OrmGroup = [
|
||||
ORM_GROUP_OPTIONS = [
|
||||
cfg.StrOpt("uri",
|
||||
default="orm",
|
||||
help="Uri of the orm service."),
|
||||
@ -71,5 +71,9 @@ OrmGroup = [
|
||||
help="Supported flavor series"),
|
||||
cfg.StrOpt("domain",
|
||||
default='Default',
|
||||
help="Domain used for Ranger tempest testing")
|
||||
help="Domain used for Ranger tempest testing"),
|
||||
cfg.StrOpt("region_alt",
|
||||
default='',
|
||||
help="Provide alternate region for creating"
|
||||
"resources with multiple regions"),
|
||||
]
|
||||
|
@ -25,8 +25,8 @@ from tempest.test_discover import plugins
|
||||
class RangerPlugin(plugins.TempestPlugin):
|
||||
def get_opt_lists(self):
|
||||
return [(
|
||||
project_config.orm_group.name,
|
||||
project_config.OrmGroup)]
|
||||
project_config.ORM_GROUP.name,
|
||||
project_config.ORM_GROUP_OPTIONS)]
|
||||
|
||||
def load_tests(self):
|
||||
base_path = os.path.split(os.path.dirname(
|
||||
@ -38,9 +38,9 @@ class RangerPlugin(plugins.TempestPlugin):
|
||||
def register_opts(self, conf):
|
||||
config.register_opt_group(
|
||||
conf,
|
||||
project_config.service_available_group,
|
||||
project_config.ServiceAvailableGroup)
|
||||
project_config.SERVICE_AVAILABLE_GROUP,
|
||||
project_config.ORM_SERVICE_AVAILABLE_GROUP)
|
||||
config.register_opt_group(
|
||||
conf,
|
||||
project_config.orm_group,
|
||||
project_config.OrmGroup)
|
||||
project_config.ORM_GROUP,
|
||||
project_config.ORM_GROUP_OPTIONS)
|
||||
|
@ -14,7 +14,9 @@
|
||||
# under the License.
|
||||
|
||||
import json
|
||||
import uuid
|
||||
|
||||
from ranger_tempest_plugin import data_utils as orm_data_utils
|
||||
from ranger_tempest_plugin.tests.api import fms_base
|
||||
from tempest import config
|
||||
|
||||
@ -68,6 +70,14 @@ class TestTempestFms(fms_base.FmsBaseOrmTest):
|
||||
_, body = self.client.get_flavor(flavor_id)
|
||||
return body["flavor"]
|
||||
|
||||
def _create_region_group(self):
|
||||
_, body = self.rms_client.create_region_group(
|
||||
**orm_data_utils.rand_region_group([CONF.identity.region])
|
||||
)
|
||||
group_id = body['group']['id']
|
||||
self.addCleanup(self.rms_client.delete_region_group, group_id)
|
||||
return group_id
|
||||
|
||||
def _data_setup(self, post_body):
|
||||
flavor = self._create_flv_and_validate_creation_on_dcp_and_lcp(
|
||||
**post_body)
|
||||
@ -359,3 +369,128 @@ class TestTempestFms(fms_base.FmsBaseOrmTest):
|
||||
self._del_flv_and_validate_deletion_on_dcp_and_lcp(test_flvr_id)
|
||||
self.assertRaises(exceptions.NotFound, self.client.get_flavor,
|
||||
test_flvr_id)
|
||||
|
||||
@decorators.idempotent_id('2a1240d8-ae30-4c37-b99f-af961a5e16cb')
|
||||
def test_create_flavor_with_swap_and_ephemeral(self):
|
||||
post_body = self._get_flavor_params()
|
||||
|
||||
# set swap and ephemeral size
|
||||
swap = ephemeral = '1024'
|
||||
# update swap and ephemeral
|
||||
post_body['ephemeral'] = ephemeral
|
||||
post_body['swap'] = swap
|
||||
flavor = self._data_setup(post_body)
|
||||
test_flvr_id = flavor['id']
|
||||
# verify flavor record created successfully
|
||||
flavor_details = self._get_flavor_details(test_flvr_id)
|
||||
self.assertEqual(flavor_details['status'], 'Success')
|
||||
self.assertEqual(flavor_details['swap'], swap)
|
||||
self.assertEqual(flavor_details['ephemeral'], ephemeral)
|
||||
|
||||
@decorators.idempotent_id('2178be75-c36b-4cfe-9df7-8a4bff6e7f83')
|
||||
def test_list_flavor_with_additional_field(self):
|
||||
_, body = self.client.list_flavors()
|
||||
|
||||
fields = [
|
||||
'id',
|
||||
'description',
|
||||
'series',
|
||||
'ram',
|
||||
'vcpus',
|
||||
'disk',
|
||||
'swap',
|
||||
'ephemeral',
|
||||
'extra-specs',
|
||||
'options',
|
||||
'tag',
|
||||
'regions',
|
||||
'visibility',
|
||||
'tenants',
|
||||
]
|
||||
|
||||
if body['flavors']:
|
||||
flavor = body['flavors'][0]
|
||||
# check fields is present in response dict as keys
|
||||
self.assertTrue(set(fields).issubset(set(flavor.keys())))
|
||||
|
||||
@decorators.idempotent_id('53275983-6999-42f2-8ce5-6a83ade3980f')
|
||||
def test_create_flavor_with_zero_disk(self):
|
||||
post_body = self._get_flavor_params()
|
||||
disk = '0'
|
||||
post_body['disk'] = disk
|
||||
flavor = self._data_setup(post_body)
|
||||
test_flvr_id = flavor['id']
|
||||
flavor_details = self._get_flavor_details(test_flvr_id)
|
||||
self.assertEqual(flavor_details["status"], "Success")
|
||||
self.assertEqual(flavor_details["disk"], disk)
|
||||
|
||||
@decorators.idempotent_id('997ca03c-4176-4632-a0c9-7e943b03306c')
|
||||
def test_create_flavor_with_region_group(self):
|
||||
# create region group
|
||||
_, body = self.rms_client.create_region_group(
|
||||
**orm_data_utils.rand_region_group([CONF.identity.region])
|
||||
)
|
||||
group_id = body['group']['id']
|
||||
self.addCleanup(self.rms_client.delete_region_group, group_id)
|
||||
|
||||
post_body = self._get_flavor_params()
|
||||
region_group = {'name': group_id, 'type': 'group'}
|
||||
post_body['regions'] = [region_group]
|
||||
flavor = self._data_setup(post_body)
|
||||
test_flvr_id = flavor['id']
|
||||
|
||||
flavor_details = self._get_flavor_details(test_flvr_id)
|
||||
self.assertEqual(flavor_details['status'], 'Success')
|
||||
self.assertEqual(flavor['regions'][0]['name'], CONF.identity.region)
|
||||
|
||||
@decorators.idempotent_id('ea2a618e-bd53-460b-bde5-01ea20b417c9')
|
||||
def test_create_flavor_with_two_regions(self):
|
||||
region_alt = CONF.ranger.region_alt
|
||||
if not region_alt:
|
||||
raise exceptions.InvalidConfiguration(
|
||||
'Provide region_alt in ranger block in configuration file')
|
||||
post_body = self._get_flavor_params()
|
||||
post_body['regions'].append(
|
||||
{'name': region_alt}
|
||||
)
|
||||
flavor = self._data_setup(post_body)
|
||||
test_flvr_id = flavor['id']
|
||||
flavor_details = self._get_flavor_details(test_flvr_id)
|
||||
self.assertEqual(flavor_details['status'], 'Success')
|
||||
self.assertEqual(flavor['regions'][0]['name'], CONF.identity.region)
|
||||
self.assertEqual(flavor['regions'][1]['name'], region_alt)
|
||||
|
||||
@decorators.idempotent_id('06c81b29-85b6-4edf-ab89-3877c49e23bc')
|
||||
def test_create_flavor_with_single_and_group_region(self):
|
||||
region_alt = CONF.ranger.region_alt
|
||||
if not region_alt:
|
||||
raise exceptions.InvalidConfiguration(
|
||||
'Provide region_alt in ranger block in configuration file')
|
||||
group_id = self._create_region_group()
|
||||
post_body = self._get_flavor_params()
|
||||
post_body['regions'] = [
|
||||
{
|
||||
'name': group_id,
|
||||
'type': 'group',
|
||||
},
|
||||
{
|
||||
'name': region_alt,
|
||||
'type': 'single',
|
||||
}
|
||||
]
|
||||
flavor = self._data_setup(post_body)
|
||||
test_flvr_id = flavor['id']
|
||||
flavor_details = self._get_flavor_details(test_flvr_id)
|
||||
self.assertEqual(flavor_details['status'], 'Success')
|
||||
self.assertEqual(flavor['regions'][0]['name'], CONF.identity.region)
|
||||
self.assertEqual(flavor['regions'][1]['name'], region_alt)
|
||||
|
||||
@decorators.idempotent_id('997ca03c-4176-4632-a0c9-7e943b03306d')
|
||||
def test_create_flavor_with_uuid(self):
|
||||
post_body = self._get_flavor_params()
|
||||
uuid_ = uuid.uuid4().hex
|
||||
post_body['id'] = uuid_
|
||||
flavor = self._data_setup(post_body)
|
||||
flavor_details = self._get_flavor_details(uuid_)
|
||||
self.assertEqual(flavor_details['status'], 'Success')
|
||||
self.assertEqual(flavor['id'], uuid_)
|
||||
|
Loading…
x
Reference in New Issue
Block a user