diff --git a/homeassistant/components/nina/config_flow.py b/homeassistant/components/nina/config_flow.py index e048ce81be3f2f..dd4319d566b839 100644 --- a/homeassistant/components/nina/config_flow.py +++ b/homeassistant/components/nina/config_flow.py @@ -116,7 +116,7 @@ async def async_step_user( errors["base"] = "cannot_connect" except Exception as err: # noqa: BLE001 _LOGGER.exception("Unexpected exception: %s", err) - return self.async_abort(reason="unknown") + errors["base"] = "unknown" self.regions = split_regions(self._all_region_codes_sorted, self.regions) @@ -199,7 +199,7 @@ async def async_step_init( errors["base"] = "cannot_connect" except Exception as err: # noqa: BLE001 _LOGGER.exception("Unexpected exception: %s", err) - return self.async_abort(reason="unknown") + errors["base"] = "unknown" self.regions = split_regions(self._all_region_codes_sorted, self.regions) diff --git a/homeassistant/components/nina/strings.json b/homeassistant/components/nina/strings.json index 98ea88d8798c1f..9747feaddb7ae4 100644 --- a/homeassistant/components/nina/strings.json +++ b/homeassistant/components/nina/strings.json @@ -38,10 +38,12 @@ } } }, + "abort": { + "unknown": "[%key:common::config_flow::error::unknown%]" + }, "error": { "no_selection": "[%key:component::nina::config::error::no_selection%]", - "cannot_connect": "[%key:common::config_flow::error::cannot_connect%]", - "unknown": "[%key:common::config_flow::error::unknown%]" + "cannot_connect": "[%key:common::config_flow::error::cannot_connect%]" } } } diff --git a/tests/components/nina/test_config_flow.py b/tests/components/nina/test_config_flow.py index 6bc17cdf674942..309c8860c20946 100644 --- a/tests/components/nina/test_config_flow.py +++ b/tests/components/nina/test_config_flow.py @@ -89,7 +89,9 @@ async def test_step_user_unexpected_exception(hass: HomeAssistant) -> None: DOMAIN, context={"source": SOURCE_USER}, data=deepcopy(DUMMY_DATA) ) - assert result["type"] is FlowResultType.ABORT + assert result["type"] is FlowResultType.FORM + assert result["errors"] == {"base": "unknown"} + hass.config_entries.flow.async_abort(result["flow_id"]) async def test_step_user(hass: HomeAssistant) -> None: @@ -300,7 +302,9 @@ async def test_options_flow_unexpected_exception(hass: HomeAssistant) -> None: result = await hass.config_entries.options.async_init(config_entry.entry_id) - assert result["type"] is FlowResultType.ABORT + assert result["type"] is FlowResultType.FORM + assert result["errors"] == {"base": "unknown"} + hass.config_entries.options.async_abort(result["flow_id"]) async def test_options_flow_entity_removal(