Erik Montnemery
3016b5fbfc
Use recorder fixtures and helpers in tests ( #70773 )
2022-04-26 06:08:00 -10:00
Martin Hjelmare
09b4b7eb37
Remove hass.helpers from config_entries ( #70660 )
2022-04-25 14:21:03 +02:00
Erik Montnemery
982e314de6
Use recorder_mock in tests ( #70363 )
...
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-04-22 19:29:44 -10:00
Franck Nijhof
7b75a16745
Add visible by default property to base Entity ( #70370 )
2022-04-21 22:06:34 -07:00
Erik Montnemery
64381acbaf
Mark device actions from hidden or auxiliary entities as secondary ( #70278 )
2022-04-20 10:48:46 -07:00
J. Nick Koston
fe6a4bfb1d
Remove EVENT_TIME_CHANGED and EVENT_TIMER_OUT_OF_SYNC ( #69643 )
...
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-04-09 09:05:54 -10:00
Erik Montnemery
949b0e1b65
Don't allow in-memory SQLite database ( #69616 )
2022-04-08 00:43:09 +02:00
Erik Montnemery
0ad9da9dd0
Always use a commit interval of 0 for the in memory db in tests ( #69556 )
2022-04-07 13:04:08 +02:00
J. Nick Koston
bde3646293
Always use a commit interval of 0 for the in memory db in tests ( #69330 )
2022-04-05 12:06:06 -10:00
Franck Nijhof
15cffbe496
Clean up async_dispatcher_connect helper usage ( #68613 )
2022-03-24 13:19:11 +01:00
Erik Montnemery
cf4033b1bc
Simplify time zone setting in tests ( #68330 )
...
* Simplify timezone setting in tests
* Fix typo
* Adjust caldav tests
* Adjust input_datetime tests
* Adjust time_date tests
* Adjust tod tests
* Adjust helper tests
* Adjust recorder tests
* Adjust risco tests
* Adjust aemet tests
* Adjust flux tests
* Adjust forecast_solar tests
* Revert unnecessary change in forecast_solar test
* Adjust climacell tests
* Adjust google tests
* Adjust sensor tests
* Adjust sonarr tests
* Adjust template tests
* Adjust zodiac tests
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-03-20 10:25:15 +01:00
Erik Montnemery
c496748125
Add WS API for removing a config entry from a device ( #66188 )
...
* Add WS API for removing a config entry from a device
* Address review comments
* Address review comments
* Remove entity cleanup from ConfigEntries
* Update + add tests
* Improve comments in test
* Add negative test
* Refactor according to review comments
* Add back async_remove_config_entry_device
* Remove unnecessary error handling
* Simplify error handling
2022-02-21 10:11:18 +01:00
Erik Montnemery
009b31941a
Support restoring SensorEntity native_value ( #66068 )
2022-02-08 14:00:26 -08:00
Paulus Schoutsen
5da923c341
Protect state.as_dict from mutation ( #65693 )
2022-02-04 14:45:25 -08:00
Marc Mueller
d057850971
Update typing - collections.abc (3) ( #63947 )
2022-01-12 08:04:17 +01:00
Paulus Schoutsen
689504af86
Raise if trying to store mocks in storage ( #63622 )
2022-01-09 21:20:21 -08:00
Paulus Schoutsen
ad8af5fc7a
Allow mobile app registrations only supporting websocket push ( #63208 )
2022-01-03 11:02:41 -08:00
Ville Skyttä
9b437ef146
Remaining DeviceAutomationType bits ( #62508 )
...
* Use DeviceAutomationType in missed tests/components/*
* Tighten device automation type hints
2021-12-21 20:05:48 +02:00
Ville Skyttä
334c6c5c02
Make device automation type an enum ( #62354 )
2021-12-20 19:16:30 +01:00
Stefan Agner
f0006b92be
Allow to lock SQLite database during backup ( #60874 )
...
* Allow to set CONF_DB_URL
This is useful for test which need a custom DB path.
* Introduce write_lock_db helper to lock SQLite database
* Introduce Websocket API which allows to lock database during backup
* Fix isort
* Avoid mutable default arguments
* Address pylint issues
* Avoid holding executor thread
* Set unlock event in case timeout occures
This makes sure the database is left unlocked even in case of a race
condition.
* Add more unit tests
* Address new pylint errors
* Lower timeout to speedup tests
* Introduce queue overflow test
* Unlock database if necessary
This makes sure that the test runs through in case locking actually
succeeds (and the test fails).
* Make DB_LOCK_TIMEOUT a global
There is no good reason for this to be an argument. The recorder needs
to pick a sensible value.
* Add Websocket Timeout test
* Test lock_database() return
* Update homeassistant/components/recorder/__init__.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Fix format
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-12-07 13:16:24 +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
Erik Montnemery
0df2904b89
Improve some entity registry tests ( #59902 )
2021-11-22 10:24:37 +01:00
Erik Montnemery
30f7bc0f18
Use freezegun in DST tests ( #58939 )
2021-11-02 18:11:39 +01:00
Paulus Schoutsen
31153ac155
Move fixtures part 1 ( #58902 )
2021-11-01 20:47:05 -07:00
J. Nick Koston
e880f1c8f9
Index config entries by domain ( #56316 )
2021-09-17 10:39:00 -10:00
J. Nick Koston
4bde4504ec
Add api to device_automation to return all matching devices ( #53361 )
2021-08-10 14:21:34 -05:00
Erik Montnemery
4d32e1ed01
Minor improvements of MQTT typing ( #52578 )
...
* Minor improvements of MQTT typing
* Tweak
2021-07-06 14:38:48 +02: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
J. Nick Koston
bf2d40adfe
Migrate from pytz to python-dateutil ( #49643 )
...
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-05-07 22:46:26 -07:00
Dermot Duffy
809c1394d4
Enable mypy for motionEye (aye aye!) ( #49738 )
2021-05-04 08:19:41 +02:00
Franck Nijhof
c68b259bd3
Cleanup of unused connection_class logic ( #49865 )
...
Co-authored-by: Joakim Sørensen <joasoe@gmail.com>
2021-04-29 23:12:58 +02:00
Paulus Schoutsen
265fdea83b
Allow config entries to store a reason ( #49581 )
2021-04-23 09:23:43 +02:00
Alan Tse
125161df6b
Only raise integrationnotfound for dependencies ( #48241 )
...
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-04-01 11:30:52 -07:00
Franck Nijhof
52475c108f
Make integration setup optional ( #48381 )
2021-03-29 13:53:47 -07:00
J. Nick Koston
3f2ca16ad7
Index config entries by id ( #48199 )
2021-03-21 21:44:29 -07:00
Franck Nijhof
8a56dbf587
Add flake8 comprehensions checks to pre-commit & CI ( #48111 )
2021-03-19 13:41:09 +01:00
Marc Mueller
4cb7718192
Update typing 16 ( #48087 )
2021-03-18 22:58:19 +01:00
Marc Mueller
54d1e9985f
Update typing 15 ( #48079 )
2021-03-18 15:13:22 +01: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
Paulus Schoutsen
557ec374f1
Convert discovery helper to use dispatcher ( #47008 )
2021-02-24 13:37:31 -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
58b4a91a5b
Test that variables are passed to wait_for_trigger script action ( #46221 )
2021-02-09 00:34:18 +01:00
Franck Nijhof
65cf2fcb6f
Drop asynctest ( #44746 )
2021-01-01 22:31:56 +01:00
Christopher Gramberg
c5fdde2a94
Convert filter tests to use pytest style ( #41743 )
2020-12-17 22:08:35 +01:00
Paulus Schoutsen
ea55051161
Stub finding custom integrations in tests ( #43692 )
2020-11-27 12:53:16 +01:00
Paulus Schoutsen
b3be708db6
Add default config if not there ( #43321 )
...
Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2020-11-25 15:10:04 +01:00
Paulus Schoutsen
819dd27925
Automatically clean up executor as part of closing loop ( #43284 )
2020-11-16 15:43:48 +01:00
Paulus Schoutsen
9f4480a634
Add system health streaming updates ( #42831 )
2020-11-10 22:45:59 +01:00
Franck Nijhof
6e9b65405a
Disable legacy templates by default ( #42967 )
2020-11-08 16:11:38 +01:00
Anders Melchiorsen
650c57db5b
Fix async_track_utc_time_change firing too early ( #42176 )
2020-11-05 16:34:56 +01:00
Paulus Schoutsen
21e9e7c5c2
Default legacy templates to true ( #42511 )
...
* Default legacy templates to true
* Disable legacy_templates in tests
Co-authored-by: Franck Nijhof <git@frenck.dev>
2020-10-28 16:58:16 +01:00
Paulus Schoutsen
440570244d
Don't swallow all errors when checking for config validator platform ( #42058 )
2020-10-19 17:09:57 +02:00
Franck Nijhof
f83f3c927a
Fix local media browser source conflicting with local www folder ( #40151 )
2020-09-16 21:38:40 +02:00
Franck Nijhof
ff0562ad1e
Add media dirs core configuration ( #40071 )
...
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-09-16 15:28:25 +02:00
Paulus Schoutsen
51a63c1fc4
Drop last bits of asyncio.coroutine ( #39280 )
2020-08-26 16:57:52 +02:00
Joakim Plate
15db2225da
async_get_instance was not reentrant during await ( #38263 )
2020-08-12 22:35:24 +02:00
Phil Bruckner
4c8c8a8c99
Fix async_fire_time_changed in tests/common.py ( #38705 )
2020-08-09 22:26:35 -05:00
J. Nick Koston
60009ec2f9
Use event loop scheduling for tracking time patterns ( #38021 )
...
* Use event loop scheduling for tracking time patterns
* make patching of time targetable
* patch time tests since time can tick to match during the test
* fix more tests
* time can only move forward
* time can only move forward
* back to 100% coverage
* simplify since the event loop time cannot move backwards
* simplify some more
* revert simplify
* Revert "revert simplify"
This reverts commit bd42f232f6
.
* Revert "simplify some more"
This reverts commit 2a6c57d514
.
* Revert "simplify since the event loop time cannot move backwards"
This reverts commit 3b13714ef4
.
* Attempt another simplify
* time does not move backwards in the last two
* remove next_time <= now check
* fix previous merge error
2020-07-20 20:18:31 -10:00
J. Nick Koston
6ea5c8aed9
Index the device registry ( #37990 )
2020-07-19 23:32:05 -07:00
J. Nick Koston
890562e3ae
Index the entity registry ( #37994 )
2020-07-19 22:52:41 -07:00
Paulus Schoutsen
f49ce5d1b4
Protect loop set default executor ( #37438 )
...
Co-authored-by: J. Nick Koston <nick@koston.org>
2020-07-06 15:58:53 -07:00
J. Nick Koston
89a9634d35
Use eventloop for scheduling ( #37184 )
...
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-06-29 09:39:24 -07:00
Erik Montnemery
4e77969f5e
Drop use of mock_mqtt_component ( #37013 )
...
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-06-23 10:17:22 -07:00
Erik Montnemery
a2e2c35011
Use pytest for more MQTT tests ( #36859 )
...
* Use pytest for more MQTT tests
* Address review comments
* Break out PAHO client mock in separate fixture.
* tweak.
2020-06-22 22:02:29 +02:00
Paulus Schoutsen
5642027ffb
Improve after_dependencies handling ( #36898 )
2020-06-19 17:24:33 -07:00
Erik Montnemery
7722e417ad
Stable device id when a deleted device is restored ( #36309 )
...
* Stable device id when a deleted device is restored.
* Tweak
* Store only basic data for deleted devices
* Simplify code
* Simplify code
* Address review comments.
* Improve test
* Fix missing save
2020-06-02 21:22:08 +02:00
Paulus Schoutsen
76f392476b
Use a future for mock coro ( #34989 )
2020-04-30 16:31:00 -07:00
Paulus Schoutsen
ec47216388
Use built-in test helpers on 3.8 ( #34901 )
2020-04-30 13:29:50 -07:00
Paulus Schoutsen
454c5d824a
Attempt to fix CI ( #34800 )
2020-04-28 10:31:22 -07:00
David F. Mulcahey
8b0a0ee521
Don't write storage to disk while stopping ( #33456 )
...
* Don't write storage to disk while stopping
* rework change
* lint
* remove delay save and schedule final write at stop
* update tests
* fix test component using private methods
* cleanup
* always listen
* use stop in restore state again
* whitelist JSON exceptions for later
* review comment
* make zwave tests use mock storage
2020-04-02 10:25:28 -07:00
Paulus Schoutsen
b10319f69e
Convert TTS tests to async ( #33517 )
...
* Convert TTS tests to async
* Address comments
2020-04-02 18:55:34 +02:00
Paulus Schoutsen
deda2f86e7
Allow managing Lovelace storage dashboards ( #32241 )
...
* Allow managing Lovelace storage dashboards
* Make sure we do not allow duplicate url paths
* Allow setting sidebar to None
* Fix tests
* Delete storage file on delete
* List all dashboards
2020-02-28 12:43:17 -08:00
Erik Montnemery
7e387f93d6
Add MQTT WS command to remove device ( #31989 )
...
* Add MQTT WS command to remove device
* Review comments, fix test
* Fix tests
2020-02-24 20:46:02 -08:00
Jc2k
de26108b23
Restore unit_of_measurement from entity registry ( #30780 )
...
* Restore unit_of_measurement from entity registry
* Lint fix
2020-01-15 08:09:05 -08:00
Paulus Schoutsen
9aa02e35a7
Entity Component to no longer generate automatic groups ( #23789 )
2020-01-07 17:30:53 +01:00
Ville Skyttä
fa4fa30461
Various string cleanups ( #30435 )
...
* Remove some unnecessary string concatenations
* Replace some simple str.formats with f-strings
* Replace some string concatenations with f-strings
2020-01-03 14:47:06 +01: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
Paulus Schoutsen
d851cb6f9e
Add unique ID to config entries ( #29806 )
...
* Add unique ID to config entries
* Unload existing entries with same unique ID if flow with unique ID is
finished
* Remove unused exception
* Fix typing
* silence pylint
* Fix tests
* Add unique ID to Hue
* Address typing comment
* Tweaks to comments
* lint
2019-12-16 12:27:43 +01:00
Bas Nijholt
f60125b5c9
Sort imports according to PEP8 for 'tests' ( #29791 )
2019-12-09 16:52:24 +01:00
Ville Skyttä
d88ca0f5cb
Lint exclusions ( #28655 )
...
* Remove malformed pylint disable markers
* Remove some unused imports
* Remove some unneeded lint exclusions
* Remove more unneeded lint exclusions
* Add specific codes to all noqa's
2019-11-16 10:22:07 +01:00
Paulus Schoutsen
b6c26cb363
Introduce new OAuth2 config flow helper ( #27727 )
...
* Refactor the Somfy auth implementation
* Typing
* Migrate Somfy to OAuth2 flow helper
* Add tests
* Add more tests
* Fix tests
* Fix type error
* More tests
* Remove side effect from constructor
* implementation -> auth_implementation
* Make get_implementation async
* Minor cleanup + Allow picking implementations.
* Add support for extra authorize data
2019-10-18 13:06:33 -07:00
Malte Franken
1a5b4c105a
Move imports in mqtt component ( #27835 )
...
* move imports to top-level in mqtt server
* move imports to top-level in mqtt configflow
* move imports to top-level in mqtt init
* move imports to top-level in mqtt vacuum
* move imports to top-level in mqtt light
2019-10-17 17:04:27 -07:00
Paulus Schoutsen
e866d769e8
Google Assistant Local SDK ( #27428 )
...
* Local Google
* Fix test
* Fix tests
2019-10-13 14:16:27 -07:00
Erik Montnemery
3e99743244
Add device trigger support to sensor entities ( #27133 )
...
* Add device trigger support to sensor entities
* Fix typing
* Fix tests, add test helper for comparing lists
2019-10-03 06:14:35 +02:00
Erik Montnemery
65ce3b49c1
Add support for `for` to binary_sensor, light and switch device triggers ( #26658 )
...
* Add support for `for` to binary_sensor, light and switch device triggers
* Add WS API device_automation/trigger/capabilities
2019-10-02 22:14:52 +02:00
Pascal Vizeli
c1851a2d94
Cleanup coroutine threadsafe ( #27080 )
...
* Cleanup coroutine threadsafe
* fix lint
* Fix typing
* Fix tests
* Fix black
2019-10-01 16:59:06 +02:00
Paulus Schoutsen
6fdff9ffab
Reorg device automation ( #26880 )
...
* async_trigger -> async_attach_trigger
* Reorg device automations
* Update docstrings
* Fix types
* Fix extending schemas
2019-09-24 14:57:05 -07:00
Erik Montnemery
6a60ebdb30
Rename MockToggleDevice to MockToggleEntity ( #26644 )
...
* Rename MockToggleDevice to MockToggleEntity
* Fix tests
2019-09-15 09:50:17 +02:00
Paulus Schoutsen
adaa200935
Home Assistant Cast ( #26566 )
...
* Add backend support for Home Assistant Cast
* Update test reqs
2019-09-11 12:34:10 -06: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
6c292846be
Allow entities to indicate they should be disabled by default ( #26011 )
2019-08-16 16:17:16 -07:00
Paulus Schoutsen
6f357cb23e
First pass fixing tests that raise exceptions caught by asyncio.gather ( #25860 )
...
* First pass fixing tests that raise exceptions caught by asyncio.gather
* Fix demo test
* lint
2019-08-12 16:42:12 +02:00
Paulus Schoutsen
4de97abc3a
Black
2019-07-31 12:25:30 -07:00
Phil Bruckner
c80683bb15
Restore automation last_triggered as datetime & fix test ( #24951 )
...
* Restore automation last_triggered as datetime & fix test
* last_triggered is always a string
2019-07-10 20:42:38 -07:00
Johann Kellerman
2e26f0bd2b
Add check_config helper ( #24557 )
...
* check_config
* no ignore
* tests
* try tests again
2019-07-10 11:56:50 -07:00
Franck Nijhof
31f569ada9
Batch of Component(s) -> Integration(s) ( #24972 )
2019-07-05 15:24:26 -07:00
Paulus Schoutsen
f995ab9d54
Don't pass in loop ( #23984 )
...
* Don't pass in loop
* Revert some changes
* Lint + Axis revert
* reinstate loop
* Fix a test
* Set loop
* Update camera.py
* Lint
2019-05-22 21:09:59 -07:00
Erik Montnemery
afe9fc221e
Fire event when core config is updated ( #23922 )
...
* Fire event when core config is updated
2019-05-20 20:02:36 +02:00
Paulus Schoutsen
1e22c8daca
Automatically generate config flow list ( #23802 )
...
* Add config flow to manifest.json
* Still load config flows via config flow platform
* Fix typo
* Lint
* Update config_flows.py"
* Catch import error when setting up entry
* Lint
* Fix tests
* Fix imports
* Lint
* Fix Unifi tests
* Fix translation test
* Add homekit_controller config flow
2019-05-13 01:16:55 -07:00