2525NUM_FLOWS = 1000
2626ptf_to_dut_port_map = {}
2727
28- SUPPORTED_TOPO = ['t0' ]
29- SUPPORTED_PLATFORMS = ['mellanox' ]
28+ pytestmark = [
29+ pytest .mark .topology ('t0' ),
30+ pytest .mark .asic ('mellanox' ),
31+ pytest .mark .disable_loganalyzer
32+ ]
3033
3134logger = logging .getLogger (__name__ )
3235
33- def configure_interfaces (cfg_facts , duthost , ptfhost , ptfadapter , vlan_ip ):
36+ def configure_interfaces (cfg_facts , duthost , ptfhost , vlan_ip ):
3437 config_port_indices = cfg_facts ['port_index_map' ]
3538 port_list = []
3639 eth_port_list = []
@@ -40,7 +43,6 @@ def configure_interfaces(cfg_facts, duthost, ptfhost, ptfadapter, vlan_ip):
4043 global ptf_to_dut_port_map
4144
4245 vlan_members = cfg_facts .get ('VLAN_MEMBER' , {})
43- print vlan_members
4446 index = 0
4547 for vlan in cfg_facts ['VLAN_MEMBER' ].keys ():
4648 vlan_id = vlan [4 :]
@@ -139,8 +141,8 @@ def create_fg_ptf_config(ptfhost, ip_to_port, port_list, bank_0_port, bank_1_por
139141 ptfhost .copy (content = json .dumps (fg_ecmp , indent = 2 ), dest = FG_ECMP_CFG )
140142
141143
142- def setup_test_config (ptfadapter , duthost , ptfhost , cfg_facts , router_mac , net_ports , vlan_ip ):
143- port_list , ip_to_port , bank_0_port , bank_1_port = configure_interfaces (cfg_facts , duthost , ptfhost , ptfadapter , vlan_ip )
144+ def setup_test_config (duthost , ptfhost , cfg_facts , router_mac , net_ports , vlan_ip ):
145+ port_list , ip_to_port , bank_0_port , bank_1_port = configure_interfaces (cfg_facts , duthost , ptfhost , vlan_ip )
144146 generate_fgnhg_config (duthost , ip_to_port , bank_0_port , bank_1_port )
145147 time .sleep (60 )
146148 setup_neighbors (duthost , ptfhost , ip_to_port )
@@ -181,12 +183,11 @@ def fg_ecmp(ptfhost, duthost, router_mac, net_ports, port_list, ip_to_port, bank
181183 ipcmd = "ipv6 route"
182184
183185 vtysh_base_cmd = "vtysh -c 'configure terminal'"
186+ vtysh_base_cmd = duthost .get_vtysh_cmd_for_namespace (vtysh_base_cmd , DEFAULT_NAMESPACE )
184187 dst_ip_list = []
185188 for prefix in prefix_list :
186189 dst_ip_list .append (prefix .split ('/' )[0 ])
187190
188- test_time = str (datetime .now ().strftime ('%Y-%m-%d-%H:%M:%S' ))
189-
190191 ### Start test in state where 1 link is down, when nexthop addition occurs for link which is down, the nexthop
191192 ### should not go to active
192193 shutdown_link = bank_0_port [0 ]
@@ -245,7 +246,6 @@ def fg_ecmp(ptfhost, duthost, router_mac, net_ports, port_list, ip_to_port, bank
245246 for port in port_list :
246247 exp_flow_count [port ] = flows_per_nh
247248
248-
249249 for dst_ip in dst_ip_list :
250250 partial_ptf_runner (ptfhost , 'add_nh' , dst_ip , exp_flow_count , add_nh_port = shutdown_link )
251251
@@ -420,14 +420,14 @@ def fg_ecmp_to_regular_ecmp_transitions(ptfhost, duthost, router_mac, net_ports,
420420 ipcmd = "ipv6 route"
421421
422422 vtysh_base_cmd = "vtysh -c 'configure terminal'"
423+ vtysh_base_cmd = duthost .get_vtysh_cmd_for_namespace (vtysh_base_cmd , DEFAULT_NAMESPACE )
423424 dst_ip_list = []
424425 for prefix in prefix_list :
425426 dst_ip_list .append (prefix .split ('/' )[0 ])
426427
427428 prefix = prefix_list [0 ]
428429 dst_ip = dst_ip_list [0 ]
429430
430- test_time = str (datetime .now ().strftime ('%Y-%m-%d-%H:%M:%S' ))
431431 logger .info ("Transition prefix to non fine grained ecmp and validate packets" )
432432
433433 pc_ips = []
@@ -497,14 +497,8 @@ def cleanup(duthost, ptfhost):
497497
498498
499499@pytest .fixture (scope = "module" )
500- def common_setup_teardown (tbinfo , duthosts , rand_one_dut_hostname ):
500+ def common_setup_teardown (tbinfo , duthosts , rand_one_dut_hostname , ptfhost ):
501501 duthost = duthosts [rand_one_dut_hostname ]
502- if tbinfo ['topo' ]['name' ] not in SUPPORTED_TOPO :
503- logger .warning ("Unsupported topology, currently supports " + str (SUPPORTED_TOPO ))
504- pytest .skip ("Unsupported topology" )
505- if duthost .facts ["asic_type" ] not in SUPPORTED_PLATFORMS :
506- logger .warning ("Unsupported platform, currently supports " + str (SUPPORTED_PLATFORMS ))
507- pytest .skip ("Unsupported platform" )
508502
509503 try :
510504 mg_facts = duthost .get_extended_minigraph_facts (tbinfo )
@@ -517,18 +511,18 @@ def common_setup_teardown(tbinfo, duthosts, rand_one_dut_hostname):
517511 yield duthost , cfg_facts , router_mac , net_ports
518512
519513 finally :
520- cleanup (duthost )
514+ cleanup (duthost , ptfhost )
521515
522516
523- def test_fg_ecmp (common_setup_teardown , ptfadapter , ptfhost ):
517+ def test_fg_ecmp (common_setup_teardown , ptfhost ):
524518 duthost , cfg_facts , router_mac , net_ports = common_setup_teardown
525519
526520 # IPv4 test
527- port_list , ipv4_to_port , bank_0_port , bank_1_port = setup_test_config (ptfadapter , duthost , ptfhost , cfg_facts , router_mac , net_ports , DEFAULT_VLAN_IPv4 )
521+ port_list , ipv4_to_port , bank_0_port , bank_1_port = setup_test_config (duthost , ptfhost , cfg_facts , router_mac , net_ports , DEFAULT_VLAN_IPv4 )
528522 fg_ecmp (ptfhost , duthost , router_mac , net_ports , port_list , ipv4_to_port , bank_0_port , bank_1_port , PREFIX_IPV4_LIST )
529523 fg_ecmp_to_regular_ecmp_transitions (ptfhost , duthost , router_mac , net_ports , port_list , ipv4_to_port , bank_0_port , bank_1_port , PREFIX_IPV4_LIST , cfg_facts )
530524
531525 # IPv6 test
532- port_list , ipv6_to_port , bank_0_port , bank_1_port = setup_test_config (ptfadapter , duthost , ptfhost , cfg_facts , router_mac , net_ports , DEFAULT_VLAN_IPv6 )
526+ port_list , ipv6_to_port , bank_0_port , bank_1_port = setup_test_config (duthost , ptfhost , cfg_facts , router_mac , net_ports , DEFAULT_VLAN_IPv6 )
533527 fg_ecmp (ptfhost , duthost , router_mac , net_ports , port_list , ipv6_to_port , bank_0_port , bank_1_port , PREFIX_IPV6_LIST )
534528 fg_ecmp_to_regular_ecmp_transitions (ptfhost , duthost , router_mac , net_ports , port_list , ipv6_to_port , bank_0_port , bank_1_port , PREFIX_IPV6_LIST , cfg_facts )
0 commit comments