Use Platform constant in hue tests (#145798)

This commit is contained in:
epenet 2025-05-28 14:43:48 +02:00 committed by GitHub
parent 6b28af8282
commit 1889f0ef66
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
10 changed files with 77 additions and 42 deletions

View File

@ -2,6 +2,7 @@
from unittest.mock import Mock from unittest.mock import Mock
from homeassistant.const import Platform
from homeassistant.core import HomeAssistant from homeassistant.core import HomeAssistant
from homeassistant.util.json import JsonArrayType from homeassistant.util.json import JsonArrayType
@ -15,7 +16,7 @@ async def test_binary_sensors(
"""Test if all v2 binary_sensors get created with correct features.""" """Test if all v2 binary_sensors get created with correct features."""
await mock_bridge_v2.api.load_test_data(v2_resources_test_data) await mock_bridge_v2.api.load_test_data(v2_resources_test_data)
await setup_platform(hass, mock_bridge_v2, "binary_sensor") await setup_platform(hass, mock_bridge_v2, Platform.BINARY_SENSOR)
# there shouldn't have been any requests at this point # there shouldn't have been any requests at this point
assert len(mock_bridge_v2.mock_requests) == 0 assert len(mock_bridge_v2.mock_requests) == 0
# 5 binary_sensors should be created from test data # 5 binary_sensors should be created from test data
@ -86,7 +87,7 @@ async def test_binary_sensor_add_update(
) -> None: ) -> None:
"""Test if binary_sensor get added/updated from events.""" """Test if binary_sensor get added/updated from events."""
await mock_bridge_v2.api.load_test_data([FAKE_DEVICE, FAKE_ZIGBEE_CONNECTIVITY]) await mock_bridge_v2.api.load_test_data([FAKE_DEVICE, FAKE_ZIGBEE_CONNECTIVITY])
await setup_platform(hass, mock_bridge_v2, "binary_sensor") await setup_platform(hass, mock_bridge_v2, Platform.BINARY_SENSOR)
test_entity_id = "binary_sensor.hue_mocked_device_motion" test_entity_id = "binary_sensor.hue_mocked_device_motion"

View File

@ -7,6 +7,7 @@ from pytest_unordered import unordered
from homeassistant.components import automation, hue from homeassistant.components import automation, hue
from homeassistant.components.device_automation import DeviceAutomationType from homeassistant.components.device_automation import DeviceAutomationType
from homeassistant.components.hue.v1 import device_trigger from homeassistant.components.hue.v1 import device_trigger
from homeassistant.const import Platform
from homeassistant.core import HomeAssistant, ServiceCall from homeassistant.core import HomeAssistant, ServiceCall
from homeassistant.helpers import device_registry as dr, entity_registry as er from homeassistant.helpers import device_registry as dr, entity_registry as er
from homeassistant.setup import async_setup_component from homeassistant.setup import async_setup_component
@ -27,7 +28,9 @@ async def test_get_triggers(
) -> None: ) -> None:
"""Test we get the expected triggers from a hue remote.""" """Test we get the expected triggers from a hue remote."""
mock_bridge_v1.mock_sensor_responses.append(REMOTES_RESPONSE) mock_bridge_v1.mock_sensor_responses.append(REMOTES_RESPONSE)
await setup_platform(hass, mock_bridge_v1, ["sensor", "binary_sensor"]) await setup_platform(
hass, mock_bridge_v1, [Platform.SENSOR, Platform.BINARY_SENSOR]
)
assert len(mock_bridge_v1.mock_requests) == 1 assert len(mock_bridge_v1.mock_requests) == 1
# 2 remotes, just 1 battery sensor # 2 remotes, just 1 battery sensor
@ -98,7 +101,9 @@ async def test_if_fires_on_state_change(
) -> None: ) -> None:
"""Test for button press trigger firing.""" """Test for button press trigger firing."""
mock_bridge_v1.mock_sensor_responses.append(REMOTES_RESPONSE) mock_bridge_v1.mock_sensor_responses.append(REMOTES_RESPONSE)
await setup_platform(hass, mock_bridge_v1, ["sensor", "binary_sensor"]) await setup_platform(
hass, mock_bridge_v1, [Platform.SENSOR, Platform.BINARY_SENSOR]
)
assert len(mock_bridge_v1.mock_requests) == 1 assert len(mock_bridge_v1.mock_requests) == 1
assert len(hass.states.async_all()) == 1 assert len(hass.states.async_all()) == 1

View File

@ -9,6 +9,7 @@ from homeassistant.components import hue
from homeassistant.components.device_automation import DeviceAutomationType from homeassistant.components.device_automation import DeviceAutomationType
from homeassistant.components.hue.v2.device import async_setup_devices from homeassistant.components.hue.v2.device import async_setup_devices
from homeassistant.components.hue.v2.hue_event import async_setup_hue_events from homeassistant.components.hue.v2.hue_event import async_setup_hue_events
from homeassistant.const import Platform
from homeassistant.core import HomeAssistant from homeassistant.core import HomeAssistant
from homeassistant.helpers import device_registry as dr, entity_registry as er from homeassistant.helpers import device_registry as dr, entity_registry as er
from homeassistant.util.json import JsonArrayType from homeassistant.util.json import JsonArrayType
@ -23,7 +24,9 @@ async def test_hue_event(
) -> None: ) -> None:
"""Test hue button events.""" """Test hue button events."""
await mock_bridge_v2.api.load_test_data(v2_resources_test_data) await mock_bridge_v2.api.load_test_data(v2_resources_test_data)
await setup_platform(hass, mock_bridge_v2, ["binary_sensor", "sensor"]) await setup_platform(
hass, mock_bridge_v2, [Platform.BINARY_SENSOR, Platform.SENSOR]
)
await async_setup_devices(mock_bridge_v2) await async_setup_devices(mock_bridge_v2)
await async_setup_hue_events(mock_bridge_v2) await async_setup_hue_events(mock_bridge_v2)
@ -62,7 +65,9 @@ async def test_get_triggers(
) -> None: ) -> None:
"""Test we get the expected triggers from a hue remote.""" """Test we get the expected triggers from a hue remote."""
await mock_bridge_v2.api.load_test_data(v2_resources_test_data) await mock_bridge_v2.api.load_test_data(v2_resources_test_data)
await setup_platform(hass, mock_bridge_v2, ["binary_sensor", "sensor"]) await setup_platform(
hass, mock_bridge_v2, [Platform.BINARY_SENSOR, Platform.SENSOR]
)
# Get triggers for `Wall switch with 2 controls` # Get triggers for `Wall switch with 2 controls`
hue_wall_switch_device = device_registry.async_get_device( hue_wall_switch_device = device_registry.async_get_device(

View File

@ -3,6 +3,7 @@
from unittest.mock import Mock from unittest.mock import Mock
from homeassistant.components.event import ATTR_EVENT_TYPE, ATTR_EVENT_TYPES from homeassistant.components.event import ATTR_EVENT_TYPE, ATTR_EVENT_TYPES
from homeassistant.const import Platform
from homeassistant.core import HomeAssistant from homeassistant.core import HomeAssistant
from homeassistant.util.json import JsonArrayType from homeassistant.util.json import JsonArrayType
@ -15,7 +16,7 @@ async def test_event(
) -> None: ) -> None:
"""Test event entity for Hue integration.""" """Test event entity for Hue integration."""
await mock_bridge_v2.api.load_test_data(v2_resources_test_data) await mock_bridge_v2.api.load_test_data(v2_resources_test_data)
await setup_platform(hass, mock_bridge_v2, "event") await setup_platform(hass, mock_bridge_v2, Platform.EVENT)
# 7 entities should be created from test data # 7 entities should be created from test data
assert len(hass.states.async_all()) == 7 assert len(hass.states.async_all()) == 7
@ -69,7 +70,7 @@ async def test_event(
async def test_sensor_add_update(hass: HomeAssistant, mock_bridge_v2: Mock) -> None: async def test_sensor_add_update(hass: HomeAssistant, mock_bridge_v2: Mock) -> None:
"""Test Event entity for newly added Relative Rotary resource.""" """Test Event entity for newly added Relative Rotary resource."""
await mock_bridge_v2.api.load_test_data([FAKE_DEVICE, FAKE_ZIGBEE_CONNECTIVITY]) await mock_bridge_v2.api.load_test_data([FAKE_DEVICE, FAKE_ZIGBEE_CONNECTIVITY])
await setup_platform(hass, mock_bridge_v2, "event") await setup_platform(hass, mock_bridge_v2, Platform.EVENT)
test_entity_id = "event.hue_mocked_device_rotary" test_entity_id = "event.hue_mocked_device_rotary"

View File

@ -9,6 +9,7 @@ from homeassistant.components.hue.const import CONF_ALLOW_HUE_GROUPS
from homeassistant.components.hue.v1 import light as hue_light from homeassistant.components.hue.v1 import light as hue_light
from homeassistant.components.light import ColorMode from homeassistant.components.light import ColorMode
from homeassistant.config_entries import ConfigEntryState from homeassistant.config_entries import ConfigEntryState
from homeassistant.const import Platform
from homeassistant.core import HomeAssistant from homeassistant.core import HomeAssistant
from homeassistant.helpers import device_registry as dr, entity_registry as er from homeassistant.helpers import device_registry as dr, entity_registry as er
from homeassistant.util import color as color_util from homeassistant.util import color as color_util
@ -186,7 +187,7 @@ async def setup_bridge(hass: HomeAssistant, mock_bridge_v1: Mock) -> None:
config_entry.mock_state(hass, ConfigEntryState.LOADED) config_entry.mock_state(hass, ConfigEntryState.LOADED)
mock_bridge_v1.config_entry = config_entry mock_bridge_v1.config_entry = config_entry
config_entry.runtime_data = mock_bridge_v1 config_entry.runtime_data = mock_bridge_v1
await hass.config_entries.async_forward_entry_setups(config_entry, ["light"]) await hass.config_entries.async_forward_entry_setups(config_entry, [Platform.LIGHT])
# To flush out the service call to update the group # To flush out the service call to update the group
await hass.async_block_till_done() await hass.async_block_till_done()

View File

@ -7,7 +7,7 @@ from homeassistant.components.light import (
DOMAIN as LIGHT_DOMAIN, DOMAIN as LIGHT_DOMAIN,
ColorMode, ColorMode,
) )
from homeassistant.const import ATTR_ENTITY_ID, SERVICE_TURN_ON from homeassistant.const import ATTR_ENTITY_ID, SERVICE_TURN_ON, Platform
from homeassistant.core import HomeAssistant from homeassistant.core import HomeAssistant
from homeassistant.helpers import entity_registry as er, issue_registry as ir from homeassistant.helpers import entity_registry as er, issue_registry as ir
from homeassistant.util.json import JsonArrayType from homeassistant.util.json import JsonArrayType
@ -22,7 +22,7 @@ async def test_lights(
"""Test if all v2 lights get created with correct features.""" """Test if all v2 lights get created with correct features."""
await mock_bridge_v2.api.load_test_data(v2_resources_test_data) await mock_bridge_v2.api.load_test_data(v2_resources_test_data)
await setup_platform(hass, mock_bridge_v2, "light") await setup_platform(hass, mock_bridge_v2, Platform.LIGHT)
# there shouldn't have been any requests at this point # there shouldn't have been any requests at this point
assert len(mock_bridge_v2.mock_requests) == 0 assert len(mock_bridge_v2.mock_requests) == 0
# 8 entities should be created from test data # 8 entities should be created from test data
@ -90,7 +90,7 @@ async def test_light_turn_on_service(
"""Test calling the turn on service on a light.""" """Test calling the turn on service on a light."""
await mock_bridge_v2.api.load_test_data(v2_resources_test_data) await mock_bridge_v2.api.load_test_data(v2_resources_test_data)
await setup_platform(hass, mock_bridge_v2, "light") await setup_platform(hass, mock_bridge_v2, Platform.LIGHT)
test_light_id = "light.hue_light_with_color_temperature_only" test_light_id = "light.hue_light_with_color_temperature_only"
@ -276,7 +276,7 @@ async def test_light_turn_off_service(
"""Test calling the turn off service on a light.""" """Test calling the turn off service on a light."""
await mock_bridge_v2.api.load_test_data(v2_resources_test_data) await mock_bridge_v2.api.load_test_data(v2_resources_test_data)
await setup_platform(hass, mock_bridge_v2, "light") await setup_platform(hass, mock_bridge_v2, Platform.LIGHT)
test_light_id = "light.hue_light_with_color_and_color_temperature_1" test_light_id = "light.hue_light_with_color_and_color_temperature_1"
@ -364,7 +364,7 @@ async def test_light_added(hass: HomeAssistant, mock_bridge_v2: Mock) -> None:
"""Test new light added to bridge.""" """Test new light added to bridge."""
await mock_bridge_v2.api.load_test_data([FAKE_DEVICE, FAKE_ZIGBEE_CONNECTIVITY]) await mock_bridge_v2.api.load_test_data([FAKE_DEVICE, FAKE_ZIGBEE_CONNECTIVITY])
await setup_platform(hass, mock_bridge_v2, "light") await setup_platform(hass, mock_bridge_v2, Platform.LIGHT)
test_entity_id = "light.hue_mocked_device" test_entity_id = "light.hue_mocked_device"
@ -388,7 +388,7 @@ async def test_light_availability(
"""Test light availability property.""" """Test light availability property."""
await mock_bridge_v2.api.load_test_data(v2_resources_test_data) await mock_bridge_v2.api.load_test_data(v2_resources_test_data)
await setup_platform(hass, mock_bridge_v2, "light") await setup_platform(hass, mock_bridge_v2, Platform.LIGHT)
test_light_id = "light.hue_light_with_color_and_color_temperature_1" test_light_id = "light.hue_light_with_color_and_color_temperature_1"
@ -423,7 +423,7 @@ async def test_grouped_lights(
"""Test if all v2 grouped lights get created with correct features.""" """Test if all v2 grouped lights get created with correct features."""
await mock_bridge_v2.api.load_test_data(v2_resources_test_data) await mock_bridge_v2.api.load_test_data(v2_resources_test_data)
await setup_platform(hass, mock_bridge_v2, "light") await setup_platform(hass, mock_bridge_v2, Platform.LIGHT)
# test if entities for hue groups are created and enabled by default # test if entities for hue groups are created and enabled by default
for entity_id in ("light.test_zone", "light.test_room"): for entity_id in ("light.test_zone", "light.test_room"):
@ -657,7 +657,7 @@ async def test_light_turn_on_service_deprecation(
test_light_id = "light.hue_light_with_color_temperature_only" test_light_id = "light.hue_light_with_color_temperature_only"
await setup_platform(hass, mock_bridge_v2, "light") await setup_platform(hass, mock_bridge_v2, Platform.LIGHT)
event = { event = {
"id": "3a6710fa-4474-4eba-b533-5e6e72968feb", "id": "3a6710fa-4474-4eba-b533-5e6e72968feb",

View File

@ -2,7 +2,7 @@
from unittest.mock import Mock from unittest.mock import Mock
from homeassistant.const import STATE_UNKNOWN from homeassistant.const import STATE_UNKNOWN, Platform
from homeassistant.core import HomeAssistant from homeassistant.core import HomeAssistant
from homeassistant.helpers import entity_registry as er from homeassistant.helpers import entity_registry as er
from homeassistant.util.json import JsonArrayType from homeassistant.util.json import JsonArrayType
@ -20,7 +20,7 @@ async def test_scene(
"""Test if (config) scenes get created.""" """Test if (config) scenes get created."""
await mock_bridge_v2.api.load_test_data(v2_resources_test_data) await mock_bridge_v2.api.load_test_data(v2_resources_test_data)
await setup_platform(hass, mock_bridge_v2, "scene") await setup_platform(hass, mock_bridge_v2, Platform.SCENE)
# there shouldn't have been any requests at this point # there shouldn't have been any requests at this point
assert len(mock_bridge_v2.mock_requests) == 0 assert len(mock_bridge_v2.mock_requests) == 0
# 3 entities should be created from test data # 3 entities should be created from test data
@ -80,7 +80,7 @@ async def test_scene_turn_on_service(
"""Test calling the turn on service on a scene.""" """Test calling the turn on service on a scene."""
await mock_bridge_v2.api.load_test_data(v2_resources_test_data) await mock_bridge_v2.api.load_test_data(v2_resources_test_data)
await setup_platform(hass, mock_bridge_v2, "scene") await setup_platform(hass, mock_bridge_v2, Platform.SCENE)
test_entity_id = "scene.test_room_regular_test_scene" test_entity_id = "scene.test_room_regular_test_scene"
@ -117,7 +117,7 @@ async def test_scene_advanced_turn_on_service(
"""Test calling the advanced turn on service on a scene.""" """Test calling the advanced turn on service on a scene."""
await mock_bridge_v2.api.load_test_data(v2_resources_test_data) await mock_bridge_v2.api.load_test_data(v2_resources_test_data)
await setup_platform(hass, mock_bridge_v2, "scene") await setup_platform(hass, mock_bridge_v2, Platform.SCENE)
test_entity_id = "scene.test_room_regular_test_scene" test_entity_id = "scene.test_room_regular_test_scene"
@ -154,7 +154,7 @@ async def test_scene_updates(
"""Test scene events from bridge.""" """Test scene events from bridge."""
await mock_bridge_v2.api.load_test_data(v2_resources_test_data) await mock_bridge_v2.api.load_test_data(v2_resources_test_data)
await setup_platform(hass, mock_bridge_v2, "scene") await setup_platform(hass, mock_bridge_v2, Platform.SCENE)
test_entity_id = "scene.test_room_mocked_scene" test_entity_id = "scene.test_room_mocked_scene"

View File

@ -8,7 +8,7 @@ from freezegun.api import FrozenDateTimeFactory
from homeassistant.components import hue from homeassistant.components import hue
from homeassistant.components.hue.const import ATTR_HUE_EVENT from homeassistant.components.hue.const import ATTR_HUE_EVENT
from homeassistant.components.hue.v1 import sensor_base from homeassistant.components.hue.v1 import sensor_base
from homeassistant.const import EntityCategory from homeassistant.const import EntityCategory, Platform
from homeassistant.core import HomeAssistant from homeassistant.core import HomeAssistant
from homeassistant.helpers import device_registry as dr, entity_registry as er from homeassistant.helpers import device_registry as dr, entity_registry as er
@ -285,7 +285,9 @@ SENSOR_RESPONSE = {
async def test_no_sensors(hass: HomeAssistant, mock_bridge_v1: Mock) -> None: async def test_no_sensors(hass: HomeAssistant, mock_bridge_v1: Mock) -> None:
"""Test the update_items function when no sensors are found.""" """Test the update_items function when no sensors are found."""
mock_bridge_v1.mock_sensor_responses.append({}) mock_bridge_v1.mock_sensor_responses.append({})
await setup_platform(hass, mock_bridge_v1, ["binary_sensor", "sensor"]) await setup_platform(
hass, mock_bridge_v1, [Platform.BINARY_SENSOR, Platform.SENSOR]
)
assert len(mock_bridge_v1.mock_requests) == 1 assert len(mock_bridge_v1.mock_requests) == 1
assert len(hass.states.async_all()) == 0 assert len(hass.states.async_all()) == 0
@ -303,9 +305,11 @@ async def test_sensors_with_multiple_bridges(
} }
) )
mock_bridge_v1.mock_sensor_responses.append(SENSOR_RESPONSE) mock_bridge_v1.mock_sensor_responses.append(SENSOR_RESPONSE)
await setup_platform(hass, mock_bridge_v1, ["binary_sensor", "sensor"])
await setup_platform( await setup_platform(
hass, mock_bridge_2, ["binary_sensor", "sensor"], "mock-bridge-2" hass, mock_bridge_v1, [Platform.BINARY_SENSOR, Platform.SENSOR]
)
await setup_platform(
hass, mock_bridge_2, [Platform.BINARY_SENSOR, Platform.SENSOR], "mock-bridge-2"
) )
assert len(mock_bridge_v1.mock_requests) == 1 assert len(mock_bridge_v1.mock_requests) == 1
@ -319,7 +323,9 @@ async def test_sensors(
) -> None: ) -> None:
"""Test the update_items function with some sensors.""" """Test the update_items function with some sensors."""
mock_bridge_v1.mock_sensor_responses.append(SENSOR_RESPONSE) mock_bridge_v1.mock_sensor_responses.append(SENSOR_RESPONSE)
await setup_platform(hass, mock_bridge_v1, ["binary_sensor", "sensor"]) await setup_platform(
hass, mock_bridge_v1, [Platform.BINARY_SENSOR, Platform.SENSOR]
)
assert len(mock_bridge_v1.mock_requests) == 1 assert len(mock_bridge_v1.mock_requests) == 1
# 2 "physical" sensors with 3 virtual sensors each # 2 "physical" sensors with 3 virtual sensors each
assert len(hass.states.async_all()) == 7 assert len(hass.states.async_all()) == 7
@ -366,7 +372,9 @@ async def test_unsupported_sensors(hass: HomeAssistant, mock_bridge_v1: Mock) ->
response_with_unsupported = dict(SENSOR_RESPONSE) response_with_unsupported = dict(SENSOR_RESPONSE)
response_with_unsupported["7"] = UNSUPPORTED_SENSOR response_with_unsupported["7"] = UNSUPPORTED_SENSOR
mock_bridge_v1.mock_sensor_responses.append(response_with_unsupported) mock_bridge_v1.mock_sensor_responses.append(response_with_unsupported)
await setup_platform(hass, mock_bridge_v1, ["binary_sensor", "sensor"]) await setup_platform(
hass, mock_bridge_v1, [Platform.BINARY_SENSOR, Platform.SENSOR]
)
assert len(mock_bridge_v1.mock_requests) == 1 assert len(mock_bridge_v1.mock_requests) == 1
# 2 "physical" sensors with 3 virtual sensors each + 1 battery sensor # 2 "physical" sensors with 3 virtual sensors each + 1 battery sensor
assert len(hass.states.async_all()) == 7 assert len(hass.states.async_all()) == 7
@ -376,7 +384,9 @@ async def test_new_sensor_discovered(hass: HomeAssistant, mock_bridge_v1: Mock)
"""Test if 2nd update has a new sensor.""" """Test if 2nd update has a new sensor."""
mock_bridge_v1.mock_sensor_responses.append(SENSOR_RESPONSE) mock_bridge_v1.mock_sensor_responses.append(SENSOR_RESPONSE)
await setup_platform(hass, mock_bridge_v1, ["binary_sensor", "sensor"]) await setup_platform(
hass, mock_bridge_v1, [Platform.BINARY_SENSOR, Platform.SENSOR]
)
assert len(mock_bridge_v1.mock_requests) == 1 assert len(mock_bridge_v1.mock_requests) == 1
assert len(hass.states.async_all()) == 7 assert len(hass.states.async_all()) == 7
@ -410,7 +420,9 @@ async def test_sensor_removed(hass: HomeAssistant, mock_bridge_v1: Mock) -> None
"""Test if 2nd update has removed sensor.""" """Test if 2nd update has removed sensor."""
mock_bridge_v1.mock_sensor_responses.append(SENSOR_RESPONSE) mock_bridge_v1.mock_sensor_responses.append(SENSOR_RESPONSE)
await setup_platform(hass, mock_bridge_v1, ["binary_sensor", "sensor"]) await setup_platform(
hass, mock_bridge_v1, [Platform.BINARY_SENSOR, Platform.SENSOR]
)
assert len(mock_bridge_v1.mock_requests) == 1 assert len(mock_bridge_v1.mock_requests) == 1
assert len(hass.states.async_all()) == 7 assert len(hass.states.async_all()) == 7
@ -437,7 +449,9 @@ async def test_sensor_removed(hass: HomeAssistant, mock_bridge_v1: Mock) -> None
async def test_update_timeout(hass: HomeAssistant, mock_bridge_v1: Mock) -> None: async def test_update_timeout(hass: HomeAssistant, mock_bridge_v1: Mock) -> None:
"""Test bridge marked as not available if timeout error during update.""" """Test bridge marked as not available if timeout error during update."""
mock_bridge_v1.api.sensors.update = Mock(side_effect=TimeoutError) mock_bridge_v1.api.sensors.update = Mock(side_effect=TimeoutError)
await setup_platform(hass, mock_bridge_v1, ["binary_sensor", "sensor"]) await setup_platform(
hass, mock_bridge_v1, [Platform.BINARY_SENSOR, Platform.SENSOR]
)
assert len(mock_bridge_v1.mock_requests) == 0 assert len(mock_bridge_v1.mock_requests) == 0
assert len(hass.states.async_all()) == 0 assert len(hass.states.async_all()) == 0
@ -445,7 +459,9 @@ async def test_update_timeout(hass: HomeAssistant, mock_bridge_v1: Mock) -> None
async def test_update_unauthorized(hass: HomeAssistant, mock_bridge_v1: Mock) -> None: async def test_update_unauthorized(hass: HomeAssistant, mock_bridge_v1: Mock) -> None:
"""Test bridge marked as not authorized if unauthorized during update.""" """Test bridge marked as not authorized if unauthorized during update."""
mock_bridge_v1.api.sensors.update = Mock(side_effect=aiohue.Unauthorized) mock_bridge_v1.api.sensors.update = Mock(side_effect=aiohue.Unauthorized)
await setup_platform(hass, mock_bridge_v1, ["binary_sensor", "sensor"]) await setup_platform(
hass, mock_bridge_v1, [Platform.BINARY_SENSOR, Platform.SENSOR]
)
assert len(mock_bridge_v1.mock_requests) == 0 assert len(mock_bridge_v1.mock_requests) == 0
assert len(hass.states.async_all()) == 0 assert len(hass.states.async_all()) == 0
assert len(mock_bridge_v1.handle_unauthorized_error.mock_calls) == 1 assert len(mock_bridge_v1.handle_unauthorized_error.mock_calls) == 1
@ -462,7 +478,9 @@ async def test_hue_events(
events = async_capture_events(hass, ATTR_HUE_EVENT) events = async_capture_events(hass, ATTR_HUE_EVENT)
await setup_platform(hass, mock_bridge_v1, ["binary_sensor", "sensor"]) await setup_platform(
hass, mock_bridge_v1, [Platform.BINARY_SENSOR, Platform.SENSOR]
)
assert len(mock_bridge_v1.mock_requests) == 1 assert len(mock_bridge_v1.mock_requests) == 1
assert len(hass.states.async_all()) == 7 assert len(hass.states.async_all()) == 7
assert len(events) == 0 assert len(events) == 0

View File

@ -3,6 +3,7 @@
from unittest.mock import Mock from unittest.mock import Mock
from homeassistant.components import hue from homeassistant.components import hue
from homeassistant.const import Platform
from homeassistant.core import HomeAssistant from homeassistant.core import HomeAssistant
from homeassistant.helpers import entity_registry as er from homeassistant.helpers import entity_registry as er
from homeassistant.setup import async_setup_component from homeassistant.setup import async_setup_component
@ -23,7 +24,7 @@ async def test_sensors(
"""Test if all v2 sensors get created with correct features.""" """Test if all v2 sensors get created with correct features."""
await mock_bridge_v2.api.load_test_data(v2_resources_test_data) await mock_bridge_v2.api.load_test_data(v2_resources_test_data)
await setup_platform(hass, mock_bridge_v2, "sensor") await setup_platform(hass, mock_bridge_v2, Platform.SENSOR)
# there shouldn't have been any requests at this point # there shouldn't have been any requests at this point
assert len(mock_bridge_v2.mock_requests) == 0 assert len(mock_bridge_v2.mock_requests) == 0
# 6 entities should be created from test data # 6 entities should be created from test data
@ -81,7 +82,7 @@ async def test_enable_sensor(
assert await async_setup_component(hass, hue.DOMAIN, {}) is True assert await async_setup_component(hass, hue.DOMAIN, {}) is True
await hass.async_block_till_done() await hass.async_block_till_done()
await hass.config_entries.async_forward_entry_setups( await hass.config_entries.async_forward_entry_setups(
mock_config_entry_v2, ["sensor"] mock_config_entry_v2, [Platform.SENSOR]
) )
entity_id = "sensor.wall_switch_with_2_controls_zigbee_connectivity" entity_id = "sensor.wall_switch_with_2_controls_zigbee_connectivity"
@ -99,9 +100,11 @@ async def test_enable_sensor(
assert updated_entry.disabled is False assert updated_entry.disabled is False
# reload platform and check if entity is correctly there # reload platform and check if entity is correctly there
await hass.config_entries.async_forward_entry_unload(mock_config_entry_v2, "sensor") await hass.config_entries.async_forward_entry_unload(
mock_config_entry_v2, Platform.SENSOR
)
await hass.config_entries.async_forward_entry_setups( await hass.config_entries.async_forward_entry_setups(
mock_config_entry_v2, ["sensor"] mock_config_entry_v2, [Platform.SENSOR]
) )
await hass.async_block_till_done() await hass.async_block_till_done()
@ -113,7 +116,7 @@ async def test_enable_sensor(
async def test_sensor_add_update(hass: HomeAssistant, mock_bridge_v2: Mock) -> None: async def test_sensor_add_update(hass: HomeAssistant, mock_bridge_v2: Mock) -> None:
"""Test if sensors get added/updated from events.""" """Test if sensors get added/updated from events."""
await mock_bridge_v2.api.load_test_data([FAKE_DEVICE, FAKE_ZIGBEE_CONNECTIVITY]) await mock_bridge_v2.api.load_test_data([FAKE_DEVICE, FAKE_ZIGBEE_CONNECTIVITY])
await setup_platform(hass, mock_bridge_v2, "sensor") await setup_platform(hass, mock_bridge_v2, Platform.SENSOR)
test_entity_id = "sensor.hue_mocked_device_temperature" test_entity_id = "sensor.hue_mocked_device_temperature"

View File

@ -2,6 +2,7 @@
from unittest.mock import Mock from unittest.mock import Mock
from homeassistant.const import Platform
from homeassistant.core import HomeAssistant from homeassistant.core import HomeAssistant
from homeassistant.util.json import JsonArrayType from homeassistant.util.json import JsonArrayType
@ -15,7 +16,7 @@ async def test_switch(
"""Test if (config) switches get created.""" """Test if (config) switches get created."""
await mock_bridge_v2.api.load_test_data(v2_resources_test_data) await mock_bridge_v2.api.load_test_data(v2_resources_test_data)
await setup_platform(hass, mock_bridge_v2, "switch") await setup_platform(hass, mock_bridge_v2, Platform.SWITCH)
# there shouldn't have been any requests at this point # there shouldn't have been any requests at this point
assert len(mock_bridge_v2.mock_requests) == 0 assert len(mock_bridge_v2.mock_requests) == 0
# 4 entities should be created from test data # 4 entities should be created from test data
@ -42,7 +43,7 @@ async def test_switch_turn_on_service(
"""Test calling the turn on service on a switch.""" """Test calling the turn on service on a switch."""
await mock_bridge_v2.api.load_test_data(v2_resources_test_data) await mock_bridge_v2.api.load_test_data(v2_resources_test_data)
await setup_platform(hass, mock_bridge_v2, "switch") await setup_platform(hass, mock_bridge_v2, Platform.SWITCH)
test_entity_id = "switch.hue_motion_sensor_motion_sensor_enabled" test_entity_id = "switch.hue_motion_sensor_motion_sensor_enabled"
@ -66,7 +67,7 @@ async def test_switch_turn_off_service(
"""Test calling the turn off service on a switch.""" """Test calling the turn off service on a switch."""
await mock_bridge_v2.api.load_test_data(v2_resources_test_data) await mock_bridge_v2.api.load_test_data(v2_resources_test_data)
await setup_platform(hass, mock_bridge_v2, "switch") await setup_platform(hass, mock_bridge_v2, Platform.SWITCH)
test_entity_id = "switch.hue_motion_sensor_motion_sensor_enabled" test_entity_id = "switch.hue_motion_sensor_motion_sensor_enabled"
@ -105,7 +106,7 @@ async def test_switch_added(hass: HomeAssistant, mock_bridge_v2: Mock) -> None:
"""Test new switch added to bridge.""" """Test new switch added to bridge."""
await mock_bridge_v2.api.load_test_data([FAKE_DEVICE, FAKE_ZIGBEE_CONNECTIVITY]) await mock_bridge_v2.api.load_test_data([FAKE_DEVICE, FAKE_ZIGBEE_CONNECTIVITY])
await setup_platform(hass, mock_bridge_v2, "switch") await setup_platform(hass, mock_bridge_v2, Platform.SWITCH)
test_entity_id = "switch.hue_mocked_device_motion_sensor_enabled" test_entity_id = "switch.hue_mocked_device_motion_sensor_enabled"