Adjust precipitation units (#79780)

* Adjust precipitation units

* Use PRECIPITATION_INTENSITY

* Revert isy994

* Adjust SensorDeviceClass docstring

* Adjust comment
This commit is contained in:
epenet 2022-10-19 14:35:49 +02:00 committed by GitHub
parent a70f9b8995
commit 9afb4c6c9e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 83 additions and 25 deletions

View file

@ -21,6 +21,10 @@ from homeassistant.const import (
MASS_POUNDS,
POWER_KILO_WATT,
POWER_WATT,
PRECIPITATION_INTENSITY_INCHES_PER_DAY,
PRECIPITATION_INTENSITY_INCHES_PER_HOUR,
PRECIPITATION_INTENSITY_MILLIMETERS_PER_DAY,
PRECIPITATION_INTENSITY_MILLIMETERS_PER_HOUR,
PRESSURE_BAR,
PRESSURE_CBAR,
PRESSURE_HPA,
@ -31,13 +35,10 @@ from homeassistant.const import (
PRESSURE_PA,
PRESSURE_PSI,
SPEED_FEET_PER_SECOND,
SPEED_INCHES_PER_DAY,
SPEED_INCHES_PER_HOUR,
SPEED_KILOMETERS_PER_HOUR,
SPEED_KNOTS,
SPEED_METERS_PER_SECOND,
SPEED_MILES_PER_HOUR,
SPEED_MILLIMETERS_PER_DAY,
TEMP_CELSIUS,
TEMP_FAHRENHEIT,
TEMP_KELVIN,
@ -238,24 +239,26 @@ class SpeedConverter(BaseUnitConverter):
UNIT_CLASS = "speed"
NORMALIZED_UNIT = SPEED_METERS_PER_SECOND
_UNIT_CONVERSION: dict[str, float] = {
PRECIPITATION_INTENSITY_INCHES_PER_DAY: _DAYS_TO_SECS / _IN_TO_M,
PRECIPITATION_INTENSITY_INCHES_PER_HOUR: _HRS_TO_SECS / _IN_TO_M,
PRECIPITATION_INTENSITY_MILLIMETERS_PER_DAY: _DAYS_TO_SECS / _MM_TO_M,
PRECIPITATION_INTENSITY_MILLIMETERS_PER_HOUR: _HRS_TO_SECS / _MM_TO_M,
SPEED_FEET_PER_SECOND: 1 / _FOOT_TO_M,
SPEED_INCHES_PER_DAY: _DAYS_TO_SECS / _IN_TO_M,
SPEED_INCHES_PER_HOUR: _HRS_TO_SECS / _IN_TO_M,
SPEED_KILOMETERS_PER_HOUR: _HRS_TO_SECS / _KM_TO_M,
SPEED_KNOTS: _HRS_TO_SECS / _NAUTICAL_MILE_TO_M,
SPEED_METERS_PER_SECOND: 1,
SPEED_MILES_PER_HOUR: _HRS_TO_SECS / _MILE_TO_M,
SPEED_MILLIMETERS_PER_DAY: _DAYS_TO_SECS / _MM_TO_M,
}
VALID_UNITS = {
PRECIPITATION_INTENSITY_INCHES_PER_DAY,
PRECIPITATION_INTENSITY_INCHES_PER_HOUR,
PRECIPITATION_INTENSITY_MILLIMETERS_PER_DAY,
PRECIPITATION_INTENSITY_MILLIMETERS_PER_HOUR,
SPEED_FEET_PER_SECOND,
SPEED_INCHES_PER_DAY,
SPEED_INCHES_PER_HOUR,
SPEED_KILOMETERS_PER_HOUR,
SPEED_KNOTS,
SPEED_METERS_PER_SECOND,
SPEED_MILES_PER_HOUR,
SPEED_MILLIMETERS_PER_DAY,
}