Ensure project for routers are handled properly.
[snaps.git] / snaps / openstack / utils / tests / neutron_utils_tests.py
index 925bd06..2583a96 100644 (file)
@@ -518,7 +518,9 @@ class NeutronUtilsRouterTests(OSComponentTestCase):
         if self.router:
             try:
                 neutron_utils.delete_router(self.neutron, self.router)
-                validate_router(self.neutron, self.router.name, False)
+                validate_router(
+                    self.neutron, self.keystone, self.router.name,
+                    self.os_creds.project_name, False)
             except:
                 pass
 
@@ -537,8 +539,9 @@ class NeutronUtilsRouterTests(OSComponentTestCase):
         """
         self.router = neutron_utils.create_router(
             self.neutron, self.os_creds, self.net_config.router_settings)
-        validate_router(self.neutron, self.net_config.router_settings.name,
-                        True)
+        validate_router(
+            self.neutron, self.keystone, self.net_config.router_settings.name,
+            self.os_creds.project_name, True)
 
     def test_create_router_with_public_interface(self):
         """
@@ -552,7 +555,8 @@ class NeutronUtilsRouterTests(OSComponentTestCase):
         self.router = neutron_utils.create_router(
             self.neutron, self.os_creds, self.net_config.router_settings)
         validate_router(
-            self.neutron, self.net_config.router_settings.name, True)
+            self.neutron, self.keystone, self.net_config.router_settings.name,
+            self.os_creds.project_name, True)
 
         ext_net = neutron_utils.get_network(
             self.neutron, self.keystone, network_name=self.ext_net_name)
@@ -577,8 +581,9 @@ class NeutronUtilsRouterTests(OSComponentTestCase):
 
         self.router = neutron_utils.create_router(
             self.neutron, self.os_creds, self.net_config.router_settings)
-        validate_router(self.neutron, self.net_config.router_settings.name,
-                        True)
+        validate_router(
+            self.neutron, self.keystone, self.net_config.router_settings.name,
+            self.os_creds.project_name, True)
 
         self.interface_router = neutron_utils.add_interface_router(
             self.neutron, self.router, self.network.subnets[0])
@@ -623,8 +628,9 @@ class NeutronUtilsRouterTests(OSComponentTestCase):
 
         self.router = neutron_utils.create_router(
             self.neutron, self.os_creds, self.net_config.router_settings)
-        validate_router(self.neutron, self.net_config.router_settings.name,
-                        True)
+        validate_router(
+            self.neutron, self.keystone, self.net_config.router_settings.name,
+            self.os_creds.project_name, True)
 
         with self.assertRaises(NeutronException):
             self.interface_router = neutron_utils.add_interface_router(
@@ -646,8 +652,9 @@ class NeutronUtilsRouterTests(OSComponentTestCase):
 
         self.router = neutron_utils.create_router(
             self.neutron, self.os_creds, self.net_config.router_settings)
-        validate_router(self.neutron, self.net_config.router_settings.name,
-                        True)
+        validate_router(
+            self.neutron, self.keystone, self.net_config.router_settings.name,
+            self.os_creds.project_name, True)
 
         for subnet in self.network.subnets:
             neutron_utils.delete_subnet(self.neutron, subnet)
@@ -1071,17 +1078,21 @@ def validate_subnet(neutron, name, cidr, exists):
     return False
 
 
-def validate_router(neutron, name, exists):
+def validate_router(neutron, keystone, name, project_name, exists):
     """
     Returns true if a router for a given name DOES NOT exist if the exists
     parameter is false conversely true. Returns false if a router for a given
     name DOES exist if the exists parameter is true conversely false.
     :param neutron: The neutron client
+    :param keystone: The keystone client
     :param name: The expected router name
+    :param project_name: The name of the project in which the router should
+                         exist
     :param exists: Whether or not the network name should exist or not
     :return: True/False
     """
-    router = neutron_utils.get_router(neutron, router_name=name)
+    router = neutron_utils.get_router(
+        neutron, keystone, router_name=name, project_name=project_name)
     if exists and router:
         return True
     return False