Bump plugwise to v1.4.4 (#129170)

This commit is contained in:
Bouwe Westerdijk 2024-10-25 23:55:28 +02:00 committed by GitHub
parent 24c22ebdc7
commit 9f6569d658
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
6 changed files with 22 additions and 20 deletions

View file

@ -33,7 +33,7 @@ async def async_setup_entry(hass: HomeAssistant, entry: PlugwiseConfigEntry) ->
model=coordinator.api.smile_model, model=coordinator.api.smile_model,
model_id=coordinator.api.smile_model_id, model_id=coordinator.api.smile_model_id,
name=coordinator.api.smile_name, name=coordinator.api.smile_name,
sw_version=coordinator.api.smile_version[0], sw_version=str(coordinator.api.smile_version),
) # required for adding the entity-less P1 Gateway ) # required for adding the entity-less P1 Gateway
await hass.config_entries.async_forward_entry_setups(entry, PLATFORMS) await hass.config_entries.async_forward_entry_setups(entry, PLATFORMS)

View file

@ -2,6 +2,7 @@
from datetime import timedelta from datetime import timedelta
from packaging.version import Version
from plugwise import PlugwiseData, Smile from plugwise import PlugwiseData, Smile
from plugwise.exceptions import ( from plugwise.exceptions import (
ConnectionFailedError, ConnectionFailedError,
@ -61,8 +62,10 @@ class PlugwiseDataUpdateCoordinator(DataUpdateCoordinator[PlugwiseData]):
async def _connect(self) -> None: async def _connect(self) -> None:
"""Connect to the Plugwise Smile.""" """Connect to the Plugwise Smile."""
self._connected = await self.api.connect() version = await self.api.connect()
self.api.get_all_devices() self._connected = isinstance(version, Version)
if self._connected:
self.api.get_all_devices()
async def _async_update_data(self) -> PlugwiseData: async def _async_update_data(self) -> PlugwiseData:
"""Fetch data from Plugwise.""" """Fetch data from Plugwise."""

View file

@ -7,6 +7,6 @@
"integration_type": "hub", "integration_type": "hub",
"iot_class": "local_polling", "iot_class": "local_polling",
"loggers": ["plugwise"], "loggers": ["plugwise"],
"requirements": ["plugwise==1.4.3"], "requirements": ["plugwise==1.4.4"],
"zeroconf": ["_plugwise._tcp.local."] "zeroconf": ["_plugwise._tcp.local."]
} }

View file

@ -1616,7 +1616,7 @@ plexauth==0.0.6
plexwebsocket==0.0.14 plexwebsocket==0.0.14
# homeassistant.components.plugwise # homeassistant.components.plugwise
plugwise==1.4.3 plugwise==1.4.4
# homeassistant.components.plum_lightpad # homeassistant.components.plum_lightpad
plumlightpad==0.0.11 plumlightpad==0.0.11

View file

@ -1323,7 +1323,7 @@ plexauth==0.0.6
plexwebsocket==0.0.14 plexwebsocket==0.0.14
# homeassistant.components.plugwise # homeassistant.components.plugwise
plugwise==1.4.3 plugwise==1.4.4
# homeassistant.components.plum_lightpad # homeassistant.components.plum_lightpad
plumlightpad==0.0.11 plumlightpad==0.0.11

View file

@ -7,6 +7,7 @@ import json
from typing import Any from typing import Any
from unittest.mock import AsyncMock, MagicMock, patch from unittest.mock import AsyncMock, MagicMock, patch
from packaging.version import Version
from plugwise import PlugwiseData from plugwise import PlugwiseData
import pytest import pytest
@ -67,7 +68,7 @@ def mock_smile_config_flow() -> Generator[MagicMock]:
smile.smile_model = "Test Model" smile.smile_model = "Test Model"
smile.smile_model_id = "Test Model ID" smile.smile_model_id = "Test Model ID"
smile.smile_name = "Test Smile Name" smile.smile_name = "Test Smile Name"
smile.connect.return_value = True smile.connect.return_value = Version("4.3.2")
yield smile yield smile
@ -89,7 +90,7 @@ def mock_smile_adam() -> Generator[MagicMock]:
smile.smile_model = "Gateway" smile.smile_model = "Gateway"
smile.smile_model_id = "smile_open_therm" smile.smile_model_id = "smile_open_therm"
smile.smile_name = "Adam" smile.smile_name = "Adam"
smile.connect.return_value = True smile.connect.return_value = Version("3.0.15")
all_data = _read_json(chosen_env, "all_data") all_data = _read_json(chosen_env, "all_data")
smile.async_update.return_value = PlugwiseData( smile.async_update.return_value = PlugwiseData(
all_data["gateway"], all_data["devices"] all_data["gateway"], all_data["devices"]
@ -116,7 +117,7 @@ def mock_smile_adam_2() -> Generator[MagicMock]:
smile.smile_model = "Gateway" smile.smile_model = "Gateway"
smile.smile_model_id = "smile_open_therm" smile.smile_model_id = "smile_open_therm"
smile.smile_name = "Adam" smile.smile_name = "Adam"
smile.connect.return_value = True smile.connect.return_value = Version("3.6.4")
all_data = _read_json(chosen_env, "all_data") all_data = _read_json(chosen_env, "all_data")
smile.async_update.return_value = PlugwiseData( smile.async_update.return_value = PlugwiseData(
all_data["gateway"], all_data["devices"] all_data["gateway"], all_data["devices"]
@ -143,7 +144,7 @@ def mock_smile_adam_3() -> Generator[MagicMock]:
smile.smile_model = "Gateway" smile.smile_model = "Gateway"
smile.smile_model_id = "smile_open_therm" smile.smile_model_id = "smile_open_therm"
smile.smile_name = "Adam" smile.smile_name = "Adam"
smile.connect.return_value = True smile.connect.return_value = Version("3.6.4")
all_data = _read_json(chosen_env, "all_data") all_data = _read_json(chosen_env, "all_data")
smile.async_update.return_value = PlugwiseData( smile.async_update.return_value = PlugwiseData(
all_data["gateway"], all_data["devices"] all_data["gateway"], all_data["devices"]
@ -170,7 +171,7 @@ def mock_smile_adam_4() -> Generator[MagicMock]:
smile.smile_model = "Gateway" smile.smile_model = "Gateway"
smile.smile_model_id = "smile_open_therm" smile.smile_model_id = "smile_open_therm"
smile.smile_name = "Adam" smile.smile_name = "Adam"
smile.connect.return_value = True smile.connect.return_value = Version("3.2.8")
all_data = _read_json(chosen_env, "all_data") all_data = _read_json(chosen_env, "all_data")
smile.async_update.return_value = PlugwiseData( smile.async_update.return_value = PlugwiseData(
all_data["gateway"], all_data["devices"] all_data["gateway"], all_data["devices"]
@ -196,7 +197,7 @@ def mock_smile_anna() -> Generator[MagicMock]:
smile.smile_model = "Gateway" smile.smile_model = "Gateway"
smile.smile_model_id = "smile_thermo" smile.smile_model_id = "smile_thermo"
smile.smile_name = "Smile Anna" smile.smile_name = "Smile Anna"
smile.connect.return_value = True smile.connect.return_value = Version("4.0.15")
all_data = _read_json(chosen_env, "all_data") all_data = _read_json(chosen_env, "all_data")
smile.async_update.return_value = PlugwiseData( smile.async_update.return_value = PlugwiseData(
all_data["gateway"], all_data["devices"] all_data["gateway"], all_data["devices"]
@ -222,7 +223,7 @@ def mock_smile_anna_2() -> Generator[MagicMock]:
smile.smile_model = "Gateway" smile.smile_model = "Gateway"
smile.smile_model_id = "smile_thermo" smile.smile_model_id = "smile_thermo"
smile.smile_name = "Smile Anna" smile.smile_name = "Smile Anna"
smile.connect.return_value = True smile.connect.return_value = Version("4.0.15")
all_data = _read_json(chosen_env, "all_data") all_data = _read_json(chosen_env, "all_data")
smile.async_update.return_value = PlugwiseData( smile.async_update.return_value = PlugwiseData(
all_data["gateway"], all_data["devices"] all_data["gateway"], all_data["devices"]
@ -248,7 +249,7 @@ def mock_smile_anna_3() -> Generator[MagicMock]:
smile.smile_model = "Gateway" smile.smile_model = "Gateway"
smile.smile_model_id = "smile_thermo" smile.smile_model_id = "smile_thermo"
smile.smile_name = "Smile Anna" smile.smile_name = "Smile Anna"
smile.connect.return_value = True smile.connect.return_value = Version("4.0.15")
all_data = _read_json(chosen_env, "all_data") all_data = _read_json(chosen_env, "all_data")
smile.async_update.return_value = PlugwiseData( smile.async_update.return_value = PlugwiseData(
all_data["gateway"], all_data["devices"] all_data["gateway"], all_data["devices"]
@ -274,7 +275,7 @@ def mock_smile_p1() -> Generator[MagicMock]:
smile.smile_model = "Gateway" smile.smile_model = "Gateway"
smile.smile_model_id = "smile" smile.smile_model_id = "smile"
smile.smile_name = "Smile P1" smile.smile_name = "Smile P1"
smile.connect.return_value = True smile.connect.return_value = Version("4.4.2")
all_data = _read_json(chosen_env, "all_data") all_data = _read_json(chosen_env, "all_data")
smile.async_update.return_value = PlugwiseData( smile.async_update.return_value = PlugwiseData(
all_data["gateway"], all_data["devices"] all_data["gateway"], all_data["devices"]
@ -300,7 +301,7 @@ def mock_smile_p1_2() -> Generator[MagicMock]:
smile.smile_model = "Gateway" smile.smile_model = "Gateway"
smile.smile_model_id = "smile" smile.smile_model_id = "smile"
smile.smile_name = "Smile P1" smile.smile_name = "Smile P1"
smile.connect.return_value = True smile.connect.return_value = Version("4.4.2")
all_data = _read_json(chosen_env, "all_data") all_data = _read_json(chosen_env, "all_data")
smile.async_update.return_value = PlugwiseData( smile.async_update.return_value = PlugwiseData(
all_data["gateway"], all_data["devices"] all_data["gateway"], all_data["devices"]
@ -326,9 +327,7 @@ def mock_smile_legacy_anna() -> Generator[MagicMock]:
smile.smile_model = "Gateway" smile.smile_model = "Gateway"
smile.smile_model_id = None smile.smile_model_id = None
smile.smile_name = "Smile Anna" smile.smile_name = "Smile Anna"
smile.connect.return_value = Version("1.8.22")
smile.connect.return_value = True
all_data = _read_json(chosen_env, "all_data") all_data = _read_json(chosen_env, "all_data")
smile.async_update.return_value = PlugwiseData( smile.async_update.return_value = PlugwiseData(
all_data["gateway"], all_data["devices"] all_data["gateway"], all_data["devices"]
@ -354,7 +353,7 @@ def mock_stretch() -> Generator[MagicMock]:
smile.smile_model = "Gateway" smile.smile_model = "Gateway"
smile.smile_model_id = None smile.smile_model_id = None
smile.smile_name = "Stretch" smile.smile_name = "Stretch"
smile.connect.return_value = True smile.connect.return_value = Version("3.1.11")
all_data = _read_json(chosen_env, "all_data") all_data = _read_json(chosen_env, "all_data")
smile.async_update.return_value = PlugwiseData( smile.async_update.return_value = PlugwiseData(
all_data["gateway"], all_data["devices"] all_data["gateway"], all_data["devices"]