Esempio n. 1
0
    def test_router_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 Router

        router_config = RouterConfig(name=self.guid + '-router')
        self.admin_router_creator = OpenStackRouter(self.admin_os_creds,
                                                    router_config)
        self.admin_router_creator.create()

        self.proj_router_creator = OpenStackRouter(self.os_creds,
                                                   router_config)
        self.proj_router_creator.create()

        self.assertNotEqual(self.admin_router_creator.get_router().id,
                            self.proj_router_creator.get_router().id)

        admin_creator2 = OpenStackRouter(self.admin_os_creds, router_config)
        admin_creator2.create()
        self.assertEqual(self.admin_router_creator.get_router(),
                         admin_creator2.get_router())

        proj_creator2 = OpenStackRouter(self.os_creds, router_config)
        proj_creator2.create()
        self.assertEqual(self.proj_router_creator.get_router(),
                         proj_creator2.get_router())
Esempio n. 2
0
class CreateMultipleRouterTests(OSIntegrationTestCase):
    """
    Test for the OpenStackRouter class and how it interacts with routers
    groups within other projects with the same name
    """
    def setUp(self):
        """
        Initializes objects used for router testing
        """
        super(self.__class__, self).__start__()

        self.guid = self.__class__.__name__ + '-' + str(uuid.uuid4())
        self.admin_router_creator = None
        self.proj_router_creator = None
        self.neutron = neutron_utils.neutron_client(self.os_creds,
                                                    self.os_session)

        network_settings = NetworkConfig(
            name=self.guid + '-pub-net',
            shared=True,
            subnet_settings=[
                create_network.SubnetConfig(cidr=cidr1,
                                            name=self.guid + '-pub-subnet',
                                            gateway_ip=static_gateway_ip1)
            ])

        self.network_creator = OpenStackNetwork(self.admin_os_creds,
                                                network_settings)
        self.network_creator.create()

    def tearDown(self):
        """
        Cleans the remote OpenStack objects used for router testing
        """
        if self.admin_router_creator:
            self.admin_router_creator.clean()

        if self.proj_router_creator:
            self.proj_router_creator.clean()

        if self.network_creator:
            self.network_creator.clean()

        super(self.__class__, self).__clean__()

    def test_router_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 Router

        router_config = RouterConfig(name=self.guid + '-router')
        self.admin_router_creator = OpenStackRouter(self.admin_os_creds,
                                                    router_config)
        self.admin_router_creator.create()

        self.proj_router_creator = OpenStackRouter(self.os_creds,
                                                   router_config)
        self.proj_router_creator.create()

        self.assertNotEqual(self.admin_router_creator.get_router().id,
                            self.proj_router_creator.get_router().id)

        admin_creator2 = OpenStackRouter(self.admin_os_creds, router_config)
        admin_creator2.create()
        self.assertEqual(self.admin_router_creator.get_router(),
                         admin_creator2.get_router())

        proj_creator2 = OpenStackRouter(self.os_creds, router_config)
        proj_creator2.create()
        self.assertEqual(self.proj_router_creator.get_router(),
                         proj_creator2.get_router())

    def test_router_create_by_admin_to_different_project(self):
        """
        Tests the creation of an OpenStackRouter by the admin user and
        initialize again with tenant credentials.
        """
        # Create Network

        admin_router_config = RouterConfig(
            name=self.guid + '-router',
            project_name=self.os_creds.project_name)

        self.admin_router_creator = OpenStackRouter(self.admin_os_creds,
                                                    admin_router_config)
        self.admin_router_creator.create()

        proj_router_config = RouterConfig(
            name=self.guid + '-router',
            project_name=self.os_creds.project_name)

        self.proj_router_creator = OpenStackRouter(self.os_creds,
                                                   proj_router_config)
        self.proj_router_creator.create()

        self.assertEqual(self.admin_router_creator.get_router().id,
                         self.proj_router_creator.get_router().id)