From bdfca054d8425a57496cca8308da36c118b5340f Mon Sep 17 00:00:00 2001 From: Jan Gelety Date: Mon, 14 Aug 2017 16:25:46 +0200 Subject: CSIT-778: Add mac-ip binding acl l2bd perf test Change-Id: Iaced68458b0e4070f861be7854ee428ae8ca4e13 Signed-off-by: Jan Gelety --- resources/libraries/python/L2Util.py | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'resources/libraries/python/L2Util.py') diff --git a/resources/libraries/python/L2Util.py b/resources/libraries/python/L2Util.py index a909e8611b..6b8bc042e3 100644 --- a/resources/libraries/python/L2Util.py +++ b/resources/libraries/python/L2Util.py @@ -13,6 +13,8 @@ """L2 Utilities Library.""" +from textwrap import wrap + from robot.api.deco import keyword from resources.libraries.python.topology import Topology @@ -23,6 +25,30 @@ from resources.libraries.python.ssh import exec_cmd_no_error class L2Util(object): """Utilities for l2 configuration.""" + @staticmethod + def mac_to_int(mac_str): + """Convert MAC address from string format (e.g. 01:02:03:04:05:06) to + integer representation (1108152157446). + + :param mac_str: MAC address in string representation. + :type mac_str: str + :returns: Integer representation of MAC address. + :rtype: int + """ + return int(mac_str.replace(':', ''), 16) + + @staticmethod + def int_to_mac(mac_int): + """Convert MAC address from integer representation (e.g. 1108152157446) + to string format (01:02:03:04:05:06). + + :param mac_int: MAC address in integer representation. + :type mac_int: str + :returns: String representation of MAC address. + :rtype: int + """ + return ':'.join(wrap("{:012x}".format(mac_int), width=2)) + @staticmethod def vpp_add_l2fib_entry(node, mac, interface, bd_id): """ Create a static L2FIB entry on a vpp node. -- cgit 1.2.3-korg