diff --git a/homeassistant/components/steam_online/config_flow.py b/homeassistant/components/steam_online/config_flow.py index 0c8b991d56ce..0e292581fefa 100644 --- a/homeassistant/components/steam_online/config_flow.py +++ b/homeassistant/components/steam_online/config_flow.py @@ -65,12 +65,14 @@ class SteamFlowHandler(ConfigFlow, domain=DOMAIN): name = str(res["personaname"]) else: errors["base"] = "invalid_account" + except steam.api.HTTPTimeoutError: + errors["base"] = "timeout_connect" except steam.api.HTTPError as ex: errors["base"] = ( "invalid_auth" if "403" in str(ex) else "cannot_connect" ) - except Exception as ex: # noqa: BLE001 - LOGGER.exception("Unknown exception: %s", ex) + except Exception: # noqa: BLE001 + LOGGER.exception("Unknown exception") errors["base"] = "unknown" if not errors: return self.async_create_entry( @@ -107,12 +109,14 @@ class SteamFlowHandler(ConfigFlow, domain=DOMAIN): validate_input, {**entry.data, **user_input} ): errors["base"] = "invalid_account" + except steam.api.HTTPTimeoutError: + errors["base"] = "timeout_connect" except steam.api.HTTPError as ex: errors["base"] = ( "invalid_auth" if "403" in str(ex) else "cannot_connect" ) - except Exception as ex: # noqa: BLE001 - LOGGER.exception("Unknown exception: %s", ex) + except Exception: # noqa: BLE001 + LOGGER.exception("Unknown exception") errors["base"] = "unknown" if not errors: diff --git a/homeassistant/components/steam_online/strings.json b/homeassistant/components/steam_online/strings.json index cadeb8f14989..2cec17b8ce04 100644 --- a/homeassistant/components/steam_online/strings.json +++ b/homeassistant/components/steam_online/strings.json @@ -8,6 +8,7 @@ "cannot_connect": "[%key:common::config_flow::error::cannot_connect%]", "invalid_account": "Invalid Steam ID", "invalid_auth": "[%key:common::config_flow::error::invalid_auth%]", + "timeout_connect": "[%key:common::config_flow::error::timeout_connect%]", "unknown": "[%key:common::config_flow::error::unknown%]" }, "step": { diff --git a/tests/components/steam_online/test_config_flow.py b/tests/components/steam_online/test_config_flow.py index 2649c812e55d..f6285889851f 100644 --- a/tests/components/steam_online/test_config_flow.py +++ b/tests/components/steam_online/test_config_flow.py @@ -54,7 +54,7 @@ async def test_flow_user( @pytest.mark.parametrize( ("side_effect", "error_msg"), [ - (steam.api.HTTPTimeoutError, "cannot_connect"), + (steam.api.HTTPTimeoutError, "timeout_connect"), (steam.api.HTTPError, "cannot_connect"), (steam.api.HTTPError("403"), "invalid_auth"), (ValueError, "unknown"), @@ -146,7 +146,7 @@ async def test_flow_reauth( @pytest.mark.parametrize( ("side_effect", "error_msg"), [ - (steam.api.HTTPTimeoutError, "cannot_connect"), + (steam.api.HTTPTimeoutError, "timeout_connect"), (steam.api.HTTPError, "cannot_connect"), (steam.api.HTTPError("403"), "invalid_auth"), (ValueError, "unknown"),