diff --git a/homeassistant/components/lametric/config_flow.py b/homeassistant/components/lametric/config_flow.py index 734f42e03b00..fd45306c84ce 100644 --- a/homeassistant/components/lametric/config_flow.py +++ b/homeassistant/components/lametric/config_flow.py @@ -201,6 +201,8 @@ class LaMetricFlowHandler(AbstractOAuth2FlowHandler, domain=DOMAIN): ) except AbortFlow: raise + except LaMetricAuthenticationError: + errors["base"] = "invalid_auth" except LaMetricConnectionError as ex: LOGGER.error("Error connecting to LaMetric: %s", ex) errors["base"] = "cannot_connect" @@ -267,6 +269,8 @@ class LaMetricFlowHandler(AbstractOAuth2FlowHandler, domain=DOMAIN): ) except AbortFlow: raise + except LaMetricAuthenticationError: + errors["base"] = "invalid_auth" except LaMetricConnectionError as ex: LOGGER.error("Error connecting to LaMetric: %s", ex) errors["base"] = "cannot_connect" diff --git a/tests/components/lametric/test_config_flow.py b/tests/components/lametric/test_config_flow.py index ae78a312218b..192429ca1d12 100644 --- a/tests/components/lametric/test_config_flow.py +++ b/tests/components/lametric/test_config_flow.py @@ -545,6 +545,7 @@ async def test_cloud_abort_no_devices( @pytest.mark.parametrize( ("side_effect", "reason"), [ + (LaMetricAuthenticationError, "invalid_auth"), (LaMetricConnectionTimeoutError, "cannot_connect"), (LaMetricConnectionError, "cannot_connect"), (LaMetricError, "unknown"), @@ -605,6 +606,7 @@ async def test_manual_errors( @pytest.mark.parametrize( ("side_effect", "reason"), [ + (LaMetricAuthenticationError, "invalid_auth"), (LaMetricConnectionTimeoutError, "cannot_connect"), (LaMetricConnectionError, "cannot_connect"), (LaMetricError, "unknown"),