From c838b91fb23cb63b38eba33c7cce0e3f38e8c0cd Mon Sep 17 00:00:00 2001 From: Florent Date: Thu, 8 Nov 2012 20:22:45 +0100 Subject: [PATCH] Add SensorNotFound exception --- modules/sachsen/backend.py | 6 +++++- weboob/capabilities/gauge.py | 10 ++++++++-- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/modules/sachsen/backend.py b/modules/sachsen/backend.py index 968dda32f5..4a93731327 100644 --- a/modules/sachsen/backend.py +++ b/modules/sachsen/backend.py @@ -21,7 +21,7 @@ from __future__ import with_statement from .browser import SachsenBrowser -from weboob.capabilities.gauge import ICapGauge, GaugeSensor, Gauge +from weboob.capabilities.gauge import ICapGauge, GaugeSensor, Gauge, SensorNotFound from weboob.tools.backend import BaseBackend @@ -75,9 +75,13 @@ def iter_sensors(self, gauge, pattern=None): def iter_gauge_history(self, sensor): if not isinstance(sensor, GaugeSensor): sensor = self._get_sensor_by_id(sensor) + if sensor is None: + raise SensorNotFound() return self.browser.iter_history(sensor) def get_last_measure(self, sensor): if not isinstance(sensor, GaugeSensor): sensor = self._get_sensor_by_id(sensor) + if sensor is None: + raise SensorNotFound() return sensor.lastvalue diff --git a/weboob/capabilities/gauge.py b/weboob/capabilities/gauge.py index f33f3de465..8378fd02ac 100644 --- a/weboob/capabilities/gauge.py +++ b/weboob/capabilities/gauge.py @@ -18,10 +18,16 @@ # along with weboob. If not, see . -from .base import IBaseCap, CapBaseObject, StringField, FloatField, DateField, Field +from .base import IBaseCap, CapBaseObject, StringField, FloatField, DateField, Field, UserError -__all__ = ['Gauge', 'GaugeSensor', 'GaugeMeasure', 'ICapGauge'] +__all__ = ['Gauge', 'GaugeSensor', 'GaugeMeasure', 'ICapGauge', 'SensorNotFound'] + + +class SensorNotFound(UserError): + """ + Not found a sensor + """ class Gauge(CapBaseObject): -- GitLab