Commit Graph

36 Commits (93cf8c1311f25f7b782772ceda0eb40720568cbd)

Author SHA1 Message Date
Duco Sebel 22cc7d34d5
Fix unique_id not being unique in HomeWizard (#117940) 2024-05-27 11:23:10 +02:00
Duco Sebel cad3be8213
Add new HomeWizard Energy Socket to tests (#113406) 2024-03-22 16:48:27 +01:00
J. Nick Koston a6b17dbe68
Schedule polling as periodic tasks (#112640)
* Schedule periodic coordinator updates as background tasks.

Currently, the coordinator's periodic refreshes delay startup because they are not scheduled as background tasks. We will wait if the startup takes long enough for the first planned refresh. Another coordinator's scheduled refresh will be fired on busy systems, further delaying the startup. This chain of events results in the startup taking a long time and hitting the safety timeout because too many coordinators are refreshing.

This case can also happen with scheduled entity refreshes, but it's less common. A future PR will address that case.

* periodic_tasks

* periodic_tasks

* periodic_tasks

* merge

* merge

* merge

* merge

* merge

* fix test that call the sync api from async

* one more place

* cannot chain

* async_run_periodic_hass_job

* sun and pattern time changes from automations also block startup

* Revert "sun and pattern time changes from automations also block startup"

This reverts commit 6de2defa05.

* make sure polling is cancelled when config entry is unloaded

* Revert "Revert "sun and pattern time changes from automations also block startup""

This reverts commit e8f12aad55.

* remove DisabledError from homewizard test as it relies on a race

* fix race

* direct coverage
2024-03-07 23:32:26 -05:00
Duco Sebel 41fdcce226
Bumb python-homewizard-energy to 4.3.0 (#109131) 2024-01-31 01:50:00 +01:00
Duco Sebel d631cad07f
Add new sensors exposed by HomeWizard kWh meter (#108850)
* Add new sensors exposed by kWh meter

* Add entity translation placeholders

* Fix Mypy issue

* Adjusts tests

* Remove suggested display precision for disabled-by-default sensors

* Update test-snapshots

* Update snapshots
2024-01-29 14:42:16 +01:00
Duco Sebel dbc568cd53
Simplify HomeWizard sensor names (#108854)
* Simplify HomeWizard sensor names

* Simplify translations even more by using default device_class names
2024-01-29 13:24:00 +01:00
Duco Sebel 0c9a30ab69
Add support for externally connected utility devices in HomeWizard (#100684)
* Backport code from #86386

* Add tests

* Remove local dev change

* Implement device class validation based on unit

* Swap sensor and externalsensor classes (based on importance)

* Use translations for external sensor entities

* Re-add meter identifier as sensor for external devices

* Add migration for Gas identifier

* Rename HomeWizardExternalIdentifierSensorEntity class

* Fix all existing tests

* Reimplement tests for extenal devices with smapshots

* Remove non-used 'None' type in unit

* Add migration test

* Clean up parameterize

* Add test to fix last coverage issue

* Fix non-frozen mypy issue

* Set device name via added EntityDescription field

* Remove device key translations for external sensors,

* Bring back translation keys

* Set device unique_id as serial number

* Remove meter identifier sensor

* Simplify external device initialization

* Adjust tests

* Remove unused gas_meter_id migration

* Remove external_devices redaction

* Remove old gas meter id sensor after migration
2024-01-25 12:51:50 +01:00
Franck Nijhof 32eab2c7ed
Remove duplicate sensors on single phase HomeWizard meters (#104493)
Co-authored-by: Duco Sebel <74970928+DCSBL@users.noreply.github.com>
2023-11-26 11:42:47 +01:00
Franck Nijhof bd27358398
Adjust HomeWizard test fixtures to match actual devices (#104537) 2023-11-26 11:09:14 +01:00
Franck Nijhof 8273427974
Complete tests for HomeWizard energy plug HWE-SKT (#104474) 2023-11-24 17:38:39 -06:00
Duco Sebel d4458cbac4
Fix HomeWizard sensors unavailable when value is '0' (#104302)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-11-24 21:38:46 +01:00
Franck Nijhof b3ceb82700
Add device fixtures and tests for HomeWizard Energy 3-phase kWh meter (#104118) 2023-11-17 11:47:42 +01:00
Franck Nijhof bb63da764e
Complete tests for HomeWizard kWh Meter SDM230 (#103840) 2023-11-12 14:30:00 +01:00
Franck Nijhof 5a452155fc
Small cleanup in HomeWizard tests (#103837) 2023-11-12 11:38:22 +01:00
Franck Nijhof 08b43c4477
Add device fixtures and tests for HomeWizard Energy Watersensor (#103383)
Co-authored-by: Duco Sebel <74970928+DCSBL@users.noreply.github.com>
2023-11-06 18:12:58 +01:00
Franck Nijhof 109944e4ff
Replace/restructure HomeWizard device fixtures to reflect reality (#103311) 2023-11-04 13:37:08 +01:00
Duco Sebel 0f72495a7d
Rename power to energy in HomeWizard (#102948) 2023-10-30 19:09:23 +01:00
Franck Nijhof 487dcf227e
Rewrite HomeWizard Energy tests (#103000)
Co-authored-by: Duco Sebel <74970928+DCSBL@users.noreply.github.com>
2023-10-30 14:07:42 +01:00
Joost Lekkerkerker e9495c9cc6
Add entity translations for homewizard (#95416)
* Add entity translations for homewizard

* Add entity translations for homewizard

* Add entity translations for homewizard

* Fix tests
2023-06-28 14:02:54 +02:00
epenet 9404a107b2
Add type hints to integration tests (part 10) (#87985) 2023-02-13 10:25:26 +01:00
Duco Sebel 658db7ff05
Add sensors for smart and gas meter identifiers (serial numbers) in HomeWizard (#86282) 2023-01-20 13:42:01 +01:00
Duco Sebel 4be7b62607
Bumb python-homewizard-energy to 1.6.0 (#86255) 2023-01-19 21:33:58 -05:00
Duco Sebel 0f3221eac7
Add Enum device class for HomeWizard active tariff (#86078)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-01-17 14:46:08 +01:00
Duco Sebel ccd8bc14e0
Add sensors for new P1 datapoints in HomeWizard (#85198)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Franck Nijhof <git@frenck.dev>
fixes undefined
2023-01-16 09:59:07 +01:00
Michael e35ab75c0b
Replace the usage of unit constants by enumerations in Tests [h-l] (#85934) 2023-01-15 14:52:55 +01:00
Duco Sebel b41d0be952
Improve HomeWizard request issue reporting (#82366)
* Trigger reauth flow when HomeWizard API was disabled

* Add tests for reauth flow

* Fix typo in test

* Add parallel updates constant

* Improve error message when device in unreachable during config

* Set quality scale

* Remove quality scale

* Throw error instead of abort when setup fails

* Adjust test for new setup behaviour

* Trigger reauth flow when API is disabled and continue retrying

* Reload entry and raise AuthFailed during init

* Abort running config flow

* Listen for coordinator updates to trigger reload

* Use build-in backoff system

* Fix failing test

* Test reauth flow is active after disable-api init

* Test reauth flow removal
2022-12-16 10:53:54 -05:00
Franck Nijhof 5b32540a84
Set water device class to flo, homewizard, p1_monitor, toon (#80944) 2022-10-25 13:21:47 +02:00
epenet fb7079c62c
Adjust icons with new device classes (#79348)
* Adjust icons with new device classes

* Fix mysensors tests

* Fix mysensors tests
2022-09-30 10:41:18 +02:00
Duco Sebel aa6f15b1e2
Use SensorDeviceClass.VOLUME in HomeWizard (#79323)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-09-29 21:51:18 -04:00
epenet fe747601ff
Cleanup DeviceClass and StateClass in tests (#78811) 2022-09-20 10:49:11 -04:00
Duco Sebel 5fdae0fc5b
Migrate HomeWizard to new entity naming style (#74958) 2022-07-12 15:56:16 +02:00
Duco Sebel 124c8e8f73
Add sensors for HomeWizard Watermeter (#74756)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-07-09 18:39:30 +02:00
Duco Sebel 88c49f034a
Use 'python-homewizard-energy' dependency for HomeWizard (#71781)
* Update requirement

* Remove aiohwenergy and use python-homewizard-energy

* Update test to work with python-homewizard-energy

* Bumb python-homewizard-energy to 1.0.3
2022-05-25 09:05:11 +02:00
Erik Montnemery 23ee8adf59
Fix flaky homewizard test (#65490) 2022-02-03 09:23:32 +01:00
Duco Sebel 19c65abaa6
Fix initial HomeWizard integration issues (#63921)
* Use helper for setup and unload

* Set mutable object in __init__

* Move logic out of try..except

* Print stack trace on error in config flow

* Don't catch broad except in update_coordinator, already handled

* Fix typo

* Combine available with super.available()

* Fix issues with config_flow test

* Test coordiantor indirectly

* Test coordinator by moving time forward

* set utcnow beforehand and increase timedelta

* Roll back f658749

* Rolled back the rollback and fixed timing

* Move setting time after adding to hass
2022-01-14 19:28:24 +01:00
Duco Sebel 8f6e24aa1e
Add HomeWizard Energy integration (#55812)
Co-authored-by: Matthias Alphart <farmio@alphart.net>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-01-10 16:23:31 -08:00