@@ -710,12 +710,12 @@ def test_run_firmwre(self, mock_chassis):
710
710
@patch ('sfputil.main.logical_port_to_physical_port_index' , MagicMock (return_value = 1 ))
711
711
@pytest .mark .parametrize ("mock_response, expected" , [
712
712
({'status' : False , 'result' : None } , - 1 ),
713
- ({'status' : True , 'result' : ("1.0.1" , 1 , 1 , 0 , "1.0.2" , 0 , 0 , 0 )} , - 1 ),
714
- ({'status' : True , 'result' : ("1.0.1" , 0 , 0 , 0 , "1.0.2" , 1 , 1 , 0 )} , - 1 ),
715
- ({'status' : True , 'result' : ("1.0.1" , 1 , 0 , 0 , "1.0.2" , 0 , 1 , 0 )} , 1 ),
716
- ({'status' : True , 'result' : ("1.0.1" , 0 , 1 , 0 , "1.0.2" , 1 , 0 , 0 )} , 1 ),
717
- ({'status' : True , 'result' : ("1.0.1" , 1 , 0 , 1 , "1.0.2" , 0 , 1 , 0 )} , - 1 ),
718
- ({'status' : True , 'result' : ("1.0.1" , 0 , 1 , 0 , "1.0.2" , 1 , 0 , 1 )} , - 1 ),
713
+ ({'status' : True , 'result' : ("1.0.1" , 1 , 1 , 0 , "1.0.2" , 0 , 0 , 0 , "1.0.1" , "1.0.2" )} , - 1 ),
714
+ ({'status' : True , 'result' : ("1.0.1" , 0 , 0 , 0 , "1.0.2" , 1 , 1 , 0 , "1.0.2" , "1.0.1" )} , - 1 ),
715
+ ({'status' : True , 'result' : ("1.0.1" , 1 , 0 , 0 , "1.0.2" , 0 , 1 , 0 , "1.0.1" , "1.0.2" )} , 1 ),
716
+ ({'status' : True , 'result' : ("1.0.1" , 0 , 1 , 0 , "1.0.2" , 1 , 0 , 0 , "1.0.2" , "1.0.1" )} , 1 ),
717
+ ({'status' : True , 'result' : ("1.0.1" , 1 , 0 , 1 , "1.0.2" , 0 , 1 , 0 , "1.0.1" , "1.0.2" )} , - 1 ),
718
+ ({'status' : True , 'result' : ("1.0.1" , 0 , 1 , 0 , "1.0.2" , 1 , 0 , 1 , "1.0.2" , "1.0.1" )} , - 1 ),
719
719
720
720
# "is_fw_switch_done" function will waiting until timeout under below condition, so that this test will spend around 1min.
721
721
({'status' : False , 'result' : 0 } , - 1 ),
@@ -790,3 +790,32 @@ def test_firmware_download_RJ45(self):
790
790
result = runner .invoke (sfputil .cli .commands ['firmware' ].commands ['download' ], ["Ethernet0" , "a.b" ])
791
791
assert result .output == 'This functionality is not applicable for RJ45 port Ethernet0.\n '
792
792
assert result .exit_code == EXIT_FAIL
793
+
794
+ @patch ('sfputil.main.is_sfp_present' , MagicMock (return_value = True ))
795
+ @patch ('sfputil.main.is_port_type_rj45' , MagicMock (return_value = False ))
796
+ @patch ('sfputil.main.run_firmware' , MagicMock (return_value = 1 ))
797
+ @patch ('sfputil.main.update_firmware_info_to_state_db' , MagicMock ())
798
+ def test_firmware_run_cli (self ):
799
+ runner = CliRunner ()
800
+ result = runner .invoke (sfputil .cli .commands ['firmware' ].commands ['run' ], ["Ethernet0" ])
801
+ assert result .exit_code == 0
802
+
803
+ @patch ('sfputil.main.is_sfp_present' , MagicMock (return_value = True ))
804
+ @patch ('sfputil.main.is_port_type_rj45' , MagicMock (return_value = False ))
805
+ @patch ('sfputil.main.commit_firmware' , MagicMock (return_value = 1 ))
806
+ @patch ('sfputil.main.update_firmware_info_to_state_db' , MagicMock ())
807
+ def test_firmware_commit_cli (self ):
808
+ runner = CliRunner ()
809
+ result = runner .invoke (sfputil .cli .commands ['firmware' ].commands ['commit' ], ["Ethernet0" ])
810
+ assert result .exit_code == 0
811
+
812
+ @patch ('sfputil.main.logical_port_to_physical_port_index' , MagicMock (return_value = 1 ))
813
+ @patch ('sonic_py_common.multi_asic.get_front_end_namespaces' , MagicMock (return_value = ['' ]))
814
+ @patch ('sfputil.main.SonicV2Connector' , MagicMock ())
815
+ @patch ('sfputil.main.platform_chassis' )
816
+ def test_update_firmware_info_to_state_db (self , mock_chassis ):
817
+ mock_sfp = MagicMock ()
818
+ mock_chassis .get_sfp = MagicMock (return_value = mock_sfp )
819
+ mock_sfp .get_transceiver_info_firmware_versions .return_value = ['a.b.c' , 'd.e.f' ]
820
+
821
+ sfputil .update_firmware_info_to_state_db ("Ethernet0" )
0 commit comments