44 lines
1.5 KiB
Python
44 lines
1.5 KiB
Python
|
"""Tests for the Abode module."""
|
||
|
from unittest.mock import patch
|
||
|
|
||
|
from homeassistant.components.abode import (
|
||
|
DOMAIN as ABODE_DOMAIN,
|
||
|
SERVICE_CAPTURE_IMAGE,
|
||
|
SERVICE_SETTINGS,
|
||
|
SERVICE_TRIGGER_AUTOMATION,
|
||
|
)
|
||
|
from homeassistant.components.alarm_control_panel import DOMAIN as ALARM_DOMAIN
|
||
|
|
||
|
from .common import setup_platform
|
||
|
|
||
|
|
||
|
async def test_change_settings(hass):
|
||
|
"""Test change_setting service."""
|
||
|
await setup_platform(hass, ALARM_DOMAIN)
|
||
|
|
||
|
with patch("abodepy.Abode.set_setting") as mock_set_setting:
|
||
|
await hass.services.async_call(
|
||
|
ABODE_DOMAIN,
|
||
|
SERVICE_SETTINGS,
|
||
|
{"setting": "confirm_snd", "value": "loud"},
|
||
|
blocking=True,
|
||
|
)
|
||
|
await hass.async_block_till_done()
|
||
|
mock_set_setting.assert_called_once()
|
||
|
|
||
|
|
||
|
async def test_unload_entry(hass):
|
||
|
"""Test unloading the Abode entry."""
|
||
|
mock_entry = await setup_platform(hass, ALARM_DOMAIN)
|
||
|
|
||
|
with patch("abodepy.Abode.logout") as mock_logout, patch(
|
||
|
"abodepy.event_controller.AbodeEventController.stop"
|
||
|
) as mock_events_stop:
|
||
|
assert await hass.config_entries.async_unload(mock_entry.entry_id)
|
||
|
mock_logout.assert_called_once()
|
||
|
mock_events_stop.assert_called_once()
|
||
|
|
||
|
assert not hass.services.has_service(ABODE_DOMAIN, SERVICE_SETTINGS)
|
||
|
assert not hass.services.has_service(ABODE_DOMAIN, SERVICE_CAPTURE_IMAGE)
|
||
|
assert not hass.services.has_service(ABODE_DOMAIN, SERVICE_TRIGGER_AUTOMATION)
|