Commit Graph
474 Commits
Author SHA1 Message Date
Erik Montnemery cefbb109d2 Add missing file cleanup to homekit tests (#173513) 2026-06-11 21:03:28 +02:00
Charles VestalandClaude Opus 4.8 9bdb2e21fe Fix HomeKit crash on integer device trigger subtypes (#173334)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-09 12:15:46 +02:00
epenet 397c28b9b6 Use DOMAIN constant in test (async_setup_component h-n) (#173015) 2026-06-08 16:28:17 +02:00
jtjart 13ef737873 Add projector as media player device class (#169274) 2026-05-28 19:27:21 +02:00
Martin Hjelmare 4306863729 Fix homekit test_reload flaky test (#171878) 2026-05-22 14:33:27 -05:00
Erik Montnemery b52476a37e Remove use of advanced mode from the homekit integration (#171200) 2026-05-19 16:27:58 +02:00
Paulus SchoutsenandClaude Opus 4.6 23b0f550b1 Fix flaky homekit test_reload port check timeout (#171029)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-17 17:06:17 -04:00
Franck Nijhofandcopilot-swe-agent[bot] 95f3bd7c09 Fix line length violations in tests/components h (#170955)
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
2026-05-17 13:09:56 +02:00
epenet 88525955ce Remove import annotations from tests (#169527) 2026-04-30 09:30:46 +02:00
Jon CulverandClaude Opus 4.6 4d6a278137 Add Off mode support for water_heater entities in HomeKit (#166836)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-01 22:29:13 +02:00
Artur Pragacz 151eae4d5a Add compatibility layer for entities without has_entity_name to entity registry (#166246) 2026-03-24 20:22:15 +01:00
J. Nick Koston bf23fc5887 Fix choppy HomeKit camera audio with SRTP audio proxy (#165185) 2026-03-16 07:36:08 -10:00
epenet b6e7a55cd1 Rename DOMAIN_xxx aliases in tests (#163261) 2026-02-17 14:37:17 +01:00
Björn EbbinghausandAbílio Costa 3ebc08c5ec Prefer explicit DeviceClass over hint in entity_id in homekit (#152507)
Co-authored-by: Abílio Costa <abmantis@users.noreply.github.com>
2026-01-13 23:00:58 +00:00
epenet cb3424cdf0 Remove more components from _IGNORE_ROOT_IMPORT in pylint plugin (#154622) 2025-10-16 12:52:51 -04:00
Fabian LeutgebandJ. Nick Koston ecae074dd7 Homekit valve duration properties (#150273)
Co-authored-by: J. Nick Koston <nick@koston.org>
2025-09-01 08:24:50 -05:00
Fabian LeutgebandJ. Nick Koston 61396d92a5 Homekit valve duration characteristics (#149698)
Co-authored-by: J. Nick Koston <nick@koston.org>
2025-07-31 15:21:48 -10:00
Marc Mueller 5e377b89fc Update pytest-asyncio to 1.0.0 (#145988)
* Update pytest-asyncio to 1.0.0

* Remove event_loop fixture uses
2025-06-02 06:12:22 +02:00
epenet ed9fd2c643 Use async_load_fixture in async test functions (b-i) (#145714)
* Use async_load_fixture in async test functions (b-i)

* Adjust
2025-06-01 06:31:37 -07:00
epenet 695f69bd90 Remove unnecessary DOMAIN alias in tests (e-k) (#145818) 2025-05-28 21:06:25 +03:00
jz-vandJ. Nick Koston d8e0be69d1 Add HomeKit thermostat fan state mapping for preheating, defrosting (#145353)
Co-authored-by: J. Nick Koston <nick@koston.org>
2025-05-22 11:57:01 -05:00
Tamer Wahba 96a8902365 fix homekit air purifier temperature sensor to convert unit (#144435) 2025-05-08 17:41:14 -05:00
J. Nick Koston 514363f1c5 Use configured names in HomeKit for child accessories (#142531) 2025-04-14 14:24:43 +02:00
J. Nick Koston 1aa996d5f0 Add debug logging to homekit when an sensor entity cannot be classified (#142707)
* Add debug logging to homekit when an sensor entity cannot be classified

In #132937 many hours were spent investigating an issue which
turned out to be that the entity did not have a device class
at startup because the group integration does not set the device
class if any of the underlying entities state is invalid.

closes #132937

* coverage

* Update tests/components/homekit/test_get_accessories.py
2025-04-14 10:12:27 +02:00
9fe306f056 Add support for air purifiers in HomeKit (#142467)
* Add support for air purifier type in HomeKit.

Any fan and PM2.5 in the same device will be treated as an air purifier.

type_air_purifiers.py heavily based on type_fans.py -
I tried extending type_fans.py but this looked better to me.

* Refactor to make AirPurifier class extend Fan.

* Ensure all chars are added before creating service

* Add support for switching automatic mode.

* Add test for auto/manual switch

* Add support for air purifier type in HomeKit.

Any fan and PM2.5 in the same device will be treated as an air purifier.

type_air_purifiers.py heavily based on type_fans.py -
I tried extending type_fans.py but this looked better to me.

* Add support for air purifier type in HomeKit.

Any fan and PM2.5 in the same device will be treated as an air purifier.

type_air_purifiers.py heavily based on type_fans.py -
I tried extending type_fans.py but this looked better to me.

* Refactor to make AirPurifier class extend Fan.

* Ensure all chars are added before creating service

* Add support for switching automatic mode.

* Add test for auto/manual switch

* Add support for air purifier type in HomeKit.

Any fan and PM2.5 in the same device will be treated as an air purifier.

type_air_purifiers.py heavily based on type_fans.py -
I tried extending type_fans.py but this looked better to me.

* Improve fan config: allow setting fan type (fan or air purifier)

Be more explicit than assuming a fan is an air purifier if it has a PM2.5 sensor. Set defaults based on the presence of sensors.

* Fix return type annotation for fan/air purifier create_services

* Allow linking air purifier filter level/change indicator

* Remove no longer needed if statement in fan init

* Fix up types and clean up code

* Update homekit tests to account for air purifiers

* Fix pylint errors

* Fix mypy errors

* Improve type annotations

* Improve readability of auto preset mode discovery

* Test air purifier with 'Auto' preset mode

* Handle case with a single preset mode

* Test air purifier edge cases: state updates to same value, and removed linked entities

* Don't create 'auto mode' switch for air purifiers

This is already exposed as a target mode on the air purifier service itself

* Handle unavailable states in air purifier

Also don't remove device class when updating state in test

* Reduce branching in air purifier test

* Split up air purifier tests for with and without auto presets, to reduce branching

* Handle unavailable states in air purifier more explicitly

* Use constant for ignored state values

* Use a set for ignored_states

* Update tests/components/homekit/test_type_air_purifiers.py

---------

Co-authored-by: Andrew Kurowski <62596884+ak6i@users.noreply.github.com>
Co-authored-by: J. Nick Koston <nick+github@koston.org>
Co-authored-by: J. Nick Koston <nick@koston.org>
2025-04-09 10:20:21 -10:00
Paul Bottein cdead8661d Add lawn mower support to HomeKit (#140438)
Add lawn mower support to homekit
2025-03-13 10:27:00 -10:00
epenet 1c242a6602 Migrate homekit tests to use unit system (#140372) 2025-03-11 15:10:20 +02:00
Assaf Inbal 9c4940e915 Fix Homekit camera profiles schema (#137110) 2025-02-01 12:49:09 -06:00
epenet 7b1b229718 Standardize homeassistant imports in component tests (a-l) (#136806) 2025-01-29 10:00:45 +01:00
J. Nick Koston 43fe4ebbbe Prevent HomeKit from going unavailable when min/max is reversed (#135892) 2025-01-17 14:08:17 -10:00
J. Nick Koston e736ca72f0 Handle invalid HS color values in HomeKit Bridge (#135739) 2025-01-15 13:33:58 -10:00
Erik Montnemery 5888b83f22 Validate device id when adding or updating entity registry entry (#134982) 2025-01-07 16:10:51 +00:00
epenet 839312c65c Migrate homekit light tests to use Kelvin (#133011) 2024-12-12 15:11:52 +01:00
G Johansson 2eaf206562 Implement new state property for vacuum which is using an enum (#126353)
* Implement new state property for vacuum which is using an enum

* Mod

* Mod init

* Mods

* Fix integrations

* Tests

* Fix state

* Add vacuum tests

* Fix last test

* Litterrobot tests

* Fixes

* Tests

* Fixes

* Fix VacuumEntity

* Mods

* Mods

* Mods

* Update demo

* LG

* Fix vacuum

* Fix Matter

* Fix deprecation version

* Mods

* Fixes

* Fix ruff

* Fix tests

* Fix roomba

* Fix breaking dates
2024-12-06 11:16:03 +01:00
J. Nick Koston a0d5fda4b6 Reduce precision loss when converting HomeKit temperature (#131973) 2024-11-30 16:09:37 -06:00
J. Nick Koston 2b907ee56e Strip trailing spaces from HomeKit names (#131971) 2024-11-30 14:47:40 -06:00
AndyandJ. Nick Koston bcdac7ed37 Add support for linked_doorbell_sensor to HomeKit locks (#131660)
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-11-30 13:30:21 -06:00
G Johansson 85bf8d1374 Fix Homekit error handling alarm state unknown or unavailable (#130311) 2024-11-10 22:40:23 +00:00
J. Nick Koston 3b458738e0 Fix setting brightness to 0 in HomeKit when the On characteristic is not sent (#129201) 2024-10-26 15:29:15 +02:00
G Johansson cdfec7ebb4 Implement new state property for alarm_control_panel which is using an enum (#126283)
* Alarm state from enum

* Fixes

* Set final

* Fix rebase

* Test const

* Fix breaking version

* Fix other for alarm_control_panel

* Fix integrations

* More

* More

* More

* More

* Fix zha

* Replace _attr_state

* Fix alarm_control_panel

* Fix tests

* Fixes

* Mods

* Change some

* More

* More

* More

* Tests

* Last tests

* Return enum

* Fix zha

* Remove not needed check

* Fix wording

* Fix homekit

* Mod prometheus

* Fix mypy

* Fix homekit

* Fix ifttt
2024-10-21 22:54:27 +02:00
epenet be4641b8f3 Push real binary sensor states to state machine in tests (#128894) 2024-10-21 16:19:25 +02:00
G Johansson 666e8e133e Cover state is enum (#127144)
* Change light state to use enum

* Adjust cover tests

* Update cover

* Fix covers

* Some tests

* More tests

* Fix tests

* Fix
2024-10-08 18:39:04 +02:00
J. Nick Koston 0326e58c8a Remove automatic linkage of doorbells to HomeKit accessories via device class occupancy (#127668) 2024-10-05 14:24:58 -05:00
Indrajit Raychaudhuri 0bf90d18ef Ensure that HomeKit names start and end with alphanumeric character (#126413) 2024-09-24 18:18:17 +02:00
G Johansson 93aade6e8e Change lock state to an enum (#126379)
* Add new LockState enum for lock states

* Add rest

* Fix insteon tests

* Fix mqtt tests

* Fix tesla_fleet

* Revert back ST_STATE_LOCKED

* Add back constant
2024-09-24 12:30:50 +02:00
epenet 6ea59ffa94 Add alias to DOMAIN import in tests [h-m] (#125577)
* Add alias to DOMAIN import in tests [h-m]

* Revert changes to mqtt
2024-09-09 15:21:01 +02:00
epenet db92f29c00 Improve type hints in homekit and homekit_controller tests (#124213)
Add missing hass type hint in homekit and homekit_controller tests
2024-08-20 12:47:41 +02:00
J. Nick Koston c8b0c939e4 Ensure event entities are allowed for linked homekit config via YAML (#123994) 2024-08-16 16:48:59 +02:00
J. Nick Koston 17f0d9ce45 Map pre-heating and defrosting hvac actions in homekit (#123907)
closes #123864
2024-08-14 15:36:49 +02:00
J. Nick Koston 7348a1fd0c Convert homekit to use entry.runtime_data (#122533) 2024-07-25 11:06:55 +02:00