diff --git a/homeassistant/components/daikin/__init__.py b/homeassistant/components/daikin/__init__.py index 807b101dda5..1bd833f354d 100644 --- a/homeassistant/components/daikin/__init__.py +++ b/homeassistant/components/daikin/__init__.py @@ -9,6 +9,7 @@ from typing import Any from aiohttp import ClientConnectionError from pydaikin.daikin_base import Appliance +from pydaikin.factory import DaikinFactory from homeassistant.config_entries import ConfigEntry from homeassistant.const import ( @@ -84,7 +85,7 @@ async def daikin_api_setup( session = async_get_clientsession(hass) try: async with asyncio.timeout(TIMEOUT): - device = await Appliance.factory( + device: Appliance = await DaikinFactory( host, session, key=key, uuid=uuid, password=password ) _LOGGER.debug("Connection to %s successful", host) diff --git a/homeassistant/components/daikin/config_flow.py b/homeassistant/components/daikin/config_flow.py index f8c0181d93b..5956d31c5fb 100644 --- a/homeassistant/components/daikin/config_flow.py +++ b/homeassistant/components/daikin/config_flow.py @@ -8,8 +8,10 @@ from typing import Any from uuid import uuid4 from aiohttp import ClientError, web_exceptions -from pydaikin.daikin_base import Appliance, DaikinException +from pydaikin.daikin_base import Appliance from pydaikin.discovery import Discovery +from pydaikin.exceptions import DaikinException +from pydaikin.factory import DaikinFactory import voluptuous as vol from homeassistant.components import zeroconf @@ -82,7 +84,7 @@ class FlowHandler(ConfigFlow, domain=DOMAIN): try: async with asyncio.timeout(TIMEOUT): - device = await Appliance.factory( + device: Appliance = await DaikinFactory( host, async_get_clientsession(self.hass), key=key, diff --git a/homeassistant/components/daikin/manifest.json b/homeassistant/components/daikin/manifest.json index 0b97ff6b902..827deb27add 100644 --- a/homeassistant/components/daikin/manifest.json +++ b/homeassistant/components/daikin/manifest.json @@ -6,6 +6,6 @@ "documentation": "https://www.home-assistant.io/integrations/daikin", "iot_class": "local_polling", "loggers": ["pydaikin"], - "requirements": ["pydaikin==2.11.1"], + "requirements": ["pydaikin==2.13.1"], "zeroconf": ["_dkapi._tcp.local."] } diff --git a/requirements_all.txt b/requirements_all.txt index 582e86fe2f3..392944046d3 100644 --- a/requirements_all.txt +++ b/requirements_all.txt @@ -1777,7 +1777,7 @@ pycsspeechtts==1.0.8 # pycups==1.9.73 # homeassistant.components.daikin -pydaikin==2.11.1 +pydaikin==2.13.1 # homeassistant.components.danfoss_air pydanfossair==0.1.0 diff --git a/requirements_test_all.txt b/requirements_test_all.txt index a8cec09a8a2..2e00a2aabe2 100644 --- a/requirements_test_all.txt +++ b/requirements_test_all.txt @@ -1406,7 +1406,7 @@ pycoolmasternet-async==0.1.5 pycsspeechtts==1.0.8 # homeassistant.components.daikin -pydaikin==2.11.1 +pydaikin==2.13.1 # homeassistant.components.deconz pydeconz==116 diff --git a/tests/components/daikin/test_config_flow.py b/tests/components/daikin/test_config_flow.py index 6d957384d4d..5c432e111dd 100644 --- a/tests/components/daikin/test_config_flow.py +++ b/tests/components/daikin/test_config_flow.py @@ -28,9 +28,11 @@ def mock_daikin(): """Mock the init function in pydaikin.""" return Appliance - with patch("homeassistant.components.daikin.config_flow.Appliance") as Appliance: + with patch( + "homeassistant.components.daikin.config_flow.DaikinFactory" + ) as Appliance: type(Appliance).mac = PropertyMock(return_value="AABBCCDDEEFF") - Appliance.factory.side_effect = mock_daikin_factory + Appliance.side_effect = mock_daikin_factory yield Appliance @@ -90,7 +92,7 @@ async def test_abort_if_already_setup(hass: HomeAssistant, mock_daikin) -> None: ) async def test_device_abort(hass: HomeAssistant, mock_daikin, s_effect, reason) -> None: """Test device abort.""" - mock_daikin.factory.side_effect = s_effect + mock_daikin.side_effect = s_effect result = await hass.config_entries.flow.async_init( "daikin", diff --git a/tests/components/daikin/test_init.py b/tests/components/daikin/test_init.py index d7d754dacd2..b3d18467d33 100644 --- a/tests/components/daikin/test_init.py +++ b/tests/components/daikin/test_init.py @@ -27,8 +27,8 @@ def mock_daikin(): """Mock the init function in pydaikin.""" return Appliance - with patch("homeassistant.components.daikin.Appliance") as Appliance: - Appliance.factory.side_effect = mock_daikin_factory + with patch("homeassistant.components.daikin.DaikinFactory") as Appliance: + Appliance.side_effect = mock_daikin_factory type(Appliance).update_status = AsyncMock() type(Appliance).device_ip = PropertyMock(return_value=HOST) type(Appliance).inside_temperature = PropertyMock(return_value=22) @@ -208,7 +208,7 @@ async def test_client_connection_error(hass: HomeAssistant, mock_daikin) -> None ) config_entry.add_to_hass(hass) - mock_daikin.factory.side_effect = ClientConnectionError + mock_daikin.side_effect = ClientConnectionError await hass.config_entries.async_setup(config_entry.entry_id) await hass.async_block_till_done() @@ -224,7 +224,7 @@ async def test_timeout_error(hass: HomeAssistant, mock_daikin) -> None: ) config_entry.add_to_hass(hass) - mock_daikin.factory.side_effect = TimeoutError + mock_daikin.side_effect = TimeoutError await hass.config_entries.async_setup(config_entry.entry_id) await hass.async_block_till_done()