mirror of
https://github.com/home-assistant/core.git
synced 2025-11-05 17:09:32 +00:00
Deprecate deprecated climate constants (#106096)
This commit is contained in:
@@ -1,11 +1,14 @@
|
||||
"""The tests for the climate component."""
|
||||
from __future__ import annotations
|
||||
|
||||
from enum import Enum
|
||||
from types import ModuleType
|
||||
from unittest.mock import MagicMock
|
||||
|
||||
import pytest
|
||||
import voluptuous as vol
|
||||
|
||||
from homeassistant.components import climate
|
||||
from homeassistant.components.climate import (
|
||||
SET_TEMPERATURE_SCHEMA,
|
||||
ClimateEntity,
|
||||
@@ -13,7 +16,11 @@ from homeassistant.components.climate import (
|
||||
)
|
||||
from homeassistant.core import HomeAssistant
|
||||
|
||||
from tests.common import async_mock_service
|
||||
from tests.common import (
|
||||
async_mock_service,
|
||||
import_and_test_deprecated_constant,
|
||||
import_and_test_deprecated_constant_enum,
|
||||
)
|
||||
|
||||
|
||||
async def test_set_temp_schema_no_req(
|
||||
@@ -96,3 +103,58 @@ async def test_sync_turn_off(hass: HomeAssistant) -> None:
|
||||
await climate.async_turn_off()
|
||||
|
||||
assert climate.turn_off.called
|
||||
|
||||
|
||||
def _create_tuples(enum: Enum, constant_prefix: str) -> list[tuple[Enum, str]]:
|
||||
result = []
|
||||
for enum in enum:
|
||||
result.append((enum, constant_prefix))
|
||||
return result
|
||||
|
||||
|
||||
@pytest.mark.parametrize(
|
||||
("enum", "constant_prefix"),
|
||||
_create_tuples(climate.ClimateEntityFeature, "SUPPORT_")
|
||||
+ _create_tuples(climate.HVACMode, "HVAC_MODE_"),
|
||||
)
|
||||
@pytest.mark.parametrize(
|
||||
"module",
|
||||
[climate, climate.const],
|
||||
)
|
||||
def test_deprecated_constants(
|
||||
caplog: pytest.LogCaptureFixture,
|
||||
enum: Enum,
|
||||
constant_prefix: str,
|
||||
module: ModuleType,
|
||||
) -> None:
|
||||
"""Test deprecated constants."""
|
||||
import_and_test_deprecated_constant_enum(
|
||||
caplog, module, enum, constant_prefix, "2025.1"
|
||||
)
|
||||
|
||||
|
||||
@pytest.mark.parametrize(
|
||||
("enum", "constant_postfix"),
|
||||
[
|
||||
(climate.HVACAction.OFF, "OFF"),
|
||||
(climate.HVACAction.HEATING, "HEAT"),
|
||||
(climate.HVACAction.COOLING, "COOL"),
|
||||
(climate.HVACAction.DRYING, "DRY"),
|
||||
(climate.HVACAction.IDLE, "IDLE"),
|
||||
(climate.HVACAction.FAN, "FAN"),
|
||||
],
|
||||
)
|
||||
def test_deprecated_current_constants(
|
||||
caplog: pytest.LogCaptureFixture,
|
||||
enum: climate.HVACAction,
|
||||
constant_postfix: str,
|
||||
) -> None:
|
||||
"""Test deprecated current constants."""
|
||||
import_and_test_deprecated_constant(
|
||||
caplog,
|
||||
climate.const,
|
||||
"CURRENT_HVAC_" + constant_postfix,
|
||||
f"{enum.__class__.__name__}.{enum.name}",
|
||||
enum,
|
||||
"2025.1",
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user