diff --git a/homeassistant/components/airzone/__init__.py b/homeassistant/components/airzone/__init__.py index f1862da387f..77c9445385a 100644 --- a/homeassistant/components/airzone/__init__.py +++ b/homeassistant/components/airzone/__init__.py @@ -3,7 +3,6 @@ from __future__ import annotations from typing import Any -from aioairzone.common import ConnectionOptions from aioairzone.const import ( AZD_ID, AZD_NAME, @@ -13,7 +12,7 @@ from aioairzone.const import ( AZD_ZONES, DEFAULT_SYSTEM_ID, ) -from aioairzone.localapi import AirzoneLocalApi +from aioairzone.localapi import AirzoneLocalApi, ConnectionOptions from homeassistant.config_entries import ConfigEntry from homeassistant.const import CONF_HOST, CONF_ID, CONF_PORT, Platform diff --git a/homeassistant/components/airzone/config_flow.py b/homeassistant/components/airzone/config_flow.py index 1a7e1b50169..dded0e75d03 100644 --- a/homeassistant/components/airzone/config_flow.py +++ b/homeassistant/components/airzone/config_flow.py @@ -3,10 +3,9 @@ from __future__ import annotations from typing import Any -from aioairzone.common import ConnectionOptions from aioairzone.const import DEFAULT_PORT, DEFAULT_SYSTEM_ID from aioairzone.exceptions import AirzoneError, InvalidSystem -from aioairzone.localapi import AirzoneLocalApi +from aioairzone.localapi import AirzoneLocalApi, ConnectionOptions import voluptuous as vol from homeassistant import config_entries @@ -62,7 +61,7 @@ class ConfigFlow(config_entries.ConfigFlow, domain=DOMAIN): ) try: - await airzone.validate_airzone() + await airzone.validate() except InvalidSystem: data_schema = SYSTEM_ID_SCHEMA errors["base"] = "invalid_system_id" diff --git a/homeassistant/components/airzone/coordinator.py b/homeassistant/components/airzone/coordinator.py index 2a3af6bc532..9e1dc44bb6c 100644 --- a/homeassistant/components/airzone/coordinator.py +++ b/homeassistant/components/airzone/coordinator.py @@ -36,7 +36,7 @@ class AirzoneUpdateCoordinator(DataUpdateCoordinator): """Update data via library.""" async with async_timeout.timeout(AIOAIRZONE_DEVICE_TIMEOUT_SEC): try: - await self.airzone.update_airzone() + await self.airzone.update() except AirzoneError as error: raise UpdateFailed(error) from error return self.airzone.data() diff --git a/homeassistant/components/airzone/manifest.json b/homeassistant/components/airzone/manifest.json index 0fde6d9452e..b9a5f3eafd2 100644 --- a/homeassistant/components/airzone/manifest.json +++ b/homeassistant/components/airzone/manifest.json @@ -3,7 +3,7 @@ "name": "Airzone", "config_flow": true, "documentation": "https://www.home-assistant.io/integrations/airzone", - "requirements": ["aioairzone==0.3.8"], + "requirements": ["aioairzone==0.4.0"], "codeowners": ["@Noltari"], "iot_class": "local_polling", "loggers": ["aioairzone"] diff --git a/requirements_all.txt b/requirements_all.txt index 0b163f4cfc7..6d0cbbcc66f 100644 --- a/requirements_all.txt +++ b/requirements_all.txt @@ -110,7 +110,7 @@ aio_geojson_nsw_rfs_incidents==0.4 aio_georss_gdacs==0.7 # homeassistant.components.airzone -aioairzone==0.3.8 +aioairzone==0.4.0 # homeassistant.components.ambient_station aioambient==2021.11.0 diff --git a/requirements_test_all.txt b/requirements_test_all.txt index 7bfadd20610..598d426541d 100644 --- a/requirements_test_all.txt +++ b/requirements_test_all.txt @@ -94,7 +94,7 @@ aio_geojson_nsw_rfs_incidents==0.4 aio_georss_gdacs==0.7 # homeassistant.components.airzone -aioairzone==0.3.8 +aioairzone==0.4.0 # homeassistant.components.ambient_station aioambient==2021.11.0 diff --git a/tests/components/airzone/test_config_flow.py b/tests/components/airzone/test_config_flow.py index 97103e37f7c..622c362a0d2 100644 --- a/tests/components/airzone/test_config_flow.py +++ b/tests/components/airzone/test_config_flow.py @@ -121,23 +121,19 @@ async def test_form_duplicated_id(hass: HomeAssistant) -> None: entry = MockConfigEntry(domain=DOMAIN, data=CONFIG) entry.add_to_hass(hass) - with patch( - "homeassistant.components.airzone.AirzoneLocalApi.get_hvac", - return_value=HVAC_MOCK, - ): - result = await hass.config_entries.flow.async_init( - DOMAIN, context={"source": SOURCE_USER}, data=CONFIG - ) + result = await hass.config_entries.flow.async_init( + DOMAIN, context={"source": SOURCE_USER}, data=CONFIG + ) - assert result["type"] == "abort" - assert result["reason"] == "already_configured" + assert result["type"] == "abort" + assert result["reason"] == "already_configured" async def test_connection_error(hass: HomeAssistant): """Test connection to host error.""" with patch( - "homeassistant.components.airzone.AirzoneLocalApi.validate_airzone", + "homeassistant.components.airzone.AirzoneLocalApi.validate", side_effect=AirzoneError, ): result = await hass.config_entries.flow.async_init( diff --git a/tests/components/airzone/test_coordinator.py b/tests/components/airzone/test_coordinator.py index d9da16a1148..8f333cd10c7 100644 --- a/tests/components/airzone/test_coordinator.py +++ b/tests/components/airzone/test_coordinator.py @@ -2,7 +2,7 @@ from unittest.mock import patch -from aioairzone.exceptions import AirzoneError +from aioairzone.exceptions import AirzoneError, InvalidMethod, SystemOutOfRange from homeassistant.components.airzone.const import DOMAIN from homeassistant.components.airzone.coordinator import SCAN_INTERVAL @@ -24,7 +24,13 @@ async def test_coordinator_client_connector_error(hass: HomeAssistant) -> None: with patch( "homeassistant.components.airzone.AirzoneLocalApi.get_hvac", return_value=HVAC_MOCK, - ) as mock_hvac: + ) as mock_hvac, patch( + "homeassistant.components.airzone.AirzoneLocalApi.get_hvac_systems", + side_effect=SystemOutOfRange, + ), patch( + "homeassistant.components.airzone.AirzoneLocalApi.get_webserver", + side_effect=InvalidMethod, + ): await hass.config_entries.async_setup(entry.entry_id) await hass.async_block_till_done() mock_hvac.assert_called_once() diff --git a/tests/components/airzone/test_init.py b/tests/components/airzone/test_init.py index ce08a17ec6c..0fee80d581b 100644 --- a/tests/components/airzone/test_init.py +++ b/tests/components/airzone/test_init.py @@ -2,6 +2,8 @@ from unittest.mock import patch +from aioairzone.exceptions import InvalidMethod, SystemOutOfRange + from homeassistant.components.airzone.const import DOMAIN from homeassistant.config_entries import ConfigEntryState from homeassistant.core import HomeAssistant @@ -22,6 +24,12 @@ async def test_unload_entry(hass: HomeAssistant) -> None: with patch( "homeassistant.components.airzone.AirzoneLocalApi.get_hvac", return_value=HVAC_MOCK, + ), patch( + "homeassistant.components.airzone.AirzoneLocalApi.get_hvac_systems", + side_effect=SystemOutOfRange, + ), patch( + "homeassistant.components.airzone.AirzoneLocalApi.get_webserver", + side_effect=InvalidMethod, ): assert await hass.config_entries.async_setup(config_entry.entry_id) await hass.async_block_till_done() diff --git a/tests/components/airzone/util.py b/tests/components/airzone/util.py index c8c18d0ab24..fcc3be8a469 100644 --- a/tests/components/airzone/util.py +++ b/tests/components/airzone/util.py @@ -25,6 +25,7 @@ from aioairzone.const import ( API_UNITS, API_ZONE_ID, ) +from aioairzone.exceptions import InvalidMethod, SystemOutOfRange from homeassistant.components.airzone import DOMAIN from homeassistant.const import CONF_HOST, CONF_ID, CONF_PORT @@ -171,6 +172,12 @@ async def async_init_integration( with patch( "homeassistant.components.airzone.AirzoneLocalApi.get_hvac", return_value=HVAC_MOCK, + ), patch( + "homeassistant.components.airzone.AirzoneLocalApi.get_hvac_systems", + side_effect=SystemOutOfRange, + ), patch( + "homeassistant.components.airzone.AirzoneLocalApi.get_webserver", + side_effect=InvalidMethod, ): await hass.config_entries.async_setup(entry.entry_id) await hass.async_block_till_done()