aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/asf/test_http_static.py20
-rw-r--r--test/vpp_qemu_utils.py6
2 files changed, 21 insertions, 5 deletions
diff --git a/test/asf/test_http_static.py b/test/asf/test_http_static.py
index 1d87f4c75bd..18e8ba56a1e 100644
--- a/test/asf/test_http_static.py
+++ b/test/asf/test_http_static.py
@@ -28,7 +28,13 @@ class TestHttpStaticVapi(VppAsfTestCase):
cls.temp2 = tempfile.NamedTemporaryFile()
cls.temp2.write(b"Hello world2")
- create_namespace("HttpStatic")
+ try:
+ create_namespace("HttpStatic")
+ except Exception:
+ cls.logger.warning("Unable to create a namespace, retrying.")
+ delete_namespace("HttpStatic")
+ create_namespace("HttpStatic")
+
create_host_interface("vppHost", "vppOut", "HttpStatic", "10.10.1.1/24")
cls.vapi.cli("create host-interface name vppOut")
@@ -37,7 +43,7 @@ class TestHttpStaticVapi(VppAsfTestCase):
@classmethod
def tearDownClass(cls):
- delete_namespace(["HttpStatic"])
+ delete_namespace("HttpStatic")
delete_host_interfaces("vppHost")
cls.temp.close()
cls.temp2.close()
@@ -95,7 +101,13 @@ class TestHttpStaticCli(VppAsfTestCase):
cls.temp2 = tempfile.NamedTemporaryFile()
cls.temp2.write(b"Hello world2")
- create_namespace("HttpStatic2")
+ try:
+ create_namespace("HttpStatic2")
+ except Exception:
+ cls.logger.warning("Unable to create namespace, retrying.")
+ delete_namespace("HttpStatic2")
+ create_namespace("HttpStatic2")
+
create_host_interface("vppHost2", "vppOut2", "HttpStatic2", "10.10.1.1/24")
cls.vapi.cli("create host-interface name vppOut2")
@@ -104,7 +116,7 @@ class TestHttpStaticCli(VppAsfTestCase):
@classmethod
def tearDownClass(cls):
- delete_namespace(["HttpStatic2"])
+ delete_namespace("HttpStatic2")
delete_host_interfaces("vppHost2")
cls.temp.close()
cls.temp2.close()
diff --git a/test/vpp_qemu_utils.py b/test/vpp_qemu_utils.py
index e7e21a01b73..3a8fdc8daf5 100644
--- a/test/vpp_qemu_utils.py
+++ b/test/vpp_qemu_utils.py
@@ -216,12 +216,16 @@ def disable_interface_gso(namespace, interface):
raise Exception("Error disabling gso:", e.output)
-def delete_namespace(namespaces):
+def delete_namespace(ns):
"""delete one or more namespaces.
arguments:
namespaces -- a list of namespace names
"""
+ if isinstance(ns, str):
+ namespaces = [ns]
+ else:
+ namespaces = ns
try:
for namespace in namespaces:
result = subprocess.run(