mirror of
https://github.com/home-assistant/core.git
synced 2025-07-14 16:57:10 +00:00
parent
fcccf133ba
commit
384a9625c9
@ -1,8 +1,11 @@
|
|||||||
"""The test for the History Statistics sensor platform."""
|
"""The test for the History Statistics sensor platform."""
|
||||||
# pylint: disable=protected-access
|
# pylint: disable=protected-access
|
||||||
from datetime import timedelta
|
from datetime import datetime, timedelta
|
||||||
import unittest
|
import unittest
|
||||||
from unittest.mock import patch
|
from unittest.mock import patch
|
||||||
|
import pytest
|
||||||
|
import pytz
|
||||||
|
from homeassistant.helpers import template
|
||||||
|
|
||||||
from homeassistant.const import STATE_UNKNOWN
|
from homeassistant.const import STATE_UNKNOWN
|
||||||
from homeassistant.setup import setup_component
|
from homeassistant.setup import setup_component
|
||||||
@ -12,7 +15,6 @@ from homeassistant.helpers.template import Template
|
|||||||
import homeassistant.util.dt as dt_util
|
import homeassistant.util.dt as dt_util
|
||||||
|
|
||||||
from tests.common import init_recorder_component, get_test_home_assistant
|
from tests.common import init_recorder_component, get_test_home_assistant
|
||||||
import pytest
|
|
||||||
|
|
||||||
|
|
||||||
class TestHistoryStatsSensor(unittest.TestCase):
|
class TestHistoryStatsSensor(unittest.TestCase):
|
||||||
@ -50,19 +52,22 @@ class TestHistoryStatsSensor(unittest.TestCase):
|
|||||||
|
|
||||||
def test_period_parsing(self):
|
def test_period_parsing(self):
|
||||||
"""Test the conversion from templates to period."""
|
"""Test the conversion from templates to period."""
|
||||||
today = Template('{{ now().replace(hour=0).replace(minute=0)'
|
now = datetime(2019, 1, 1, 23, 30, 0, tzinfo=pytz.utc)
|
||||||
'.replace(second=0) }}', self.hass)
|
with patch.dict(template.ENV.globals, {'now': lambda: now}):
|
||||||
duration = timedelta(hours=2, minutes=1)
|
print(dt_util.now())
|
||||||
|
today = Template('{{ now().replace(hour=0).replace(minute=0)'
|
||||||
|
'.replace(second=0) }}', self.hass)
|
||||||
|
duration = timedelta(hours=2, minutes=1)
|
||||||
|
|
||||||
sensor1 = HistoryStatsSensor(
|
sensor1 = HistoryStatsSensor(
|
||||||
self.hass, 'test', 'on', today, None, duration, 'time', 'test')
|
self.hass, 'test', 'on', today, None, duration, 'time', 'test')
|
||||||
sensor2 = HistoryStatsSensor(
|
sensor2 = HistoryStatsSensor(
|
||||||
self.hass, 'test', 'on', None, today, duration, 'time', 'test')
|
self.hass, 'test', 'on', None, today, duration, 'time', 'test')
|
||||||
|
|
||||||
sensor1.update_period()
|
sensor1.update_period()
|
||||||
sensor1_start, sensor1_end = sensor1._period
|
sensor1_start, sensor1_end = sensor1._period
|
||||||
sensor2.update_period()
|
sensor2.update_period()
|
||||||
sensor2_start, sensor2_end = sensor2._period
|
sensor2_start, sensor2_end = sensor2._period
|
||||||
|
|
||||||
# Start = 00:00:00
|
# Start = 00:00:00
|
||||||
assert sensor1_start.hour == 0
|
assert sensor1_start.hour == 0
|
||||||
@ -70,9 +75,9 @@ class TestHistoryStatsSensor(unittest.TestCase):
|
|||||||
assert sensor1_start.second == 0
|
assert sensor1_start.second == 0
|
||||||
|
|
||||||
# End = 02:01:00
|
# End = 02:01:00
|
||||||
# assert sensor1_end.hour == 2
|
assert sensor1_end.hour == 2
|
||||||
# assert sensor1_end.minute == 1
|
assert sensor1_end.minute == 1
|
||||||
# assert sensor1_end.second == 0
|
assert sensor1_end.second == 0
|
||||||
|
|
||||||
# Start = 21:59:00
|
# Start = 21:59:00
|
||||||
assert sensor2_start.hour == 21
|
assert sensor2_start.hour == 21
|
||||||
|
Loading…
x
Reference in New Issue
Block a user