diff --git a/homeassistant/components/advantage_air/manifest.json b/homeassistant/components/advantage_air/manifest.json index 750d5457e17..6390ccea39c 100644 --- a/homeassistant/components/advantage_air/manifest.json +++ b/homeassistant/components/advantage_air/manifest.json @@ -3,8 +3,12 @@ "name": "Advantage Air", "config_flow": true, "documentation": "https://www.home-assistant.io/integrations/advantage_air", - "codeowners": ["@Bre77"], - "requirements": ["advantage_air==0.2.1"], + "codeowners": [ + "@Bre77" + ], + "requirements": [ + "advantage_air==0.2.5" + ], "quality_scale": "platinum", "iot_class": "local_polling" -} +} \ No newline at end of file diff --git a/requirements_all.txt b/requirements_all.txt index 538523b1f28..2e02ad5bf19 100644 --- a/requirements_all.txt +++ b/requirements_all.txt @@ -114,7 +114,7 @@ adext==0.4.2 adguardhome==0.5.0 # homeassistant.components.advantage_air -advantage_air==0.2.1 +advantage_air==0.2.5 # homeassistant.components.frontier_silicon afsapi==0.0.4 diff --git a/requirements_test_all.txt b/requirements_test_all.txt index 872938f50c7..7b371b2ea71 100644 --- a/requirements_test_all.txt +++ b/requirements_test_all.txt @@ -57,7 +57,7 @@ adext==0.4.2 adguardhome==0.5.0 # homeassistant.components.advantage_air -advantage_air==0.2.1 +advantage_air==0.2.5 # homeassistant.components.agent_dvr agent-py==0.0.23 diff --git a/tests/components/advantage_air/test_cover.py b/tests/components/advantage_air/test_cover.py index 29f0d288fdb..363db076ada 100644 --- a/tests/components/advantage_air/test_cover.py +++ b/tests/components/advantage_air/test_cover.py @@ -112,3 +112,35 @@ async def test_cover_async_setup_entry(hass, aioclient_mock): assert data["ac2"]["zones"]["z01"]["state"] == ADVANTAGE_AIR_STATE_CLOSE assert aioclient_mock.mock_calls[-1][0] == "GET" assert aioclient_mock.mock_calls[-1][1].path == "/getSystemData" + + # Test controlling multiple Cover Zone Entity + await hass.services.async_call( + COVER_DOMAIN, + SERVICE_CLOSE_COVER, + { + ATTR_ENTITY_ID: [ + "cover.zone_open_without_sensor", + "cover.zone_closed_without_sensor", + ] + }, + blocking=True, + ) + assert len(aioclient_mock.mock_calls) == 11 + data = loads(aioclient_mock.mock_calls[-2][1].query["json"]) + assert data["ac2"]["zones"]["z01"]["state"] == ADVANTAGE_AIR_STATE_CLOSE + assert data["ac2"]["zones"]["z02"]["state"] == ADVANTAGE_AIR_STATE_CLOSE + await hass.services.async_call( + COVER_DOMAIN, + SERVICE_OPEN_COVER, + { + ATTR_ENTITY_ID: [ + "cover.zone_open_without_sensor", + "cover.zone_closed_without_sensor", + ] + }, + blocking=True, + ) + assert len(aioclient_mock.mock_calls) == 13 + data = loads(aioclient_mock.mock_calls[-2][1].query["json"]) + assert data["ac2"]["zones"]["z01"]["state"] == ADVANTAGE_AIR_STATE_OPEN + assert data["ac2"]["zones"]["z02"]["state"] == ADVANTAGE_AIR_STATE_OPEN