VPP_Device - add baseline tests - part IIb)
[csit.git] / resources / libraries / python / Memif.py
index 76e775f..4017898 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (c) 2018 Cisco and/or its affiliates.
+# Copyright (c) 2019 Cisco and/or its affiliates.
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
 # You may obtain a copy of the License at:
@@ -33,8 +33,8 @@ class Memif(object):
         :param filename: Memif interface socket filename.
         :param mid: Memif interface ID.
         :param sid: Socket ID.
-        :param rxq: Number of RX queues.
-        :param txq: Number of TX queues.
+        :param rxq: Number of RX queues; 0 means do not set.
+        :param txq: Number of TX queues; 0 means do not set.
         :param role: Memif interface role [master|slave]. Default is master.
         :type node: dict
         :type filename: str
@@ -48,12 +48,15 @@ class Memif(object):
         :raises ValueError: If command 'create memif' fails.
         """
 
+        rx_q = 'rx-queues {rxq}'.format(rxq=rxq) if rxq else ''
+        tx_q = 'tx-queues {txq}'.format(txq=txq) if txq else ''
+
         with VatTerminal(node, json_param=False) as vat:
             vat.vat_terminal_exec_cmd_from_template(
                 'memif_socket_filename_add_del.vat',
                 add_del='add', id=sid, filename='/tmp/'+filename)
             vat.vat_terminal_exec_cmd_from_template(
-                'memif_create.vat', id=mid, socket=sid, rxq=rxq, txq=txq,
+                'memif_create.vat', id=mid, socket=sid, rx_q=rx_q, tx_q=tx_q,
                 role=role)
             if 'sw_if_index' in vat.vat_stdout:
                 try: