From 8f4979ea17b3eda9abf9eb21b73e3532a4b5dff4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20L=C3=B6vdahl?= Date: Mon, 18 Apr 2022 22:33:40 +0300 Subject: [PATCH] Reduce state updates for OctoPrint (#70146) --- homeassistant/components/octoprint/sensor.py | 8 ++++++-- tests/components/octoprint/test_sensor.py | 2 +- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/homeassistant/components/octoprint/sensor.py b/homeassistant/components/octoprint/sensor.py index 4efc094c297..ad493022dfc 100644 --- a/homeassistant/components/octoprint/sensor.py +++ b/homeassistant/components/octoprint/sensor.py @@ -187,7 +187,9 @@ class OctoPrintEstimatedFinishTimeSensor(OctoPrintSensorBase): read_time = self.coordinator.data["last_read_time"] - return read_time + timedelta(seconds=job.progress.print_time_left) + return (read_time + timedelta(seconds=job.progress.print_time_left)).replace( + second=0 + ) class OctoPrintStartTimeSensor(OctoPrintSensorBase): @@ -215,7 +217,9 @@ class OctoPrintStartTimeSensor(OctoPrintSensorBase): read_time = self.coordinator.data["last_read_time"] - return read_time - timedelta(seconds=job.progress.print_time) + return (read_time - timedelta(seconds=job.progress.print_time)).replace( + second=0 + ) class OctoPrintTemperatureSensor(OctoPrintSensorBase): diff --git a/tests/components/octoprint/test_sensor.py b/tests/components/octoprint/test_sensor.py index 5f8a0edd373..873cd80e842 100644 --- a/tests/components/octoprint/test_sensor.py +++ b/tests/components/octoprint/test_sensor.py @@ -23,7 +23,7 @@ async def test_sensors(hass): } with patch( "homeassistant.util.dt.utcnow", - return_value=datetime(2020, 2, 20, 9, 10, 0, tzinfo=timezone.utc), + return_value=datetime(2020, 2, 20, 9, 10, 13, 543, tzinfo=timezone.utc), ): await init_integration(hass, "sensor", printer=printer, job=job)