diff --git a/homeassistant/components/sensor/filter.py b/homeassistant/components/sensor/filter.py index 88868ddcc42..21fd09248ff 100644 --- a/homeassistant/components/sensor/filter.py +++ b/homeassistant/components/sensor/filter.py @@ -374,7 +374,7 @@ class RangeFilter(Filter): self._entity, new_state) new_state.state = self._upper_bound - elif new_state < self._lower_bound: + elif new_state.state < self._lower_bound: self._stats_internal['erasures_low'] += 1 diff --git a/tests/components/sensor/test_filter.py b/tests/components/sensor/test_filter.py index 0f5b581d075..e449f239c0b 100644 --- a/tests/components/sensor/test_filter.py +++ b/tests/components/sensor/test_filter.py @@ -141,13 +141,14 @@ class TestFilterSensor(unittest.TestCase): lower_bound=lower, upper_bound=upper) for unf_state in self.values: + prev = unf_state.state filtered = filt.filter_state(unf_state) - if unf_state.state < lower: + if prev < lower: self.assertEqual(lower, filtered.state) - elif unf_state.state > upper: + elif prev > upper: self.assertEqual(upper, filtered.state) else: - self.assertEqual(unf_state.state, filtered.state) + self.assertEqual(prev, filtered.state) def test_throttle(self): """Test if lowpass filter works."""