@@ -347,9 +347,20 @@ def test_y_cable_toggle_mux_torA_update_status_exception(self):
347347
348348 with patch ('ycable.ycable_utilities.y_cable_helper.y_cable_port_instances' ) as port_instance :
349349
350- port_instance .get .return_value = "simulated_port"
351- port_instance .toggle_mux_to_tor_a .return_value = Exception (
352- NotImplementedError )
350+ class PortInstanceHelper ():
351+ def __init__ (self ):
352+ self .EEPROM_ERROR = - 1
353+ self .MUX_TOGGLE_STATUS_NOT_INITIATED_OR_FINISHED = 0
354+
355+ # Defining function without self argument creates an exception,
356+ # which is what we want for this test.
357+ def get_mux_direction ():
358+ pass
359+ def toggle_mux_to_tor_a ():
360+ raise NotImplementedError
361+
362+ port_instance .get .return_value = PortInstanceHelper ()
363+
353364
354365 rc = y_cable_toggle_mux_torA (1 )
355366
@@ -379,9 +390,19 @@ def test_y_cable_toggle_mux_torB_no_port_instance(self):
379390 def test_y_cable_toggle_mux_torB_update_status_exception (self ):
380391 with patch ('ycable.ycable_utilities.y_cable_helper.y_cable_port_instances' ) as port_instance :
381392
382- port_instance .get .return_value = "simulated_port"
383- port_instance .toggle_mux_to_tor_a .return_value = Exception (
384- NotImplementedError )
393+ class PortInstanceHelper ():
394+ def __init__ (self ):
395+ self .EEPROM_ERROR = - 1
396+ self .MUX_TOGGLE_STATUS_NOT_INITIATED_OR_FINISHED = 0
397+
398+ # Defining function without self argument creates an exception,
399+ # which is what we want for this test.
400+ def get_mux_direction ():
401+ pass
402+ def toggle_mux_to_tor_a ():
403+ raise NotImplementedError
404+
405+ port_instance .get .return_value = PortInstanceHelper ()
385406
386407 rc = y_cable_toggle_mux_torB (1 )
387408
@@ -1857,6 +1878,10 @@ def __init__(self):
18571878 self .FIRMWARE_DOWNLOAD_STATUS_INPROGRESS = 1
18581879 self .FIRMWARE_DOWNLOAD_STATUS_FAILED = 2
18591880 self .download_firmware_status = 0
1881+ self .MUX_TOGGLE_STATUS_INPROGRESS = 1
1882+ self .MUX_TOGGLE_STATUS_FAILED = 2
1883+ self .MUX_TOGGLE_STATUS_NOT_INITIATED_OR_FINISHED = 2
1884+ self .mux_toggle_status = 0
18601885 self .SWITCH_COUNT_MANUAL = "manual"
18611886 self .SWITCH_COUNT_AUTO = "auto"
18621887
@@ -1919,6 +1944,10 @@ def __init__(self):
19191944 self .FIRMWARE_DOWNLOAD_STATUS_INPROGRESS = 1
19201945 self .FIRMWARE_DOWNLOAD_STATUS_FAILED = 2
19211946 self .download_firmware_status = 0
1947+ self .MUX_TOGGLE_STATUS_INPROGRESS = 1
1948+ self .MUX_TOGGLE_STATUS_FAILED = 2
1949+ self .MUX_TOGGLE_STATUS_NOT_INITIATED_OR_FINISHED = 2
1950+ self .mux_toggle_status = 0
19221951 self .SWITCH_COUNT_MANUAL = "manual"
19231952 self .SWITCH_COUNT_AUTO = "auto"
19241953
@@ -1979,6 +2008,10 @@ def __init__(self):
19792008 self .FIRMWARE_DOWNLOAD_STATUS_INPROGRESS = 1
19802009 self .FIRMWARE_DOWNLOAD_STATUS_FAILED = 2
19812010 self .download_firmware_status = 0
2011+ self .MUX_TOGGLE_STATUS_INPROGRESS = 1
2012+ self .MUX_TOGGLE_STATUS_FAILED = 2
2013+ self .MUX_TOGGLE_STATUS_NOT_INITIATED_OR_FINISHED = 2
2014+ self .mux_toggle_status = 0
19822015 self .SWITCH_COUNT_MANUAL = "manual"
19832016 self .SWITCH_COUNT_AUTO = "auto"
19842017
@@ -2041,6 +2074,10 @@ def __init__(self):
20412074 self .FIRMWARE_DOWNLOAD_STATUS_INPROGRESS = 1
20422075 self .FIRMWARE_DOWNLOAD_STATUS_FAILED = 2
20432076 self .download_firmware_status = 0
2077+ self .MUX_TOGGLE_STATUS_INPROGRESS = 1
2078+ self .MUX_TOGGLE_STATUS_NOT_INITIATED_OR_FINISHED = 2
2079+ self .MUX_TOGGLE_STATUS_FAILED = 2
2080+ self .mux_toggle_status = 0
20442081 self .SWITCH_COUNT_MANUAL = "manual"
20452082 self .SWITCH_COUNT_AUTO = "auto"
20462083
@@ -2101,6 +2138,10 @@ def __init__(self):
21012138 self .FIRMWARE_DOWNLOAD_STATUS_INPROGRESS = 1
21022139 self .FIRMWARE_DOWNLOAD_STATUS_FAILED = 2
21032140 self .download_firmware_status = 0
2141+ self .MUX_TOGGLE_STATUS_INPROGRESS = 1
2142+ self .MUX_TOGGLE_STATUS_FAILED = 2
2143+ self .MUX_TOGGLE_STATUS_NOT_INITIATED_OR_FINISHED = 2
2144+ self .mux_toggle_status = 0
21042145 self .SWITCH_COUNT_MANUAL = "manual"
21052146 self .SWITCH_COUNT_AUTO = "auto"
21062147
@@ -2163,6 +2204,9 @@ def __init__(self):
21632204 self .FIRMWARE_DOWNLOAD_STATUS_INPROGRESS = 1
21642205 self .FIRMWARE_DOWNLOAD_STATUS_FAILED = 2
21652206 self .download_firmware_status = 0
2207+ self .MUX_TOGGLE_STATUS_INPROGRESS = 1
2208+ self .MUX_TOGGLE_STATUS_NOT_INITIATED_OR_FINISHED = 2
2209+ self .mux_toggle_status = 0
21662210 self .SWITCH_COUNT_MANUAL = "manual"
21672211 self .SWITCH_COUNT_AUTO = "auto"
21682212
@@ -2223,6 +2267,10 @@ def __init__(self):
22232267 self .TARGET_TOR_B = 2
22242268 self .FIRMWARE_DOWNLOAD_STATUS_INPROGRESS = 1
22252269 self .download_firmware_status = 1
2270+ self .MUX_TOGGLE_STATUS_INPROGRESS = 1
2271+ self .MUX_TOGGLE_STATUS_FAILED = 2
2272+ self .MUX_TOGGLE_STATUS_NOT_INITIATED_OR_FINISHED = 2
2273+ self .mux_toggle_status = 0
22262274 self .SWITCH_COUNT_MANUAL = "manual"
22272275 self .SWITCH_COUNT_AUTO = "auto"
22282276
@@ -2298,6 +2346,10 @@ def __init__(self):
22982346 self .TARGET_TOR_B = 2
22992347 self .FIRMWARE_DOWNLOAD_STATUS_INPROGRESS = 1
23002348 self .download_firmware_status = 1
2349+ self .MUX_TOGGLE_STATUS_INPROGRESS = 1
2350+ self .MUX_TOGGLE_STATUS_FAILED = 2
2351+ self .MUX_TOGGLE_STATUS_NOT_INITIATED_OR_FINISHED = 2
2352+ self .mux_toggle_status = 0
23012353 self .SWITCH_COUNT_MANUAL = "manual"
23022354 self .SWITCH_COUNT_AUTO = "auto"
23032355
@@ -2373,6 +2425,10 @@ def __init__(self):
23732425 self .TARGET_TOR_B = 2
23742426 self .FIRMWARE_DOWNLOAD_STATUS_INPROGRESS = 1
23752427 self .download_firmware_status = 1
2428+ self .MUX_TOGGLE_STATUS_INPROGRESS = 1
2429+ self .MUX_TOGGLE_STATUS_FAILED = 2
2430+ self .MUX_TOGGLE_STATUS_NOT_INITIATED_OR_FINISHED = 2
2431+ self .mux_toggle_status = 0
23762432 self .SWITCH_COUNT_MANUAL = "manual"
23772433 self .SWITCH_COUNT_AUTO = "auto"
23782434
@@ -3887,6 +3943,10 @@ def __init__(self):
38873943 self .FIRMWARE_DOWNLOAD_STATUS_INPROGRESS = 1
38883944 self .FIRMWARE_DOWNLOAD_STATUS_FAILED = 2
38893945 self .download_firmware_status = 0
3946+ self .MUX_TOGGLE_STATUS_INPROGRESS = 1
3947+ self .MUX_TOGGLE_STATUS_FAILED = 2
3948+ self .MUX_TOGGLE_STATUS_NOT_INITIATED_OR_FINISHED = 2
3949+ self .mux_toggle_status = 0
38903950 self .SWITCH_COUNT_MANUAL = "manual"
38913951 self .SWITCH_COUNT_AUTO = "auto"
38923952
@@ -4674,3 +4734,15 @@ def get_mux_direction(self):
46744734 rc = handle_show_hwmode_state_cmd_arg_tbl_notification (
46754735 fvp , xcvrd_show_hwmode_dir_cmd_sts_tbl , xcvrd_show_hwmode_dir_rsp_tbl , xcvrd_show_hwmode_dir_res_tbl , asic_index , port )
46764736 assert (rc == None )
4737+
4738+ def test_get_mux_cable_static_info_without_presence (self ):
4739+
4740+ rc = get_muxcable_static_info_without_presence ()
4741+
4742+ assert (rc ['read_side' ] == '-1' )
4743+ assert (rc ['nic_lane1_precursor1' ] == 'N/A' )
4744+ assert (rc ['nic_lane1_precursor1' ] == 'N/A' )
4745+ assert (rc ['nic_lane1_postcursor1' ] == 'N/A' )
4746+ assert (rc ['nic_lane1_postcursor2' ] == 'N/A' )
4747+
4748+
0 commit comments