From 46d6864b9de6d722c4b6eb72d231918b251e267d Mon Sep 17 00:00:00 2001 From: Paul Vinciguerra Date: Tue, 1 Dec 2020 02:00:35 -0500 Subject: papi: improve unit testability refactor the code so that snippets of json can be used to test vpp_papi example unit test provided Type: improvement Change-Id: Ibec608fd2e5b12515aa4db17d85d4319134c22ea Signed-off-by: Paul Vinciguerra --- src/vpp-api/python/vpp_papi/vpp_transport_shmem.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'src/vpp-api/python/vpp_papi/vpp_transport_shmem.py') diff --git a/src/vpp-api/python/vpp_papi/vpp_transport_shmem.py b/src/vpp-api/python/vpp_papi/vpp_transport_shmem.py index fa8943fc119..a7ba26b4722 100644 --- a/src/vpp-api/python/vpp_papi/vpp_transport_shmem.py +++ b/src/vpp-api/python/vpp_papi/vpp_transport_shmem.py @@ -29,8 +29,12 @@ void vac_mem_init (size_t size); vpp_object = None -# Barfs on failure, no need to check success. -vpp_api = ffi.dlopen('libvppapiclient.so') +# allow file to be imported so it can be mocked in tests. +# If the shared library fails, VppTransport cannot be initialized. +try: + vpp_api = ffi.dlopen('libvppapiclient.so') +except OSError: + vpp_api = None @ffi.callback("void(unsigned char *, int)") -- cgit 1.2.3-korg