aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJakub Grajciar <jgrajcia@cisco.com>2019-06-25 10:22:11 +0200
committerPaul Vinciguerra <pvinci@vinciconsulting.com>2019-06-26 10:10:05 +0000
commit7db35de508f4ce1f04eb7e28e454829c66f7635a (patch)
tree6d2e0446ff0f1bd1dcf62830fd012bbb48efc4cb
parentb1edf37bd58e90c6175ec9994b3ad4f6b9ed2de4 (diff)
tests: fix memif tests
remote_test.py - Remove 'ret' arg from _remote_exec(), so that the function always reads the reply from the pipe. (fix unmatched request/reply) memif_test.py - Don't register VppIpRoute to VppObjectRegistry. Type: fix Change-Id: I8a51e7ffd68df5f379534f5ddd5ec9367a89be32 Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
-rw-r--r--test/remote_test.py14
-rw-r--r--test/test_memif.py10
2 files changed, 12 insertions, 12 deletions
diff --git a/test/remote_test.py b/test/remote_test.py
index 092d3f8d2e7..cd2e46fe219 100644
--- a/test/remote_test.py
+++ b/test/remote_test.py
@@ -59,12 +59,11 @@ class RemoteClassAttr(object):
return
self._path.append(attr)
self._remote._remote_exec(RemoteClass.SETATTR, self.path_to_str(),
- True, value=val)
+ value=val)
def __call__(self, *args, **kwargs):
- ret = True if 'vapi' in self.path_to_str() else False
return self._remote._remote_exec(RemoteClass.CALL, self.path_to_str(),
- ret, *args, **kwargs)
+ *args, **kwargs)
class RemoteClass(Process):
@@ -134,7 +133,7 @@ class RemoteClass(Process):
return
setattr(RemoteClassAttr(self, None), attr, val)
- def _remote_exec(self, op, path=None, ret=True, *args, **kwargs):
+ def _remote_exec(self, op, path=None, *args, **kwargs):
"""
Execute given operation on a given, possibly nested, member remotely.
"""
@@ -153,12 +152,9 @@ class RemoteClass(Process):
args = self._make_serializable(args)
kwargs = self._make_serializable(kwargs)
self._pipe[RemoteClass.PIPE_PARENT].send((op, path, args, kwargs))
- if not ret:
- # no return value expected
- return None
timeout = self._timeout
# adjust timeout specifically for the .sleep method
- if path.split('.')[-1] == 'sleep':
+ if path is not None and path.split('.')[-1] == 'sleep':
if args and isinstance(args[0], (long, int)):
timeout += args[0]
elif 'timeout' in kwargs:
@@ -305,7 +301,7 @@ class RemoteClass(Process):
def quit_remote(self):
""" Quit remote execution """
- self._remote_exec(RemoteClass.QUIT, None, False)
+ self._remote_exec(RemoteClass.QUIT, None)
def get_remote_value(self):
""" Get value of a remotely held object """
diff --git a/test/test_memif.py b/test/test_memif.py
index c41d0aac983..07181afd6f1 100644
--- a/test/test_memif.py
+++ b/test/test_memif.py
@@ -12,7 +12,6 @@ from vpp_memif import MEMIF_MODE, MEMIF_ROLE, remove_all_memif_vpp_config, \
from vpp_ip_route import VppIpRoute, VppRoutePath
-@unittest.skipIf(True, "doesn't work with VppEnums")
class TestMemif(VppTestCase):
""" Memif Test Case """
@@ -250,8 +249,11 @@ class TestMemif(VppTestCase):
self.assertTrue(remote_memif.wait_for_link_up(5))
# add routing to remote vpp
- VppIpRoute(self.remote_test, self.pg0._local_ip4_subnet, 24,
- [VppRoutePath(memif.ip4_addr, 0xffffffff)]).add_vpp_config()
+ route = VppIpRoute(self.remote_test, self.pg0._local_ip4_subnet, 24,
+ [VppRoutePath(memif.ip4_addr, 0xffffffff)],
+ register=False)
+
+ route.add_vpp_config()
# create ICMP echo-request from local pg to remote memif
packet_num = 10
@@ -266,6 +268,8 @@ class TestMemif(VppTestCase):
self._verify_icmp(self.pg0, remote_memif, c, seq)
seq += 1
+ route.remove_vpp_config()
+
if __name__ == '__main__':
unittest.main(testRunner=VppTestRunner)