Commit Graph

422 Commits (e11d24f06f2216944bc77c5b30d50e137c384000)

Author SHA1 Message Date
Erik Montnemery 07b19b3dd9
Adjust homekit tests which create devices (#98193) 2023-08-10 18:23:17 +02:00
Erik Montnemery 7539cf25be
Don't require passing identifiers to DeviceRegistry.async_get_device (#96479)
* Require keyword arguments to DeviceRegistry.async_get_device

* Update tests

* Update tests

* Don't enforce keyword arguments
2023-07-13 13:39:25 -04:00
J. Nick Koston e3e1bef376
Fix manual specification of multiple advertise_ip with HomeKit (#95548)
fixes #95508
2023-06-29 11:35:32 -04:00
Franck Nijhof 3e85a29b86
Move overlapping pylint rules to ruff, disable mypy overlap (#94359) 2023-06-27 17:42:46 +02:00
J. Nick Koston ef2e55ecec
Add dual IP stack support to HomeKit (#94126)
* Add dual IP stack support to HomeKit

* fix tests

* Update homeassistant/components/network/__init__.py

* remove scopes

* Bump HAP-python to 4.7.0

fixes pairing with newer iOS

changelog: https://github.com/ikalchev/HAP-python/compare/v4.6.0...4.7.0

* fixes

* update tests

* Relocate get_announced_addresses from zeroconf to network

needed for #94126

* rename

* rename

* Update homeassistant/components/network/__init__.py

* Update homeassistant/components/network/__init__.py

* rename

* fix import

* coverage
2023-06-24 23:18:38 -04:00
J. Nick Koston b857dc8d94
Bump HAP-python to 4.7.0 (#94812) 2023-06-20 23:06:26 +02:00
J. Nick Koston a0c023d5cb
Reduce overhead to lookup items in the entity and device registry (#94568) 2023-06-14 20:47:18 +02:00
Erik Montnemery 0126cfa9d9
Allow exposing any entity to the default conversation agent (#92398)
* Allow exposing any entity to the default conversation agent

* Tweak

* Fix race, update tests

* Update tests
2023-05-03 09:45:54 -04:00
Erik Montnemery e3c16e634b
Allow exposing entities not in the entity registry to assistants (#92363) 2023-05-02 22:08:09 +02:00
J. Nick Koston b875706bdd
Default homekit to listening on all interfaces to match Home Assistant behavior (#91520) 2023-04-17 09:41:57 +02:00
Assaf Inbal 7446ff478f
Add h264_v4l2m2m codec and profiles to HomeKit cameras (#91246) 2023-04-12 10:46:21 -10:00
J. Nick Koston d442f2aedb
Add names to homekit tasks to better track startup problems (#90802)
* Add names to homekit tasks to better track startup problems

* fix test
2023-04-08 23:13:47 -04:00
J. Nick Koston b4fec762bc
Switch to fnv-hash-fast from fnvhash (#90761)
* Switch to fnv-hash-fast from fnvhash

Replaces the pure python implemention with a fast cpp one
when available (with fallback to pure python)

changelog: https://github.com/bdraco/fnv-hash-fast/releases/tag/v0.3.1
source: https://github.com/bdraco/fnv-hash-fast/tree/main/src/fnv_hash_fast

* Apply suggestions from code review

* lint
2023-04-05 20:52:23 -04:00
Stackie Jia 5c2af99520
Improve the HomeKit (de)humidifier min/max humidity handling (#90854) 2023-04-05 06:35:47 -10:00
Doney den Ouden 755c44d152
Add HomeKit Door accessory type (#80741)
Co-authored-by: Jason Redd <jredd46@gmail.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-03-06 18:07:43 -10:00
epenet ee78864b05
Adjust entity registry access in homekit tests (#88959) 2023-03-01 16:54:00 +01:00
J. Nick Koston 3ebb2fc3a9
Fix handling of HomeKit sources with unsafe characters (#88280)
fixes #87049
2023-02-22 14:33:27 -05:00
emanuelst 0b81c836ef
Update HomeKit VOC mappings (#87663)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-02-20 11:56:41 -06:00
epenet a16e298599
Adjust json imports in tests (#88248) 2023-02-17 19:13:48 +01:00
Franck Nijhof ed79265843
Enable Ruff PT006 (#88165)
* Enable Ruff PT006

* Adjust existing cases

* Fix tests

* Remove unneeded parentheses
2023-02-15 14:09:50 +01:00
epenet 1e352b60df
Add type hints to integration tests (part 11) (#87996) 2023-02-13 14:22:49 +01:00
epenet 03710e58b5
Add type hints to integration tests (part 9) (#87983) 2023-02-13 12:06:51 +01:00
Erik Montnemery cc564026fa
Move EntityCategory to homeassistant.const (#87792)
* Move EntityCategory to homeassistant.const

* Fix more imports
2023-02-09 20:15:37 +01:00
Franck Nijhof f5b651750c
Enable Ruff ICN001 (#87775) 2023-02-09 13:41:50 +01:00
epenet 37a2040d7b
Add type hints to integration tests (h-i) (#87703) 2023-02-08 18:12:56 +01:00
epenet 4142f0d15d
Add return type to tests without arguments (#87613)
* Add return type to tests without arguments

* Black

* Cancel fixture amends
2023-02-07 14:20:06 +01:00
epenet aa00114c2f
Add return type to async tests without arguments (#87612) 2023-02-07 10:26:56 +01:00
J. Nick Koston faf79d0b50
Ensure humidity is still exported to HomeKit when it is read-only (#87051)
* Ensure humidity is still exported to HomeKit when is cannot be set

We would only send humidity to HomeKit if the device supported
changing the humidity

* remove unrelated changes
2023-01-31 21:03:43 -05:00
Franck Nijhof fca3382d37
Migrates tests to use MediaPlayerEntityFeature enum (#86779) 2023-01-27 10:56:40 +01:00
Franck Nijhof 62dcbe5258
Enable Ruff PT001 (#86730) 2023-01-26 18:05:05 +01:00
Michael e35ab75c0b
Replace the usage of unit constants by enumerations in Tests [h-l] (#85934) 2023-01-15 14:52:55 +01:00
epenet 4c8e3aa7c4
Remove lumen from Illuminance units (#84386) 2022-12-27 14:25:47 +01:00
Yuval Aboulafia 3149c52be1
Fix F602 key repeated (#84531) 2022-12-27 11:07:10 +01:00
J. Nick Koston 692a732555
Fix HomeKit media players when entity has duplicate sources (#83890)
fixes #83852 fixes #83698
2022-12-12 21:29:06 -05:00
Joakim Plate c576a68d33
Upgrade pytest-aiohttp (#82475)
* Upgrade pytest-aiohttp

* Make sure executors, tasks and timers are closed

Some test will trigger warnings on garbage collect, these warnings
spills over into next test.

Some test trigger tasks that raise errors on shutdown, these spill
over into next test.

This is to mimic older pytest-aiohttp and it's behaviour on test
cleanup.

Discussions on similar changes for pytest-aiohttp are here:
https://github.com/pytest-dev/pytest-asyncio/pull/309

* Replace loop with event_loop

* Make sure time is frozen for tests

* Make sure the ConditionType is not async

  /home-assistant/homeassistant/helpers/template.py:2082: RuntimeWarning: coroutine 'AsyncMockMixin._execute_mock_call' was never awaited
    def wrapper(*args, **kwargs):
  Enable tracemalloc to get traceback where the object was allocated.
  See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info.

* Increase litejet press tests with a factor 10

The times are simulated anyway, and we can't stop the normal
event from occuring.

* Use async handlers for aiohttp

tests/components/motioneye/test_camera.py::test_get_still_image_from_camera
tests/components/motioneye/test_camera.py::test_get_still_image_from_camera
tests/components/motioneye/test_camera.py::test_get_stream_from_camera
tests/components/motioneye/test_camera.py::test_get_stream_from_camera
tests/components/motioneye/test_camera.py::test_camera_option_stream_url_template
tests/components/motioneye/test_camera.py::test_camera_option_stream_url_template
  /Users/joakim/src/hass/home-assistant/venv/lib/python3.9/site-packages/aiohttp/web_urldispatcher.py:189: DeprecationWarning: Bare functions are deprecated, use async ones
    warnings.warn(

* Switch to freezegun in modbus tests

The tests allowed clock to tick in between steps

* Make sure skybell object are fully mocked

Old tests would trigger attempts to post to could services:

```
DEBUG:aioskybell:HTTP post https://cloud.myskybell.com/api/v3/login/ Request with headers: {'content-type': 'application/json', 'accept': '*/*', 'x-skybell-app-id': 'd2b542c7-a7e4-4e1e-b77d-2b76911c7c46', 'x-skybell-client-id': '1f36a3c0-6dee-4997-a6db-4e1c67338e57'}
```

* Fix sorting that broke after rebase
2022-11-29 22:36:36 +01:00
J. Nick Koston 03e6132d98
Fix static version in homekit tests (#82201) 2022-11-16 09:37:00 -06:00
J. Nick Koston ade4b62aec
Fix instability with HomeKit trigger accessories (#80703)
fixes https://github.com/home-assistant/core/issues/78774
fixes https://github.com/home-assistant/core/issues/81685
2022-11-15 18:41:55 +01:00
J. Nick Koston 2cb58b8189
Fix off by one in HomeKit iid allocator (#81793) 2022-11-08 09:20:03 -06:00
J. Nick Koston 53c1c2eb56
Fix homekit bridge iid allocations (#81613)
fixes undefined
2022-11-08 11:15:16 +01:00
Stackie Jia a1eec7b55d
Expose NO2 and VOCs sensors to homekit (#81217)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-10-30 11:33:06 -05:00
J. Nick Koston d381be3868
Fix homekit diagnostics test when version changes (#81046) 2022-10-26 22:50:59 +02:00
J. Nick Koston a90ef3a575
Add additional data to HomeKit diagnostics (#80980) 2022-10-26 10:05:33 +02:00
J. Nick Koston 3b33e0d832
Add support for restoring HomeKit IIDs (#79913) 2022-10-14 09:58:09 -10:00
Erik Montnemery 51e6d49451
Adapt homekit to color temperatures in K (#79713) 2022-10-06 09:20:10 -10:00
J. Nick Koston ec8901b9af
Improve robustness of linking homekit yaml to config entries (#79386) 2022-10-01 16:44:45 +02:00
epenet 0d696b84b2
Cleanup root component imports in tests (#78893) 2022-09-21 06:57:41 -10:00
epenet 0ac581a0b1
Cleanup EntityFeature in tests (#78859) 2022-09-21 10:48:55 +02:00
epenet f453726b18
Cleanup HVACAction and HVACMode in tests (#78813) 2022-09-20 20:30:54 +02:00
epenet 6b3c91bd6a
Cleanup ColorMode in tests (#78807) 2022-09-20 18:33:45 +02:00
epenet fe747601ff
Cleanup DeviceClass and StateClass in tests (#78811) 2022-09-20 10:49:11 -04:00
epenet 7bc2712142
Adjust root-import in tests (#78761)
* Adjust root-import in tests

* Adjust diagnostics

* Adjust button

* Adjust select

* Adjust device_tracker

* Adjust camera

* Adjust humidifier

* Adjust media_source

* Adjust update

* Adjust siren

* Adjust number

* Adjust alarm_control_panel

* Adjust notify

* Adjust sensor

* Adjust switch

* Revert anthemav

* Don't adjust demo humidifier
2022-09-19 15:22:23 +02:00
Artem Draft ac56b3306a
Fix covers moving state in HomeKit (#77101)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-08-21 06:54:37 -10:00
Sarabveer Singh 01de1c6304
Update HomeKit PM2.5 mappings to US AQI (#76358) 2022-08-08 11:49:07 -10:00
Franck Nijhof 7cd68381f1
Search/replace RESULT_TYPE_* by FlowResultType enum (#74642) 2022-07-07 19:57:36 +03:00
Franck Nijhof 68ccb96089
Refactor CI (#74014) 2022-07-07 18:53:24 +02:00
J. Nick Koston 629c68221e
Avoid retriggering HomeKit doorbells on forced updates (#74141) 2022-06-28 19:54:27 -05:00
Franck Nijhof bfb47eb212
Final clean up of helpers accessed via hass (#72032)
* Final clean up of helpers accessed via hass

* Fix circular dep

* Fix import
2022-05-17 23:42:37 +03:00
J. Nick Koston 24d7a464e1
Refactor logbook to reduce overhead and complexity (#71509) 2022-05-08 21:47:26 -07:00
Paulus Schoutsen 6e675d6f07
Fix homekit tests in beta (#71268) 2022-05-03 14:09:35 -07:00
J. Nick Koston 60bfcc6be4
Allow hidden entities to be selected in homekit include mode (#71250) 2022-05-03 09:47:13 -07:00
J. Nick Koston 034ba7d3ff
Only read HomeKit service/chars from disk once (#70354) 2022-04-21 13:54:44 -07:00
J. Nick Koston 47c3aef7a2
Fix registered entities without a category not being exclude-able in the HomeKit UI (#69543) 2022-04-07 13:46:41 +02:00
J. Nick Koston 220beefb89
Prevent HomeKit from offering hidden entities (#69042) 2022-04-01 13:34:44 +02:00
Erik Montnemery 1c57e65cea
Exclude hidden entities from homekit (#68552) 2022-03-23 10:32:51 +01:00
Lester Lo 56abd5f2cf
Add homekit pm type sensor (#46060)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-03-08 08:37:20 +01:00
J. Nick Koston f268191985
Handle fan_modes being set to None in homekit (#67790) 2022-03-07 09:10:38 -08:00
J. Nick Koston 6d2302b703
Add guards for HomeKit version/names that break apple watches (#67585) 2022-03-03 15:03:46 -08:00
J. Nick Koston f69571f164
Add support for climate fan and oscillate mode to HomeKit (#66463) 2022-02-22 09:58:31 +01:00
J. Nick Koston f2f2a08966
Add support for auto target fan state in HomeKit fans (#66383) 2022-02-21 19:08:09 +01:00
J. Nick Koston 41f602c3df
Fix loss of ability to control white channel in HomeKit on RGB&W lights (#65864)
* Fix loss of ability to control white channel in HomeKit on RGB&W lights

- Fix white channel missing from RGB/W lights

- Fix temp missing from RGB/CW lights

- Fixes #65529

* cover the missing case

* bright fix

* force brightness notify on color mode change as well
2022-02-06 14:12:30 -08:00
J. Nick Koston 62da194340
Add diagnostics support to HomeKit (#65942)
* Add diagnostics support to HomeKit

* remove debug
2022-02-06 14:02:07 -08:00
J. Nick Koston d53124910f
Add entity category support to HomeKit (#64492) 2022-01-19 21:48:50 -10:00
J. Nick Koston 36e2617796
Ensure homekit options flow remembers excluded entities during edit (#64401) 2022-01-18 19:17:43 -10:00
Li-Huai (Allan) Lin 64d0b89ca1
Fix humidifier state error in HomeKit (#61432)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-01-16 19:03:54 -10:00
J. Nick Koston d3f980d402
Convert siri requests for target heating cooling state auto to a valid mode (#60220) 2022-01-12 15:06:09 -08:00
J. Nick Koston 5622db10b1
Fix HomeKit reporting/setting colors when white values are present (#63948) 2022-01-12 14:58:25 -08:00
J. Nick Koston 1019156899
Fix homekit options being mutated during config_flow/migration (#64003) 2022-01-12 14:56:24 -08:00
J. Nick Koston 9dd09f66e2
Ensure selected entity is pre-selected in homekit options flow (#63628)
* Ensure selected entity is pre-selected in homekit options flow

- We recently adjusted the flow to exclude entities that had
  been deleted from breaking the UI validation. We need to include
  single entities in the set of all supported entities since
  accessory mode has no domain filter

* tweak

* Additional fixes

* small tweak to speed up building the set

* merged fixed version for test branch
2022-01-07 17:46:39 -08:00
J. Nick Koston 945477a482
Fix KeyError during call to homekit.unpair (#63627) 2022-01-07 19:47:14 +01:00
J. Nick Koston 5c8271552a
Add hardware revision support to homekit (#63336) 2022-01-04 16:19:12 +01:00
Erik Montnemery e9b746e874
Add turned on or off device trigger to toggle entity (#61089)
* Add turned on or off device trigger to toggle entity

* Renamed changed_states trigger to toggled

* Adjust tests

* Fix homekit triggers test

* Add tests

* Adjust tests after rebase

Co-authored-by: J. Nick Koston <nick@koston.org>
2022-01-03 10:41:30 +01:00
J. Nick Koston 417172eef2
Cleanup HomeKit names to avoid unknown error when adding (#62831) 2021-12-27 09:53:33 +01:00
Lorenzo Brescanzin 0da710c4e0
Fix HomeKit sensor update check (#62705) 2021-12-24 08:39:37 -10:00
Erik Montnemery cb2c2d98c3
Remove unnecessary checks before calling os.makedirs (#62576) 2021-12-23 09:59:31 +01:00
Franck Nijhof c5d62ccc7e
Add input_button support to HomeKit (#62590) 2021-12-22 13:23:57 -10:00
Ville Skyttä c5e6489475
Use DeviceAutomationType in tests/components/[h-l]* (#62441) 2021-12-20 22:18:53 +01:00
Dave T 168fefad88
Use DeviceClass Enums in homekit (#62218) 2021-12-20 12:53:44 -06:00
epenet 931d51949d
Use new DeviceClass enums in homekit (#61665)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-18 19:07:04 -06:00
J. Nick Koston 8200101785
Fix HomeKit covers with device class window and no tilt (#61566) 2021-12-12 14:10:40 -08:00
J. Nick Koston 52e0027fad
Limit homekit sources to prevent exceeding 100 limit (#59743) 2021-11-23 22:15:08 +01:00
J. Nick Koston 6524cd4eb2
Fix user input malformed with deleted entities in HomeKit exclude flow (#60061) 2021-11-23 11:46:54 -06:00
J. Nick Koston 400aaeaa91
Ensure homekit setup messages run in event loop (#60226) 2021-11-23 11:40:20 -06:00
J. Nick Koston 7359083e98
Remove legacy executor usage from HomeKit tests (#60180) 2021-11-22 22:37:28 -06:00
Franck Nijhof 766c889e70
Add button support to HomeKit (#60165)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-11-23 00:46:51 +01:00
Erik Montnemery 49a27e12ad
Add support to entity registry for overriding device_class (#59985) 2021-11-22 08:38:06 -08:00
J. Nick Koston 347c4ea137
Bump zeroconf to 0.37.0 (#59932) 2021-11-18 20:23:20 -08:00
J. Nick Koston 0fb21af07f
Strip out deleted entities when configuring homekit (#59844) 2021-11-18 15:21:51 -08:00
Paulus Schoutsen 31153ac155
Move fixtures part 1 (#58902) 2021-11-01 20:47:05 -07:00
Paulus Schoutsen f51e1fcb67
Check for uncaught service not found exceptions (#58010) 2021-11-01 14:33:09 +01:00
J. Nick Koston 438ca73aba
Complete removal of auto_start, zeroconf_default_interface, and safe_mode from HomeKit (#58320) 2021-10-24 11:46:35 +02:00