@@ -38,6 +38,7 @@ def run_ebgp_session_capacity_test(snappi_api,
38
38
"""
39
39
Run eBGP Session Capacity Tests
40
40
"""
41
+ config_db = json .loads (duthost .shell ("sonic-cfggen -d --print-data" )['stdout' ])
41
42
global flag
42
43
if snappi_extra_params is None :
43
44
snappi_extra_params = SnappiTestParams ()
@@ -51,7 +52,7 @@ def run_ebgp_session_capacity_test(snappi_api,
51
52
snappi_extra_params .route_ranges = create_ip_list ('200.1.1.1' , session_count , mask = 32 )
52
53
snappi_extra_params .tx_host_ips = get_host_addresses (snappi_extra_params .tx_ipv4_subnet + '/' + str (snappi_extra_params .tx_subnet_prefix ), 2 ) # one for ixia , one for dut
53
54
snappi_extra_params .rx_host_ips = get_host_addresses (snappi_extra_params .rx_ipv4_subnet + '/' + str (snappi_extra_params .rx_subnet_prefix ), session_count + 1 )
54
- snappi_config = setup_dut_snappi_config (duthost , snappi_api , snappi_ports , session_count , snappi_extra_params )
55
+ snappi_config = setup_dut_snappi_config (duthost , config_db , snappi_api , snappi_ports , session_count , snappi_extra_params )
55
56
result = verify_results (snappi_api , snappi_config , session_count )
56
57
result_list .append (result )
57
58
flag = flag + result
@@ -66,7 +67,7 @@ def run_ebgp_session_capacity_test(snappi_api,
66
67
max_session = session_count
67
68
logger .info ('Reducing eBGP session count as previous iteration encountered loss or protocols didn\' t come up' )
68
69
while max_session_capacity > min_session or max_session_capacity < max_session :
69
- snappi_config = setup_dut_snappi_config (duthost , snappi_api , snappi_ports , max_session_capacity , snappi_extra_params )
70
+ snappi_config = setup_dut_snappi_config (duthost , config_db , snappi_api , snappi_ports , max_session_capacity , snappi_extra_params )
70
71
result = verify_results (snappi_api , snappi_config , max_session_capacity )
71
72
result_list .append (result )
72
73
if result == 0 :
@@ -88,6 +89,7 @@ def run_ebgp_session_capacity_test(snappi_api,
88
89
break
89
90
90
91
def setup_dut_snappi_config (duthost ,
92
+ config_db ,
91
93
snappi_api ,
92
94
snappi_ports ,
93
95
session_count ,
@@ -97,7 +99,7 @@ def setup_dut_snappi_config(duthost,
97
99
"""
98
100
99
101
logger .info ('\n ' )
100
- config_db = json .loads (duthost .shell ("sonic-cfggen -d --print-data" )['stdout' ])
102
+ # config_db = json.loads(duthost.shell("sonic-cfggen -d --print-data")['stdout'])
101
103
interfaces = dict ()
102
104
loopback_interfaces = dict ()
103
105
loopback_interfaces .update ({"Loopback0" : {}})
@@ -272,18 +274,20 @@ def get_ti_stats(ixnet):
272
274
return tmp
273
275
274
276
def wait_for_bgp_session_up (ixnet , timeout = 60 ):
277
+ time .sleep (timeout )
275
278
protocol_summary = StatViewAssistant (ixnet , 'Protocols Summary' )
276
279
for row in protocol_summary .Rows :
277
280
if 'BGP' in row ['Protocol Type' ]:
278
- time .sleep (timeout )
279
- logger .info ('eBGP Sessions Total {}' .format (row ['Sessions Total' ]))
280
- logger .info ('eBGP Sessions Up {}' .format (row ['Sessions Up' ]))
281
- if int (row ['Sessions Total' ]) == int (row ['Sessions Up' ]):
281
+ logger .info ('eBGP Sessions Total : {}' .format (row ['Sessions Total' ]))
282
+ logger .info ('eBGP Sessions Up : {}' .format (row ['Sessions Up' ]))
283
+ if int (row ['Sessions Total' ]) != int (row ['Sessions Up' ]):
282
284
logger .info ('|-------FAIL : All eBGP sessions are not Up in {}s-----|' .format (timeout ))
283
285
return False
284
286
return True
285
287
286
288
289
+
290
+
287
291
def verify_results (api , snappi_config , session_count ):
288
292
global max_session_capacity
289
293
logger .info ('\n ' )
@@ -316,5 +320,6 @@ def verify_results(api, snappi_config, session_count):
316
320
ts .traffic .flow_transmit .state = ts .traffic .flow_transmit .STOP
317
321
api .set_control_state (ts )
318
322
ixnet .StopAllProtocols ()
323
+ wait (30 , "For traffic and protocol to stop" )
319
324
max_session_capacity = session_count
320
325
return 0
0 commit comments