Merge "Move general methods under utils file"
This commit is contained in:
@@ -18,6 +18,7 @@ from testtools import testcase as tc
|
|||||||
|
|
||||||
from manila_tempest_tests.tests.api import base
|
from manila_tempest_tests.tests.api import base
|
||||||
from manila_tempest_tests.tests.api import test_share_networks
|
from manila_tempest_tests.tests.api import test_share_networks
|
||||||
|
from manila_tempest_tests import utils
|
||||||
|
|
||||||
|
|
||||||
class ShareNetworkAdminTest(base.BaseSharesMixedTest,
|
class ShareNetworkAdminTest(base.BaseSharesMixedTest,
|
||||||
@@ -26,7 +27,7 @@ class ShareNetworkAdminTest(base.BaseSharesMixedTest,
|
|||||||
@classmethod
|
@classmethod
|
||||||
def resource_setup(cls):
|
def resource_setup(cls):
|
||||||
super(ShareNetworkAdminTest, cls).resource_setup()
|
super(ShareNetworkAdminTest, cls).resource_setup()
|
||||||
ss_data = cls.generate_security_service_data()
|
ss_data = utils.generate_security_service_data()
|
||||||
cls.ss_ldap = cls.create_security_service(**ss_data)
|
cls.ss_ldap = cls.create_security_service(**ss_data)
|
||||||
|
|
||||||
cls.data_sn_with_ldap_ss = {
|
cls.data_sn_with_ldap_ss = {
|
||||||
|
|||||||
@@ -906,40 +906,6 @@ class BaseSharesTest(test.BaseTestCase):
|
|||||||
"cleanup '%s'. Skipping.", res["type"])
|
"cleanup '%s'. Skipping.", res["type"])
|
||||||
res["deleted"] = True
|
res["deleted"] = True
|
||||||
|
|
||||||
@classmethod
|
|
||||||
def generate_share_network_data(self):
|
|
||||||
data = {
|
|
||||||
"name": data_utils.rand_name("sn-name"),
|
|
||||||
"description": data_utils.rand_name("sn-desc"),
|
|
||||||
"neutron_net_id": data_utils.rand_name("net-id"),
|
|
||||||
"neutron_subnet_id": data_utils.rand_name("subnet-id"),
|
|
||||||
}
|
|
||||||
return data
|
|
||||||
|
|
||||||
@classmethod
|
|
||||||
def generate_subnet_data(self):
|
|
||||||
data = {
|
|
||||||
"neutron_net_id": data_utils.rand_name("net-id"),
|
|
||||||
"neutron_subnet_id": data_utils.rand_name("subnet-id"),
|
|
||||||
}
|
|
||||||
return data
|
|
||||||
|
|
||||||
@classmethod
|
|
||||||
def generate_security_service_data(self, set_ou=False):
|
|
||||||
data = {
|
|
||||||
"name": data_utils.rand_name("ss-name"),
|
|
||||||
"description": data_utils.rand_name("ss-desc"),
|
|
||||||
"dns_ip": utils.rand_ip(),
|
|
||||||
"server": utils.rand_ip(),
|
|
||||||
"domain": data_utils.rand_name("ss-domain"),
|
|
||||||
"user": data_utils.rand_name("ss-user"),
|
|
||||||
"password": data_utils.rand_name("ss-password"),
|
|
||||||
}
|
|
||||||
if set_ou:
|
|
||||||
data["ou"] = data_utils.rand_name("ss-ou")
|
|
||||||
|
|
||||||
return data
|
|
||||||
|
|
||||||
# Useful assertions
|
# Useful assertions
|
||||||
def assertDictMatch(self, d1, d2, approx_equal=False, tolerance=0.001):
|
def assertDictMatch(self, d1, d2, approx_equal=False, tolerance=0.001):
|
||||||
"""Assert two dicts are equivalent.
|
"""Assert two dicts are equivalent.
|
||||||
|
|||||||
@@ -249,7 +249,7 @@ class ReplicationNegativeTest(ReplicationNegativeBase):
|
|||||||
@utils.skip_if_microversion_not_supported("2.51")
|
@utils.skip_if_microversion_not_supported("2.51")
|
||||||
def test_try_add_replica_nonexistent_subnet(self):
|
def test_try_add_replica_nonexistent_subnet(self):
|
||||||
# Create a new share network only for a specific az
|
# Create a new share network only for a specific az
|
||||||
data = self.generate_share_network_data()
|
data = utils.generate_share_network_data()
|
||||||
subnet = utils.share_network_get_default_subnet(self.share_network)
|
subnet = utils.share_network_get_default_subnet(self.share_network)
|
||||||
data['neutron_net_id'] = subnet['neutron_net_id']
|
data['neutron_net_id'] = subnet['neutron_net_id']
|
||||||
data['neutron_subnet_id'] = subnet['neutron_subnet_id']
|
data['neutron_subnet_id'] = subnet['neutron_subnet_id']
|
||||||
|
|||||||
@@ -162,7 +162,7 @@ class SecurityServicesTest(base.BaseSharesMixedTest,
|
|||||||
@decorators.idempotent_id('70927e29-4a6a-431a-bbc1-76bc419e0579')
|
@decorators.idempotent_id('70927e29-4a6a-431a-bbc1-76bc419e0579')
|
||||||
@tc.attr(base.TAG_POSITIVE, base.TAG_API)
|
@tc.attr(base.TAG_POSITIVE, base.TAG_API)
|
||||||
def test_create_delete_security_service(self):
|
def test_create_delete_security_service(self):
|
||||||
data = self.generate_security_service_data()
|
data = utils.generate_security_service_data()
|
||||||
self.service_names = ["ldap", "kerberos", "active_directory"]
|
self.service_names = ["ldap", "kerberos", "active_directory"]
|
||||||
for ss_name in self.service_names:
|
for ss_name in self.service_names:
|
||||||
ss = self.create_security_service(ss_name, **data)
|
ss = self.create_security_service(ss_name, **data)
|
||||||
@@ -176,7 +176,7 @@ class SecurityServicesTest(base.BaseSharesMixedTest,
|
|||||||
def test_get_security_service(self, version):
|
def test_get_security_service(self, version):
|
||||||
utils.check_skip_if_microversion_not_supported(version)
|
utils.check_skip_if_microversion_not_supported(version)
|
||||||
with_ou = True if utils.is_microversion_ge(version, '2.44') else False
|
with_ou = True if utils.is_microversion_ge(version, '2.44') else False
|
||||||
data = self.generate_security_service_data(set_ou=with_ou)
|
data = utils.generate_security_service_data(set_ou=with_ou)
|
||||||
|
|
||||||
if utils.is_microversion_ge(version, '2.0'):
|
if utils.is_microversion_ge(version, '2.0'):
|
||||||
ss = self.create_security_service(
|
ss = self.create_security_service(
|
||||||
@@ -196,11 +196,11 @@ class SecurityServicesTest(base.BaseSharesMixedTest,
|
|||||||
@decorators.idempotent_id('84d47747-13c8-4ab9-9fc4-a43fbb29ad18')
|
@decorators.idempotent_id('84d47747-13c8-4ab9-9fc4-a43fbb29ad18')
|
||||||
@tc.attr(base.TAG_POSITIVE, base.TAG_API)
|
@tc.attr(base.TAG_POSITIVE, base.TAG_API)
|
||||||
def test_update_security_service(self):
|
def test_update_security_service(self):
|
||||||
data = self.generate_security_service_data()
|
data = utils.generate_security_service_data()
|
||||||
ss = self.create_security_service(**data)
|
ss = self.create_security_service(**data)
|
||||||
self.assertDictContainsSubset(data, ss)
|
self.assertDictContainsSubset(data, ss)
|
||||||
|
|
||||||
upd_data = self.generate_security_service_data()
|
upd_data = utils.generate_security_service_data()
|
||||||
updated = self.shares_client.update_security_service(
|
updated = self.shares_client.update_security_service(
|
||||||
ss["id"], **upd_data)['security_service']
|
ss["id"], **upd_data)['security_service']
|
||||||
|
|
||||||
@@ -211,7 +211,7 @@ class SecurityServicesTest(base.BaseSharesMixedTest,
|
|||||||
|
|
||||||
if utils.is_microversion_ge(CONF.share.max_api_microversion, '2.44'):
|
if utils.is_microversion_ge(CONF.share.max_api_microversion, '2.44'):
|
||||||
# update again with ou
|
# update again with ou
|
||||||
upd_data_ou = self.generate_security_service_data(set_ou=True)
|
upd_data_ou = utils.generate_security_service_data(set_ou=True)
|
||||||
updated_ou = self.shares_v2_client.update_security_service(
|
updated_ou = self.shares_v2_client.update_security_service(
|
||||||
ss["id"], **upd_data_ou)['security_service']
|
ss["id"], **upd_data_ou)['security_service']
|
||||||
|
|
||||||
@@ -225,7 +225,7 @@ class SecurityServicesTest(base.BaseSharesMixedTest,
|
|||||||
@testtools.skipIf(
|
@testtools.skipIf(
|
||||||
not CONF.share.multitenancy_enabled, "Only for multitenancy.")
|
not CONF.share.multitenancy_enabled, "Only for multitenancy.")
|
||||||
def test_try_update_valid_keys_sh_server_exists(self):
|
def test_try_update_valid_keys_sh_server_exists(self):
|
||||||
ss_data = self.generate_security_service_data()
|
ss_data = utils.generate_security_service_data()
|
||||||
ss = self.create_security_service(**ss_data)
|
ss = self.create_security_service(**ss_data)
|
||||||
|
|
||||||
sn = self.shares_client.get_share_network(
|
sn = self.shares_client.get_share_network(
|
||||||
@@ -274,7 +274,7 @@ class SecurityServicesTest(base.BaseSharesMixedTest,
|
|||||||
@tc.attr(base.TAG_POSITIVE, base.TAG_API)
|
@tc.attr(base.TAG_POSITIVE, base.TAG_API)
|
||||||
def test_try_list_security_services_all_tenants_ignored(self):
|
def test_try_list_security_services_all_tenants_ignored(self):
|
||||||
alt_security_service = self.create_security_service(
|
alt_security_service = self.create_security_service(
|
||||||
**self.generate_security_service_data(),
|
**utils.generate_security_service_data(),
|
||||||
client=self.alt_shares_v2_client)
|
client=self.alt_shares_v2_client)
|
||||||
alt_security_service_id = alt_security_service['id']
|
alt_security_service_id = alt_security_service['id']
|
||||||
sec_service_list = self.shares_client.list_security_services(
|
sec_service_list = self.shares_client.list_security_services(
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ from tempest.lib import decorators
|
|||||||
from testtools import testcase as tc
|
from testtools import testcase as tc
|
||||||
|
|
||||||
from manila_tempest_tests.tests.api import base
|
from manila_tempest_tests.tests.api import base
|
||||||
|
from manila_tempest_tests import utils
|
||||||
|
|
||||||
|
|
||||||
class SecurityServicesMappingTest(base.BaseSharesTest):
|
class SecurityServicesMappingTest(base.BaseSharesTest):
|
||||||
@@ -30,7 +31,7 @@ class SecurityServicesMappingTest(base.BaseSharesTest):
|
|||||||
super(SecurityServicesMappingTest, self).setUp()
|
super(SecurityServicesMappingTest, self).setUp()
|
||||||
|
|
||||||
# create share network
|
# create share network
|
||||||
data = self.generate_share_network_data()
|
data = utils.generate_share_network_data()
|
||||||
|
|
||||||
self.sn = self.create_share_network(client=self.cl,
|
self.sn = self.create_share_network(client=self.cl,
|
||||||
add_security_services=False,
|
add_security_services=False,
|
||||||
@@ -38,7 +39,7 @@ class SecurityServicesMappingTest(base.BaseSharesTest):
|
|||||||
self.assertDictContainsSubset(data, self.sn)
|
self.assertDictContainsSubset(data, self.sn)
|
||||||
|
|
||||||
# create security service
|
# create security service
|
||||||
data = self.generate_security_service_data()
|
data = utils.generate_security_service_data()
|
||||||
|
|
||||||
self.ss = self.create_security_service(client=self.cl, **data)
|
self.ss = self.create_security_service(client=self.cl, **data)
|
||||||
self.assertDictContainsSubset(data, self.ss)
|
self.assertDictContainsSubset(data, self.ss)
|
||||||
|
|||||||
@@ -146,7 +146,7 @@ class SecServicesMappingNegativeTest(base.BaseSharesMixedTest):
|
|||||||
@tc.attr(base.TAG_NEGATIVE, base.TAG_API)
|
@tc.attr(base.TAG_NEGATIVE, base.TAG_API)
|
||||||
def test_try_map_two_ss_with_same_type_to_sn(self):
|
def test_try_map_two_ss_with_same_type_to_sn(self):
|
||||||
# create share network
|
# create share network
|
||||||
data = self.generate_share_network_data()
|
data = utils.generate_share_network_data()
|
||||||
|
|
||||||
sn = self.create_share_network(client=self.cl,
|
sn = self.create_share_network(client=self.cl,
|
||||||
add_security_services=False, **data)
|
add_security_services=False, **data)
|
||||||
@@ -155,7 +155,7 @@ class SecServicesMappingNegativeTest(base.BaseSharesMixedTest):
|
|||||||
# create security services with same type
|
# create security services with same type
|
||||||
security_services = []
|
security_services = []
|
||||||
for i in range(2):
|
for i in range(2):
|
||||||
data = self.generate_security_service_data()
|
data = utils.generate_security_service_data()
|
||||||
ss = self.create_security_service(client=self.cl, **data)
|
ss = self.create_security_service(client=self.cl, **data)
|
||||||
self.assertDictContainsSubset(data, ss)
|
self.assertDictContainsSubset(data, ss)
|
||||||
security_services.insert(i, ss)
|
security_services.insert(i, ss)
|
||||||
@@ -173,14 +173,14 @@ class SecServicesMappingNegativeTest(base.BaseSharesMixedTest):
|
|||||||
@tc.attr(base.TAG_NEGATIVE, base.TAG_API)
|
@tc.attr(base.TAG_NEGATIVE, base.TAG_API)
|
||||||
def test_try_delete_ss_that_assigned_to_sn(self):
|
def test_try_delete_ss_that_assigned_to_sn(self):
|
||||||
# create share network
|
# create share network
|
||||||
data = self.generate_share_network_data()
|
data = utils.generate_share_network_data()
|
||||||
|
|
||||||
sn = self.create_share_network(client=self.cl,
|
sn = self.create_share_network(client=self.cl,
|
||||||
add_security_services=False, **data)
|
add_security_services=False, **data)
|
||||||
self.assertDictContainsSubset(data, sn)
|
self.assertDictContainsSubset(data, sn)
|
||||||
|
|
||||||
# create security service
|
# create security service
|
||||||
data = self.generate_security_service_data()
|
data = utils.generate_security_service_data()
|
||||||
|
|
||||||
ss = self.create_security_service(client=self.cl, **data)
|
ss = self.create_security_service(client=self.cl, **data)
|
||||||
self.assertDictContainsSubset(data, ss)
|
self.assertDictContainsSubset(data, ss)
|
||||||
|
|||||||
@@ -21,6 +21,7 @@ import testtools
|
|||||||
from testtools import testcase as tc
|
from testtools import testcase as tc
|
||||||
|
|
||||||
from manila_tempest_tests.tests.api import base
|
from manila_tempest_tests.tests.api import base
|
||||||
|
from manila_tempest_tests import utils
|
||||||
|
|
||||||
CONF = config.CONF
|
CONF = config.CONF
|
||||||
LOG = log.getLogger(__name__)
|
LOG = log.getLogger(__name__)
|
||||||
@@ -93,7 +94,7 @@ class SecurityServicesNegativeTest(base.BaseSharesMixedTest):
|
|||||||
@testtools.skipIf(
|
@testtools.skipIf(
|
||||||
not CONF.share.multitenancy_enabled, "Only for multitenancy.")
|
not CONF.share.multitenancy_enabled, "Only for multitenancy.")
|
||||||
def test_try_update_invalid_keys_sh_server_exists(self):
|
def test_try_update_invalid_keys_sh_server_exists(self):
|
||||||
ss_data = self.generate_security_service_data()
|
ss_data = utils.generate_security_service_data()
|
||||||
ss = self.create_security_service(**ss_data)
|
ss = self.create_security_service(**ss_data)
|
||||||
|
|
||||||
sn = self.shares_client.get_share_network(
|
sn = self.shares_client.get_share_network(
|
||||||
@@ -129,7 +130,7 @@ class SecurityServicesNegativeTest(base.BaseSharesMixedTest):
|
|||||||
@decorators.idempotent_id('288dbf42-ee22-4445-8363-7ebb1c3d89c9')
|
@decorators.idempotent_id('288dbf42-ee22-4445-8363-7ebb1c3d89c9')
|
||||||
@tc.attr(base.TAG_NEGATIVE, base.TAG_API)
|
@tc.attr(base.TAG_NEGATIVE, base.TAG_API)
|
||||||
def test_get_deleted_security_service(self):
|
def test_get_deleted_security_service(self):
|
||||||
data = self.generate_security_service_data()
|
data = utils.generate_security_service_data()
|
||||||
ss = self.create_security_service(**data)
|
ss = self.create_security_service(**data)
|
||||||
self.assertDictContainsSubset(data, ss)
|
self.assertDictContainsSubset(data, ss)
|
||||||
|
|
||||||
|
|||||||
@@ -61,7 +61,7 @@ class ShareNetworkSubnetsTest(base.BaseSharesMixedTest):
|
|||||||
az_name = az['name']
|
az_name = az['name']
|
||||||
|
|
||||||
# Generate subnet data
|
# Generate subnet data
|
||||||
data = self.generate_subnet_data()
|
data = utils.generate_subnet_data()
|
||||||
data['share_network_id'] = share_network['id']
|
data['share_network_id'] = share_network['id']
|
||||||
data['availability_zone'] = az_name
|
data['availability_zone'] = az_name
|
||||||
|
|
||||||
@@ -95,7 +95,7 @@ class ShareNetworkSubnetsTest(base.BaseSharesMixedTest):
|
|||||||
az_name = az['name']
|
az_name = az['name']
|
||||||
|
|
||||||
# Generate subnet data
|
# Generate subnet data
|
||||||
data = self.generate_subnet_data()
|
data = utils.generate_subnet_data()
|
||||||
data['share_network_id'] = share_network['id']
|
data['share_network_id'] = share_network['id']
|
||||||
data['availability_zone'] = az_name
|
data['availability_zone'] = az_name
|
||||||
|
|
||||||
|
|||||||
@@ -55,7 +55,7 @@ class ShareNetworkSubnetsNegativeTest(base.BaseSharesAdminTest):
|
|||||||
@decorators.idempotent_id('d20b6105-22d1-4fc0-8468-45dd019240c0')
|
@decorators.idempotent_id('d20b6105-22d1-4fc0-8468-45dd019240c0')
|
||||||
@tc.attr(base.TAG_NEGATIVE, base.TAG_API)
|
@tc.attr(base.TAG_NEGATIVE, base.TAG_API)
|
||||||
def test_add_share_network_subnet_share_network_not_found(self):
|
def test_add_share_network_subnet_share_network_not_found(self):
|
||||||
data = self.generate_subnet_data()
|
data = utils.generate_subnet_data()
|
||||||
self.assertRaises(lib_exc.NotFound,
|
self.assertRaises(lib_exc.NotFound,
|
||||||
self.shares_v2_client.create_subnet,
|
self.shares_v2_client.create_subnet,
|
||||||
'fake_inexistent_id',
|
'fake_inexistent_id',
|
||||||
@@ -94,7 +94,7 @@ class ShareNetworkSubnetsNegativeTest(base.BaseSharesAdminTest):
|
|||||||
@tc.attr(base.TAG_NEGATIVE, base.TAG_API)
|
@tc.attr(base.TAG_NEGATIVE, base.TAG_API)
|
||||||
def test_add_share_network_subnet_missing_parameters(self):
|
def test_add_share_network_subnet_missing_parameters(self):
|
||||||
# Generate subnet data
|
# Generate subnet data
|
||||||
data = self.generate_subnet_data()
|
data = utils.generate_subnet_data()
|
||||||
data['availability_zone'] = self.az_name
|
data['availability_zone'] = self.az_name
|
||||||
|
|
||||||
data.pop('neutron_net_id')
|
data.pop('neutron_net_id')
|
||||||
@@ -122,7 +122,7 @@ class ShareNetworkSubnetsNegativeTest(base.BaseSharesAdminTest):
|
|||||||
@tc.attr(base.TAG_NEGATIVE, base.TAG_API)
|
@tc.attr(base.TAG_NEGATIVE, base.TAG_API)
|
||||||
def test_get_deleted_subnet(self):
|
def test_get_deleted_subnet(self):
|
||||||
# Generate subnet data
|
# Generate subnet data
|
||||||
data = self.generate_subnet_data()
|
data = utils.generate_subnet_data()
|
||||||
data['share_network_id'] = self.share_network_id
|
data['share_network_id'] = self.share_network_id
|
||||||
az = self.shares_v2_client.list_availability_zones(
|
az = self.shares_v2_client.list_availability_zones(
|
||||||
)['availability_zones'][0]
|
)['availability_zones'][0]
|
||||||
|
|||||||
@@ -165,7 +165,7 @@ class ShareNetworksTest(base.BaseSharesMixedTest, ShareNetworkListMixin):
|
|||||||
cls.share_type = cls.create_share_type()
|
cls.share_type = cls.create_share_type()
|
||||||
cls.share_type_id = cls.share_type['id']
|
cls.share_type_id = cls.share_type['id']
|
||||||
|
|
||||||
ss_data = cls.generate_security_service_data()
|
ss_data = utils.generate_security_service_data()
|
||||||
cls.ss_ldap = cls.create_security_service(**ss_data)
|
cls.ss_ldap = cls.create_security_service(**ss_data)
|
||||||
|
|
||||||
cls.data_sn_with_ldap_ss = {
|
cls.data_sn_with_ldap_ss = {
|
||||||
@@ -219,7 +219,7 @@ class ShareNetworksTest(base.BaseSharesMixedTest, ShareNetworkListMixin):
|
|||||||
@tc.attr(base.TAG_POSITIVE, base.TAG_API)
|
@tc.attr(base.TAG_POSITIVE, base.TAG_API)
|
||||||
def test_create_delete_share_network(self):
|
def test_create_delete_share_network(self):
|
||||||
# generate data for share network
|
# generate data for share network
|
||||||
data = self.generate_share_network_data()
|
data = utils.generate_share_network_data()
|
||||||
|
|
||||||
# create share network
|
# create share network
|
||||||
created = self.shares_client.create_share_network(
|
created = self.shares_client.create_share_network(
|
||||||
@@ -242,7 +242,7 @@ class ShareNetworksTest(base.BaseSharesMixedTest, ShareNetworkListMixin):
|
|||||||
@decorators.idempotent_id('1837fdd3-8068-4e88-bc50-9224498f84c0')
|
@decorators.idempotent_id('1837fdd3-8068-4e88-bc50-9224498f84c0')
|
||||||
@tc.attr(base.TAG_POSITIVE, base.TAG_API)
|
@tc.attr(base.TAG_POSITIVE, base.TAG_API)
|
||||||
def test_update_share_network(self):
|
def test_update_share_network(self):
|
||||||
update_data = self.generate_share_network_data()
|
update_data = utils.generate_share_network_data()
|
||||||
updated = self.shares_client.update_share_network(
|
updated = self.shares_client.update_share_network(
|
||||||
self.sn_with_ldap_ss["id"],
|
self.sn_with_ldap_ss["id"],
|
||||||
**update_data)['share_network']
|
**update_data)['share_network']
|
||||||
@@ -268,7 +268,7 @@ class ShareNetworksTest(base.BaseSharesMixedTest, ShareNetworkListMixin):
|
|||||||
@tc.attr(base.TAG_POSITIVE, base.TAG_API)
|
@tc.attr(base.TAG_POSITIVE, base.TAG_API)
|
||||||
def test_recreate_share_network(self):
|
def test_recreate_share_network(self):
|
||||||
# generate data for share network
|
# generate data for share network
|
||||||
data = self.generate_share_network_data()
|
data = utils.generate_share_network_data()
|
||||||
|
|
||||||
# create share network
|
# create share network
|
||||||
sn1 = self.shares_client.create_share_network(**data)['share_network']
|
sn1 = self.shares_client.create_share_network(**data)['share_network']
|
||||||
@@ -288,7 +288,7 @@ class ShareNetworksTest(base.BaseSharesMixedTest, ShareNetworkListMixin):
|
|||||||
@tc.attr(base.TAG_POSITIVE, base.TAG_API)
|
@tc.attr(base.TAG_POSITIVE, base.TAG_API)
|
||||||
def test_create_two_share_networks_with_same_net_and_subnet(self):
|
def test_create_two_share_networks_with_same_net_and_subnet(self):
|
||||||
# generate data for share network
|
# generate data for share network
|
||||||
data = self.generate_share_network_data()
|
data = utils.generate_share_network_data()
|
||||||
|
|
||||||
# create first share network
|
# create first share network
|
||||||
sn1 = self.create_share_network(**data)
|
sn1 = self.create_share_network(**data)
|
||||||
|
|||||||
@@ -88,7 +88,7 @@ class ShareNetworksNegativeTest(base.BaseSharesMixedTest):
|
|||||||
@decorators.idempotent_id('9166b81c-d6ab-4592-bcf7-9410250e30dd')
|
@decorators.idempotent_id('9166b81c-d6ab-4592-bcf7-9410250e30dd')
|
||||||
@tc.attr(base.TAG_NEGATIVE, base.TAG_API)
|
@tc.attr(base.TAG_NEGATIVE, base.TAG_API)
|
||||||
def test_try_get_deleted_share_network(self):
|
def test_try_get_deleted_share_network(self):
|
||||||
data = self.generate_share_network_data()
|
data = utils.generate_share_network_data()
|
||||||
sn = self.create_share_network(**data)
|
sn = self.create_share_network(**data)
|
||||||
self.assertDictContainsSubset(data, sn)
|
self.assertDictContainsSubset(data, sn)
|
||||||
|
|
||||||
@@ -166,7 +166,7 @@ class ShareNetworksNegativeTest(base.BaseSharesMixedTest):
|
|||||||
az_name = az['name']
|
az_name = az['name']
|
||||||
|
|
||||||
# Generate subnet data
|
# Generate subnet data
|
||||||
data = self.generate_subnet_data()
|
data = utils.generate_subnet_data()
|
||||||
data['share_network_id'] = share_network['id']
|
data['share_network_id'] = share_network['id']
|
||||||
data['availability_zone'] = az_name
|
data['availability_zone'] = az_name
|
||||||
|
|
||||||
@@ -200,7 +200,7 @@ class ShareNetworksNegativeTest(base.BaseSharesMixedTest):
|
|||||||
@tc.attr(base.TAG_NEGATIVE, base.TAG_API)
|
@tc.attr(base.TAG_NEGATIVE, base.TAG_API)
|
||||||
@decorators.idempotent_id('f6f47c64-6821-4d4a-aa7d-3b0244158197')
|
@decorators.idempotent_id('f6f47c64-6821-4d4a-aa7d-3b0244158197')
|
||||||
def test_check_add_share_network_subnet_share_network_not_found(self):
|
def test_check_add_share_network_subnet_share_network_not_found(self):
|
||||||
data = self.generate_subnet_data()
|
data = utils.generate_subnet_data()
|
||||||
self.assertRaises(lib_exc.NotFound,
|
self.assertRaises(lib_exc.NotFound,
|
||||||
self.shares_v2_client.subnet_create_check,
|
self.shares_v2_client.subnet_create_check,
|
||||||
'fake_inexistent_id',
|
'fake_inexistent_id',
|
||||||
|
|||||||
@@ -22,6 +22,8 @@ from tempest import config
|
|||||||
from tempest.lib.common.utils import data_utils
|
from tempest.lib.common.utils import data_utils
|
||||||
import testtools
|
import testtools
|
||||||
|
|
||||||
|
from manila_tempest_tests import utils
|
||||||
|
|
||||||
CONF = config.CONF
|
CONF = config.CONF
|
||||||
SHARE_NETWORK_SUBNETS_MICROVERSION = '2.51'
|
SHARE_NETWORK_SUBNETS_MICROVERSION = '2.51'
|
||||||
SHARE_REPLICA_QUOTAS_MICROVERSION = "2.53"
|
SHARE_REPLICA_QUOTAS_MICROVERSION = "2.53"
|
||||||
@@ -141,6 +143,40 @@ def rand_ipv6_ip(network=False):
|
|||||||
return address
|
return address
|
||||||
|
|
||||||
|
|
||||||
|
def generate_share_network_data():
|
||||||
|
data = {
|
||||||
|
"name": data_utils.rand_name("sn-name"),
|
||||||
|
"description": data_utils.rand_name("sn-desc"),
|
||||||
|
"neutron_net_id": data_utils.rand_name("net-id"),
|
||||||
|
"neutron_subnet_id": data_utils.rand_name("subnet-id"),
|
||||||
|
}
|
||||||
|
return data
|
||||||
|
|
||||||
|
|
||||||
|
def generate_subnet_data():
|
||||||
|
data = {
|
||||||
|
"neutron_net_id": data_utils.rand_name("net-id"),
|
||||||
|
"neutron_subnet_id": data_utils.rand_name("subnet-id"),
|
||||||
|
}
|
||||||
|
return data
|
||||||
|
|
||||||
|
|
||||||
|
def generate_security_service_data(set_ou=False):
|
||||||
|
data = {
|
||||||
|
"name": data_utils.rand_name("ss-name"),
|
||||||
|
"description": data_utils.rand_name("ss-desc"),
|
||||||
|
"dns_ip": utils.rand_ip(),
|
||||||
|
"server": utils.rand_ip(),
|
||||||
|
"domain": data_utils.rand_name("ss-domain"),
|
||||||
|
"user": data_utils.rand_name("ss-user"),
|
||||||
|
"password": data_utils.rand_name("ss-password"),
|
||||||
|
}
|
||||||
|
if set_ou:
|
||||||
|
data["ou"] = data_utils.rand_name("ss-ou")
|
||||||
|
|
||||||
|
return data
|
||||||
|
|
||||||
|
|
||||||
def choose_matching_backend(share, pools, share_type):
|
def choose_matching_backend(share, pools, share_type):
|
||||||
extra_specs = {}
|
extra_specs = {}
|
||||||
# fix extra specs with string values instead of boolean
|
# fix extra specs with string values instead of boolean
|
||||||
|
|||||||
Reference in New Issue
Block a user