Commit Graph

54 Commits (f3074dc218dc46b25da2206dfa2bb590b5ac8c58)

Author SHA1 Message Date
epenet 31c36beb2e
Move DhcpServiceInfo to service_info helpers (#135658)
* Move DhcpServiceInfo to service_info helpers

* Fix mypy/pylint
2025-01-15 13:09:18 +01:00
Matthias Alphart 9e1ba004d4
Add translated enum entity for Fronius error code (#133394) 2024-12-23 09:17:52 +01:00
Erik Montnemery ecb3bf79f3
Revert "Add support for subentries to config entries" (#133470)
Revert "Add support for subentries to config entries (#117355)"

This reverts commit ad15786115.
2024-12-18 13:51:05 +01:00
Matthias Alphart 6f278fb856
Remove custom "unknown" state from Fronius Enum sensor (#133361) 2024-12-16 14:13:19 +01:00
Matthias Alphart be6ed05aa2
Improve Fronius tests (#132872) 2024-12-15 19:40:51 +01:00
Matthias Alphart aa4b64386e
Don't update existing Fronius config entries from config flow (#132886) 2024-12-15 12:25:35 +01:00
Matthias Alphart 74aa1a8f7e
Update Fronius translations (#132876)
* Remove exception translation that's handled by configflow errors dict

* Remove entity name translations handled by device class

* Add data_description for Fronius config flow

* Remove unnecessary exception case

* review suggestion
2024-12-14 21:47:27 +01:00
Erik Montnemery ad15786115
Add support for subentries to config entries (#117355)
* Add support for subentries to config entries

* Improve error handling and test coverage

* Include subentry_id in subentry containers

* Auto-generate subentry_id and add optional unique_id

* Tweak

* Update tests

* Fix stale docstring

* Address review comments

* Typing tweaks

* Add methods to ConfigEntries to add and remove subentry

* Improve ConfigSubentryData typed dict

* Update test snapshots

* Adjust tests

* Fix unique_id logic

* Allow multiple subentries with None unique_id

* Add number of subentries to config entry JSON representation

* Add subentry translation support

* Allow integrations to implement multiple subentry flows

* Update translations schema

* Adjust exception text

* Change subentry flow init step to user

* Prevent creating a subentry with colliding unique_id

* Update tests

* Address review comments

* Remove duplicaetd unique_id collision check

* Remove change from the future

* Improve test coverage

* Add default value for unique_id
2024-12-12 20:16:18 +01:00
epenet 7c6b517672
Use reconfigure helpers in fronius config flow (#128001)
* Use reconfigure helpers in fronius

* Drop _async_abort_entries_match
2024-10-09 17:52:30 +02:00
epenet 9873371413
Use start_reconfigure_flow in config flow tests (#127191)
* Use start_reconfigure_flow in config flow tests

* Adjust fritz
2024-10-02 10:01:15 +02:00
Erik Montnemery d82bff1bc2
Index config entry discovery_keys by discovery domain (#126563)
* Index config entry discovery_keys by discovery domain

* Add new signal

* Update tests

* Update homeassistant/config_entries.py

Co-authored-by: J. Nick Koston <nick@koston.org>

* Fix imports

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2024-09-23 21:48:11 +02:00
Erik Montnemery b2982c18bb
Reinitialize zeroconf discovery flow on unignore (#125753)
* Reinitialize zeroconf discovery flow on unignore

* Adjust tests

* Improve comments

* Fix logic for updating discovery keys

* Add tests

* Use mock_config_flow helper in new config_entries test

* Add discovery_keys attribute to ConfigEntry

* Update zeroconf rediscovery

* Change type of ConfigEntry.discovery_keys

* Update tests

* Fix DiscoveryKey.from_json_dict and add tests

* Fix test

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2024-09-23 16:49:21 +02:00
epenet 24680b731f
Add missing hass type hint in component tests (f) (#124076) 2024-08-16 21:51:58 +02:00
Robert Resch ad50136dbd
Add created_at/modified_at to config entries (#122456) 2024-07-29 22:08:46 +02:00
Matthias Alphart 08fae5d419
Add reconfigure flow to Fronius (#116132) 2024-06-22 21:12:32 +02:00
Matthias Alphart 77edc149ec
Add distinct import / export entities to Fronius (#116535) 2024-06-22 11:12:21 +02:00
epenet 8871090463
Fix dangerous-default-value warnings in fronius tests (#119600) 2024-06-13 13:53:17 +02:00
Matthias Alphart 344bb568f4
Add diagnostics support for Fronius (#117845)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2024-05-25 14:01:24 +02:00
epenet a3942e019b
Use remove_device helper in tests (2/2) (#116442)
Use remove_device helper in tests (part 2)
2024-04-30 12:50:35 +02:00
Joost Lekkerkerker 906d3198e3
Use is in enum comparison in config flow tests F-J (#114670)
* Use right enum expression F-J

* Fix
2024-04-02 23:01:37 +02:00
Joost Lekkerkerker 6bb4e7d62c
Bump ruff to 0.3.4 (#112690)
Co-authored-by: Sid <27780930+autinerd@users.noreply.github.com>
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-03-26 00:02:16 +01:00
Sid fe9cc6705c
Add ruff rule PIE804 (#113620)
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-03-16 12:45:18 -10:00
Marc Mueller aa16a9d707
Add empty line after module docstring (3) (#112750) 2024-03-08 20:38:34 +01:00
Marc Mueller c88b337600
Add empty line after module docstring [tests f-k] (#112709) 2024-03-08 14:50:04 +01:00
J. Nick Koston c20d2d44ed
Fix formatting of mac addresses from dhcp discovery mocking in fronius (#110572)
Co-authored-by: Matthias Alphart <farmio@alphart.net>
2024-02-14 16:18:19 -06:00
Matthias Alphart 46d63ad7ba
Allow Fronius devices to be deleted (#106141) 2023-12-21 10:02:38 +01:00
Ville Skyttä 24b1e01d71
Update Ruff to 0.1.8, avoid linter/formatter conflicts (#106080)
* Disable Ruff rules that may conflict with the formatter

* Upgrade Ruff to 0.1.8

- https://github.com/astral-sh/ruff/releases/tag/v0.1.7
- https://github.com/astral-sh/ruff/releases/tag/v0.1.8

* Format with Ruff 0.1.8
2023-12-20 23:55:09 +01:00
Matthias Alphart 5550dcbec8
Add textual representation entities for Fronius status codes (#94155)
* optionally decouple `EntityDescription.key` from API response key

this makes it possible to have multiple entities for a single API response field

* Add optional `value_fn` to EntityDescriptions

eg. to be able to map a API response value to a different value (status_code -> message)

* Add inverter `status_message` entity

* Add meter `meter_location_description` entity

* add external battery state

* Make Ohmpilot entity state translateable

* use built-in StrEnum

* test coverage

* remove unnecessary checks

None is handled before
2023-11-27 13:59:25 +01:00
Jan-Philipp Benecke 04a497343d
Update f-g* tests to use entity & device registry fixtures (#103841) 2023-11-12 13:07:38 +01:00
Matthias Alphart fb13d9ce7c
Set Fronius entities to "unknown" when receiving invalid zero value (#102270) 2023-10-25 06:27:46 +02:00
Erik Montnemery d74a0fd6dd
Use freezegun in additional fronius tests (#99066) 2023-08-26 09:11:42 +02:00
Erik Montnemery 0d3663c52a
Use freezegun in fronius tests (#99030) 2023-08-25 09:05:16 -05:00
Björn e29b6408f6
Periodically re-scan for Fronius inverters that were offline while setup (#96538) 2023-07-17 10:16:28 +02:00
Ville Skyttä 70c49824d7
Import `util.dt` as `dt_util` in `components/[e-f]*` (#93758) 2023-05-30 00:00:11 +03:00
Matthias Alphart edaee89e34
Use entity name translations in Fronius (#90463) 2023-04-03 20:05:52 +02:00
Matthias Alphart 3dd3cb195f
Set default value for some Fronius entities (#89475) 2023-03-28 08:23:53 +02:00
epenet 7a4d15a657
Add type hints to integration tests (f-g) (#87700) 2023-02-08 13:33:52 +01:00
Franck Nijhof 5e81d28116
Update black to 23.1.0 (#87188) 2023-02-02 18:35:24 +01:00
Matthias Alphart 75abf87611
Migrate Fronius to new entity naming style (#74974) 2022-07-11 09:16:29 -07:00
Franck Nijhof a6244eea28
Search/replace RESULT_TYPE_* by FlowResultType enum (#74656) 2022-07-07 21:28:18 +02:00
Franck Nijhof e69450f7ca
Remove deprecated YAML configuration from Fronius (#69032) 2022-03-31 22:38:54 +02:00
epenet 053c4428a9
Prettify json (component test fixtures) (#68892) 2022-03-30 11:37:17 +02:00
Matthias Alphart 1cbcb9e2fd
Don't add Fronius entities with unknown state (#62282) 2021-12-19 11:49:21 +01:00
Matthias Alphart 37bed64607
Silently retry Fronius inverter endpoint 2 times (#61826) 2021-12-19 11:37:14 +01:00
Ville Skyttä 5bf67cac66
Use RegistryEntryDisabler (#60436) 2021-12-15 23:25:40 +02:00
Matthias Alphart 4f9d4872a7
Fix unique_id of S0 meters connected to Fronius inverters (#61408) 2021-12-09 15:35:20 -08:00
Matthias Alphart ac263acb1c
Don't use ConfigEntry update listener for Fronius (#61017)
* disable `async_setup_entry` in config_flow tests

* don't use config_entry update listener

* add `Final` to constants

* assert that an updated entry causes a reload (unload)
2021-12-05 23:29:39 +01:00
Matthias Alphart 77cd751543
DHCP discovery for Fronius integration (#60806)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-12-03 18:29:15 +01:00
Matthias Alphart f2f6602890
Add support for Ohmpilots to Fronius integration (#60765)
* add support for Fronius Ohmpilot

* disable the debugger
2021-12-02 11:05:22 +01:00
Matthias Alphart 823c37f4c7
100% test coverage for Fronius integration (#60515)
* support for multiple fixture sets

* add test data from Fronius Gen24 device

* test Gen24 with Storage

* test Gen24 inverter without storage

* 100% coverage

* copy&paste fail
2021-11-29 09:15:10 +01:00