Ville Skyttä
5bf67cac66
Use RegistryEntryDisabler ( #60436 )
2021-12-15 23:25:40 +02:00
Ville Skyttä
7db3246de4
Make config entry disabled_by an enum ( #60445 )
...
* Make config entry disabled_by an enum
* Update homeassistant/config_entries.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-12-15 20:53:21 +01:00
Ville Skyttä
4107063a5a
Make entity registry disabled_by an enum ( #60424 )
2021-12-02 18:02:29 +01:00
Erik Montnemery
c85bb27d0d
Teach state trigger about entity registry ids ( #60271 )
...
* Teach state trigger about entity registry ids
* Tweak
* Add tests
* Tweak tests
* Fix tests
* Resolve entity ids during config validation
* Update device_triggers
* Fix mistake
* Tweak trigger validator to ensure we don't modify the original config
* Add index from entry id to entry
* Update scaffold
* Pre-compile UUID regex
* Address review comment
* Tweak mock_registry
* Tweak
* Apply suggestion from code review
2021-12-02 14:26:45 +01:00
Ville Skyttä
9f4de8df18
Make device entry disabled by an enum ( #60239 )
2021-11-24 22:32:16 +01:00
Erik Montnemery
c0d2a66609
Add stable ID to entity registry entries ( #60218 )
...
* Add UUID to entity registry entries
* Fix test
2021-11-24 09:01:35 +01:00
Erik Montnemery
49a27e12ad
Add support to entity registry for overriding device_class ( #59985 )
2021-11-22 08:38:06 -08:00
Erik Montnemery
0df2904b89
Improve some entity registry tests ( #59902 )
2021-11-22 10:24:37 +01:00
Erik Montnemery
c557da028a
Bump entity_registry store version to 1.2 ( #59912 )
...
* Bump entity_registry store version to 1.2
* Migrate also when importing yaml
* Adjust tests
* Satisfy pylint
* Fix typing
2021-11-19 14:25:34 +01:00
Paulus Schoutsen
ee2c950716
Merge system options into pref properties ( #51347 )
...
* Make system options future proof
* Update tests
* Add types
2021-06-01 22:34:31 +02:00
Raman Gupta
58e37435b3
Make more max lengths constants and add additional MaxLengthExceeded checks ( #50337 )
...
* Add more MaxLengthExceeded checks
* remove some validations to reduce performance impact
* check length of generated entity ID
* dont check entity ID twice and use single context id length constant
* fix test
* add missing test
2021-05-25 19:58:01 +02:00
Ville Skyttä
77d5244577
Use device registry CONNECTION_* constants ( #49923 )
2021-04-30 23:58:50 +02:00
Ville Skyttä
a396619251
Use disabled_by constants ( #49584 )
...
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-04-23 09:56:42 +02:00
Erik Montnemery
b3fecb1c95
Update tests t-z to use async_get() instead of async_get_registry() ( #47655 )
2021-03-09 14:25:03 +01:00
Erik Montnemery
504e5b77ca
Improve behaviour when disabling or enabling config entries ( #47301 )
2021-03-03 10:12:37 -08:00
Erik Montnemery
5e26bda52d
Add support for disabling config entries ( #46779 )
2021-02-20 19:21:39 -08:00
Erik Montnemery
ed31cc363b
Wait for registries to load at startup ( #46265 )
...
* Wait for registries to load at startup
* Don't decorate new functions with @bind_hass
* Fix typing errors in zwave_js
* Load registries in async_test_home_assistant
* Tweak
* Typo
* Tweak
* Explicitly silence mypy errors
* Fix tests
* Fix more tests
* Fix test
* Improve docstring
* Wait for registries to load
2021-02-11 17:36:19 +01:00
Erik Montnemery
bfd5a62bad
Fix typo ( #46321 )
2021-02-10 11:31:51 +01:00
Erik Montnemery
78b7fbf7b1
Fix race in EntityRegistry.async_device_modified ( #46319 )
2021-02-10 10:50:44 +01:00
Franck Nijhof
65cf2fcb6f
Drop asynctest ( #44746 )
2021-01-01 22:31:56 +01:00
Erik Montnemery
30baf333c3
Improve handling of disabled devices ( #43864 )
2020-12-02 21:20:14 +01:00
Erik Montnemery
a5e5c5c7e6
Exclude disabled entities from async_entries_for_device ( #43665 )
2020-11-27 09:03:44 +01:00
Erik Montnemery
dc8364fd3a
Support disabling devices ( #43293 )
2020-11-26 16:45:02 +01:00
Robert Svensson
e06c8009e1
Add area id to entity registry ( #42221 )
...
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-10-24 21:25:28 +02:00
Franck Nijhof
1c2ebdf307
Upgrade black to 20.8b1 ( #39287 )
2020-08-27 13:56:20 +02:00
J. Nick Koston
890562e3ae
Index the entity registry ( #37994 )
2020-07-19 22:52:41 -07:00
Paulus Schoutsen
a330eba61c
Guard bad entity ID in entity registry ( #35271 )
2020-05-05 15:07:54 -07:00
Paulus Schoutsen
2af984917e
Use asynctest-mock in most places ( #35109 )
...
* Use asynctest-mock in most places
* Fix broken patch in pilight
2020-05-03 11:27:19 -07:00
Paulus Schoutsen
ec47216388
Use built-in test helpers on 3.8 ( #34901 )
2020-04-30 13:29:50 -07:00
J. Nick Koston
96649a7e27
Use registry to find linked batteries for homekit ( #33519 )
2020-04-21 17:43:49 -07:00
Paulus Schoutsen
7be3a4cd37
Fix entity registry not saving name/icon ( #31932 )
2020-02-18 08:32:34 -08:00
Paulus Schoutsen
51c35ab9a8
Entity Registry to store and restore name/icon ( #31714 )
...
* Entity Registry to store and restore name/icon
* Update test_entity_registry.py
* Add original name/icon to JSON result
2020-02-11 09:40:50 -08:00
Jc2k
669c89e8c0
Fix HomeKit with entity registry restoration where supported_features is a non-None falsey ( #30657 )
...
* Fix homekit with #30094
* Fix test
2020-01-10 16:33:48 -08:00
Paulus Schoutsen
bb14a083f0
Store capabilities and supported features in entity registry, restore registered entities on startup ( #30094 )
...
* Store capabilities and supported features in entity registry
* Restore states at startup
* Restore non-disabled entities on HA start
* Fix test
* Pass device class from entity platform
* Clean up restored entities from state machine
* Fix Z-Wave test?
2019-12-31 14:29:43 +01:00
Bas Nijholt
f60125b5c9
Sort imports according to PEP8 for 'tests' ( #29791 )
2019-12-09 16:52:24 +01:00
Paulus Schoutsen
f704a8e90e
Reload config entry when entity enabled in entity registry, remove entity if disabled. ( #26120 )
...
* Reload config entry when disabled_by updated in entity registry
* Add types
* Remove entities that get disabled
* Remove unnecessary domain checks.
* Attach handler in async_setup
* Remove unused var
* Type
* Fix test
* Fix tests
2019-08-22 19:32:43 -05:00
Robert Svensson
a2589f56e1
Add system options to config entries ( #25926 )
...
* Add system options to config entries
* For feedback
* Follow most of balloobs comments
* Fix balloobs comments
* Improvements
* Fix second round of Balloobs comments
* Fix third round
* Add system options to mock config entry
* Fix integration tests
* Fix the last failing tests
* Fix disabled string
* Fix failing disabled_by tests
* New tests
* Config entry WS API tests
* Fix comments
2019-08-17 21:34:11 -07:00
Paulus Schoutsen
eba6caf8a1
Entity registry api update disable ( #26015 )
...
* Clean up entity registry WS commands
* Allow updating disabled_by in entity registry
* Allow changing disabled_by via API
* Update tests/components/config/test_entity_registry.py
Co-Authored-By: Robert Svensson <Kane610@users.noreply.github.com>
2019-08-16 16:22:45 -07:00
Paulus Schoutsen
6c292846be
Allow entities to indicate they should be disabled by default ( #26011 )
2019-08-16 16:17:16 -07:00
Paulus Schoutsen
4de97abc3a
Black
2019-07-31 12:25:30 -07:00
Penny Wood
f991ec15f2
Delete devices / entities when we remove a config entry. ( #23983 )
...
* Remove device when last config entry removed
* Remove entities when config entry removed
* Update tests to use new behaviour
2019-05-19 11:41:39 +02:00
Ties de Kock
4004867eda
Split up yaml loaders into multiple files ( #23774 )
...
* Start moving parts of yaml utils to own module
Move parts of yaml loader out of the single large file and start
to create the structure of the yaml loaders in Ansible [0].
[0]: https://github.com/ansible/ansible/tree/devel/lib/ansible/parsing/yaml
* Finish yaml migration, update tests and mocks
* Move code around to finish the migration
* Update the mocks so that `open` is patched in
`homeassistant.util.yaml.loader` instead of
`homeassistant.util.yaml`.
* Updated mypy ignores
* Updated external API of `homeasistant.util.yaml`, see below:
Checked what part of the api of `homeassistant.util.yaml` was actually
called from outside the tests and added an `__ALL__` that contains only
these elements.
Updated the tests so that references to internal parts of the API (e.g.
the yaml module imported into `homeassistant.util.yaml.loader`) are
referenced directly from `homeassistant.util.yaml.loader`.
In `tests/test_yaml.py` the import `yaml` refers to
`homeassistant.util.yaml` and `yaml_loader` refers to `~.loader`.
Future work that remains for the next iteration is to create a custom
SafeConstructor and refers to that instead of monkey patching `yaml` with
custom loaders.
* Update mocks in yaml dumper, check_config
2019-05-09 09:07:56 -07:00
Paulus Schoutsen
07ee3b2eb9
Add update events to registries ( #23746 )
...
* Add update events to registries
* Add to websocket
2019-05-07 20:04:57 -07:00
Andrew Sayre
cfaaae661a
Add core APIs to migrate device identifiers and entity unique_id ( #23481 )
...
* Add device identifiers migration
* Add entity unique_id migration
* Update per arch issue
* Move to existing update methods
2019-04-30 10:04:37 -07:00
Jason Hu
3d8673dbf8
Resolve auth_store loading race condition ( #21794 )
...
* Add lock in auth_store._async_load()
* Python 3.5 does not like assert_called_once()
2019-03-08 14:50:24 -08:00
Paulus Schoutsen
0300ef2040
Fix entity registry comments ( #20357 )
2019-01-23 16:33:21 -08:00
Paulus Schoutsen
e964750ac1
Fix invalid entity ID in entity registry ( #20328 )
2019-01-22 14:07:17 -08:00
Paulus Schoutsen
b8257866f5
Clean up device update, add via-hub ( #16659 )
...
* Clean up device update, add via-hub
* Test loading/saving data
* Lint
* Add to Hue"
* Lint + tests
2018-09-17 13:39:30 +02:00
Robert Svensson
7a6facc875
Device and entity registry remove config entry on unload ( #16247 )
...
* Test
* Ability to remove device
* Don't remove devices, instead remove config entry from device and entity registries
* Remove print
* Remove is not the same as unload
* Add tests
* Fix hound comment
2018-09-04 09:00:14 +02:00
Paulus Schoutsen
8ec550d6e0
Storage entity registry ( #16018 )
...
* Split out storage delayed write
* Update code using delayed save
* Fix tests
* Fix typing test
* Add callback decorator
* Migrate entity registry to storage helper
* Make double loading protection easier
* Lint
* Fix tests
* Ordered Dict
2018-08-18 13:34:33 +02:00