diff options
Diffstat (limited to 'snaps/openstack/tests')
-rw-r--r-- | snaps/openstack/tests/create_instance_tests.py | 8 | ||||
-rw-r--r-- | snaps/openstack/tests/create_network_tests.py | 118 | ||||
-rw-r--r-- | snaps/openstack/tests/create_stack_tests.py | 14 | ||||
-rw-r--r-- | snaps/openstack/tests/os_source_file_test.py | 3 |
4 files changed, 124 insertions, 19 deletions
diff --git a/snaps/openstack/tests/create_instance_tests.py b/snaps/openstack/tests/create_instance_tests.py index c713794..4ff9fce 100644 --- a/snaps/openstack/tests/create_instance_tests.py +++ b/snaps/openstack/tests/create_instance_tests.py @@ -816,19 +816,19 @@ class CreateInstanceSingleNetworkTests(OSIntegrationTestCase): # Test default reboot which should be 'SOFT' inst_creator.reboot() # Lag time to allow for shutdown routine to take effect - time.sleep(10) + time.sleep(15) self.assertTrue(check_dhcp_lease(inst_creator, ip)) self.assertTrue(validate_ssh_client(inst_creator)) # Test 'SOFT' reboot inst_creator.reboot(reboot_type=RebootType.soft) - time.sleep(10) + time.sleep(15) self.assertTrue(check_dhcp_lease(inst_creator, ip)) self.assertTrue(validate_ssh_client(inst_creator)) # Test 'HARD' reboot inst_creator.reboot(reboot_type=RebootType.hard) - time.sleep(10) + time.sleep(15) self.assertTrue(check_dhcp_lease(inst_creator, ip)) self.assertTrue(validate_ssh_client(inst_creator)) @@ -899,7 +899,7 @@ class CreateInstanceSingleNetworkTests(OSIntegrationTestCase): derived_inst_creator = create_instance.generate_creator( self.os_creds, vm_inst, self.image_creator.image_settings, - self.keypair_creator.keypair_settings) + self.project_id, self.keypair_creator.keypair_settings) derived_inst_creator.add_floating_ip(FloatingIpConfig( name=self.floating_ip_name, port_name=self.port_1_name, diff --git a/snaps/openstack/tests/create_network_tests.py b/snaps/openstack/tests/create_network_tests.py index 62d9bd9..af5160b 100644 --- a/snaps/openstack/tests/create_network_tests.py +++ b/snaps/openstack/tests/create_network_tests.py @@ -396,7 +396,8 @@ class CreateNetworkSuccessTests(OSIntegrationTestCase): # Validate network was created self.assertTrue(neutron_utils_tests.validate_network( - self.neutron, self.net_creator.network_settings.name, True)) + self.neutron, self.net_creator.network_settings.name, True, + project_id=self.project_id)) # Validate subnets self.assertTrue(neutron_utils_tests.validate_subnet( @@ -415,12 +416,14 @@ class CreateNetworkSuccessTests(OSIntegrationTestCase): # Validate network was created self.assertTrue(neutron_utils_tests.validate_network( - self.neutron, self.net_creator.network_settings.name, True)) + self.neutron, self.net_creator.network_settings.name, True, + self.project_id)) neutron_utils.delete_network(self.neutron, self.net_creator.get_network()) self.assertIsNone(neutron_utils.get_network( - self.neutron, network_settings=self.net_creator.network_settings)) + self.neutron, network_settings=self.net_creator.network_settings, + os_creds=self.os_creds, project_id=self.project_id)) # This shall not throw an exception here self.net_creator.clean() @@ -441,7 +444,8 @@ class CreateNetworkSuccessTests(OSIntegrationTestCase): # Validate network was created self.assertTrue(neutron_utils_tests.validate_network( - self.neutron, self.net_creator.network_settings.name, True)) + self.neutron, self.net_creator.network_settings.name, True, + self.project_id)) # Validate subnets self.assertTrue(neutron_utils_tests.validate_subnet( @@ -490,7 +494,8 @@ class CreateNetworkSuccessTests(OSIntegrationTestCase): self.net_creator.create() retrieved_net = neutron_utils.get_network( - self.neutron, network_settings=self.net_config.network_settings) + self.neutron, network_settings=self.net_config.network_settings, + os_creds=self.os_creds, project_id=self.project_id) self.assertEqual(self.net_creator.get_network().id, retrieved_net.id) @@ -520,7 +525,8 @@ class CreateNetworkSuccessTests(OSIntegrationTestCase): self.net_creator.create() retrieved_net = neutron_utils.get_network( - self.neutron, network_settings=self.net_config.network_settings) + self.neutron, network_settings=self.net_config.network_settings, + os_creds=self.os_creds, project_id=self.project_id) self.assertEqual(self.net_creator.get_network().id, retrieved_net.id) @@ -578,7 +584,8 @@ class CreateNetworkIPv6Tests(OSIntegrationTestCase): # Validate network was created self.assertTrue(neutron_utils_tests.validate_network( - self.neutron, self.net_creator.network_settings.name, True)) + self.neutron, self.net_creator.network_settings.name, True, + self.project_id)) network = self.net_creator.get_network() self.assertEqual(1, len(network.subnets)) @@ -678,7 +685,8 @@ class CreateNetworkTypeTests(OSComponentTestCase): # Validate network was created self.assertTrue(neutron_utils_tests.validate_network( - self.neutron, net_settings.name, True)) + self.neutron, net_settings.name, True, + self.net_creator.project_id)) self.assertEquals(network_type, network.type) @@ -707,7 +715,8 @@ class CreateNetworkTypeTests(OSComponentTestCase): # Validate network was created self.assertTrue(neutron_utils_tests.validate_network( - self.neutron, net_settings.name, True)) + self.neutron, net_settings.name, True, + self.net_creator.project_id)) self.assertEquals(network_type, network.type) @@ -728,7 +737,7 @@ class CreateNetworkTypeTests(OSComponentTestCase): # Validate network was created self.assertTrue(neutron_utils_tests.validate_network( - self.neutron, net_settings.name, True)) + self.neutron, net_settings.name, True, project_id=self.project_id)) self.assertEqual(network_type, network.type) @@ -769,3 +778,92 @@ class CreateNetworkTypeTests(OSComponentTestCase): self.net_creator = OpenStackNetwork(self.os_creds, net_settings) with self.assertRaises(Exception): self.net_creator.create() + + +class CreateMultipleNetworkTests(OSIntegrationTestCase): + """ + Test for the CreateNetwork class and how it interacts with networks + groups within other projects with the same name + """ + + def setUp(self): + """ + Sets up object for test + """ + super(self.__class__, self).__start__() + + guid = self.__class__.__name__ + '-' + str(uuid.uuid4()) + self.net_config = openstack_tests.get_pub_net_config( + net_name=guid + '-pub-net', subnet_name=guid + '-pub-subnet') + + self.neutron = neutron_utils.neutron_client(self.os_creds) + + # Initialize for cleanup + self.admin_net_creator = None + self.proj_net_creator = None + + def tearDown(self): + """ + Cleans the network + """ + if self.admin_net_creator: + self.admin_net_creator.clean() + if self.proj_net_creator: + self.proj_net_creator.clean() + + super(self.__class__, self).__clean__() + + def test_network_same_name_diff_proj(self): + """ + Tests the creation of an OpenStackNetwork with the same name + within a different project/tenant when not configured but implied by + the OSCreds. + """ + # Create Network + + self.admin_net_creator = OpenStackNetwork( + self.admin_os_creds, self.net_config.network_settings) + self.admin_net_creator.create() + + self.proj_net_creator = OpenStackNetwork( + self.os_creds, self.net_config.network_settings) + self.proj_net_creator.create() + + self.assertNotEqual( + self.admin_net_creator.get_network().id, + self.proj_net_creator.get_network().id) + + admin_creator2 = OpenStackNetwork( + self.admin_os_creds, self.net_config.network_settings) + admin_creator2.create() + self.assertEqual( + self.admin_net_creator.get_network(), admin_creator2.get_network()) + + proj_creator2 = OpenStackNetwork( + self.os_creds, self.net_config.network_settings) + proj_creator2.create() + self.assertEqual(self.proj_net_creator.get_network(), + proj_creator2.get_network()) + + def test_network_create_by_admin_to_different_project(self): + """ + Tests the creation of an OpenStackNetwork by the admin user and + initialize again with tenant credentials. + """ + # Create Network + + net_settings = self.net_config.network_settings + + net_settings.project_name = self.os_creds.project_name + + self.admin_net_creator = OpenStackNetwork( + self.admin_os_creds, net_settings) + self.admin_net_creator.create() + + self.proj_net_creator = OpenStackNetwork( + self.os_creds, self.net_config.network_settings) + self.proj_net_creator.create() + + self.assertEqual( + self.admin_net_creator.get_network().id, + self.proj_net_creator.get_network().id) diff --git a/snaps/openstack/tests/create_stack_tests.py b/snaps/openstack/tests/create_stack_tests.py index 7155a29..e04ae07 100644 --- a/snaps/openstack/tests/create_stack_tests.py +++ b/snaps/openstack/tests/create_stack_tests.py @@ -39,7 +39,8 @@ from snaps.openstack.create_stack import ( StackSettings, StackCreationError, StackError, OpenStackHeatStack) from snaps.openstack.tests import openstack_tests, create_instance_tests from snaps.openstack.tests.os_source_file_test import OSIntegrationTestCase -from snaps.openstack.utils import heat_utils, neutron_utils, nova_utils +from snaps.openstack.utils import (heat_utils, neutron_utils, nova_utils, + keystone_utils) __author__ = 'spisarski' @@ -351,8 +352,11 @@ class CreateStackSuccessTests(OSIntegrationTestCase): self.assertEqual(self.network_name, net_creators[0].get_network().name) neutron = neutron_utils.neutron_client(self.os_creds) + admin_proj_id = keystone_utils.get_project( + self.keystone, self.admin_os_creds.project_name) net_by_name = neutron_utils.get_network( - neutron, network_name=net_creators[0].get_network().name) + neutron, network_name=net_creators[0].get_network().name, + project_id=admin_proj_id) self.assertEqual(net_creators[0].get_network(), net_by_name) self.assertIsNotNone(neutron_utils.get_network_by_id( neutron, net_creators[0].get_network().id)) @@ -393,7 +397,8 @@ class CreateStackSuccessTests(OSIntegrationTestCase): nova, neutron, server_name=vm_inst_creators[0].get_vm_inst().name) self.assertEqual(vm_inst_creators[0].get_vm_inst(), vm_inst_by_name) self.assertIsNotNone(nova_utils.get_server_object_by_id( - nova, neutron, vm_inst_creators[0].get_vm_inst().id)) + nova, neutron, vm_inst_creators[0].get_vm_inst().id, + vm_inst_creators[0].project_id)) class CreateStackFloatingIpTests(OSIntegrationTestCase): @@ -684,7 +689,8 @@ class CreateStackRouterTests(OSIntegrationTestCase): router = creator.get_router() ext_net = neutron_utils.get_network( - self.neutron, network_name=self.ext_net_name) + self.neutron, network_name=self.ext_net_name, + project_id=self.project_id) self.assertEqual(ext_net.id, router.external_network_id) diff --git a/snaps/openstack/tests/os_source_file_test.py b/snaps/openstack/tests/os_source_file_test.py index f1f90ec..58c9e4e 100644 --- a/snaps/openstack/tests/os_source_file_test.py +++ b/snaps/openstack/tests/os_source_file_test.py @@ -63,7 +63,7 @@ class OSComponentTestCase(unittest.TestCase): keystone = keystone_utils.keystone_client(self.os_creds) self.project_id = keystone_utils.get_project( - keystone=keystone, project_name=self.os_creds.project_name) + keystone=keystone, project_name=self.os_creds.project_name).id @staticmethod def parameterize(testcase_klass, os_creds, ext_net_name, @@ -170,6 +170,7 @@ class OSIntegrationTestCase(OSComponentTestCase): # add user to project self.project_creator.assoc_user(self.user_creator.get_user()) + self.project_id = self.project_creator.get_project().id def __clean__(self): """ |