Imported Upstream version 3.0.0
This commit is contained in:
41
tests/pwmfan/test_ipmi.py
Normal file
41
tests/pwmfan/test_ipmi.py
Normal file
@@ -0,0 +1,41 @@
|
||||
from unittest.mock import patch
|
||||
|
||||
import pytest
|
||||
|
||||
from afancontrol.pwmfan import FanValue, FreeIPMIFanSpeed
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def ipmi_sensors_output():
|
||||
return """
|
||||
ID,Name,Type,Reading,Units,Event
|
||||
17,FAN1,Fan,1400.00,RPM,'OK'
|
||||
18,FAN2,Fan,1800.00,RPM,'OK'
|
||||
19,FAN3,Fan,N/A,RPM,N/A
|
||||
20,FAN4,Fan,N/A,RPM,N/A
|
||||
21,FAN5,Fan,N/A,RPM,N/A
|
||||
22,FAN6,Fan,N/A,RPM,N/A
|
||||
""".lstrip()
|
||||
|
||||
|
||||
def test_fan_speed(ipmi_sensors_output):
|
||||
fan_speed = FreeIPMIFanSpeed("FAN2")
|
||||
with patch.object(FreeIPMIFanSpeed, "_call_ipmi_sensors") as mock_call:
|
||||
mock_call.return_value = ipmi_sensors_output
|
||||
assert fan_speed.get_speed() == FanValue(1800)
|
||||
|
||||
|
||||
def test_fan_speed_na(ipmi_sensors_output):
|
||||
fan_speed = FreeIPMIFanSpeed("FAN3")
|
||||
with patch.object(FreeIPMIFanSpeed, "_call_ipmi_sensors") as mock_call:
|
||||
mock_call.return_value = ipmi_sensors_output
|
||||
with pytest.raises(ValueError):
|
||||
fan_speed.get_speed()
|
||||
|
||||
|
||||
def test_fan_speed_unknown(ipmi_sensors_output):
|
||||
fan_speed = FreeIPMIFanSpeed("FAN30")
|
||||
with patch.object(FreeIPMIFanSpeed, "_call_ipmi_sensors") as mock_call:
|
||||
mock_call.return_value = ipmi_sensors_output
|
||||
with pytest.raises(RuntimeError):
|
||||
fan_speed.get_speed()
|
||||
Reference in New Issue
Block a user