From 143be49c668ac6512237f20520c1adae877f3f53 Mon Sep 17 00:00:00 2001 From: Matt Schmitt Date: Fri, 25 May 2018 05:38:48 -0400 Subject: [PATCH] Add HomeKit support for automations (#14595) --- homeassistant/components/homekit/__init__.py | 3 ++- tests/components/homekit/test_get_accessories.py | 6 ++++-- tests/components/homekit/test_type_switches.py | 7 ++++++- 3 files changed, 12 insertions(+), 4 deletions(-) diff --git a/homeassistant/components/homekit/__init__.py b/homeassistant/components/homekit/__init__.py index 561301cdb6d..f011a56a77b 100644 --- a/homeassistant/components/homekit/__init__.py +++ b/homeassistant/components/homekit/__init__.py @@ -149,7 +149,8 @@ def get_accessory(hass, state, aid, config): elif device_class == DEVICE_CLASS_ILLUMINANCE or unit in ('lm', 'lx'): a_type = 'LightSensor' - elif state.domain in ('switch', 'remote', 'input_boolean', 'script'): + elif state.domain in ('automation', 'input_boolean', 'remote', 'script', + 'switch'): a_type = 'Switch' if a_type is None: diff --git a/tests/components/homekit/test_get_accessories.py b/tests/components/homekit/test_get_accessories.py index 6f6d39e477a..11b2d737a70 100644 --- a/tests/components/homekit/test_get_accessories.py +++ b/tests/components/homekit/test_get_accessories.py @@ -129,9 +129,11 @@ def test_type_sensors(type_name, entity_id, state, attrs): @pytest.mark.parametrize('type_name, entity_id, state, attrs', [ - ('Switch', 'switch.test', 'on', {}), - ('Switch', 'remote.test', 'on', {}), + ('Switch', 'automation.test', 'on', {}), ('Switch', 'input_boolean.test', 'on', {}), + ('Switch', 'remote.test', 'on', {}), + ('Switch', 'script.test', 'on', {}), + ('Switch', 'switch.test', 'on', {}), ]) def test_type_switches(type_name, entity_id, state, attrs): """Test if switch types are associated correctly.""" diff --git a/tests/components/homekit/test_type_switches.py b/tests/components/homekit/test_type_switches.py index 5fc0b6ce1b9..ff94c4b6a0b 100644 --- a/tests/components/homekit/test_type_switches.py +++ b/tests/components/homekit/test_type_switches.py @@ -9,7 +9,12 @@ from tests.common import async_mock_service @pytest.mark.parametrize('entity_id', [ - 'switch.test', 'remote.test', 'input_boolean.test']) + 'automation.test', + 'input_boolean.test', + 'remote.test', + 'script.test', + 'switch.test', +]) async def test_switch_set_state(hass, entity_id): """Test if accessory and HA are updated accordingly.""" domain = split_entity_id(entity_id)[0]