Skip to content

Commit e0e4aa0

Browse files
committed
xcvrd: improve test coverage
1 parent 784cc01 commit e0e4aa0

File tree

1 file changed

+41
-0
lines changed

1 file changed

+41
-0
lines changed

sonic-xcvrd/tests/test_xcvrd.py

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3873,6 +3873,37 @@ def test_beautify_info_dict(self):
38733873
db_utils.beautify_info_dict(dom_info_dict)
38743874
assert dom_info_dict == expected_dom_info_dict
38753875

3876+
@patch('xcvrd.xcvrd.XcvrTableHelper', MagicMock())
3877+
@patch('xcvrd.xcvrd_utilities.common._wrapper_get_presence', MagicMock(return_value=True))
3878+
@patch('xcvrd.xcvrd_utilities.sfp_status_helper.detect_port_in_error_status')
3879+
@patch('time.sleep', MagicMock())
3880+
def test_DomThermalInfoUpdateTask_task_worker(self, mock_detect_error):
3881+
poll_interval = 10
3882+
port_mapping = PortMapping()
3883+
port_mapping.physical_to_logical = {
3884+
1: ['Ethernet0'],
3885+
2: ['Ethernet4'],
3886+
3: ['Ethernet8'],
3887+
}
3888+
port_mapping.logical_to_asic = {
3889+
'Ethernet0': 0,
3890+
'Ethernet4': 0,
3891+
'Ethernet8': None,
3892+
}
3893+
dom_monitoring_disabled = {
3894+
'Ethernet0': False,
3895+
'Ethernet4': True,
3896+
'Ethernet8': False,
3897+
}
3898+
mock_sfp_obj_dict = MagicMock()
3899+
stop_event = threading.Event()
3900+
task = DomThermalInfoUpdateTask(DEFAULT_NAMESPACE, port_mapping, mock_sfp_obj_dict, stop_event, poll_interval)
3901+
task.xcvr_table_helper = XcvrTableHelper(DEFAULT_NAMESPACE)
3902+
task.task_stopping_event.is_set = MagicMock(side_effect=[False, False, False, False, False, False, True])
3903+
mock_detect_error.return_value = False
3904+
task.is_port_dom_monitoring_disabled = lambda p: dom_monitoring_disabled[p]
3905+
task.task_worker()
3906+
38763907
@patch('xcvrd.xcvrd.XcvrTableHelper', MagicMock())
38773908
@patch('xcvrd.xcvrd_utilities.common.del_port_sfp_dom_info_from_db')
38783909
def test_DomInfoUpdateTask_handle_port_change_event(self, mock_del_port_sfp_dom_info_from_db):
@@ -4613,6 +4644,16 @@ def test_wrapper_get_transceiver_firmware_info(self, mock_sfputil, mock_chassis)
46134644
mock_chassis.get_sfp = MagicMock(side_effect=NotImplementedError)
46144645
assert common._wrapper_get_transceiver_firmware_info(1) == {}
46154646

4647+
def test_get_transceiver_dom_temperature(self):
4648+
mock_sfp = MagicMock()
4649+
dom_utils = DOMUtils({1 : mock_sfp}, helper_logger)
4650+
4651+
mock_sfp.get_temperature.return_value = 42.
4652+
assert 'temperature' in dom_utils.get_transceiver_dom_temperature(1)
4653+
4654+
mock_sfp.get_temperature.side_effect = NotImplementedError
4655+
assert dom_utils.get_transceiver_dom_temperature(1) == {}
4656+
46164657
def test_get_transceiver_dom_sensor_real_value(self):
46174658
mock_sfp = MagicMock()
46184659
dom_utils = DOMUtils({1 : mock_sfp}, helper_logger)

0 commit comments

Comments
 (0)