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_CBAR,
PRESSURE_HPA,
PRESSURE_INHG,
@ -30,13 +34,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,
@ -93,14 +94,15 @@ INVALID_SYMBOL = "bob"
(PressureConverter, PRESSURE_CBAR),
(PressureConverter, PRESSURE_MMHG),
(PressureConverter, PRESSURE_PSI),
(SpeedConverter, PRECIPITATION_INTENSITY_INCHES_PER_DAY),
(SpeedConverter, PRECIPITATION_INTENSITY_INCHES_PER_HOUR),
(SpeedConverter, PRECIPITATION_INTENSITY_MILLIMETERS_PER_DAY),
(SpeedConverter, PRECIPITATION_INTENSITY_MILLIMETERS_PER_HOUR),
(SpeedConverter, SPEED_FEET_PER_SECOND),
(SpeedConverter, SPEED_INCHES_PER_DAY),
(SpeedConverter, SPEED_INCHES_PER_HOUR),
(SpeedConverter, SPEED_KILOMETERS_PER_HOUR),
(SpeedConverter, SPEED_KNOTS),
(SpeedConverter, SPEED_METERS_PER_SECOND),
(SpeedConverter, SPEED_MILES_PER_HOUR),
(SpeedConverter, SPEED_MILLIMETERS_PER_DAY),
(TemperatureConverter, TEMP_CELSIUS),
(TemperatureConverter, TEMP_FAHRENHEIT),
(TemperatureConverter, TEMP_KELVIN),
@ -389,17 +391,44 @@ def test_pressure_convert(
# 5 mi/h * 1.609 km/mi = 8.04672 km/h
(5, SPEED_MILES_PER_HOUR, 8.04672, SPEED_KILOMETERS_PER_HOUR),
# 5 in/day * 25.4 mm/in = 127 mm/day
(5, SPEED_INCHES_PER_DAY, 127, SPEED_MILLIMETERS_PER_DAY),
(
5,
PRECIPITATION_INTENSITY_INCHES_PER_DAY,
127,
PRECIPITATION_INTENSITY_MILLIMETERS_PER_DAY,
),
# 5 mm/day / 25.4 mm/in = 0.19685 in/day
(5, SPEED_MILLIMETERS_PER_DAY, pytest.approx(0.1968504), SPEED_INCHES_PER_DAY),
(
5,
PRECIPITATION_INTENSITY_MILLIMETERS_PER_DAY,
pytest.approx(0.1968504),
PRECIPITATION_INTENSITY_INCHES_PER_DAY,
),
# 48 mm/day = 2 mm/h
(
48,
PRECIPITATION_INTENSITY_MILLIMETERS_PER_DAY,
pytest.approx(2),
PRECIPITATION_INTENSITY_MILLIMETERS_PER_HOUR,
),
# 5 in/hr * 24 hr/day = 3048 mm/day
(5, SPEED_INCHES_PER_HOUR, 3048, SPEED_MILLIMETERS_PER_DAY),
(
5,
PRECIPITATION_INTENSITY_INCHES_PER_HOUR,
3048,
PRECIPITATION_INTENSITY_MILLIMETERS_PER_DAY,
),
# 5 m/s * 39.3701 in/m * 3600 s/hr = 708661
(5, SPEED_METERS_PER_SECOND, pytest.approx(708661.42), SPEED_INCHES_PER_HOUR),
(
5,
SPEED_METERS_PER_SECOND,
pytest.approx(708661.42),
PRECIPITATION_INTENSITY_INCHES_PER_HOUR,
),
# 5000 in/h / 39.3701 in/m / 3600 s/h = 0.03528 m/s
(
5000,
SPEED_INCHES_PER_HOUR,
PRECIPITATION_INTENSITY_INCHES_PER_HOUR,
pytest.approx(0.0352778),
SPEED_METERS_PER_SECOND,
),