Merge branch 'dev' of github.com:andylockran/home-assistant into dev

This commit is contained in:
andylockran 2015-12-11 12:49:34 +00:00
commit 84226b573e
8 changed files with 39 additions and 38 deletions

View File

@ -1,11 +1,9 @@
sudo: false sudo: false
language: python language: python
cache: cache: pip
directories:
- $HOME/virtualenv/python$TRAVIS_PYTHON_VERSION/
python: python:
- 3.4.2 - 3.4
- 3.5.0 - 3.5
install: install:
- script/bootstrap_server - script/bootstrap_server
script: script:

View File

@ -275,7 +275,7 @@ def enable_logging(hass, verbose=False, daemon=False, log_rotate_days=None):
datefmt='%y-%m-%d %H:%M:%S')) datefmt='%y-%m-%d %H:%M:%S'))
logger = logging.getLogger('') logger = logging.getLogger('')
logger.addHandler(err_handler) logger.addHandler(err_handler)
logger.setLevel(logging.INFO) # this sets the minimum log level logger.setLevel(logging.NOTSET) # this sets the minimum log level
else: else:
_LOGGER.error( _LOGGER.error(

View File

@ -79,6 +79,7 @@ def _handle_get_root(handler, path_match, data):
def _handle_get_service_worker(handler, path_match, data): def _handle_get_service_worker(handler, path_match, data):
""" Returns service worker for the frontend. """
if handler.server.development: if handler.server.development:
sw_path = "home-assistant-polymer/build/service_worker.js" sw_path = "home-assistant-polymer/build/service_worker.js"
else: else:

View File

@ -1,7 +1,7 @@
""" """
homeassistant.components.rollershutter.demo homeassistant.components.rollershutter.demo
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Demo platform for rollorshutter component. Demo platform for the rollorshutter component.
""" """
from homeassistant.const import EVENT_TIME_CHANGED from homeassistant.const import EVENT_TIME_CHANGED
from homeassistant.helpers.event import track_utc_time_change from homeassistant.helpers.event import track_utc_time_change
@ -9,7 +9,7 @@ from homeassistant.components.rollershutter import RollershutterDevice
def setup_platform(hass, config, add_devices, discovery_info=None): def setup_platform(hass, config, add_devices, discovery_info=None):
""" Sets up the Demo binary sensors. """ """ Sets up the Demo rollershutters. """
add_devices([ add_devices([
DemoRollershutter(hass, 'Kitchen Window', 0), DemoRollershutter(hass, 'Kitchen Window', 0),
DemoRollershutter(hass, 'Living Room Window', 100), DemoRollershutter(hass, 'Living Room Window', 100),
@ -17,7 +17,7 @@ def setup_platform(hass, config, add_devices, discovery_info=None):
class DemoRollershutter(RollershutterDevice): class DemoRollershutter(RollershutterDevice):
""" Represents a rollershutter within Home Assistant. """ """ Represents a rollershutter.. """
# pylint: disable=no-self-use # pylint: disable=no-self-use
def __init__(self, hass, name, position): def __init__(self, hass, name, position):
@ -29,14 +29,17 @@ class DemoRollershutter(RollershutterDevice):
@property @property
def name(self): def name(self):
""" Returns the name of the rollershutter. """
return self._name return self._name
@property @property
def should_poll(self): def should_poll(self):
""" No polling needed for a demo rollershutter. """
return False return False
@property @property
def current_position(self): def current_position(self):
""" Returns the current position of the rollershutter. """
return self._position return self._position
def move_up(self, **kwargs): def move_up(self, **kwargs):
@ -62,11 +65,13 @@ class DemoRollershutter(RollershutterDevice):
self._listener = None self._listener = None
def _listen(self): def _listen(self):
""" Listens for changes. """
if self._listener is None: if self._listener is None:
self._listener = track_utc_time_change(self.hass, self._listener = track_utc_time_change(self.hass,
self._time_changed) self._time_changed)
def _time_changed(self, now): def _time_changed(self, now):
""" Track time changes. """
if self._moving_up: if self._moving_up:
self._position -= 10 self._position -= 10
else: else:

View File

@ -127,15 +127,14 @@ class ArestSensor(Entity):
if 'error' in values: if 'error' in values:
return values['error'] return values['error']
elif 'value' in values: elif 'value' in values:
if self._corr_factor is not None \ value = values['value']
and self._decimal_places is not None: if self._corr_factor is not None:
return round((float(values['value']) * value = float(value) * float(self._corr_factor)
float(self._corr_factor)), self._decimal_places) if self._decimal_places is not None:
elif self._corr_factor is not None \ value = round(value, self._decimal_places)
and self._decimal_places is None: if self._decimal_places == 0:
return round(float(values['value']) * float(self._corr_factor)) value = int(value)
else: return value
return values['value']
else: else:
return values.get(self._variable, 'n/a') return values.get(self._variable, 'n/a')

View File

@ -35,8 +35,8 @@ def setup_platform(hass, config, add_devices_callback, discovery_info=None):
data, data,
config.get('name', DEFAULT_NAME), config.get('name', DEFAULT_NAME),
config.get('unit_of_measurement'), config.get('unit_of_measurement'),
config.get('correction_factor', 1.0), config.get('correction_factor', None),
config.get('decimal_places', 0) config.get('decimal_places', None)
)]) )])
@ -49,7 +49,7 @@ class CommandSensor(Entity):
self._name = name self._name = name
self._state = False self._state = False
self._unit_of_measurement = unit_of_measurement self._unit_of_measurement = unit_of_measurement
self._corr_factor = float(corr_factor) self._corr_factor = corr_factor
self._decimal_places = decimal_places self._decimal_places = decimal_places
self.update() self.update()
@ -76,9 +76,11 @@ class CommandSensor(Entity):
try: try:
if value is not None: if value is not None:
if self._corr_factor is not None: if self._corr_factor is not None:
self._state = round((float(value) * self._corr_factor), value = float(value) * float(self._corr_factor)
self._decimal_places) if self._decimal_places is not None:
else: value = round(value, self._decimal_places)
if self._decimal_places == 0:
value = int(value)
self._state = value self._state = value
except ValueError: except ValueError:
self._state = value self._state = value

View File

@ -76,7 +76,8 @@ def setup_platform(hass, config, add_devices, discovery_info=None):
return False return False
persistence = config.get(CONF_PERSISTENCE, True) persistence = config.get(CONF_PERSISTENCE, True)
persistence_file = config.get(CONF_PERSISTENCE_FILE, 'mysensors.pickle') persistence_file = config.get(CONF_PERSISTENCE_FILE,
hass.config.path('mysensors.pickle'))
version = config.get(CONF_VERSION, '1.4') version = config.get(CONF_VERSION, '1.4')
gateway = mysensors.SerialGateway(port, sensor_update, gateway = mysensors.SerialGateway(port, sensor_update,

View File

@ -136,17 +136,12 @@ class RestSensor(Entity):
try: try:
if value is not None: if value is not None:
value = RestSensor.extract_value(value, self._variable) value = RestSensor.extract_value(value, self._variable)
if self._corr_factor is not None \ if self._corr_factor is not None:
and self._decimal_places is not None: value = float(value) * float(self._corr_factor)
self._state = round( if self._decimal_places is not None:
(float(value) * value = round(value, self._decimal_places)
float(self._corr_factor)), if self._decimal_places == 0:
self._decimal_places) value = int(value)
elif self._corr_factor is not None \
and self._decimal_places is None:
self._state = round(float(value) *
float(self._corr_factor))
else:
self._state = value self._state = value
except ValueError: except ValueError:
self._state = RestSensor.extract_value(value, self._variable) self._state = RestSensor.extract_value(value, self._variable)