From ad62591f434a750fa4edee40292ba6e698cc497a Mon Sep 17 00:00:00 2001 From: pavoni Date: Fri, 22 Jan 2016 16:30:02 +0000 Subject: [PATCH] Change error state to be 'error' rather than 'unknown', trace error. --- homeassistant/components/sensor/template.py | 8 +++++--- tests/components/sensor/test_template.py | 2 +- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/homeassistant/components/sensor/template.py b/homeassistant/components/sensor/template.py index eeb764e70a5..a75d0a3e656 100644 --- a/homeassistant/components/sensor/template.py +++ b/homeassistant/components/sensor/template.py @@ -12,7 +12,6 @@ import logging from homeassistant.helpers.entity import Entity from homeassistant.core import EVENT_STATE_CHANGED from homeassistant.const import ( - STATE_UNKNOWN, ATTR_FRIENDLY_NAME, CONF_VALUE_TEMPLATE, ATTR_UNIT_OF_MEASUREMENT) @@ -24,6 +23,8 @@ _LOGGER = logging.getLogger(__name__) CONF_SENSORS = 'sensors' +STATE_ERROR = 'error' + # pylint: disable=unused-argument def setup_platform(hass, config, add_devices, discovery_info=None): @@ -107,5 +108,6 @@ class SensorTemplate(Entity): def update(self): try: self._state = template.render(self.hass, self._template) - except TemplateError: - self._state = STATE_UNKNOWN + except TemplateError as ex: + self._state = STATE_ERROR + _LOGGER.error(ex) diff --git a/tests/components/sensor/test_template.py b/tests/components/sensor/test_template.py index b4f6ab41c97..513117a8a9e 100644 --- a/tests/components/sensor/test_template.py +++ b/tests/components/sensor/test_template.py @@ -60,4 +60,4 @@ class TestTemplateSensor: self.hass.states.set('sensor.test_state', 'Works') self.hass.pool.block_till_done() state = self.hass.states.get('sensor.test_template_sensor') - assert state.state == 'unknown' + assert state.state == 'error'