Bumped AIOAladdinConnect 0.1.46 (#78767)

This commit is contained in:
mkmer 2022-09-19 15:18:53 -04:00 committed by GitHub
parent d591787077
commit 08c8ab7302
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 23 additions and 11 deletions

View File

@ -4,6 +4,7 @@ import logging
from typing import Final
from AIOAladdinConnect import AladdinConnectClient
from AIOAladdinConnect.session_manager import InvalidPasswordError
from aiohttp import ClientConnectionError
from homeassistant.config_entries import ConfigEntry
@ -27,10 +28,11 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
username, password, async_get_clientsession(hass), CLIENT_ID
)
try:
if not await acc.login():
raise ConfigEntryAuthFailed("Incorrect Password")
await acc.login()
except (ClientConnectionError, asyncio.TimeoutError) as ex:
raise ConfigEntryNotReady("Can not connect to host") from ex
except InvalidPasswordError as ex:
raise ConfigEntryAuthFailed("Incorrect Password") from ex
hass.data.setdefault(DOMAIN, {})[entry.entry_id] = acc
await hass.config_entries.async_forward_entry_setups(entry, PLATFORMS)

View File

@ -7,7 +7,7 @@ import logging
from typing import Any
from AIOAladdinConnect import AladdinConnectClient
from aiohttp import ClientError
from AIOAladdinConnect.session_manager import InvalidPasswordError
from aiohttp.client_exceptions import ClientConnectionError
import voluptuous as vol
@ -43,9 +43,13 @@ async def validate_input(hass: HomeAssistant, data: dict[str, Any]) -> None:
async_get_clientsession(hass),
CLIENT_ID,
)
login = await acc.login()
if not login:
raise InvalidAuth
try:
await acc.login()
except (ClientConnectionError, asyncio.TimeoutError) as ex:
raise ex
except InvalidPasswordError as ex:
raise InvalidAuth from ex
class ConfigFlow(config_entries.ConfigFlow, domain=DOMAIN):
@ -80,7 +84,7 @@ class ConfigFlow(config_entries.ConfigFlow, domain=DOMAIN):
except InvalidAuth:
errors["base"] = "invalid_auth"
except (ClientConnectionError, asyncio.TimeoutError, ClientError):
except (ClientConnectionError, asyncio.TimeoutError):
errors["base"] = "cannot_connect"
else:
@ -117,7 +121,7 @@ class ConfigFlow(config_entries.ConfigFlow, domain=DOMAIN):
except InvalidAuth:
errors["base"] = "invalid_auth"
except (ClientConnectionError, asyncio.TimeoutError, ClientError):
except (ClientConnectionError, asyncio.TimeoutError):
errors["base"] = "cannot_connect"
else:

View File

@ -2,7 +2,7 @@
"domain": "aladdin_connect",
"name": "Aladdin Connect",
"documentation": "https://www.home-assistant.io/integrations/aladdin_connect",
"requirements": ["AIOAladdinConnect==0.1.44"],
"requirements": ["AIOAladdinConnect==0.1.46"],
"codeowners": ["@mkmer"],
"iot_class": "cloud_polling",
"loggers": ["aladdin_connect"],

View File

@ -5,7 +5,7 @@
AEMET-OpenData==0.2.1
# homeassistant.components.aladdin_connect
AIOAladdinConnect==0.1.44
AIOAladdinConnect==0.1.46
# homeassistant.components.adax
Adax-local==0.1.4

View File

@ -7,7 +7,7 @@
AEMET-OpenData==0.2.1
# homeassistant.components.aladdin_connect
AIOAladdinConnect==0.1.44
AIOAladdinConnect==0.1.46
# homeassistant.components.adax
Adax-local==0.1.4

View File

@ -1,6 +1,7 @@
"""Test the Aladdin Connect config flow."""
from unittest.mock import MagicMock, patch
from AIOAladdinConnect.session_manager import InvalidPasswordError
from aiohttp.client_exceptions import ClientConnectionError
from homeassistant import config_entries
@ -54,6 +55,7 @@ async def test_form_failed_auth(
DOMAIN, context={"source": config_entries.SOURCE_USER}
)
mock_aladdinconnect_api.login.return_value = False
mock_aladdinconnect_api.login.side_effect = InvalidPasswordError
with patch(
"homeassistant.components.aladdin_connect.config_flow.AladdinConnectClient",
return_value=mock_aladdinconnect_api,
@ -231,6 +233,7 @@ async def test_reauth_flow_auth_error(
assert result["type"] == FlowResultType.FORM
assert result["errors"] == {}
mock_aladdinconnect_api.login.return_value = False
mock_aladdinconnect_api.login.side_effect = InvalidPasswordError
with patch(
"homeassistant.components.aladdin_connect.config_flow.AladdinConnectClient",
return_value=mock_aladdinconnect_api,

View File

@ -1,6 +1,7 @@
"""Test for Aladdin Connect init logic."""
from unittest.mock import MagicMock, patch
from AIOAladdinConnect.session_manager import InvalidPasswordError
from aiohttp import ClientConnectionError
from homeassistant.components.aladdin_connect.const import DOMAIN
@ -43,6 +44,7 @@ async def test_setup_login_error(
)
config_entry.add_to_hass(hass)
mock_aladdinconnect_api.login.return_value = False
mock_aladdinconnect_api.login.side_effect = InvalidPasswordError
with patch(
"homeassistant.components.aladdin_connect.cover.AladdinConnectClient",
return_value=mock_aladdinconnect_api,
@ -100,6 +102,7 @@ async def test_entry_password_fail(
)
entry.add_to_hass(hass)
mock_aladdinconnect_api.login = AsyncMock(return_value=False)
mock_aladdinconnect_api.login.side_effect = InvalidPasswordError
with patch(
"homeassistant.components.aladdin_connect.AladdinConnectClient",
return_value=mock_aladdinconnect_api,