Python3: resources and libraries
[csit.git] / resources / libraries / python / Memif.py
index 24fda52..2128d30 100644 (file)
@@ -15,6 +15,7 @@
 
 
 from enum import IntEnum
+
 from robot.api import logger
 
 from resources.libraries.python.topology import NodeType, Topology
@@ -27,7 +28,7 @@ class MemifRole(IntEnum):
     SLAVE = 1
 
 
-class Memif(object):
+class Memif:
     """Memif interface class"""
 
     def __init__(self):
@@ -42,18 +43,18 @@ class Memif(object):
         :returns: List of memif interfaces extracted from Papi response.
         :rtype: list
         """
-        cmd = "memif_dump"
+        cmd = u"memif_dump"
         with PapiSocketExecutor(node) as papi_exec:
             details = papi_exec.add(cmd).get_details()
 
         for memif in details:
-            memif["hw_addr"] = str(memif["hw_addr"])
-            memif["role"] = memif["role"].value
-            memif["mode"] = memif["mode"].value
-            memif["flags"] = memif["flags"].value \
-                if hasattr(memif["flags"], 'value') else int(memif["flags"])
+            memif[u"hw_addr"] = str(memif[u"hw_addr"])
+            memif[u"role"] = memif[u"role"].value
+            memif[u"mode"] = memif[u"mode"].value
+            memif[u"flags"] = memif[u"flags"].value \
+                if hasattr(memif[u"flags"], u"value") else int(memif[u"flags"])
 
-        logger.debug("MEMIF details:\n{details}".format(details=details))
+        logger.debug(f"MEMIF details:\n{details}")
 
         return details
 
@@ -73,13 +74,12 @@ class Memif(object):
             includes only retval.
         :rtype: dict
         """
-        cmd = 'memif_socket_filename_add_del'
-        err_msg = 'Failed to create memif socket on host {host}'.format(
-            host=node['host'])
+        cmd = u"memif_socket_filename_add_del"
+        err_msg = f"Failed to create memif socket on host {node[u'host']}"
         args = dict(
             is_add=is_add,
             socket_id=int(sid),
-            socket_filename=str('/tmp/' + filename)
+            socket_filename=str(u"/tmp/" + filename)
         )
         with PapiSocketExecutor(node) as papi_exec:
             return papi_exec.add(cmd, **args).get_reply(err_msg)
@@ -103,23 +103,23 @@ class Memif(object):
         :returns: sw_if_index
         :rtype: int
         """
-        cmd = 'memif_create'
-        err_msg = 'Failed to create memif interface on host {host}'.format(
-            host=node['host'])
+        cmd = u"memif_create"
+        err_msg = f"Failed to create memif interface on host {node[u'host']}"
         args = dict(
             role=role,
             rx_queues=int(rxq),
             tx_queues=int(txq),
             socket_id=int(sid),
             id=int(mid),
-            secret=""
+            secret=u""
         )
+
         with PapiSocketExecutor(node) as papi_exec:
             return papi_exec.add(cmd, **args).get_sw_if_index(err_msg)
 
     @staticmethod
-    def create_memif_interface(node, filename, mid, sid, rxq=1, txq=1,
-                               role="SLAVE"):
+    def create_memif_interface(
+            node, filename, mid, sid, rxq=1, txq=1, role=u"SLAVE"):
         """Create Memif interface on the given node.
 
         :param node: Given node to create Memif interface on.
@@ -140,7 +140,6 @@ class Memif(object):
         :rtype: int
         :raises ValueError: If command 'create memif' fails.
         """
-
         role = getattr(MemifRole, role.upper()).value
 
         # Create socket
@@ -148,10 +147,11 @@ class Memif(object):
 
         # Create memif
         sw_if_index = Memif._memif_create(
-            node, mid, sid, rxq=rxq, txq=txq, role=role)
+            node, mid, sid, rxq=rxq, txq=txq, role=role
+        )
 
         # Update Topology
-        if_key = Topology.add_new_port(node, 'memif')
+        if_key = Topology.add_new_port(node, u"memif")
         Topology.update_interface_sw_if_index(node, if_key, sw_if_index)
 
         ifc_name = Memif.vpp_get_memif_interface_name(node, sw_if_index)
@@ -160,7 +160,9 @@ class Memif(object):
         ifc_mac = Memif.vpp_get_memif_interface_mac(node, sw_if_index)
         Topology.update_interface_mac_address(node, if_key, ifc_mac)
 
-        Topology.update_interface_memif_socket(node, if_key, '/tmp/' + filename)
+        Topology.update_interface_memif_socket(
+            node, if_key, u"/tmp/" + filename
+        )
         Topology.update_interface_memif_id(node, if_key, mid)
         Topology.update_interface_memif_role(node, if_key, str(role))
 
@@ -173,7 +175,6 @@ class Memif(object):
         :param node: Given node to show Memif data on.
         :type node: dict
         """
-
         Memif._memif_details(node)
 
     @staticmethod
@@ -184,7 +185,7 @@ class Memif(object):
         :type nodes: dict
         """
         for node in nodes.values():
-            if node['type'] == NodeType.DUT:
+            if node[u"type"] == NodeType.DUT:
                 Memif.show_memif(node)
 
     @staticmethod
@@ -198,12 +199,11 @@ class Memif(object):
         :returns: Memif interface name, or None if not found.
         :rtype: str
         """
-
         details = Memif._memif_details(node)
 
         for memif in details:
-            if memif["sw_if_index"] == sw_if_index:
-                return memif["if_name"]
+            if memif[u"sw_if_index"] == sw_if_index:
+                return memif[u"if_name"]
         return None
 
     @staticmethod
@@ -217,10 +217,9 @@ class Memif(object):
         :returns: Memif interface MAC address, or None if not found.
         :rtype: str
         """
-
         details = Memif._memif_details(node)
 
         for memif in details:
-            if memif["sw_if_index"] == sw_if_index:
-                return memif["hw_addr"]
+            if memif[u"sw_if_index"] == sw_if_index:
+                return memif[u"hw_addr"]
         return None