@@ -3673,6 +3673,7 @@ def test_DomInfoUpdateTask_task_worker(self, mock_post_pm_info,
36733673 task .status_db_utils .post_port_transceiver_hw_status_to_db = MagicMock ()
36743674 task .status_db_utils .post_port_transceiver_hw_status_flags_to_db = MagicMock ()
36753675 task .vdm_utils .is_transceiver_vdm_supported = MagicMock (return_value = True )
3676+ task .xcvrd_utils .is_transceiver_lpmode_on = MagicMock (return_value = False )
36763677 task .vdm_db_utils = MagicMock ()
36773678 task .vdm_db_utils .post_port_vdm_real_values_to_db = MagicMock ()
36783679 task .task_worker ()
@@ -3737,6 +3738,7 @@ def test_DomInfoUpdateTask_task_worker_vdm_failure(self, mock_post_pm_info):
37373738 task .vdm_utils ._unfreeze_vdm_stats_and_confirm = MagicMock (return_value = True )
37383739 task .vdm_db_utils .post_port_vdm_real_values_to_db = MagicMock ()
37393740 task .vdm_db_utils .post_port_vdm_flags_to_db = MagicMock ()
3741+ task .xcvrd_utils .is_transceiver_lpmode_on = MagicMock (return_value = False )
37403742 task .task_worker ()
37413743 assert task .vdm_utils ._unfreeze_vdm_stats_and_confirm .call_count == 1
37423744 assert task .vdm_db_utils .post_port_vdm_real_values_to_db .call_count == 0
@@ -4698,6 +4700,33 @@ def test_is_transceiver_flat_memory(self):
46984700 mock_api .is_flat_memory = MagicMock (side_effect = NotImplementedError )
46994701 assert xcvrd_util .is_transceiver_flat_memory (1 )
47004702
4703+ def test_is_transceiver_lpmode_on (self ):
4704+ from xcvrd .xcvrd_utilities .utils import XCVRDUtils
4705+ mock_sfp = MagicMock ()
4706+ xcvrd_util = XCVRDUtils ({1 : mock_sfp }, MagicMock ())
4707+
4708+ # Test case where get_xcvr_api returns None
4709+ mock_sfp .get_lpmode = MagicMock (return_value = None )
4710+ assert not xcvrd_util .is_transceiver_lpmode_on (1 )
4711+
4712+ # Test case where get_lpmode returns True
4713+ mock_sfp .get_lpmode = MagicMock (return_value = True )
4714+ assert xcvrd_util .is_transceiver_lpmode_on (1 )
4715+
4716+ # Test case where get_lpmode returns False
4717+
4718+ mock_sfp .get_lpmode = MagicMock (return_value = False )
4719+ assert not xcvrd_util .is_transceiver_lpmode_on (1 )
4720+
4721+ # Test case where get_xcvr_api raises KeyError
4722+ xcvrd_util .sfp_obj_dict = {}
4723+ assert not xcvrd_util .is_transceiver_lpmode_on (1 )
4724+
4725+ # Test case where is_flat_memory raises NotImplementedError
4726+ xcvrd_util .sfp_obj_dict = {1 : mock_sfp }
4727+ mock_sfp .get_lpmode = MagicMock (side_effect = NotImplementedError )
4728+ assert not xcvrd_util .is_transceiver_lpmode_on (1 )
4729+
47014730 @patch ('time.sleep' , MagicMock ())
47024731 @patch ('xcvrd.xcvrd.XcvrTableHelper' , MagicMock ())
47034732 @patch ('xcvrd.xcvrd._wrapper_soak_sfp_insert_event' , MagicMock ())
0 commit comments