Fix mclimate accounts with not only melissa components (#12427)
* Fixes for mclimate accounts with not only melissa components * Fixes melissa sensor to only use HVAC * Bumping version to 1.0.3 and remove OP_MODE that is not supported * Removes STATE_AUTO from translation and tests
This commit is contained in:
parent
485979cd86
commit
7a44eee093
5 changed files with 12 additions and 16 deletions
|
@ -26,7 +26,7 @@ SUPPORT_FLAGS = (SUPPORT_FAN_MODE | SUPPORT_OPERATION_MODE |
|
|||
SUPPORT_ON_OFF | SUPPORT_TARGET_TEMPERATURE)
|
||||
|
||||
OP_MODES = [
|
||||
STATE_AUTO, STATE_COOL, STATE_DRY, STATE_FAN_ONLY, STATE_HEAT
|
||||
STATE_COOL, STATE_DRY, STATE_FAN_ONLY, STATE_HEAT
|
||||
]
|
||||
|
||||
FAN_MODES = [
|
||||
|
@ -42,8 +42,9 @@ def setup_platform(hass, config, add_devices, discovery_info=None):
|
|||
all_devices = []
|
||||
|
||||
for device in devices:
|
||||
all_devices.append(MelissaClimate(
|
||||
api, device['serial_number'], device))
|
||||
if device['type'] == 'melissa':
|
||||
all_devices.append(MelissaClimate(
|
||||
api, device['serial_number'], device))
|
||||
|
||||
add_devices(all_devices)
|
||||
|
||||
|
@ -199,9 +200,7 @@ class MelissaClimate(ClimateDevice):
|
|||
|
||||
def melissa_op_to_hass(self, mode):
|
||||
"""Translate Melissa modes to hass states."""
|
||||
if mode == self._api.MODE_AUTO:
|
||||
return STATE_AUTO
|
||||
elif mode == self._api.MODE_HEAT:
|
||||
if mode == self._api.MODE_HEAT:
|
||||
return STATE_HEAT
|
||||
elif mode == self._api.MODE_COOL:
|
||||
return STATE_COOL
|
||||
|
@ -228,9 +227,7 @@ class MelissaClimate(ClimateDevice):
|
|||
|
||||
def hass_mode_to_melissa(self, mode):
|
||||
"""Translate hass states to melissa modes."""
|
||||
if mode == STATE_AUTO:
|
||||
return self._api.MODE_AUTO
|
||||
elif mode == STATE_HEAT:
|
||||
if mode == STATE_HEAT:
|
||||
return self._api.MODE_HEAT
|
||||
elif mode == STATE_COOL:
|
||||
return self._api.MODE_COOL
|
||||
|
|
|
@ -12,7 +12,7 @@ from homeassistant.const import CONF_USERNAME, CONF_PASSWORD
|
|||
from homeassistant.helpers import config_validation as cv
|
||||
from homeassistant.helpers.discovery import load_platform
|
||||
|
||||
REQUIREMENTS = ["py-melissa-climate==1.0.1"]
|
||||
REQUIREMENTS = ["py-melissa-climate==1.0.6"]
|
||||
|
||||
_LOGGER = logging.getLogger(__name__)
|
||||
|
||||
|
|
|
@ -22,8 +22,9 @@ def setup_platform(hass, config, add_devices, discovery_info=None):
|
|||
devices = api.fetch_devices().values()
|
||||
|
||||
for device in devices:
|
||||
sensors.append(MelissaTemperatureSensor(device, api))
|
||||
sensors.append(MelissaHumiditySensor(device, api))
|
||||
if device['type'] == 'melissa':
|
||||
sensors.append(MelissaTemperatureSensor(device, api))
|
||||
sensors.append(MelissaHumiditySensor(device, api))
|
||||
add_devices(sensors)
|
||||
|
||||
|
||||
|
|
|
@ -628,7 +628,7 @@ py-canary==0.4.0
|
|||
py-cpuinfo==3.3.0
|
||||
|
||||
# homeassistant.components.melissa
|
||||
py-melissa-climate==1.0.1
|
||||
py-melissa-climate==1.0.6
|
||||
|
||||
# homeassistant.components.camera.synology
|
||||
py-synology==0.1.5
|
||||
|
|
|
@ -122,7 +122,7 @@ class TestMelissa(unittest.TestCase):
|
|||
def test_operation_list(self):
|
||||
"""Test the operation list."""
|
||||
self.assertEqual(
|
||||
[STATE_AUTO, STATE_COOL, STATE_DRY, STATE_FAN_ONLY, STATE_HEAT],
|
||||
[STATE_COOL, STATE_DRY, STATE_FAN_ONLY, STATE_HEAT],
|
||||
self.thermostat.operation_list
|
||||
)
|
||||
|
||||
|
@ -226,7 +226,6 @@ class TestMelissa(unittest.TestCase):
|
|||
|
||||
def test_melissa_op_to_hass(self):
|
||||
"""Test for translate melissa operations to hass."""
|
||||
self.assertEqual(STATE_AUTO, self.thermostat.melissa_op_to_hass(0))
|
||||
self.assertEqual(STATE_FAN_ONLY, self.thermostat.melissa_op_to_hass(1))
|
||||
self.assertEqual(STATE_HEAT, self.thermostat.melissa_op_to_hass(2))
|
||||
self.assertEqual(STATE_COOL, self.thermostat.melissa_op_to_hass(3))
|
||||
|
@ -245,7 +244,6 @@ class TestMelissa(unittest.TestCase):
|
|||
@mock.patch('homeassistant.components.climate.melissa._LOGGER.warning')
|
||||
def test_hass_mode_to_melissa(self, mocked_warning):
|
||||
"""Test for hass operations to melssa."""
|
||||
self.assertEqual(0, self.thermostat.hass_mode_to_melissa(STATE_AUTO))
|
||||
self.assertEqual(
|
||||
1, self.thermostat.hass_mode_to_melissa(STATE_FAN_ONLY))
|
||||
self.assertEqual(2, self.thermostat.hass_mode_to_melissa(STATE_HEAT))
|
||||
|
|
Loading…
Add table
Reference in a new issue