Fix test in Husqvarna Automower (#144055)

This commit is contained in:
Thomas55555 2025-05-01 16:36:05 +02:00 committed by Franck Nijhof
parent c98ba7f6ba
commit a23644debc
No known key found for this signature in database
GPG Key ID: AB33ADACE7101952

View File

@ -21,31 +21,36 @@ from .const import TEST_MOWER_ID
from tests.common import MockConfigEntry, async_fire_time_changed from tests.common import MockConfigEntry, async_fire_time_changed
async def test_lawn_mower_states( @pytest.mark.parametrize(
hass: HomeAssistant, ("activity", "mower_state", "expected_state"),
mock_automower_client: AsyncMock, [
mock_config_entry: MockConfigEntry,
freezer: FrozenDateTimeFactory,
values: dict[str, MowerAttributes],
) -> None:
"""Test lawn_mower state."""
await setup_integration(hass, mock_config_entry)
state = hass.states.get("lawn_mower.test_mower_1")
assert state is not None
assert state.state == LawnMowerActivity.DOCKED
for activity, state, expected_state in (
(MowerActivities.UNKNOWN, MowerStates.PAUSED, LawnMowerActivity.PAUSED), (MowerActivities.UNKNOWN, MowerStates.PAUSED, LawnMowerActivity.PAUSED),
(MowerActivities.MOWING, MowerStates.NOT_APPLICABLE, LawnMowerActivity.MOWING), (MowerActivities.MOWING, MowerStates.IN_OPERATION, LawnMowerActivity.MOWING),
(MowerActivities.NOT_APPLICABLE, MowerStates.ERROR, LawnMowerActivity.ERROR), (MowerActivities.NOT_APPLICABLE, MowerStates.ERROR, LawnMowerActivity.ERROR),
( (
MowerActivities.GOING_HOME, MowerActivities.GOING_HOME,
MowerStates.IN_OPERATION, MowerStates.IN_OPERATION,
LawnMowerActivity.RETURNING, LawnMowerActivity.RETURNING,
), ),
): ],
)
async def test_lawn_mower_states(
hass: HomeAssistant,
mock_automower_client: AsyncMock,
mock_config_entry: MockConfigEntry,
freezer: FrozenDateTimeFactory,
values: dict[str, MowerAttributes],
activity: MowerActivities,
mower_state: MowerStates,
expected_state: LawnMowerActivity,
) -> None:
"""Test lawn_mower state."""
await setup_integration(hass, mock_config_entry)
state = hass.states.get("lawn_mower.test_mower_1")
assert state is not None
assert state.state == LawnMowerActivity.DOCKED
values[TEST_MOWER_ID].mower.activity = activity values[TEST_MOWER_ID].mower.activity = activity
values[TEST_MOWER_ID].mower.state = state values[TEST_MOWER_ID].mower.state = mower_state
mock_automower_client.get_status.return_value = values mock_automower_client.get_status.return_value = values
freezer.tick(SCAN_INTERVAL) freezer.tick(SCAN_INTERVAL)
async_fire_time_changed(hass) async_fire_time_changed(hass)