Use real devices in alarm_control_panel device trigger tests (#102676)

This commit is contained in:
Erik Montnemery 2023-10-24 22:33:08 +02:00 committed by GitHub
parent eac1d47ec6
commit 952f40a181
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -246,10 +246,21 @@ async def test_get_trigger_capabilities_legacy(
async def test_if_fires_on_state_change( async def test_if_fires_on_state_change(
hass: HomeAssistant, entity_registry: er.EntityRegistry, calls: list[ServiceCall] hass: HomeAssistant,
device_registry: dr.DeviceRegistry,
entity_registry: er.EntityRegistry,
calls: list[ServiceCall],
): ):
"""Test for turn_on and turn_off triggers firing.""" """Test for turn_on and turn_off triggers firing."""
entry = entity_registry.async_get_or_create(DOMAIN, "test", "5678") config_entry = MockConfigEntry(domain="test", data={})
config_entry.add_to_hass(hass)
device_entry = device_registry.async_get_or_create(
config_entry_id=config_entry.entry_id,
connections={(dr.CONNECTION_NETWORK_MAC, "12:34:56:AB:CD:EF")},
)
entry = entity_registry.async_get_or_create(
DOMAIN, "test", "5678", device_id=device_entry.id
)
hass.states.async_set(entry.entity_id, STATE_ALARM_PENDING) hass.states.async_set(entry.entity_id, STATE_ALARM_PENDING)
@ -262,7 +273,7 @@ async def test_if_fires_on_state_change(
"trigger": { "trigger": {
"platform": "device", "platform": "device",
"domain": DOMAIN, "domain": DOMAIN,
"device_id": "", "device_id": device_entry.id,
"entity_id": entry.id, "entity_id": entry.id,
"type": "triggered", "type": "triggered",
}, },
@ -284,7 +295,7 @@ async def test_if_fires_on_state_change(
"trigger": { "trigger": {
"platform": "device", "platform": "device",
"domain": DOMAIN, "domain": DOMAIN,
"device_id": "", "device_id": device_entry.id,
"entity_id": entry.id, "entity_id": entry.id,
"type": "disarmed", "type": "disarmed",
}, },
@ -306,7 +317,7 @@ async def test_if_fires_on_state_change(
"trigger": { "trigger": {
"platform": "device", "platform": "device",
"domain": DOMAIN, "domain": DOMAIN,
"device_id": "", "device_id": device_entry.id,
"entity_id": entry.id, "entity_id": entry.id,
"type": "armed_home", "type": "armed_home",
}, },
@ -328,7 +339,7 @@ async def test_if_fires_on_state_change(
"trigger": { "trigger": {
"platform": "device", "platform": "device",
"domain": DOMAIN, "domain": DOMAIN,
"device_id": "", "device_id": device_entry.id,
"entity_id": entry.id, "entity_id": entry.id,
"type": "armed_away", "type": "armed_away",
}, },
@ -350,7 +361,7 @@ async def test_if_fires_on_state_change(
"trigger": { "trigger": {
"platform": "device", "platform": "device",
"domain": DOMAIN, "domain": DOMAIN,
"device_id": "", "device_id": device_entry.id,
"entity_id": entry.id, "entity_id": entry.id,
"type": "armed_night", "type": "armed_night",
}, },
@ -372,7 +383,7 @@ async def test_if_fires_on_state_change(
"trigger": { "trigger": {
"platform": "device", "platform": "device",
"domain": DOMAIN, "domain": DOMAIN,
"device_id": "", "device_id": device_entry.id,
"entity_id": entry.id, "entity_id": entry.id,
"type": "armed_vacation", "type": "armed_vacation",
}, },
@ -450,10 +461,21 @@ async def test_if_fires_on_state_change(
async def test_if_fires_on_state_change_with_for( async def test_if_fires_on_state_change_with_for(
hass: HomeAssistant, entity_registry: er.EntityRegistry, calls: list[ServiceCall] hass: HomeAssistant,
device_registry: dr.DeviceRegistry,
entity_registry: er.EntityRegistry,
calls: list[ServiceCall],
) -> None: ) -> None:
"""Test for triggers firing with delay.""" """Test for triggers firing with delay."""
entry = entity_registry.async_get_or_create(DOMAIN, "test", "5678") config_entry = MockConfigEntry(domain="test", data={})
config_entry.add_to_hass(hass)
device_entry = device_registry.async_get_or_create(
config_entry_id=config_entry.entry_id,
connections={(dr.CONNECTION_NETWORK_MAC, "12:34:56:AB:CD:EF")},
)
entry = entity_registry.async_get_or_create(
DOMAIN, "test", "5678", device_id=device_entry.id
)
hass.states.async_set(entry.entity_id, STATE_ALARM_DISARMED) hass.states.async_set(entry.entity_id, STATE_ALARM_DISARMED)
@ -466,7 +488,7 @@ async def test_if_fires_on_state_change_with_for(
"trigger": { "trigger": {
"platform": "device", "platform": "device",
"domain": DOMAIN, "domain": DOMAIN,
"device_id": "", "device_id": device_entry.id,
"entity_id": entry.id, "entity_id": entry.id,
"type": "triggered", "type": "triggered",
"for": {"seconds": 5}, "for": {"seconds": 5},
@ -507,10 +529,21 @@ async def test_if_fires_on_state_change_with_for(
async def test_if_fires_on_state_change_legacy( async def test_if_fires_on_state_change_legacy(
hass: HomeAssistant, entity_registry: er.EntityRegistry, calls: list[ServiceCall] hass: HomeAssistant,
device_registry: dr.DeviceRegistry,
entity_registry: er.EntityRegistry,
calls: list[ServiceCall],
) -> None: ) -> None:
"""Test for triggers firing with delay.""" """Test for triggers firing with delay."""
entry = entity_registry.async_get_or_create(DOMAIN, "test", "5678") config_entry = MockConfigEntry(domain="test", data={})
config_entry.add_to_hass(hass)
device_entry = device_registry.async_get_or_create(
config_entry_id=config_entry.entry_id,
connections={(dr.CONNECTION_NETWORK_MAC, "12:34:56:AB:CD:EF")},
)
entry = entity_registry.async_get_or_create(
DOMAIN, "test", "5678", device_id=device_entry.id
)
hass.states.async_set(entry.entity_id, STATE_ALARM_DISARMED) hass.states.async_set(entry.entity_id, STATE_ALARM_DISARMED)
@ -523,7 +556,7 @@ async def test_if_fires_on_state_change_legacy(
"trigger": { "trigger": {
"platform": "device", "platform": "device",
"domain": DOMAIN, "domain": DOMAIN,
"device_id": "", "device_id": device_entry.id,
"entity_id": entry.entity_id, "entity_id": entry.entity_id,
"type": "triggered", "type": "triggered",
}, },