From 8a1a341b3a659960b8ae6287d12f27d436eda4ca Mon Sep 17 00:00:00 2001 From: epenet <6771947+epenet@users.noreply.github.com> Date: Tue, 6 Dec 2022 10:55:12 +0100 Subject: [PATCH] Use new device class in darksky (#83362) --- homeassistant/components/darksky/sensor.py | 189 ++++++++++----------- 1 file changed, 93 insertions(+), 96 deletions(-) diff --git a/homeassistant/components/darksky/sensor.py b/homeassistant/components/darksky/sensor.py index 504029d339b..24bdd0747c6 100644 --- a/homeassistant/components/darksky/sensor.py +++ b/homeassistant/components/darksky/sensor.py @@ -25,18 +25,13 @@ from homeassistant.const import ( CONF_NAME, CONF_SCAN_INTERVAL, DEGREE, - LENGTH_CENTIMETERS, - LENGTH_INCHES, - LENGTH_KILOMETERS, - LENGTH_MILES, PERCENTAGE, - PRESSURE_MBAR, - SPEED_KILOMETERS_PER_HOUR, - SPEED_METERS_PER_SECOND, - SPEED_MILES_PER_HOUR, - TEMP_CELSIUS, - TEMP_FAHRENHEIT, UV_INDEX, + UnitOfLength, + UnitOfPrecipitationDepth, + UnitOfPressure, + UnitOfSpeed, + UnitOfTemperature, UnitOfVolumetricFlux, ) from homeassistant.core import HomeAssistant @@ -117,11 +112,11 @@ SENSOR_TYPES: dict[str, DarkskySensorEntityDescription] = { "nearest_storm_distance": DarkskySensorEntityDescription( key="nearest_storm_distance", name="Nearest Storm Distance", - si_unit=LENGTH_KILOMETERS, - us_unit=LENGTH_MILES, - ca_unit=LENGTH_KILOMETERS, - uk_unit=LENGTH_KILOMETERS, - uk2_unit=LENGTH_MILES, + si_unit=UnitOfLength.KILOMETERS, + us_unit=UnitOfLength.MILES, + ca_unit=UnitOfLength.KILOMETERS, + uk_unit=UnitOfLength.KILOMETERS, + uk2_unit=UnitOfLength.MILES, icon="mdi:weather-lightning", forecast_mode=["currently"], ), @@ -167,11 +162,12 @@ SENSOR_TYPES: dict[str, DarkskySensorEntityDescription] = { "precip_accumulation": DarkskySensorEntityDescription( key="precip_accumulation", name="Precip Accumulation", - si_unit=LENGTH_CENTIMETERS, - us_unit=LENGTH_INCHES, - ca_unit=LENGTH_CENTIMETERS, - uk_unit=LENGTH_CENTIMETERS, - uk2_unit=LENGTH_CENTIMETERS, + device_class=SensorDeviceClass.PRECIPITATION, + si_unit=UnitOfPrecipitationDepth.CENTIMETERS, + us_unit=UnitOfPrecipitationDepth.INCHES, + ca_unit=UnitOfPrecipitationDepth.CENTIMETERS, + uk_unit=UnitOfPrecipitationDepth.CENTIMETERS, + uk2_unit=UnitOfPrecipitationDepth.CENTIMETERS, icon="mdi:weather-snowy", forecast_mode=["hourly", "daily"], ), @@ -180,11 +176,11 @@ SENSOR_TYPES: dict[str, DarkskySensorEntityDescription] = { name="Temperature", device_class=SensorDeviceClass.TEMPERATURE, state_class=SensorStateClass.MEASUREMENT, - si_unit=TEMP_CELSIUS, - us_unit=TEMP_FAHRENHEIT, - ca_unit=TEMP_CELSIUS, - uk_unit=TEMP_CELSIUS, - uk2_unit=TEMP_CELSIUS, + si_unit=UnitOfTemperature.CELSIUS, + us_unit=UnitOfTemperature.FAHRENHEIT, + ca_unit=UnitOfTemperature.CELSIUS, + uk_unit=UnitOfTemperature.CELSIUS, + uk2_unit=UnitOfTemperature.CELSIUS, forecast_mode=["currently", "hourly"], ), "apparent_temperature": DarkskySensorEntityDescription( @@ -192,11 +188,11 @@ SENSOR_TYPES: dict[str, DarkskySensorEntityDescription] = { name="Apparent Temperature", device_class=SensorDeviceClass.TEMPERATURE, state_class=SensorStateClass.MEASUREMENT, - si_unit=TEMP_CELSIUS, - us_unit=TEMP_FAHRENHEIT, - ca_unit=TEMP_CELSIUS, - uk_unit=TEMP_CELSIUS, - uk2_unit=TEMP_CELSIUS, + si_unit=UnitOfTemperature.CELSIUS, + us_unit=UnitOfTemperature.FAHRENHEIT, + ca_unit=UnitOfTemperature.CELSIUS, + uk_unit=UnitOfTemperature.CELSIUS, + uk2_unit=UnitOfTemperature.CELSIUS, forecast_mode=["currently", "hourly"], ), "dew_point": DarkskySensorEntityDescription( @@ -204,22 +200,22 @@ SENSOR_TYPES: dict[str, DarkskySensorEntityDescription] = { name="Dew Point", device_class=SensorDeviceClass.TEMPERATURE, state_class=SensorStateClass.MEASUREMENT, - si_unit=TEMP_CELSIUS, - us_unit=TEMP_FAHRENHEIT, - ca_unit=TEMP_CELSIUS, - uk_unit=TEMP_CELSIUS, - uk2_unit=TEMP_CELSIUS, + si_unit=UnitOfTemperature.CELSIUS, + us_unit=UnitOfTemperature.FAHRENHEIT, + ca_unit=UnitOfTemperature.CELSIUS, + uk_unit=UnitOfTemperature.CELSIUS, + uk2_unit=UnitOfTemperature.CELSIUS, forecast_mode=["currently", "hourly", "daily"], ), "wind_speed": DarkskySensorEntityDescription( key="wind_speed", name="Wind Speed", - si_unit=SPEED_METERS_PER_SECOND, - us_unit=SPEED_MILES_PER_HOUR, - ca_unit=SPEED_KILOMETERS_PER_HOUR, - uk_unit=SPEED_MILES_PER_HOUR, - uk2_unit=SPEED_MILES_PER_HOUR, - icon="mdi:weather-windy", + device_class=SensorDeviceClass.WIND_SPEED, + si_unit=UnitOfSpeed.METERS_PER_SECOND, + us_unit=UnitOfSpeed.MILES_PER_HOUR, + ca_unit=UnitOfSpeed.KILOMETERS_PER_HOUR, + uk_unit=UnitOfSpeed.MILES_PER_HOUR, + uk2_unit=UnitOfSpeed.MILES_PER_HOUR, forecast_mode=["currently", "hourly", "daily"], ), "wind_bearing": DarkskySensorEntityDescription( @@ -236,11 +232,12 @@ SENSOR_TYPES: dict[str, DarkskySensorEntityDescription] = { "wind_gust": DarkskySensorEntityDescription( key="wind_gust", name="Wind Gust", - si_unit=SPEED_METERS_PER_SECOND, - us_unit=SPEED_MILES_PER_HOUR, - ca_unit=SPEED_KILOMETERS_PER_HOUR, - uk_unit=SPEED_MILES_PER_HOUR, - uk2_unit=SPEED_MILES_PER_HOUR, + device_class=SensorDeviceClass.WIND_SPEED, + si_unit=UnitOfSpeed.METERS_PER_SECOND, + us_unit=UnitOfSpeed.MILES_PER_HOUR, + ca_unit=UnitOfSpeed.KILOMETERS_PER_HOUR, + uk_unit=UnitOfSpeed.MILES_PER_HOUR, + uk2_unit=UnitOfSpeed.MILES_PER_HOUR, icon="mdi:weather-windy-variant", forecast_mode=["currently", "hourly", "daily"], ), @@ -271,21 +268,21 @@ SENSOR_TYPES: dict[str, DarkskySensorEntityDescription] = { key="pressure", name="Pressure", device_class=SensorDeviceClass.PRESSURE, - si_unit=PRESSURE_MBAR, - us_unit=PRESSURE_MBAR, - ca_unit=PRESSURE_MBAR, - uk_unit=PRESSURE_MBAR, - uk2_unit=PRESSURE_MBAR, + si_unit=UnitOfPressure.MBAR, + us_unit=UnitOfPressure.MBAR, + ca_unit=UnitOfPressure.MBAR, + uk_unit=UnitOfPressure.MBAR, + uk2_unit=UnitOfPressure.MBAR, forecast_mode=["currently", "hourly", "daily"], ), "visibility": DarkskySensorEntityDescription( key="visibility", name="Visibility", - si_unit=LENGTH_KILOMETERS, - us_unit=LENGTH_MILES, - ca_unit=LENGTH_KILOMETERS, - uk_unit=LENGTH_KILOMETERS, - uk2_unit=LENGTH_MILES, + si_unit=UnitOfLength.KILOMETERS, + us_unit=UnitOfLength.MILES, + ca_unit=UnitOfLength.KILOMETERS, + uk_unit=UnitOfLength.KILOMETERS, + uk2_unit=UnitOfLength.MILES, icon="mdi:eye", forecast_mode=["currently", "hourly", "daily"], ), @@ -304,88 +301,88 @@ SENSOR_TYPES: dict[str, DarkskySensorEntityDescription] = { key="apparent_temperature_max", name="Daily High Apparent Temperature", device_class=SensorDeviceClass.TEMPERATURE, - si_unit=TEMP_CELSIUS, - us_unit=TEMP_FAHRENHEIT, - ca_unit=TEMP_CELSIUS, - uk_unit=TEMP_CELSIUS, - uk2_unit=TEMP_CELSIUS, + si_unit=UnitOfTemperature.CELSIUS, + us_unit=UnitOfTemperature.FAHRENHEIT, + ca_unit=UnitOfTemperature.CELSIUS, + uk_unit=UnitOfTemperature.CELSIUS, + uk2_unit=UnitOfTemperature.CELSIUS, forecast_mode=["daily"], ), "apparent_temperature_high": DarkskySensorEntityDescription( key="apparent_temperature_high", name="Daytime High Apparent Temperature", device_class=SensorDeviceClass.TEMPERATURE, - si_unit=TEMP_CELSIUS, - us_unit=TEMP_FAHRENHEIT, - ca_unit=TEMP_CELSIUS, - uk_unit=TEMP_CELSIUS, - uk2_unit=TEMP_CELSIUS, + si_unit=UnitOfTemperature.CELSIUS, + us_unit=UnitOfTemperature.FAHRENHEIT, + ca_unit=UnitOfTemperature.CELSIUS, + uk_unit=UnitOfTemperature.CELSIUS, + uk2_unit=UnitOfTemperature.CELSIUS, forecast_mode=["daily"], ), "apparent_temperature_min": DarkskySensorEntityDescription( key="apparent_temperature_min", name="Daily Low Apparent Temperature", device_class=SensorDeviceClass.TEMPERATURE, - si_unit=TEMP_CELSIUS, - us_unit=TEMP_FAHRENHEIT, - ca_unit=TEMP_CELSIUS, - uk_unit=TEMP_CELSIUS, - uk2_unit=TEMP_CELSIUS, + si_unit=UnitOfTemperature.CELSIUS, + us_unit=UnitOfTemperature.FAHRENHEIT, + ca_unit=UnitOfTemperature.CELSIUS, + uk_unit=UnitOfTemperature.CELSIUS, + uk2_unit=UnitOfTemperature.CELSIUS, forecast_mode=["daily"], ), "apparent_temperature_low": DarkskySensorEntityDescription( key="apparent_temperature_low", name="Overnight Low Apparent Temperature", device_class=SensorDeviceClass.TEMPERATURE, - si_unit=TEMP_CELSIUS, - us_unit=TEMP_FAHRENHEIT, - ca_unit=TEMP_CELSIUS, - uk_unit=TEMP_CELSIUS, - uk2_unit=TEMP_CELSIUS, + si_unit=UnitOfTemperature.CELSIUS, + us_unit=UnitOfTemperature.FAHRENHEIT, + ca_unit=UnitOfTemperature.CELSIUS, + uk_unit=UnitOfTemperature.CELSIUS, + uk2_unit=UnitOfTemperature.CELSIUS, forecast_mode=["daily"], ), "temperature_max": DarkskySensorEntityDescription( key="temperature_max", name="Daily High Temperature", device_class=SensorDeviceClass.TEMPERATURE, - si_unit=TEMP_CELSIUS, - us_unit=TEMP_FAHRENHEIT, - ca_unit=TEMP_CELSIUS, - uk_unit=TEMP_CELSIUS, - uk2_unit=TEMP_CELSIUS, + si_unit=UnitOfTemperature.CELSIUS, + us_unit=UnitOfTemperature.FAHRENHEIT, + ca_unit=UnitOfTemperature.CELSIUS, + uk_unit=UnitOfTemperature.CELSIUS, + uk2_unit=UnitOfTemperature.CELSIUS, forecast_mode=["daily"], ), "temperature_high": DarkskySensorEntityDescription( key="temperature_high", name="Daytime High Temperature", device_class=SensorDeviceClass.TEMPERATURE, - si_unit=TEMP_CELSIUS, - us_unit=TEMP_FAHRENHEIT, - ca_unit=TEMP_CELSIUS, - uk_unit=TEMP_CELSIUS, - uk2_unit=TEMP_CELSIUS, + si_unit=UnitOfTemperature.CELSIUS, + us_unit=UnitOfTemperature.FAHRENHEIT, + ca_unit=UnitOfTemperature.CELSIUS, + uk_unit=UnitOfTemperature.CELSIUS, + uk2_unit=UnitOfTemperature.CELSIUS, forecast_mode=["daily"], ), "temperature_min": DarkskySensorEntityDescription( key="temperature_min", name="Daily Low Temperature", device_class=SensorDeviceClass.TEMPERATURE, - si_unit=TEMP_CELSIUS, - us_unit=TEMP_FAHRENHEIT, - ca_unit=TEMP_CELSIUS, - uk_unit=TEMP_CELSIUS, - uk2_unit=TEMP_CELSIUS, + si_unit=UnitOfTemperature.CELSIUS, + us_unit=UnitOfTemperature.FAHRENHEIT, + ca_unit=UnitOfTemperature.CELSIUS, + uk_unit=UnitOfTemperature.CELSIUS, + uk2_unit=UnitOfTemperature.CELSIUS, forecast_mode=["daily"], ), "temperature_low": DarkskySensorEntityDescription( key="temperature_low", name="Overnight Low Temperature", device_class=SensorDeviceClass.TEMPERATURE, - si_unit=TEMP_CELSIUS, - us_unit=TEMP_FAHRENHEIT, - ca_unit=TEMP_CELSIUS, - uk_unit=TEMP_CELSIUS, - uk2_unit=TEMP_CELSIUS, + si_unit=UnitOfTemperature.CELSIUS, + us_unit=UnitOfTemperature.FAHRENHEIT, + ca_unit=UnitOfTemperature.CELSIUS, + uk_unit=UnitOfTemperature.CELSIUS, + uk2_unit=UnitOfTemperature.CELSIUS, forecast_mode=["daily"], ), "precip_intensity_max": DarkskySensorEntityDescription(