Use ddt.named_data decorator to avoid random test names

There are few tests that generate random test names because
random parameters are given to the ddt.data  decorator.

In the ddt version number 1.6.0 there is a possibility to
determine the name of the tests without relying on the
given values. I think this could be a good solution for
the randomly generated names.

Change-Id: Iaf39f4a83e383fb9db7f519136b9169352ff84af
This commit is contained in:
lkuchlan 2022-09-04 11:19:34 +03:00
parent f67893cccc
commit 4b26d79ba7
3 changed files with 29 additions and 23 deletions

View File

@ -113,22 +113,26 @@ class ShareTypesAdminTest(base.BaseSharesAdminTest):
@utils.skip_if_microversion_not_supported("2.50")
@decorators.idempotent_id('a9af19e1-e789-4c4f-a39b-dd8df6ed00b1')
@tc.attr(base.TAG_POSITIVE, base.TAG_API)
@ddt.data(
('2.50', data_utils.rand_name("type_updated"),
@ddt.named_data(
('2.50_name_description_public', '2.50',
data_utils.rand_name("type_updated"), 'description_updated', True),
('2.50_name', '2.50', data_utils.rand_name("type_updated"), None,
None),
('2.50_description_public', '2.50', None, 'description_updated',
None),
('2.50_public', '2.50', None, None, True),
('2.50', '2.50', None, None, False),
(f'{LATEST_MICROVERSION}_name_description_public',
LATEST_MICROVERSION, data_utils.rand_name("type_updated"),
'description_updated', True),
('2.50', data_utils.rand_name("type_updated"), None, None),
('2.50', None, 'description_updated', None),
('2.50', None, None, True),
('2.50', None, None, False),
(LATEST_MICROVERSION, data_utils.rand_name("type_updated"),
'description_updated', True),
(LATEST_MICROVERSION, data_utils.rand_name("type_updated"),
None, None),
(LATEST_MICROVERSION, None, 'description_updated', None),
(LATEST_MICROVERSION, None, None, True),
(LATEST_MICROVERSION, None, None, False),
(f'{LATEST_MICROVERSION}_name', LATEST_MICROVERSION,
data_utils.rand_name("type_updated"), None, None),
(f'{LATEST_MICROVERSION}_description', LATEST_MICROVERSION, None,
'description_updated', None),
(f'{LATEST_MICROVERSION}_public', LATEST_MICROVERSION, None, None,
True),
(LATEST_MICROVERSION, LATEST_MICROVERSION, None, None, False),
)
@ddt.unpack
def test_share_type_create_update(self, version, st_name,
st_description, st_is_public):
name = data_utils.rand_name("tempest-manila")

View File

@ -83,15 +83,17 @@ class ShareTypesNegativeTest(base.BaseSharesMixedTest):
@utils.skip_if_microversion_not_supported("2.50")
@decorators.idempotent_id('4a22945c-8988-43a1-88c9-eb86e6abcd8e')
@tc.attr(base.TAG_NEGATIVE, base.TAG_API)
@ddt.data(
('2.50', '', None, None),
(LATEST_MICROVERSION, '', None, None),
('2.50', None, None, 'not_bool'),
(LATEST_MICROVERSION, None, None, 'not_bool'),
('2.50', None, generate_long_description(256), None),
(LATEST_MICROVERSION, None, generate_long_description(256), None),
@ddt.named_data(
('2.50', '2.50', '', None, None),
(LATEST_MICROVERSION, LATEST_MICROVERSION, '', None, None),
('2.50_bad_public', '2.50', None, None, 'not_bool'),
(f'{LATEST_MICROVERSION}_bad_public', LATEST_MICROVERSION, None, None,
'not_bool'),
('2.50_description', '2.50', None, generate_long_description(256),
None),
(f'{LATEST_MICROVERSION}_description', LATEST_MICROVERSION, None,
generate_long_description(256), None),
)
@ddt.unpack
def test_share_type_update_bad_request(
self, version, st_name, st_description, st_is_public):
st_id = self.st['id']

View File

@ -4,6 +4,6 @@
pbr!=2.1.0,>=2.0.0 # Apache-2.0
ddt>=1.0.1 # MIT
ddt>=1.6.0 # MIT
oslo.log>=3.36.0 # Apache-2.0
tempest>=31.1.0 # Apache-2.0