46 Commits

Author SHA1 Message Date
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
2c8f038c39
Add missing translation string to philips_js (#130637) 2024-11-14 19:40:38 +01:00
epenet
f41494b7cc
Ensure config_flow abort reasons have translations (#128140)
* Ensure config_flow abort reasons have translations

* Ignore fake_integration in application_credentials

* Mark gardena_bluetooth as needs fixing

* Mark google as needs fixing

* Mark google_assistant_sdk as needs fixing

* Mark homewizard as needs fixing

* Mark homeworks as needs fixing

* Mark honeywell as needs fixing

* Mark jewish_calendar as needs fixing

* Mark lg_netcast as needs fixing

* Mark lifx as needs fixing

* Mark lyric as needs fixing

* Mark madvr as needs fixing

* Mark matter as needs fixing

* Mark melcloud as needs fixing

* Mark motioneye as needs fixing

* Mark ollama as needs fixing

* Mark philips_js as needs fixing

* Mark spotify as needs fixing

* Mark srp_energy as needs fixing

* Mark subaru as needs fixing

* Mark tplink as needs fixing

* Mark yolink as needs fixing

* Mark youtube as needs fixing

* Fix incorrect comment
2024-10-14 16:39:10 +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
ef4caa951c
Use start_reauth helper method in integration tests (p-r) (#124792) 2024-08-28 16:20:47 +02:00
Robert Resch
ad50136dbd
Add created_at/modified_at to config entries (#122456) 2024-07-29 22:08:46 +02:00
epenet
6fd1f0a34f
Use common fixtures in philips_js tests (#120988) 2024-07-02 12:31:10 +02:00
Marc Mueller
921430d497
Import Generator from collections.abc (3) (#120916) 2024-07-01 12:09:11 +02:00
Marc Mueller
837ee7c4fb
Import Generator from typing_extensions (4) (#118992) 2024-06-06 17:41:37 +02:00
epenet
98d24dd276
Improve typing for calls fixture in tests (m-z) (#118350)
* Improve typing for `calls` fixture in tests (m-z)

* More

* More
2024-05-29 09:30:41 +02:00
Maciej Bieniek
16d86e5d4c
Store Philips TV runtime data in config entry (#116952)
Co-authored-by: Maciej Bieniek <478555+bieniu@users.noreply.github.com>
2024-05-07 14:10:44 +02:00
Joost Lekkerkerker
f3ba713289
Use FlowResultType enum in config flow tests N-Z (#114682)
Use FlowResultType enum in config flow tests
2024-04-03 09:53:20 +02:00
Joost Lekkerkerker
ee66f6ec8c
Use is in enum comparison in config flow tests P-T (#114675) 2024-04-02 11:21:50 -10:00
Sid
d5f883fbf0
Unignore Ruff PLR in tests (#114470)
* Unignore Ruff PLR in tests

* Address review comments

* review comments

* fix import

* Update test_api.py

* Update test_api.py

* Update test_api.py
2024-04-01 11:11:59 +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
Marc Mueller
32f3f46542
Add empty line after module docstring (2) [tests.components] (#112737) 2024-03-08 19:16:21 +01:00
Marc Mueller
1722e23df8
Add empty line after module docstring [tests l-p] (#112710) 2024-03-08 14:55:15 +01:00
Erik Montnemery
6908497c3d
Add minor version to config entries (#105479) 2023-12-12 08:44:35 +01:00
Florian
7638b9bba1
Fix Philips TV none recordings_list (#104665)
Correct for missing recordings list in api client.
---------

Co-authored-by: Joakim Plate <elupus@ecce.se>
2023-11-29 21:54:05 +01:00
Florian
01c49ba0e4
Add recording status for Philips TV (#94691) 2023-11-22 14:24:49 +00:00
Franck Nijhof
868a5f377f
Ruff: isort don't split imports based on trailing comma (#98162) 2023-08-10 14:27:03 +02:00
Erik Montnemery
eba04824a4
Replace assert_lists_same with pytest_unordered in integrations n-s (#94902) 2023-06-20 20:23:14 +02:00
Jan Bouwhuis
ec98e22330
Add type hints for stub_blueprint_populate fixture (#93568)
Add typehints for stub_blueprint_populate fixture
2023-05-26 08:13:13 +02:00
Erik Montnemery
3cca338c6e
Improve blueprint test fixtures (#93519) 2023-05-25 13:45:19 +02:00
Joakim Plate
0666a4750c
Add re-auth support to philips_js (#88774)
* Add re-auth support to philips_js

* Adjustments from review

* Don't allow duplicate entries for now
2023-03-28 09:30:42 +02:00
epenet
bf5f7c53d8
Move mock_setup_entry to conftest (#88484) 2023-03-06 11:31:50 +01:00
epenet
88444b2e0c
Add type hints to integration tests (part 16) (#88008) 2023-02-15 10:50:02 +01:00
epenet
3abf7ea18a
Add type hints to integration tests (m-p) (#87705) 2023-02-08 07:48:54 -08:00
Franck Nijhof
e4a78420b8
Enable Ruff PT013 (#86757)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-01-27 09:09:46 +01:00
epenet
9d192643ee
Move PluggableAction to trigger helpers (#81900)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Joakim Plate <elupus@ecce.se>
Co-authored-by: Shay Levy <levyshay1@gmail.com>
2022-11-22 11:35:18 +01:00
Paulus Schoutsen
14f68ec1a9
Store redirect URI in context instead of asking each time (#77380)
* Store redirect URI in context instead of asking each time

* Fix tests
2022-08-29 19:28:42 -04:00
Franck Nijhof
7cd68381f1
Search/replace RESULT_TYPE_* by FlowResultType enum (#74642) 2022-07-07 19:57:36 +03:00
Erik Montnemery
5e50a8abd5
Mark device triggers from hidden or auxiliary entities as secondary (#70335)
* Mark device triggers from hidden or auxiliary entities as secondary

* Update tests
2022-04-21 08:01:32 +02:00
Joakim Plate
7c6297db86
Add support for philips js screen state (#62775) 2022-01-04 16:14:44 +01:00
Robert Hillis
a9c45fdcc0
Remove deprecated yaml config from philips_js (#62471) 2021-12-21 11:11:25 +01:00
Ville Skyttä
f913961d63
Use DeviceAutomationType in tests/components/[m-r]* (#62443) 2021-12-20 22:29:22 +01:00
Paulus Schoutsen
a4d9019ffc
Refactor persistent notification to no longer route all data via a service (#57157)
* Convert persistent notification tests to async

* Create/dismiss persistent notifications in exposed functions, not service calls

* Fix notify persistent_notification

* Remove setting up persistent_notification

* Drop more setups

* Empty methods

* Undeprecate sync methods because too big task

* Fix setup clearing notifications

* Fix a bunch of tests

* Fix more tests

* Uno mas

* Test persistent notification events

* Clean up stale comment

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-07 12:58:00 +02:00
Joakim Plate
0d689eefd6
Make Philips TV notify service optional (#50691)
* Make event service optional

* Correct strings for rename

* Drop unload we are just testing config flow here
2021-06-27 22:57:08 +02:00
Franck Nijhof
177317a345
Allow passing options in config flow entry creation (#49912) 2021-05-05 22:14:01 -07:00
Franck Nijhof
969c147b77
Clean up superfluous integration setup - part 4 (#49295)
* Clean up superfluous integration setup - part 4

* Adjust tests
2021-04-16 17:46:49 +02:00
Erik Montnemery
b26779a27a
Add id to automation triggers (#48464) 2021-03-31 14:56:04 +02:00
Ville Skyttä
dc880118a4
Lint suppression cleanups (#47248)
* Unused pylint suppression cleanups

* Remove outdated pylint bug references

* Add flake8-noqa config and note to run it every now and then

* Add codes to noqa's

* Unused noqa cleanups
2021-03-02 09:02:04 +01:00
Joakim Plate
e12eba1989
Add support for v6 features to philips js integration (#46422) 2021-02-26 09:34:40 -08:00
Joakim Plate
a67b598971
Correct errors found on post merge review in philips_js (#46428)
* Correct missed review changes

* Adjust return value for device trigger

* Drop cannot connect

* Always assume there is a unique id

* No need to yield

* Update homeassistant/components/philips_js/media_player.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Move typing to init

* Adjust typing instead of returning lambda

* Explicity return None

* Coerce into int

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-02-12 02:35:29 +01:00
Joakim Plate
8dc06e612f
Add config flow to philips_js (#45784)
* Add config flow to philips_js

* Adjust name of entry to contain serial

* Use device id in event rather than entity id

* Adjust turn on text

* Deprecate all fields

* Be somewhat more explicit in typing

* Switch to direct coordinator access

* Refactor the pluggable action

* Adjust tests a bit

* Minor adjustment

* More adjustments

* Add missing await in update coordinator

* Be more lenient to lack of system info

* Use constant for trigger type and simplify

* Apply suggestions from code review

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

Co-authored-by: J. Nick Koston <nick@koston.org>
2021-02-11 21:37:53 +01:00