mirror of
https://github.com/home-assistant/core.git
synced 2025-07-23 13:17:32 +00:00
Add support for converting to and from mmHg (#64844)
This commit is contained in:
parent
f662e8669e
commit
2caad1a474
@ -11,6 +11,7 @@ from homeassistant.const import (
|
||||
PRESSURE_INHG,
|
||||
PRESSURE_KPA,
|
||||
PRESSURE_MBAR,
|
||||
PRESSURE_MMHG,
|
||||
PRESSURE_PA,
|
||||
PRESSURE_PSI,
|
||||
UNIT_NOT_RECOGNIZED_TEMPLATE,
|
||||
@ -25,6 +26,7 @@ VALID_UNITS: tuple[str, ...] = (
|
||||
PRESSURE_MBAR,
|
||||
PRESSURE_INHG,
|
||||
PRESSURE_PSI,
|
||||
PRESSURE_MMHG,
|
||||
)
|
||||
|
||||
UNIT_CONVERSION: dict[str, float] = {
|
||||
@ -36,6 +38,7 @@ UNIT_CONVERSION: dict[str, float] = {
|
||||
PRESSURE_MBAR: 1 / 100,
|
||||
PRESSURE_INHG: 1 / 3386.389,
|
||||
PRESSURE_PSI: 1 / 6894.757,
|
||||
PRESSURE_MMHG: 1 / 133.322,
|
||||
}
|
||||
|
||||
|
||||
|
@ -7,6 +7,7 @@ from homeassistant.const import (
|
||||
PRESSURE_INHG,
|
||||
PRESSURE_KPA,
|
||||
PRESSURE_MBAR,
|
||||
PRESSURE_MMHG,
|
||||
PRESSURE_PA,
|
||||
PRESSURE_PSI,
|
||||
)
|
||||
@ -24,6 +25,7 @@ def test_convert_same_unit():
|
||||
assert pressure_util.convert(5, PRESSURE_INHG, PRESSURE_INHG) == 5
|
||||
assert pressure_util.convert(6, PRESSURE_KPA, PRESSURE_KPA) == 6
|
||||
assert pressure_util.convert(7, PRESSURE_CBAR, PRESSURE_CBAR) == 7
|
||||
assert pressure_util.convert(8, PRESSURE_MMHG, PRESSURE_MMHG) == 8
|
||||
|
||||
|
||||
def test_convert_invalid_unit():
|
||||
@ -108,3 +110,32 @@ def test_convert_from_inhg():
|
||||
assert pressure_util.convert(inhg, PRESSURE_INHG, PRESSURE_CBAR) == pytest.approx(
|
||||
101.59167
|
||||
)
|
||||
assert pressure_util.convert(inhg, PRESSURE_INHG, PRESSURE_MMHG) == pytest.approx(
|
||||
762.002
|
||||
)
|
||||
|
||||
|
||||
def test_convert_from_mmhg():
|
||||
"""Test conversion from mmHg to other units."""
|
||||
inhg = 30
|
||||
assert pressure_util.convert(inhg, PRESSURE_MMHG, PRESSURE_PSI) == pytest.approx(
|
||||
0.580102
|
||||
)
|
||||
assert pressure_util.convert(inhg, PRESSURE_MMHG, PRESSURE_KPA) == pytest.approx(
|
||||
3.99966
|
||||
)
|
||||
assert pressure_util.convert(inhg, PRESSURE_MMHG, PRESSURE_HPA) == pytest.approx(
|
||||
39.9966
|
||||
)
|
||||
assert pressure_util.convert(inhg, PRESSURE_MMHG, PRESSURE_PA) == pytest.approx(
|
||||
3999.66
|
||||
)
|
||||
assert pressure_util.convert(inhg, PRESSURE_MMHG, PRESSURE_MBAR) == pytest.approx(
|
||||
39.9966
|
||||
)
|
||||
assert pressure_util.convert(inhg, PRESSURE_MMHG, PRESSURE_CBAR) == pytest.approx(
|
||||
3.99966
|
||||
)
|
||||
assert pressure_util.convert(inhg, PRESSURE_MMHG, PRESSURE_INHG) == pytest.approx(
|
||||
1.181099
|
||||
)
|
||||
|
Loading…
x
Reference in New Issue
Block a user