From 41cfabd8ef174d4352b6da7dd22dfb474c8278ab Mon Sep 17 00:00:00 2001 From: Sean Dague Date: Tue, 15 Sep 2026 13:45:27 -0400 Subject: [PATCH] Bump waterfurnace to 1.9.7 (#182263) --- homeassistant/components/waterfurnace/coordinator.py | 2 +- homeassistant/components/waterfurnace/manifest.json | 2 +- requirements_all.txt | 2 +- tests/components/waterfurnace/conftest.py | 2 -- tests/components/waterfurnace/test_climate.py | 12 ++++++------ tests/components/waterfurnace/test_init.py | 2 +- tests/components/waterfurnace/test_sensor.py | 6 +++--- 7 files changed, 13 insertions(+), 15 deletions(-) diff --git a/homeassistant/components/waterfurnace/coordinator.py b/homeassistant/components/waterfurnace/coordinator.py index 0edf3abba8cc..5932b8d6ccf5 100644 --- a/homeassistant/components/waterfurnace/coordinator.py +++ b/homeassistant/components/waterfurnace/coordinator.py @@ -93,7 +93,7 @@ class WaterFurnaceCoordinator(DataUpdateCoordinator[WFReading]): async def _async_update_data(self) -> WFReading: """Fetch data from WaterFurnace API with built-in retry logic.""" try: - return await self.hass.async_add_executor_job(self.client.read_with_retry) + return await self.hass.async_add_executor_job(self.client.read) except WFException as err: raise UpdateFailed(str(err)) from err diff --git a/homeassistant/components/waterfurnace/manifest.json b/homeassistant/components/waterfurnace/manifest.json index 7125aac33dfd..ead5767eaa0a 100644 --- a/homeassistant/components/waterfurnace/manifest.json +++ b/homeassistant/components/waterfurnace/manifest.json @@ -9,5 +9,5 @@ "iot_class": "cloud_polling", "loggers": ["waterfurnace"], "quality_scale": "bronze", - "requirements": ["waterfurnace==1.9.2"] + "requirements": ["waterfurnace==1.9.7"] } diff --git a/requirements_all.txt b/requirements_all.txt index 7753ff737e8d..00b510e14ef4 100644 --- a/requirements_all.txt +++ b/requirements_all.txt @@ -3407,7 +3407,7 @@ wallbox==0.9.0 watchdog==6.0.0 # homeassistant.components.waterfurnace -waterfurnace==1.9.2 +waterfurnace==1.9.7 # homeassistant.components.watergate watergate-local-api==2026.2.2 diff --git a/tests/components/waterfurnace/conftest.py b/tests/components/waterfurnace/conftest.py index a174872082c1..ee9949846795 100644 --- a/tests/components/waterfurnace/conftest.py +++ b/tests/components/waterfurnace/conftest.py @@ -69,7 +69,6 @@ def mock_waterfurnace_client() -> Generator[Mock]: device_data = WFReading(load_json_object_fixture("device_data.json", DOMAIN)) client.read.return_value = device_data - client.read_with_retry.return_value = device_data client.get_energy_data.side_effect = WFNoDataError("No data") yield client @@ -108,7 +107,6 @@ def mock_waterfurnace_client_multi_device() -> Generator[Mock]: client.account_id = "test_account_id" client.devices = [WFGateway(gateway_data_1), WFGateway(gateway_data_2)] client.read.return_value = device_data - client.read_with_retry.return_value = device_data client.get_energy_data.side_effect = WFNoDataError("No data") instances.append(client) diff --git a/tests/components/waterfurnace/test_climate.py b/tests/components/waterfurnace/test_climate.py index c845e13ec590..4700a87c2723 100644 --- a/tests/components/waterfurnace/test_climate.py +++ b/tests/components/waterfurnace/test_climate.py @@ -67,7 +67,7 @@ async def test_hvac_mode_mapping( expected_hvac_mode: HVACMode, ) -> None: """Test that ActiveSettings.mode maps to the correct HVACMode.""" - mock_waterfurnace_client.read_with_retry.return_value.activesettings.activemode = ( + mock_waterfurnace_client.read.return_value.activesettings.activemode = ( active_mode_index ) @@ -117,7 +117,7 @@ async def test_hvac_action_mapping( expected_action: HVACAction, ) -> None: """Test that WFReading.mode maps to the correct HVACAction.""" - mock_waterfurnace_client.read_with_retry.return_value.modeofoperation = mode_index + mock_waterfurnace_client.read.return_value.modeofoperation = mode_index freezer.tick(UPDATE_INTERVAL) async_fire_time_changed(hass) await hass.async_block_till_done() @@ -182,7 +182,7 @@ async def test_set_temperature_single_cool( ) -> None: """Test setting temperature in cool mode sets cooling setpoint.""" # Switch to Cool mode - mock_waterfurnace_client.read_with_retry.return_value.activesettings.activemode = 2 + mock_waterfurnace_client.read.return_value.activesettings.activemode = 2 freezer.tick(UPDATE_INTERVAL) async_fire_time_changed(hass) await hass.async_block_till_done() @@ -208,7 +208,7 @@ async def test_set_temperature_range( ) -> None: """Test setting temperature range sets both setpoints.""" # Switch to Auto mode - mock_waterfurnace_client.read_with_retry.return_value.activesettings.activemode = 1 + mock_waterfurnace_client.read.return_value.activesettings.activemode = 1 freezer.tick(UPDATE_INTERVAL) async_fire_time_changed(hass) await hass.async_block_till_done() @@ -254,7 +254,7 @@ async def test_target_temperature_cool_mode( freezer: FrozenDateTimeFactory, ) -> None: """Test target_temperature returns cooling setpoint in cool mode.""" - mock_waterfurnace_client.read_with_retry.return_value.activesettings.activemode = 2 + mock_waterfurnace_client.read.return_value.activesettings.activemode = 2 freezer.tick(UPDATE_INTERVAL) async_fire_time_changed(hass) await hass.async_block_till_done() @@ -272,7 +272,7 @@ async def test_target_temperature_range_auto_mode( freezer: FrozenDateTimeFactory, ) -> None: """Test target_temperature_high/low in auto mode.""" - mock_waterfurnace_client.read_with_retry.return_value.activesettings.activemode = 1 + mock_waterfurnace_client.read.return_value.activesettings.activemode = 1 freezer.tick(UPDATE_INTERVAL) async_fire_time_changed(hass) await hass.async_block_till_done() diff --git a/tests/components/waterfurnace/test_init.py b/tests/components/waterfurnace/test_init.py index c7424c493358..2c00ee4dc721 100644 --- a/tests/components/waterfurnace/test_init.py +++ b/tests/components/waterfurnace/test_init.py @@ -148,7 +148,7 @@ async def test_setup_creates_energy_coordinator( assert mock_config_entry.state is ConfigEntryState.LOADED assert mock_waterfurnace_client.login.call_count == 2 - assert mock_waterfurnace_client.read_with_retry.call_count == 1 + assert mock_waterfurnace_client.read.call_count == 1 assert mock_waterfurnace_client.get_energy_data.call_count == 1 diff --git a/tests/components/waterfurnace/test_sensor.py b/tests/components/waterfurnace/test_sensor.py index 0d2248f07a3c..5a40e34dd9f9 100644 --- a/tests/components/waterfurnace/test_sensor.py +++ b/tests/components/waterfurnace/test_sensor.py @@ -44,7 +44,7 @@ async def test_sensor( assert state assert state.state == "1500" - mock_waterfurnace_client.read_with_retry.return_value.totalunitpower = 2000 + mock_waterfurnace_client.read.return_value.totalunitpower = 2000 freezer.tick(UPDATE_INTERVAL) async_fire_time_changed(hass) await hass.async_block_till_done() @@ -75,7 +75,7 @@ async def test_availability( assert state assert state.state == "1500" - mock_waterfurnace_client.read_with_retry.side_effect = side_effect + mock_waterfurnace_client.read.side_effect = side_effect freezer.tick(UPDATE_INTERVAL) async_fire_time_changed(hass) await hass.async_block_till_done() @@ -84,7 +84,7 @@ async def test_availability( assert state assert state.state == STATE_UNAVAILABLE - mock_waterfurnace_client.read_with_retry.side_effect = None + mock_waterfurnace_client.read.side_effect = None freezer.tick(UPDATE_INTERVAL) async_fire_time_changed(hass) await hass.async_block_till_done()