diff --git a/homeassistant/components/battery/condition.py b/homeassistant/components/battery/condition.py index 4f523e078d8..60f479aa4af 100644 --- a/homeassistant/components/battery/condition.py +++ b/homeassistant/components/battery/condition.py @@ -6,7 +6,6 @@ from homeassistant.components.binary_sensor import ( DOMAIN as BINARY_SENSOR_DOMAIN, BinarySensorDeviceClass, ) -from homeassistant.components.number import DOMAIN as NUMBER_DOMAIN, NumberDeviceClass from homeassistant.components.sensor import DOMAIN as SENSOR_DOMAIN, SensorDeviceClass from homeassistant.const import PERCENTAGE, STATE_OFF, STATE_ON from homeassistant.core import HomeAssistant @@ -27,7 +26,6 @@ BATTERY_CHARGING_DOMAIN_SPECS = { } BATTERY_PERCENTAGE_DOMAIN_SPECS = { SENSOR_DOMAIN: DomainSpec(device_class=SensorDeviceClass.BATTERY), - NUMBER_DOMAIN: DomainSpec(device_class=NumberDeviceClass.BATTERY), } CONDITIONS: dict[str, type[Condition]] = { diff --git a/homeassistant/components/battery/conditions.yaml b/homeassistant/components/battery/conditions.yaml index 98584b00044..6589e644bb3 100644 --- a/homeassistant/components/battery/conditions.yaml +++ b/homeassistant/components/battery/conditions.yaml @@ -19,8 +19,6 @@ unit_of_measurement: "%" - domain: sensor device_class: battery - - domain: number - device_class: battery .battery_threshold_number: &battery_threshold_number min: 0 @@ -53,8 +51,6 @@ is_level: entity: - domain: sensor device_class: battery - - domain: number - device_class: battery fields: behavior: *condition_behavior threshold: diff --git a/homeassistant/components/battery/trigger.py b/homeassistant/components/battery/trigger.py index 2547b70cd7d..426dae82569 100644 --- a/homeassistant/components/battery/trigger.py +++ b/homeassistant/components/battery/trigger.py @@ -6,7 +6,6 @@ from homeassistant.components.binary_sensor import ( DOMAIN as BINARY_SENSOR_DOMAIN, BinarySensorDeviceClass, ) -from homeassistant.components.number import DOMAIN as NUMBER_DOMAIN, NumberDeviceClass from homeassistant.components.sensor import DOMAIN as SENSOR_DOMAIN, SensorDeviceClass from homeassistant.const import STATE_OFF, STATE_ON from homeassistant.core import HomeAssistant @@ -30,7 +29,6 @@ BATTERY_CHARGING_DOMAIN_SPECS: dict[str, DomainSpec] = { BATTERY_PERCENTAGE_DOMAIN_SPECS: dict[str, DomainSpec] = { SENSOR_DOMAIN: DomainSpec(device_class=SensorDeviceClass.BATTERY), - NUMBER_DOMAIN: DomainSpec(device_class=NumberDeviceClass.BATTERY), } TRIGGERS: dict[str, type[Trigger]] = { diff --git a/homeassistant/components/battery/triggers.yaml b/homeassistant/components/battery/triggers.yaml index a8f64995d3f..97a5c6e5515 100644 --- a/homeassistant/components/battery/triggers.yaml +++ b/homeassistant/components/battery/triggers.yaml @@ -13,8 +13,6 @@ .battery_threshold_entity: &battery_threshold_entity - domain: input_number unit_of_measurement: "%" - - domain: number - device_class: battery - domain: sensor device_class: battery @@ -38,8 +36,6 @@ entity: - domain: sensor device_class: battery - - domain: number - device_class: battery low: fields: diff --git a/tests/components/battery/test_condition.py b/tests/components/battery/test_condition.py index 230f57112f1..8c828c0add8 100644 --- a/tests/components/battery/test_condition.py +++ b/tests/components/battery/test_condition.py @@ -40,12 +40,6 @@ async def target_sensors(hass: HomeAssistant) -> dict[str, list[str]]: return await target_entities(hass, "sensor") -@pytest.fixture -async def target_numbers(hass: HomeAssistant) -> dict[str, list[str]]: - """Create multiple number entities associated with different targets.""" - return await target_entities(hass, "number") - - @pytest.mark.parametrize( "condition", [ diff --git a/tests/components/battery/test_trigger.py b/tests/components/battery/test_trigger.py index 16836f4bc35..e09eeda0efd 100644 --- a/tests/components/battery/test_trigger.py +++ b/tests/components/battery/test_trigger.py @@ -4,7 +4,6 @@ from typing import Any import pytest -from homeassistant.components.number import NumberDeviceClass from homeassistant.components.sensor import SensorDeviceClass from homeassistant.const import ( ATTR_DEVICE_CLASS, @@ -40,12 +39,6 @@ async def target_sensors(hass: HomeAssistant) -> dict[str, list[str]]: return await target_entities(hass, "sensor") -@pytest.fixture -async def target_numbers(hass: HomeAssistant) -> dict[str, list[str]]: - """Create multiple number entities associated with different targets.""" - return await target_entities(hass, "number") - - @pytest.mark.parametrize( "trigger_key", [ @@ -364,122 +357,3 @@ async def test_battery_level_crossed_threshold_sensor_behavior_last( trigger_options=trigger_options, states=states, ) - - -@pytest.mark.usefixtures("enable_labs_preview_features") -@pytest.mark.parametrize( - ("trigger_target_config", "entity_id", "entities_in_target"), - parametrize_target_entities("number"), -) -@pytest.mark.parametrize( - ("trigger", "trigger_options", "states"), - [ - *parametrize_numerical_state_value_changed_trigger_states( - "battery.level_changed", - device_class=NumberDeviceClass.BATTERY, - unit_attributes={ATTR_UNIT_OF_MEASUREMENT: "%"}, - ), - *parametrize_numerical_state_value_crossed_threshold_trigger_states( - "battery.level_crossed_threshold", - device_class=NumberDeviceClass.BATTERY, - unit_attributes={ATTR_UNIT_OF_MEASUREMENT: "%"}, - ), - ], -) -async def test_battery_number_trigger_behavior_any( - hass: HomeAssistant, - target_numbers: dict[str, list[str]], - trigger_target_config: dict, - entity_id: str, - entities_in_target: int, - trigger: str, - trigger_options: dict[str, Any], - states: list[TriggerStateDescription], -) -> None: - """Test battery number triggers with 'any' behavior.""" - await assert_trigger_behavior_any( - hass, - target_entities=target_numbers, - trigger_target_config=trigger_target_config, - entity_id=entity_id, - entities_in_target=entities_in_target, - trigger=trigger, - trigger_options=trigger_options, - states=states, - ) - - -@pytest.mark.usefixtures("enable_labs_preview_features") -@pytest.mark.parametrize( - ("trigger_target_config", "entity_id", "entities_in_target"), - parametrize_target_entities("number"), -) -@pytest.mark.parametrize( - ("trigger", "trigger_options", "states"), - [ - *parametrize_numerical_state_value_crossed_threshold_trigger_states( - "battery.level_crossed_threshold", - device_class=NumberDeviceClass.BATTERY, - unit_attributes={ATTR_UNIT_OF_MEASUREMENT: "%"}, - ), - ], -) -async def test_battery_level_crossed_threshold_number_behavior_first( - hass: HomeAssistant, - target_numbers: dict[str, list[str]], - trigger_target_config: dict, - entity_id: str, - entities_in_target: int, - trigger: str, - trigger_options: dict[str, Any], - states: list[TriggerStateDescription], -) -> None: - """Test battery level_crossed_threshold trigger fires on the first number state change.""" - await assert_trigger_behavior_first( - hass, - target_entities=target_numbers, - trigger_target_config=trigger_target_config, - entity_id=entity_id, - entities_in_target=entities_in_target, - trigger=trigger, - trigger_options=trigger_options, - states=states, - ) - - -@pytest.mark.usefixtures("enable_labs_preview_features") -@pytest.mark.parametrize( - ("trigger_target_config", "entity_id", "entities_in_target"), - parametrize_target_entities("number"), -) -@pytest.mark.parametrize( - ("trigger", "trigger_options", "states"), - [ - *parametrize_numerical_state_value_crossed_threshold_trigger_states( - "battery.level_crossed_threshold", - device_class=NumberDeviceClass.BATTERY, - unit_attributes={ATTR_UNIT_OF_MEASUREMENT: "%"}, - ), - ], -) -async def test_battery_level_crossed_threshold_number_behavior_last( - hass: HomeAssistant, - target_numbers: dict[str, list[str]], - trigger_target_config: dict, - entity_id: str, - entities_in_target: int, - trigger: str, - trigger_options: dict[str, Any], - states: list[TriggerStateDescription], -) -> None: - """Test battery level_crossed_threshold trigger fires when the last number changes state.""" - await assert_trigger_behavior_last( - hass, - target_entities=target_numbers, - trigger_target_config=trigger_target_config, - entity_id=entity_id, - entities_in_target=entities_in_target, - trigger=trigger, - trigger_options=trigger_options, - states=states, - )