Fixing unit of measure for withings hydration. Fixes #30570 (#30685)

This commit is contained in:
Robert Van Gorkom 2020-01-11 17:58:06 -08:00 committed by Alexei Chetroi
parent 8b46b5591f
commit 672db9cfe9
2 changed files with 23 additions and 25 deletions

View File

@ -177,7 +177,11 @@ WITHINGS_ATTRIBUTES = [
const.MEAS_SPO2_PCT, MeasureType.SP02, "SP02", const.UOM_PERCENT, None const.MEAS_SPO2_PCT, MeasureType.SP02, "SP02", const.UOM_PERCENT, None
), ),
WithingsMeasureAttribute( WithingsMeasureAttribute(
const.MEAS_HYDRATION, MeasureType.HYDRATION, "Hydration", "", "mdi:water" const.MEAS_HYDRATION,
MeasureType.HYDRATION,
"Hydration",
const.UOM_PERCENT,
"mdi:water",
), ),
WithingsMeasureAttribute( WithingsMeasureAttribute(
const.MEAS_PWV, const.MEAS_PWV,

View File

@ -11,7 +11,6 @@ from homeassistant.components.withings.common import (
NotAuthenticatedError, NotAuthenticatedError,
WithingsDataManager, WithingsDataManager,
) )
from homeassistant.core import HomeAssistant
from homeassistant.exceptions import PlatformNotReady from homeassistant.exceptions import PlatformNotReady
from homeassistant.util import dt from homeassistant.util import dt
@ -27,17 +26,6 @@ def withings_api_fixture() -> WithingsApi:
return withings_api return withings_api
@pytest.fixture
def mock_time_zone():
"""Provide an alternative time zone."""
patch_time_zone = patch(
"homeassistant.util.dt.DEFAULT_TIME_ZONE",
new=dt.get_time_zone("America/Los_Angeles"),
)
with patch_time_zone:
yield
@pytest.fixture(name="data_manager") @pytest.fixture(name="data_manager")
def data_manager_fixture(hass, withings_api: WithingsApi) -> WithingsDataManager: def data_manager_fixture(hass, withings_api: WithingsApi) -> WithingsDataManager:
"""Provide data manager.""" """Provide data manager."""
@ -122,20 +110,26 @@ async def test_data_manager_call_throttle_disabled(
async def test_data_manager_update_sleep_date_range( async def test_data_manager_update_sleep_date_range(
hass: HomeAssistant, data_manager: WithingsDataManager, mock_time_zone data_manager: WithingsDataManager,
) -> None: ) -> None:
"""Test method.""" """Test method."""
update_start_time = dt.now() patch_time_zone = patch(
await data_manager.update_sleep() "homeassistant.util.dt.DEFAULT_TIME_ZONE",
new=dt.get_time_zone("America/Los_Angeles"),
)
call_args = data_manager.api.sleep_get.call_args_list[0][1] with patch_time_zone:
startdate = call_args.get("startdate") update_start_time = dt.now()
enddate = call_args.get("enddate") await data_manager.update_sleep()
assert startdate.tzname() == "PST" call_args = data_manager.api.sleep_get.call_args_list[0][1]
startdate = call_args.get("startdate")
enddate = call_args.get("enddate")
assert enddate.tzname() == "PST" assert startdate.tzname() == "PST"
assert startdate.tzname() == "PST"
assert update_start_time < enddate assert enddate.tzname() == "PST"
assert enddate < update_start_time + timedelta(seconds=1) assert startdate.tzname() == "PST"
assert enddate > startdate assert update_start_time < enddate
assert enddate < update_start_time + timedelta(seconds=1)
assert enddate > startdate