Commit Graph
436 Commits
Author SHA1 Message Date
Erik MontnemeryandGitHub 511ec4ba8a Remove test helper get_test_home_assistant (#124177) 2024-08-19 10:23:25 +02:00
Erik MontnemeryandGitHub ce2ffde22e Update sensor recorder tests to async (#124061) 2024-08-18 13:20:58 -05:00
epenetandGitHub ba3872ff87 Add missing hass type in tests/*.py (#124048) 2024-08-18 15:42:41 +02:00
6c01e4b99c Use BaseEventLoop._thread_id instead of a custom attribute (#124054)
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-08-17 10:59:39 +02:00
Erik MontnemeryandGitHub 7deb9bf30f Do not override hass.loop_thread_id in tests (#124053) 2024-08-16 16:59:21 -05:00
Erik MontnemeryandGitHub 115c5d1704 Fix threading in get_test_home_assistant test helper (#124056) 2024-08-16 16:59:33 +02:00
J. Nick KostonandGitHub b15ea58851 Relocate code to get scheduled TimerHandles (#123546) 2024-08-12 09:15:33 +02:00
Erik MontnemeryandGitHub f4125eaf4c Remove loop shutdown indicator when done with test hass (#122432) 2024-07-23 00:56:06 +02:00
Marc MuellerandGitHub 769d7214a3 Improve tests.common typing (#122257) 2024-07-20 17:34:43 +02:00
Marc MuellerandGitHub ca55986057 Import Generator from collections.abc (1) (#120914) 2024-07-01 11:51:51 +02:00
Marc MuellerandGitHub fcfb580f0c Update pylint to 3.2.4 (#120606) 2024-06-26 22:29:55 +02:00
Erik MontnemeryandGitHub e32a27a8ff Remove hass_recorder test fixture (#120295) 2024-06-24 11:14:08 +02:00
epenetandGitHub 904cf26d31 Add MockToggleEntity type hints in tests (#120075) 2024-06-21 12:32:03 +02:00
epenetandGitHub 7af79ba013 Add MockModule type hints in tests (#120007) 2024-06-21 11:11:48 +02:00
epenetandGitHub dc6c1f4e87 Add MockPlatform type hints in tests (#120012)
* Add MockPlatform type hints in tests

* Remove useless code

* Improve

* Revert "Improve"

This reverts commit 9ad04f9255.
2024-06-21 11:04:15 +02:00
epenetandGitHub ec9f2f698c Add type hints to MockGroup and MockUser in tests (#119897) 2024-06-18 13:11:10 -05:00
epenetandGitHub 38a6e666a7 Add missing return type to some test functions (#119665) 2024-06-14 08:26:45 +02:00
epenetandGitHub 8e1103050c Fix dangerous-default-value warnings in core tests (#119568) 2024-06-13 17:10:37 +02:00
epenetandGitHub ca8d3e0c83 Ignore unnecessary-lambda warnings in tests (#119564) 2024-06-13 16:58:41 +02:00
epenetandGitHub e3e80c83b7 Fix contextmanager-generator-missing-cleanup warning in tests (#119478) 2024-06-12 22:38:11 +02:00
epenetandGitHub c70cfbb535 Fix arguments-renamed pylint warning in tests (#119473) 2024-06-12 12:25:29 +02:00
epenetandGitHub 7388271689 Fix unspecified-encoding warnings in tests (#119405) 2024-06-11 17:58:40 +02:00
epenetandGitHub 7384140a60 Fix pointless-exception-statement warning in tests (#119402) 2024-06-11 17:20:23 +02:00
Erik MontnemeryandGitHub 8620bef5b0 Support shared keys starting with period in services.yaml (#118789) 2024-06-11 16:31:19 +02:00
epenetandGitHub ea571a6997 Fix unnecessary-dunder-call pylint warnings in tests (#119379) 2024-06-11 16:18:16 +02:00
epenetandGitHub 65befcf5d4 Fix import pylint warning in core tests (#119359) 2024-06-11 15:04:00 +02:00
Robert SvenssonandGitHub c9911e4dd4 Rework UniFi tests to not use runtime data (#119202) 2024-06-09 15:56:26 +02:00
Marc MuellerandGitHub 279483ddb0 Import Generator from typing_extensions (2) (#118989) 2024-06-06 17:24:22 +02:00
J. Nick KostonandGitHub 475c20d529 Always do thread safety check when writing state (#118886)
* Always do thread safety check when writing state

Refactor the 3 most common places where the thread safety check
for the event loop to be inline to make the check fast enough
that we can keep it long term. While code review catches most
of the thread safety issues in core, some of them still make
it through, and new ones keep getting added. Its not possible
to catch them all with manual code review, so its worth the
tiny overhead to check each time.

Previously the check was limited to custom components
because they were the most common source of thread
safety issues.

* Always do thread safety check when writing state

Refactor the 3 most common places where the thread safety check
for the event loop to be inline to make the check fast enough
that we can keep it long term. While code review catches most
of the thread safety issues in core, some of them still make
it through, and new ones keep getting added. Its not possible
to catch them all with manual code review, so its worth the
tiny overhead to check each time.

Previously the check was limited to custom components
because they were the most common source of thread
safety issues.

* async_fire is more common than expected with ccs

* fix mock

* fix hass mocking
2024-06-05 23:41:55 -04:00
Erik MontnemeryandGitHub 35dcda29b9 Use ULID instead of UUID for config entry id and flow ID (#118677) 2024-06-03 10:34:09 +02:00
J. Nick KostonandGitHub 8f94205014 Include a traceback for non-strict event loop blocking detection (#118620) 2024-06-02 06:36:25 -04:00
J. Nick KostonandGitHub 25f199c39c Improve performance of verify_event_loop_thread (#118198) 2024-05-26 17:39:15 -10:00
epenetandGitHub bb0b01e4a9 Add error message to snapshot_platform helper (#117974) 2024-05-24 10:38:23 +02:00
J. Nick KostonandGitHub 5a609c34bb Fix blocking I/O in the event loop when loading timezones (#117721) 2024-05-20 11:06:03 +02:00
Marc MuellerandGitHub 8f0fb4db3e Use PEP 695 for class annotations (4) (#117778) 2024-05-20 10:44:52 +02:00
Robert SvenssonandGitHub fa815234be Make UniFi use runtime data (#117457) 2024-05-14 21:04:26 +02:00
J. Nick KostonandGitHub 9381462877 Migrate restore_state to use the singleton helper (#117385) 2024-05-14 09:13:44 +09:00
Erik MontnemeryandGitHub d1525b1edf Sort parameters to MockConfigEntry (#117239) 2024-05-11 14:16:29 -04:00
J. Nick KostonandGitHub ead69af27c Avoid creating a task to clear the hass instance at test teardown (#117103) 2024-05-08 23:39:45 +02:00
J. Nick KostonandGitHub 26cc1cd3db Use singleton helper for registries (#117027) 2024-05-07 21:04:01 +02:00
J. Nick KostonandGitHub 164403de20 Add thread safety checks to async_create_task (#116339)
* Add thread safety checks to async_create_task

Calling async_create_task from a thread almost always results in an
fast crash. Since most internals are using async_create_background_task
or other task APIs, and this is the one integrations seem to get wrong
the most, add a thread safety check here

* Add thread safety checks to async_create_task

Calling async_create_task from a thread almost always results in an
fast crash. Since most internals are using async_create_background_task
or other task APIs, and this is the one integrations seem to get wrong
the most, add a thread safety check here

* missed one

* Update homeassistant/core.py

* fix mocks

* one more internal

* more places where internal can be used

* more places where internal can be used

* more places where internal can be used

* internal one more place since this is high volume and was already eager_start
2024-04-28 18:29:00 -04:00
Jan BouwhuisandGitHub 372c6c7874 Use existing monotonic timestamp on mqtt messages for debugging (#116196) 2024-04-25 19:09:54 -05:00
J. Nick KostonandGitHub 423544401e Convert MQTT to use asyncio (#115910) 2024-04-21 22:33:58 +02:00
Joost LekkerkerkerandGitHub 16e31d8f74 Add test helper to snapshot a platform (#115880)
* Add test helper to snapshot a platform

* Add test helper to snapshot a platform
2024-04-20 14:49:57 +02:00
J. Nick KostonandGitHub ee535ee611 Ensure test async_create_task eager start behavior matches production (#115517) 2024-04-13 15:58:52 -05:00
J. Nick KostonandGitHub ca5ed274cb Deprecate calling async_listen and async_listen_once with run_immediately (#115169) 2024-04-08 10:07:54 -10:00
Marc MuellerandGitHub a52a80f806 Always include old_state in EventStateChangedData [tests] (#115098) 2024-04-08 08:25:22 -10:00
J. Nick KostonandGitHub 3daecc7a31 Remove remaining run_immediately=False from tests (#115168) 2024-04-07 16:47:41 -10:00
8e98ba7312 Add first batch of Ruff PYI rules (#115100)
Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>
2024-04-07 11:30:50 -10:00
Marc MuellerandGitHub 8324fd5d1d Deprecated old backports and typing aliases (#114883) 2024-04-06 13:15:30 -10:00