Remove deprecated methods from core
This commit is contained in:
parent
70a528c04b
commit
af8f6bcaba
2 changed files with 2 additions and 155 deletions
|
@ -12,7 +12,6 @@ import signal
|
||||||
import threading
|
import threading
|
||||||
import enum
|
import enum
|
||||||
import functools as ft
|
import functools as ft
|
||||||
from collections import namedtuple
|
|
||||||
|
|
||||||
from homeassistant.const import (
|
from homeassistant.const import (
|
||||||
__version__, EVENT_HOMEASSISTANT_START, EVENT_HOMEASSISTANT_STOP,
|
__version__, EVENT_HOMEASSISTANT_START, EVENT_HOMEASSISTANT_STOP,
|
||||||
|
@ -46,9 +45,6 @@ MIN_WORKER_THREAD = 2
|
||||||
|
|
||||||
_LOGGER = logging.getLogger(__name__)
|
_LOGGER = logging.getLogger(__name__)
|
||||||
|
|
||||||
# Temporary to support deprecated methods
|
|
||||||
_MockHA = namedtuple("MockHomeAssistant", ['bus'])
|
|
||||||
|
|
||||||
|
|
||||||
class HomeAssistant(object):
|
class HomeAssistant(object):
|
||||||
"""Root object of the Home Assistant home automation."""
|
"""Root object of the Home Assistant home automation."""
|
||||||
|
@ -114,46 +110,6 @@ class HomeAssistant(object):
|
||||||
|
|
||||||
self.pool.stop()
|
self.pool.stop()
|
||||||
|
|
||||||
def track_point_in_time(self, action, point_in_time):
|
|
||||||
"""Deprecated method as of 8/4/2015 to track point in time."""
|
|
||||||
_LOGGER.warning(
|
|
||||||
'hass.track_point_in_time is deprecated. '
|
|
||||||
'Please use homeassistant.helpers.event.track_point_in_time')
|
|
||||||
import homeassistant.helpers.event as helper
|
|
||||||
helper.track_point_in_time(self, action, point_in_time)
|
|
||||||
|
|
||||||
def track_point_in_utc_time(self, action, point_in_time):
|
|
||||||
"""Deprecated method as of 8/4/2015 to track point in UTC time."""
|
|
||||||
_LOGGER.warning(
|
|
||||||
'hass.track_point_in_utc_time is deprecated. '
|
|
||||||
'Please use homeassistant.helpers.event.track_point_in_utc_time')
|
|
||||||
import homeassistant.helpers.event as helper
|
|
||||||
helper.track_point_in_utc_time(self, action, point_in_time)
|
|
||||||
|
|
||||||
def track_utc_time_change(self, action,
|
|
||||||
year=None, month=None, day=None,
|
|
||||||
hour=None, minute=None, second=None):
|
|
||||||
"""Deprecated method as of 8/4/2015 to track UTC time change."""
|
|
||||||
# pylint: disable=too-many-arguments
|
|
||||||
_LOGGER.warning(
|
|
||||||
'hass.track_utc_time_change is deprecated. '
|
|
||||||
'Please use homeassistant.helpers.event.track_utc_time_change')
|
|
||||||
import homeassistant.helpers.event as helper
|
|
||||||
helper.track_utc_time_change(self, action, year, month, day, hour,
|
|
||||||
minute, second)
|
|
||||||
|
|
||||||
def track_time_change(self, action,
|
|
||||||
year=None, month=None, day=None,
|
|
||||||
hour=None, minute=None, second=None, utc=False):
|
|
||||||
"""Deprecated method as of 8/4/2015 to track time change."""
|
|
||||||
# pylint: disable=too-many-arguments
|
|
||||||
_LOGGER.warning(
|
|
||||||
'hass.track_time_change is deprecated. '
|
|
||||||
'Please use homeassistant.helpers.event.track_time_change')
|
|
||||||
import homeassistant.helpers.event as helper
|
|
||||||
helper.track_time_change(self, action, year, month, day, hour,
|
|
||||||
minute, second)
|
|
||||||
|
|
||||||
|
|
||||||
class JobPriority(util.OrderedEnum):
|
class JobPriority(util.OrderedEnum):
|
||||||
"""Provides job priorities for event bus jobs."""
|
"""Provides job priorities for event bus jobs."""
|
||||||
|
@ -527,15 +483,6 @@ class StateMachine(object):
|
||||||
|
|
||||||
self._bus.fire(EVENT_STATE_CHANGED, event_data)
|
self._bus.fire(EVENT_STATE_CHANGED, event_data)
|
||||||
|
|
||||||
def track_change(self, entity_ids, action, from_state=None, to_state=None):
|
|
||||||
"""DEPRECATED AS OF 8/4/2015."""
|
|
||||||
_LOGGER.warning(
|
|
||||||
'hass.states.track_change is deprecated. '
|
|
||||||
'Use homeassistant.helpers.event.track_state_change instead.')
|
|
||||||
import homeassistant.helpers.event as helper
|
|
||||||
helper.track_state_change(_MockHA(self._bus), entity_ids, action,
|
|
||||||
from_state, to_state)
|
|
||||||
|
|
||||||
|
|
||||||
# pylint: disable=too-few-public-methods
|
# pylint: disable=too-few-public-methods
|
||||||
class Service(object):
|
class Service(object):
|
||||||
|
|
|
@ -23,7 +23,7 @@ import homeassistant.util.dt as dt_util
|
||||||
from homeassistant.helpers.event import track_state_change
|
from homeassistant.helpers.event import track_state_change
|
||||||
from homeassistant.const import (
|
from homeassistant.const import (
|
||||||
__version__, EVENT_HOMEASSISTANT_START, EVENT_HOMEASSISTANT_STOP,
|
__version__, EVENT_HOMEASSISTANT_START, EVENT_HOMEASSISTANT_STOP,
|
||||||
ATTR_FRIENDLY_NAME, TEMP_CELCIUS,
|
EVENT_STATE_CHANGED, ATTR_FRIENDLY_NAME, TEMP_CELCIUS,
|
||||||
TEMP_FAHRENHEIT)
|
TEMP_FAHRENHEIT)
|
||||||
|
|
||||||
PST = pytz.timezone('America/Los_Angeles')
|
PST = pytz.timezone('America/Los_Angeles')
|
||||||
|
@ -93,65 +93,6 @@ class TestHomeAssistant(unittest.TestCase):
|
||||||
|
|
||||||
self.assertEqual(1, len(calls))
|
self.assertEqual(1, len(calls))
|
||||||
|
|
||||||
def test_track_point_in_time(self):
|
|
||||||
""" Test track point in time. """
|
|
||||||
before_birthday = datetime(1985, 7, 9, 12, 0, 0, tzinfo=dt_util.UTC)
|
|
||||||
birthday_paulus = datetime(1986, 7, 9, 12, 0, 0, tzinfo=dt_util.UTC)
|
|
||||||
after_birthday = datetime(1987, 7, 9, 12, 0, 0, tzinfo=dt_util.UTC)
|
|
||||||
|
|
||||||
runs = []
|
|
||||||
|
|
||||||
self.hass.track_point_in_utc_time(
|
|
||||||
lambda x: runs.append(1), birthday_paulus)
|
|
||||||
|
|
||||||
self._send_time_changed(before_birthday)
|
|
||||||
self.hass.pool.block_till_done()
|
|
||||||
self.assertEqual(0, len(runs))
|
|
||||||
|
|
||||||
self._send_time_changed(birthday_paulus)
|
|
||||||
self.hass.pool.block_till_done()
|
|
||||||
self.assertEqual(1, len(runs))
|
|
||||||
|
|
||||||
# A point in time tracker will only fire once, this should do nothing
|
|
||||||
self._send_time_changed(birthday_paulus)
|
|
||||||
self.hass.pool.block_till_done()
|
|
||||||
self.assertEqual(1, len(runs))
|
|
||||||
|
|
||||||
self.hass.track_point_in_time(
|
|
||||||
lambda x: runs.append(1), birthday_paulus)
|
|
||||||
|
|
||||||
self._send_time_changed(after_birthday)
|
|
||||||
self.hass.pool.block_till_done()
|
|
||||||
self.assertEqual(2, len(runs))
|
|
||||||
|
|
||||||
def test_track_time_change(self):
|
|
||||||
""" Test tracking time change. """
|
|
||||||
wildcard_runs = []
|
|
||||||
specific_runs = []
|
|
||||||
|
|
||||||
self.hass.track_time_change(lambda x: wildcard_runs.append(1))
|
|
||||||
self.hass.track_utc_time_change(
|
|
||||||
lambda x: specific_runs.append(1), second=[0, 30])
|
|
||||||
|
|
||||||
self._send_time_changed(datetime(2014, 5, 24, 12, 0, 0))
|
|
||||||
self.hass.pool.block_till_done()
|
|
||||||
self.assertEqual(1, len(specific_runs))
|
|
||||||
self.assertEqual(1, len(wildcard_runs))
|
|
||||||
|
|
||||||
self._send_time_changed(datetime(2014, 5, 24, 12, 0, 15))
|
|
||||||
self.hass.pool.block_till_done()
|
|
||||||
self.assertEqual(1, len(specific_runs))
|
|
||||||
self.assertEqual(2, len(wildcard_runs))
|
|
||||||
|
|
||||||
self._send_time_changed(datetime(2014, 5, 24, 12, 0, 30))
|
|
||||||
self.hass.pool.block_till_done()
|
|
||||||
self.assertEqual(2, len(specific_runs))
|
|
||||||
self.assertEqual(3, len(wildcard_runs))
|
|
||||||
|
|
||||||
def _send_time_changed(self, now):
|
|
||||||
""" Send a time changed event. """
|
|
||||||
self.hass.bus.fire(ha.EVENT_TIME_CHANGED, {ha.ATTR_NOW: now})
|
|
||||||
|
|
||||||
|
|
||||||
class TestEvent(unittest.TestCase):
|
class TestEvent(unittest.TestCase):
|
||||||
""" Test Event class. """
|
""" Test Event class. """
|
||||||
|
@ -358,52 +299,11 @@ class TestStateMachine(unittest.TestCase):
|
||||||
# If it does not exist, we should get False
|
# If it does not exist, we should get False
|
||||||
self.assertFalse(self.states.remove('light.Bowl'))
|
self.assertFalse(self.states.remove('light.Bowl'))
|
||||||
|
|
||||||
def test_track_change(self):
|
|
||||||
""" Test states.track_change. """
|
|
||||||
self.pool.add_worker()
|
|
||||||
|
|
||||||
# 2 lists to track how often our callbacks got called
|
|
||||||
specific_runs = []
|
|
||||||
wildcard_runs = []
|
|
||||||
|
|
||||||
self.states.track_change(
|
|
||||||
'light.Bowl', lambda a, b, c: specific_runs.append(1), 'on', 'off')
|
|
||||||
|
|
||||||
self.states.track_change(
|
|
||||||
'light.Bowl', lambda a, b, c: wildcard_runs.append(1),
|
|
||||||
ha.MATCH_ALL, ha.MATCH_ALL)
|
|
||||||
|
|
||||||
# Set same state should not trigger a state change/listener
|
|
||||||
self.states.set('light.Bowl', 'on')
|
|
||||||
self.bus._pool.block_till_done()
|
|
||||||
self.assertEqual(0, len(specific_runs))
|
|
||||||
self.assertEqual(0, len(wildcard_runs))
|
|
||||||
|
|
||||||
# State change off -> on
|
|
||||||
self.states.set('light.Bowl', 'off')
|
|
||||||
self.bus._pool.block_till_done()
|
|
||||||
self.assertEqual(1, len(specific_runs))
|
|
||||||
self.assertEqual(1, len(wildcard_runs))
|
|
||||||
|
|
||||||
# State change off -> off
|
|
||||||
self.states.set('light.Bowl', 'off', {"some_attr": 1})
|
|
||||||
self.bus._pool.block_till_done()
|
|
||||||
self.assertEqual(1, len(specific_runs))
|
|
||||||
self.assertEqual(2, len(wildcard_runs))
|
|
||||||
|
|
||||||
# State change off -> on
|
|
||||||
self.states.set('light.Bowl', 'on')
|
|
||||||
self.bus._pool.block_till_done()
|
|
||||||
self.assertEqual(1, len(specific_runs))
|
|
||||||
self.assertEqual(3, len(wildcard_runs))
|
|
||||||
|
|
||||||
def test_case_insensitivty(self):
|
def test_case_insensitivty(self):
|
||||||
self.pool.add_worker()
|
self.pool.add_worker()
|
||||||
runs = []
|
runs = []
|
||||||
|
|
||||||
track_state_change(
|
self.bus.listen(EVENT_STATE_CHANGED, lambda event: runs.append(event))
|
||||||
ha._MockHA(self.bus), 'light.BoWl', lambda a, b, c: runs.append(1),
|
|
||||||
ha.MATCH_ALL, ha.MATCH_ALL)
|
|
||||||
|
|
||||||
self.states.set('light.BOWL', 'off')
|
self.states.set('light.BOWL', 'off')
|
||||||
self.bus._pool.block_till_done()
|
self.bus._pool.block_till_done()
|
||||||
|
|
Loading…
Add table
Reference in a new issue