Commit Graph
35 Commits
Author SHA1 Message Date
Duco SebelandGitHub cad3be8213 Add new HomeWizard Energy Socket to tests (#113406) 2024-03-22 16:48:27 +01:00
J. Nick KostonandGitHub 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 SebelandGitHub 41fdcce226 Bumb python-homewizard-energy to 4.3.0 (#109131) 2024-01-31 01:50:00 +01:00
Duco SebelandGitHub 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 SebelandGitHub 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 SebelandGitHub 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
32eab2c7ed Remove duplicate sensors on single phase HomeWizard meters (#104493)
Co-authored-by: Duco Sebel <[email protected]>
2023-11-26 11:42:47 +01:00
Franck NijhofandGitHub bd27358398 Adjust HomeWizard test fixtures to match actual devices (#104537) 2023-11-26 11:09:14 +01:00
Franck NijhofandGitHub 8273427974 Complete tests for HomeWizard energy plug HWE-SKT (#104474) 2023-11-24 17:38:39 -06:00
d4458cbac4 Fix HomeWizard sensors unavailable when value is '0' (#104302)
Co-authored-by: Franck Nijhof <[email protected]>
2023-11-24 21:38:46 +01:00
Franck NijhofandGitHub b3ceb82700 Add device fixtures and tests for HomeWizard Energy 3-phase kWh meter (#104118) 2023-11-17 11:47:42 +01:00
Franck NijhofandGitHub bb63da764e Complete tests for HomeWizard kWh Meter SDM230 (#103840) 2023-11-12 14:30:00 +01:00
Franck NijhofandGitHub 5a452155fc Small cleanup in HomeWizard tests (#103837) 2023-11-12 11:38:22 +01:00
08b43c4477 Add device fixtures and tests for HomeWizard Energy Watersensor (#103383)
Co-authored-by: Duco Sebel <[email protected]>
2023-11-06 18:12:58 +01:00
Franck NijhofandGitHub 109944e4ff Replace/restructure HomeWizard device fixtures to reflect reality (#103311) 2023-11-04 13:37:08 +01:00
Duco SebelandGitHub 0f72495a7d Rename power to energy in HomeWizard (#102948) 2023-10-30 19:09:23 +01:00
487dcf227e Rewrite HomeWizard Energy tests (#103000)
Co-authored-by: Duco Sebel <[email protected]>
2023-10-30 14:07:42 +01:00
Joost LekkerkerkerandGitHub 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
epenetandGitHub 9404a107b2 Add type hints to integration tests (part 10) (#87985) 2023-02-13 10:25:26 +01:00
Duco SebelandGitHub 658db7ff05 Add sensors for smart and gas meter identifiers (serial numbers) in HomeWizard (#86282) 2023-01-20 13:42:01 +01:00
Duco SebelandGitHub 4be7b62607 Bumb python-homewizard-energy to 1.6.0 (#86255) 2023-01-19 21:33:58 -05:00
0f3221eac7 Add Enum device class for HomeWizard active tariff (#86078)
Co-authored-by: Franck Nijhof <[email protected]>
2023-01-17 14:46:08 +01:00
Duco SebelandGitHub ccd8bc14e0 Add sensors for new P1 datapoints in HomeWizard (#85198)
Co-authored-by: Franck Nijhof <[email protected]>
Co-authored-by: Franck Nijhof <[email protected]>
fixes undefined
2023-01-16 09:59:07 +01:00
MichaelandGitHub e35ab75c0b Replace the usage of unit constants by enumerations in Tests [h-l] (#85934) 2023-01-15 14:52:55 +01:00
Duco SebelandGitHub 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 NijhofandGitHub 5b32540a84 Set water device class to flo, homewizard, p1_monitor, toon (#80944) 2022-10-25 13:21:47 +02:00
epenetandGitHub 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
aa6f15b1e2 Use SensorDeviceClass.VOLUME in HomeWizard (#79323)
Co-authored-by: Paulus Schoutsen <[email protected]>
2022-09-29 21:51:18 -04:00
epenetandGitHub fe747601ff Cleanup DeviceClass and StateClass in tests (#78811) 2022-09-20 10:49:11 -04:00
Duco SebelandGitHub 5fdae0fc5b Migrate HomeWizard to new entity naming style (#74958) 2022-07-12 15:56:16 +02:00
124c8e8f73 Add sensors for HomeWizard Watermeter (#74756)
Co-authored-by: Franck Nijhof <[email protected]>
2022-07-09 18:39:30 +02:00
Duco SebelandGitHub 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 MontnemeryandGitHub 23ee8adf59 Fix flaky homewizard test (#65490) 2022-02-03 09:23:32 +01:00
Duco SebelandGitHub 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
8f6e24aa1e Add HomeWizard Energy integration (#55812)
Co-authored-by: Matthias Alphart <[email protected]>
Co-authored-by: Paulus Schoutsen <[email protected]>
2022-01-10 16:23:31 -08:00