X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=resources%2Flibraries%2Fpython%2FTestConfig.py;h=48f67e5a0f420e5f6af61a2b167270c8d8ddc290;hb=e7a8aec57027b1791178bccacd58facacc322f6a;hp=a5bd5650a2c0f3f39c8380f4f4adbecdccbe3edd;hpb=7b0e8a9dee0f874c4b7317e9132064dbab8fd34a;p=csit.git diff --git a/resources/libraries/python/TestConfig.py b/resources/libraries/python/TestConfig.py index a5bd5650a2..48f67e5a0f 100644 --- a/resources/libraries/python/TestConfig.py +++ b/resources/libraries/python/TestConfig.py @@ -17,9 +17,10 @@ from ipaddress import ip_address, AddressValueError from robot.api import logger from resources.libraries.python.Constants import Constants -from resources.libraries.python.InterfaceUtil import InterfaceUtil +from resources.libraries.python.InterfaceUtil import InterfaceUtil, \ + InterfaceStatusFlags from resources.libraries.python.IPUtil import IPUtil -from resources.libraries.python.PapiExecutor import PapiExecutor +from resources.libraries.python.PapiExecutor import PapiSocketExecutor from resources.libraries.python.topology import Topology from resources.libraries.python.VatExecutor import VatExecutor @@ -145,11 +146,10 @@ class TestConfig(object): cmd1 = 'sw_interface_add_del_address' args1 = dict( sw_if_index=InterfaceUtil.get_interface_index(node, node_vxlan_if), - is_add=1, - is_ipv6=1 if src_ip_addr_start.version == 6 else 0, - del_all=0, - address_length=128 if src_ip_addr_start.version == 6 else 32, - address=None) + is_add=True, + del_all=False, + prefix=None + ) cmd2 = 'vxlan_add_del_tunnel' args2 = dict( is_add=1, @@ -160,16 +160,16 @@ class TestConfig(object): mcast_sw_if_index=Constants.BITWISE_NON_ZERO, encap_vrf_id=0, decap_next_index=Constants.BITWISE_NON_ZERO, - vni=None) + vni=None + ) cmd3 = 'create_vlan_subif' args3 = dict( sw_if_index=InterfaceUtil.get_interface_index( node, node_vlan_if), - vlan_id=None) - err_msg = 'Failed to create VXLAN and VLAN interfaces on host {host}'.\ - format(host=node['host']) + vlan_id=None + ) - with PapiExecutor(node) as papi_exec: + with PapiSocketExecutor(node) as papi_exec: for i in xrange(0, vxlan_count): try: src_ip = src_ip_addr_start + i * ip_step @@ -179,19 +179,17 @@ class TestConfig(object): "has been reached.") vxlan_count = i break - args1['address'] = src_ip.packed - args2['src_address'] = src_ip.packed - args2['dst_address'] = dst_ip.packed + args1['prefix'] = IPUtil.create_prefix_object( + src_ip, 128 if src_ip_addr_start.version == 6 else 32) + args2['src_address'] = getattr(src_ip, 'packed') + args2['dst_address'] = getattr(dst_ip, 'packed') args2['vni'] = int(vni_start) + i args3['vlan_id'] = i + 1 history = False if 1 < i < vxlan_count else True papi_exec.add(cmd1, history=history, **args1).\ add(cmd2, history=history, **args2).\ add(cmd3, history=history, **args3) - if i > 0 and i % (Constants.PAPI_MAX_API_BULK / 3) == 0: - papi_exec.get_replies(err_msg).verify_replies( - err_msg=err_msg) - papi_exec.get_replies().verify_replies() + papi_exec.get_replies() return vxlan_count @@ -255,14 +253,14 @@ class TestConfig(object): cmd = 'sw_interface_set_flags' args1 = dict( sw_if_index=None, - admin_up_down=1) + flags=InterfaceStatusFlags.IF_STATUS_API_FLAG_ADMIN_UP.value + ) args2 = dict( sw_if_index=None, - admin_up_down=1) - err_msg = 'Failed to put VXLAN and VLAN interfaces up on host {host}'. \ - format(host=node['host']) + flags=InterfaceStatusFlags.IF_STATUS_API_FLAG_ADMIN_UP.value + ) - with PapiExecutor(node) as papi_exec: + with PapiSocketExecutor(node) as papi_exec: for i in xrange(0, vxlan_count): vxlan_subif_key = Topology.add_new_port(node, 'vxlan_tunnel') vxlan_subif_name = 'vxlan_tunnel{nr}'.format(nr=i) @@ -297,11 +295,8 @@ class TestConfig(object): history = False if 1 < i < vxlan_count else True papi_exec.add(cmd, history=history, **args1). \ add(cmd, history=history, **args2) - if i > 0 and i % (Constants.PAPI_MAX_API_BULK / 2) == 0: - papi_exec.get_replies(err_msg).verify_replies( - err_msg=err_msg) papi_exec.add(cmd, **args1).add(cmd, **args2) - papi_exec.get_replies().verify_replies() + papi_exec.get_replies() @staticmethod def vpp_put_vxlan_and_vlan_interfaces_to_bridge_domain( @@ -400,10 +395,8 @@ class TestConfig(object): shg=0, port_type=0, enable=1) - err_msg = 'Failed to put VXLAN and VLAN interfaces to bridge domain ' \ - 'on host {host}'.format(host=node['host']) - with PapiExecutor(node) as papi_exec: + with PapiSocketExecutor(node) as papi_exec: for i in xrange(0, vxlan_count): dst_ip = dst_ip_addr_start + i * ip_step args1['neighbor']['ip_address'] = str(dst_ip) @@ -422,7 +415,4 @@ class TestConfig(object): add(cmd2, history=history, **args2). \ add(cmd3, history=history, **args3). \ add(cmd3, history=history, **args4) - if i > 0 and i % (Constants.PAPI_MAX_API_BULK / 4) == 0: - papi_exec.get_replies(err_msg).verify_replies( - err_msg=err_msg) - papi_exec.get_replies().verify_replies() + papi_exec.get_replies()