mirror of
https://github.com/home-assistant/core.git
synced 2025-07-20 19:57:07 +00:00
Fix HomeKit fan speed conversion (#22951)
* Check that speed value from state is not 'None' * Added tests
This commit is contained in:
parent
51e6d5380e
commit
6d2412022b
@ -148,6 +148,8 @@ class HomeKitSpeedMapping:
|
|||||||
|
|
||||||
def speed_to_homekit(self, speed):
|
def speed_to_homekit(self, speed):
|
||||||
"""Map Home Assistant speed state to HomeKit speed."""
|
"""Map Home Assistant speed state to HomeKit speed."""
|
||||||
|
if speed is None:
|
||||||
|
return None
|
||||||
speed_range = self.speed_ranges[speed]
|
speed_range = self.speed_ranges[speed]
|
||||||
return speed_range.target
|
return speed_range.target
|
||||||
|
|
||||||
|
@ -191,6 +191,7 @@ def test_homekit_speed_mapping():
|
|||||||
def test_speed_to_homekit():
|
def test_speed_to_homekit():
|
||||||
"""Test speed conversion from HA to Homekit."""
|
"""Test speed conversion from HA to Homekit."""
|
||||||
speed_mapping = HomeKitSpeedMapping(['off', 'low', 'high'])
|
speed_mapping = HomeKitSpeedMapping(['off', 'low', 'high'])
|
||||||
|
assert speed_mapping.speed_to_homekit(None) is None
|
||||||
assert speed_mapping.speed_to_homekit('off') == 0
|
assert speed_mapping.speed_to_homekit('off') == 0
|
||||||
assert speed_mapping.speed_to_homekit('low') == 50
|
assert speed_mapping.speed_to_homekit('low') == 50
|
||||||
assert speed_mapping.speed_to_homekit('high') == 100
|
assert speed_mapping.speed_to_homekit('high') == 100
|
||||||
@ -199,6 +200,7 @@ def test_speed_to_homekit():
|
|||||||
def test_speed_to_states():
|
def test_speed_to_states():
|
||||||
"""Test speed conversion from Homekit to HA."""
|
"""Test speed conversion from Homekit to HA."""
|
||||||
speed_mapping = HomeKitSpeedMapping(['off', 'low', 'high'])
|
speed_mapping = HomeKitSpeedMapping(['off', 'low', 'high'])
|
||||||
|
assert speed_mapping.speed_to_states(-1) == 'off'
|
||||||
assert speed_mapping.speed_to_states(0) == 'off'
|
assert speed_mapping.speed_to_states(0) == 'off'
|
||||||
assert speed_mapping.speed_to_states(33) == 'off'
|
assert speed_mapping.speed_to_states(33) == 'off'
|
||||||
assert speed_mapping.speed_to_states(34) == 'low'
|
assert speed_mapping.speed_to_states(34) == 'low'
|
||||||
|
Loading…
x
Reference in New Issue
Block a user