mirror of
https://github.com/home-assistant/core.git
synced 2025-07-23 05:07:41 +00:00
Fix time zone for flux switch (#18102)
This commit is contained in:
parent
8613694544
commit
93689d68f7
@ -25,7 +25,7 @@ from homeassistant.util import slugify
|
||||
from homeassistant.util.color import (
|
||||
color_temperature_to_rgb, color_RGB_to_xy_brightness,
|
||||
color_temperature_kelvin_to_mired)
|
||||
from homeassistant.util.dt import now as dt_now
|
||||
from homeassistant.util.dt import utcnow as dt_utcnow, as_local
|
||||
|
||||
_LOGGER = logging.getLogger(__name__)
|
||||
|
||||
@ -195,10 +195,12 @@ class FluxSwitch(SwitchDevice):
|
||||
|
||||
self.schedule_update_ha_state()
|
||||
|
||||
def flux_update(self, now=None):
|
||||
def flux_update(self, utcnow=None):
|
||||
"""Update all the lights using flux."""
|
||||
if now is None:
|
||||
now = dt_now()
|
||||
if utcnow is None:
|
||||
utcnow = dt_utcnow()
|
||||
|
||||
now = as_local(utcnow)
|
||||
|
||||
sunset = get_astral_event_date(self.hass, SUN_EVENT_SUNSET, now.date())
|
||||
start_time = self.find_start_time(now)
|
||||
|
@ -87,7 +87,7 @@ class TestSwitchFlux(unittest.TestCase):
|
||||
assert state.attributes.get('xy_color') is None
|
||||
assert state.attributes.get('brightness') is None
|
||||
|
||||
test_time = dt_util.now().replace(hour=10, minute=30, second=0)
|
||||
test_time = dt_util.utcnow().replace(hour=10, minute=30, second=0)
|
||||
sunset_time = test_time.replace(hour=17, minute=0, second=0)
|
||||
sunrise_time = test_time.replace(hour=5, minute=0, second=0)
|
||||
|
||||
@ -96,7 +96,7 @@ class TestSwitchFlux(unittest.TestCase):
|
||||
return sunrise_time
|
||||
return sunset_time
|
||||
|
||||
with patch('homeassistant.util.dt.now', return_value=test_time):
|
||||
with patch('homeassistant.util.dt.utcnow', return_value=test_time):
|
||||
with patch('homeassistant.helpers.sun.get_astral_event_date',
|
||||
side_effect=event_date):
|
||||
assert setup_component(self.hass, switch.DOMAIN, {
|
||||
@ -127,7 +127,7 @@ class TestSwitchFlux(unittest.TestCase):
|
||||
assert state.attributes.get('xy_color') is None
|
||||
assert state.attributes.get('brightness') is None
|
||||
|
||||
test_time = dt_util.now().replace(hour=2, minute=30, second=0)
|
||||
test_time = dt_util.utcnow().replace(hour=2, minute=30, second=0)
|
||||
sunset_time = test_time.replace(hour=17, minute=0, second=0)
|
||||
sunrise_time = test_time.replace(hour=5, minute=0, second=0)
|
||||
|
||||
@ -136,7 +136,7 @@ class TestSwitchFlux(unittest.TestCase):
|
||||
return sunrise_time
|
||||
return sunset_time
|
||||
|
||||
with patch('homeassistant.util.dt.now', return_value=test_time):
|
||||
with patch('homeassistant.util.dt.utcnow', return_value=test_time):
|
||||
with patch('homeassistant.helpers.sun.get_astral_event_date',
|
||||
side_effect=event_date):
|
||||
assert setup_component(self.hass, switch.DOMAIN, {
|
||||
@ -172,7 +172,7 @@ class TestSwitchFlux(unittest.TestCase):
|
||||
assert state.attributes.get('xy_color') is None
|
||||
assert state.attributes.get('brightness') is None
|
||||
|
||||
test_time = dt_util.now().replace(hour=8, minute=30, second=0)
|
||||
test_time = dt_util.utcnow().replace(hour=8, minute=30, second=0)
|
||||
sunset_time = test_time.replace(hour=17, minute=0, second=0)
|
||||
sunrise_time = test_time.replace(hour=5, minute=0, second=0)
|
||||
|
||||
@ -181,7 +181,7 @@ class TestSwitchFlux(unittest.TestCase):
|
||||
return sunrise_time
|
||||
return sunset_time
|
||||
|
||||
with patch('homeassistant.components.switch.flux.dt_now',
|
||||
with patch('homeassistant.components.switch.flux.dt_utcnow',
|
||||
return_value=test_time), \
|
||||
patch('homeassistant.helpers.sun.get_astral_event_date',
|
||||
side_effect=event_date):
|
||||
@ -218,7 +218,7 @@ class TestSwitchFlux(unittest.TestCase):
|
||||
assert state.attributes.get('xy_color') is None
|
||||
assert state.attributes.get('brightness') is None
|
||||
|
||||
test_time = dt_util.now().replace(hour=17, minute=30, second=0)
|
||||
test_time = dt_util.utcnow().replace(hour=17, minute=30, second=0)
|
||||
sunset_time = test_time.replace(hour=17, minute=0, second=0)
|
||||
sunrise_time = test_time.replace(hour=5, minute=0, second=0)
|
||||
|
||||
@ -227,7 +227,7 @@ class TestSwitchFlux(unittest.TestCase):
|
||||
return sunrise_time
|
||||
return sunset_time
|
||||
|
||||
with patch('homeassistant.components.switch.flux.dt_now',
|
||||
with patch('homeassistant.components.switch.flux.dt_utcnow',
|
||||
return_value=test_time), \
|
||||
patch('homeassistant.helpers.sun.get_astral_event_date',
|
||||
side_effect=event_date):
|
||||
@ -265,7 +265,7 @@ class TestSwitchFlux(unittest.TestCase):
|
||||
assert state.attributes.get('xy_color') is None
|
||||
assert state.attributes.get('brightness') is None
|
||||
|
||||
test_time = dt_util.now().replace(hour=23, minute=30, second=0)
|
||||
test_time = dt_util.utcnow().replace(hour=23, minute=30, second=0)
|
||||
sunset_time = test_time.replace(hour=17, minute=0, second=0)
|
||||
sunrise_time = test_time.replace(hour=5, minute=0, second=0)
|
||||
|
||||
@ -274,7 +274,7 @@ class TestSwitchFlux(unittest.TestCase):
|
||||
return sunrise_time
|
||||
return sunset_time
|
||||
|
||||
with patch('homeassistant.util.dt.now', return_value=test_time):
|
||||
with patch('homeassistant.util.dt.utcnow', return_value=test_time):
|
||||
with patch('homeassistant.helpers.sun.get_astral_event_date',
|
||||
side_effect=event_date):
|
||||
assert setup_component(self.hass, switch.DOMAIN, {
|
||||
@ -310,7 +310,7 @@ class TestSwitchFlux(unittest.TestCase):
|
||||
assert state.attributes.get('xy_color') is None
|
||||
assert state.attributes.get('brightness') is None
|
||||
|
||||
test_time = dt_util.now().replace(hour=17, minute=30, second=0)
|
||||
test_time = dt_util.utcnow().replace(hour=17, minute=30, second=0)
|
||||
sunset_time = test_time.replace(hour=17, minute=0, second=0)
|
||||
sunrise_time = test_time.replace(hour=5, minute=0, second=0)
|
||||
|
||||
@ -319,7 +319,7 @@ class TestSwitchFlux(unittest.TestCase):
|
||||
return sunrise_time
|
||||
return sunset_time
|
||||
|
||||
with patch('homeassistant.components.switch.flux.dt_now',
|
||||
with patch('homeassistant.components.switch.flux.dt_utcnow',
|
||||
return_value=test_time), \
|
||||
patch('homeassistant.helpers.sun.get_astral_event_date',
|
||||
side_effect=event_date):
|
||||
@ -360,7 +360,7 @@ class TestSwitchFlux(unittest.TestCase):
|
||||
assert state.attributes.get('xy_color') is None
|
||||
assert state.attributes.get('brightness') is None
|
||||
|
||||
test_time = dt_util.now().replace(hour=2, minute=30, second=0)
|
||||
test_time = dt_util.utcnow().replace(hour=2, minute=30, second=0)
|
||||
sunset_time = test_time.replace(hour=17, minute=0, second=0)
|
||||
sunrise_time = test_time.replace(hour=5, minute=0, second=0)
|
||||
|
||||
@ -369,7 +369,7 @@ class TestSwitchFlux(unittest.TestCase):
|
||||
return sunrise_time
|
||||
return sunset_time
|
||||
|
||||
with patch('homeassistant.components.switch.flux.dt_now',
|
||||
with patch('homeassistant.components.switch.flux.dt_utcnow',
|
||||
return_value=test_time), \
|
||||
patch('homeassistant.helpers.sun.get_astral_event_date',
|
||||
side_effect=event_date):
|
||||
@ -411,7 +411,7 @@ class TestSwitchFlux(unittest.TestCase):
|
||||
assert state.attributes.get('xy_color') is None
|
||||
assert state.attributes.get('brightness') is None
|
||||
|
||||
test_time = dt_util.now().replace(hour=8, minute=30, second=0)
|
||||
test_time = dt_util.utcnow().replace(hour=8, minute=30, second=0)
|
||||
sunset_time = test_time.replace(hour=17, minute=0, second=0)
|
||||
sunrise_time = test_time.replace(hour=5, minute=0, second=0)
|
||||
|
||||
@ -420,7 +420,7 @@ class TestSwitchFlux(unittest.TestCase):
|
||||
return sunrise_time
|
||||
return sunset_time
|
||||
|
||||
with patch('homeassistant.components.switch.flux.dt_now',
|
||||
with patch('homeassistant.components.switch.flux.dt_utcnow',
|
||||
return_value=test_time), \
|
||||
patch('homeassistant.helpers.sun.get_astral_event_date',
|
||||
side_effect=event_date):
|
||||
@ -461,7 +461,7 @@ class TestSwitchFlux(unittest.TestCase):
|
||||
assert state.attributes.get('xy_color') is None
|
||||
assert state.attributes.get('brightness') is None
|
||||
|
||||
test_time = dt_util.now().replace(hour=23, minute=30, second=0)
|
||||
test_time = dt_util.utcnow().replace(hour=23, minute=30, second=0)
|
||||
sunset_time = test_time.replace(hour=17, minute=0, second=0)
|
||||
sunrise_time = test_time.replace(hour=5, minute=0, second=0)
|
||||
|
||||
@ -470,7 +470,7 @@ class TestSwitchFlux(unittest.TestCase):
|
||||
return sunrise_time
|
||||
return sunset_time
|
||||
|
||||
with patch('homeassistant.util.dt.now', return_value=test_time):
|
||||
with patch('homeassistant.util.dt.utcnow', return_value=test_time):
|
||||
with patch('homeassistant.helpers.sun.get_astral_event_date',
|
||||
side_effect=event_date):
|
||||
assert setup_component(self.hass, switch.DOMAIN, {
|
||||
@ -510,7 +510,7 @@ class TestSwitchFlux(unittest.TestCase):
|
||||
assert state.attributes.get('xy_color') is None
|
||||
assert state.attributes.get('brightness') is None
|
||||
|
||||
test_time = dt_util.now().replace(hour=00, minute=30, second=0)
|
||||
test_time = dt_util.utcnow().replace(hour=00, minute=30, second=0)
|
||||
sunset_time = test_time.replace(hour=17, minute=0, second=0)
|
||||
sunrise_time = test_time.replace(hour=5, minute=0, second=0)
|
||||
|
||||
@ -519,7 +519,7 @@ class TestSwitchFlux(unittest.TestCase):
|
||||
return sunrise_time
|
||||
return sunset_time
|
||||
|
||||
with patch('homeassistant.components.switch.flux.dt_now',
|
||||
with patch('homeassistant.components.switch.flux.dt_utcnow',
|
||||
return_value=test_time), \
|
||||
patch('homeassistant.helpers.sun.get_astral_event_date',
|
||||
side_effect=event_date):
|
||||
@ -560,7 +560,7 @@ class TestSwitchFlux(unittest.TestCase):
|
||||
assert state.attributes.get('xy_color') is None
|
||||
assert state.attributes.get('brightness') is None
|
||||
|
||||
test_time = dt_util.now().replace(hour=2, minute=30, second=0)
|
||||
test_time = dt_util.utcnow().replace(hour=2, minute=30, second=0)
|
||||
sunset_time = test_time.replace(hour=17, minute=0, second=0)
|
||||
sunrise_time = test_time.replace(hour=5, minute=0, second=0)
|
||||
|
||||
@ -569,7 +569,7 @@ class TestSwitchFlux(unittest.TestCase):
|
||||
return sunrise_time
|
||||
return sunset_time
|
||||
|
||||
with patch('homeassistant.components.switch.flux.dt_now',
|
||||
with patch('homeassistant.components.switch.flux.dt_utcnow',
|
||||
return_value=test_time), \
|
||||
patch('homeassistant.helpers.sun.get_astral_event_date',
|
||||
side_effect=event_date):
|
||||
@ -607,7 +607,7 @@ class TestSwitchFlux(unittest.TestCase):
|
||||
assert state.attributes.get('xy_color') is None
|
||||
assert state.attributes.get('brightness') is None
|
||||
|
||||
test_time = dt_util.now().replace(hour=17, minute=30, second=0)
|
||||
test_time = dt_util.utcnow().replace(hour=17, minute=30, second=0)
|
||||
sunset_time = test_time.replace(hour=17, minute=0, second=0)
|
||||
sunrise_time = test_time.replace(hour=5, minute=0, second=0)
|
||||
|
||||
@ -616,7 +616,7 @@ class TestSwitchFlux(unittest.TestCase):
|
||||
return sunrise_time
|
||||
return sunset_time
|
||||
|
||||
with patch('homeassistant.components.switch.flux.dt_now',
|
||||
with patch('homeassistant.components.switch.flux.dt_utcnow',
|
||||
return_value=test_time), \
|
||||
patch('homeassistant.helpers.sun.get_astral_event_date',
|
||||
side_effect=event_date):
|
||||
@ -656,7 +656,7 @@ class TestSwitchFlux(unittest.TestCase):
|
||||
assert state.attributes.get('xy_color') is None
|
||||
assert state.attributes.get('brightness') is None
|
||||
|
||||
test_time = dt_util.now().replace(hour=17, minute=30, second=0)
|
||||
test_time = dt_util.utcnow().replace(hour=17, minute=30, second=0)
|
||||
sunset_time = test_time.replace(hour=17, minute=0, second=0)
|
||||
sunrise_time = test_time.replace(hour=5, minute=0, second=0)
|
||||
|
||||
@ -665,7 +665,7 @@ class TestSwitchFlux(unittest.TestCase):
|
||||
return sunrise_time
|
||||
return sunset_time
|
||||
|
||||
with patch('homeassistant.components.switch.flux.dt_now',
|
||||
with patch('homeassistant.components.switch.flux.dt_utcnow',
|
||||
return_value=test_time), \
|
||||
patch('homeassistant.helpers.sun.get_astral_event_date',
|
||||
side_effect=event_date):
|
||||
@ -716,7 +716,7 @@ class TestSwitchFlux(unittest.TestCase):
|
||||
assert state.attributes.get('xy_color') is None
|
||||
assert state.attributes.get('brightness') is None
|
||||
|
||||
test_time = dt_util.now().replace(hour=12, minute=0, second=0)
|
||||
test_time = dt_util.utcnow().replace(hour=12, minute=0, second=0)
|
||||
sunset_time = test_time.replace(hour=17, minute=0, second=0)
|
||||
sunrise_time = test_time.replace(hour=5, minute=0, second=0)
|
||||
|
||||
@ -727,7 +727,7 @@ class TestSwitchFlux(unittest.TestCase):
|
||||
print('sunset {}'.format(sunset_time))
|
||||
return sunset_time
|
||||
|
||||
with patch('homeassistant.components.switch.flux.dt_now',
|
||||
with patch('homeassistant.components.switch.flux.dt_utcnow',
|
||||
return_value=test_time), \
|
||||
patch('homeassistant.helpers.sun.get_astral_event_date',
|
||||
side_effect=event_date):
|
||||
@ -770,7 +770,7 @@ class TestSwitchFlux(unittest.TestCase):
|
||||
assert STATE_ON == state.state
|
||||
assert state.attributes.get('color_temp') is None
|
||||
|
||||
test_time = dt_util.now().replace(hour=8, minute=30, second=0)
|
||||
test_time = dt_util.utcnow().replace(hour=8, minute=30, second=0)
|
||||
sunset_time = test_time.replace(hour=17, minute=0, second=0)
|
||||
sunrise_time = test_time.replace(hour=5, minute=0, second=0)
|
||||
|
||||
@ -779,7 +779,7 @@ class TestSwitchFlux(unittest.TestCase):
|
||||
return sunrise_time
|
||||
return sunset_time
|
||||
|
||||
with patch('homeassistant.components.switch.flux.dt_now',
|
||||
with patch('homeassistant.components.switch.flux.dt_utcnow',
|
||||
return_value=test_time), \
|
||||
patch('homeassistant.helpers.sun.get_astral_event_date',
|
||||
side_effect=event_date):
|
||||
@ -814,7 +814,7 @@ class TestSwitchFlux(unittest.TestCase):
|
||||
assert STATE_ON == state.state
|
||||
assert state.attributes.get('color_temp') is None
|
||||
|
||||
test_time = dt_util.now().replace(hour=8, minute=30, second=0)
|
||||
test_time = dt_util.utcnow().replace(hour=8, minute=30, second=0)
|
||||
sunset_time = test_time.replace(hour=17, minute=0, second=0)
|
||||
sunrise_time = test_time.replace(hour=5, minute=0, second=0)
|
||||
|
||||
@ -823,7 +823,7 @@ class TestSwitchFlux(unittest.TestCase):
|
||||
return sunrise_time
|
||||
return sunset_time
|
||||
|
||||
with patch('homeassistant.components.switch.flux.dt_now',
|
||||
with patch('homeassistant.components.switch.flux.dt_utcnow',
|
||||
return_value=test_time), \
|
||||
patch('homeassistant.helpers.sun.get_astral_event_date',
|
||||
side_effect=event_date):
|
||||
|
Loading…
x
Reference in New Issue
Block a user