From a8c8bf7eb1130c1d9dedfd03b2437f1ac9c51d9b Mon Sep 17 00:00:00 2001 From: Matus Fabian Date: Tue, 26 Apr 2016 10:58:52 +0200 Subject: [PATCH] Add optional args to traffic script arg parser Change-Id: I92e890e0c42da34e1e72a442f7a3bbe12fe9aef1 Signed-off-by: Matus Fabian --- resources/libraries/python/TrafficScriptArg.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/resources/libraries/python/TrafficScriptArg.py b/resources/libraries/python/TrafficScriptArg.py index e05341dacf..dc655d2e8c 100644 --- a/resources/libraries/python/TrafficScriptArg.py +++ b/resources/libraries/python/TrafficScriptArg.py @@ -21,10 +21,13 @@ class TrafficScriptArg(object): Parse arguments for traffic script. Default has two arguments '--tx_if' and '--rx_if'. You can provide more arguments. All arguments have string - representation of the value. + representation of the value. You can add also optional arguments. Default + value for optional arguments is empty string. :param more_args: List of additional arguments (optional). + :param opt_args: List of optional arguments (optional). :type more_args: list + :type opt_args: list :Example: @@ -32,7 +35,7 @@ class TrafficScriptArg(object): >>> args = TrafficScriptArg(['src_mac', 'dst_mac', 'src_ip', 'dst_ip']) """ - def __init__(self, more_args=None): + def __init__(self, more_args=None, opt_args=None): parser = argparse.ArgumentParser() parser.add_argument("--tx_if", help="interface that sends traffic") parser.add_argument("--rx_if", help="interface that receives traffic") @@ -42,6 +45,11 @@ class TrafficScriptArg(object): arg_name = '--{0}'.format(arg) parser.add_argument(arg_name) + if opt_args is not None: + for arg in opt_args: + arg_name = '--{0}'.format(arg) + parser.add_argument(arg_name, nargs='?', default='') + self._parser = parser self._args = vars(parser.parse_args()) -- 2.16.6