From 962433de2ebfef8283ac06304a70ab26db4f34e2 Mon Sep 17 00:00:00 2001 From: Manu Date: Sat, 3 Oct 2026 10:32:23 +0200 Subject: [PATCH] Split user flow init and data submission in tautulli config flow tests (#184103) --- tests/components/tautulli/test_config_flow.py | 50 +++++++++++++++---- 1 file changed, 40 insertions(+), 10 deletions(-) diff --git a/tests/components/tautulli/test_config_flow.py b/tests/components/tautulli/test_config_flow.py index 1b9f4e8e06f9..cab3342700f0 100644 --- a/tests/components/tautulli/test_config_flow.py +++ b/tests/components/tautulli/test_config_flow.py @@ -42,10 +42,18 @@ async def test_flow_user(hass: HomeAssistant) -> None: async def test_flow_user_cannot_connect(hass: HomeAssistant) -> None: """Test user initialized flow with unreachable server.""" + result = await hass.config_entries.flow.async_init( + DOMAIN, context={CONF_SOURCE: SOURCE_USER} + ) + assert result["type"] is FlowResultType.FORM + assert result["step_id"] == "user" + assert result["errors"] == {} + with patch_config_flow_tautulli(AsyncMock()) as tautullimock: tautullimock.side_effect = exceptions.PyTautulliConnectionException - result = await hass.config_entries.flow.async_init( - DOMAIN, context={CONF_SOURCE: SOURCE_USER}, data=CONF_DATA + result = await hass.config_entries.flow.async_configure( + result["flow_id"], + user_input=CONF_DATA, ) assert result["type"] is FlowResultType.FORM assert result["step_id"] == "user" @@ -68,10 +76,18 @@ async def test_flow_user_cannot_connect(hass: HomeAssistant) -> None: async def test_flow_user_invalid_auth(hass: HomeAssistant) -> None: """Test user initialized flow with invalid authentication.""" + result = await hass.config_entries.flow.async_init( + DOMAIN, context={CONF_SOURCE: SOURCE_USER} + ) + assert result["type"] is FlowResultType.FORM + assert result["step_id"] == "user" + assert result["errors"] == {} + with patch_config_flow_tautulli(AsyncMock()) as tautullimock: tautullimock.side_effect = exceptions.PyTautulliAuthenticationException - result = await hass.config_entries.flow.async_init( - DOMAIN, context={"source": SOURCE_USER}, data=CONF_DATA + result = await hass.config_entries.flow.async_configure( + result["flow_id"], + user_input=CONF_DATA, ) assert result["type"] is FlowResultType.FORM assert result["step_id"] == "user" @@ -94,10 +110,18 @@ async def test_flow_user_invalid_auth(hass: HomeAssistant) -> None: async def test_flow_user_unknown_error(hass: HomeAssistant) -> None: """Test user initialized flow with unreachable server.""" + result = await hass.config_entries.flow.async_init( + DOMAIN, context={CONF_SOURCE: SOURCE_USER} + ) + assert result["type"] is FlowResultType.FORM + assert result["step_id"] == "user" + assert result["errors"] == {} + with patch_config_flow_tautulli(AsyncMock()) as tautullimock: tautullimock.side_effect = exceptions.PyTautulliException - result = await hass.config_entries.flow.async_init( - DOMAIN, context={CONF_SOURCE: SOURCE_USER}, data=CONF_DATA + result = await hass.config_entries.flow.async_configure( + result["flow_id"], + user_input=CONF_DATA, ) assert result["type"] is FlowResultType.FORM assert result["step_id"] == "user" @@ -123,11 +147,17 @@ async def test_flow_user_already_configured(hass: HomeAssistant) -> None: entry = MockConfigEntry(domain=DOMAIN, data=CONF_DATA) entry.add_to_hass(hass) + result = await hass.config_entries.flow.async_init( + DOMAIN, context={CONF_SOURCE: SOURCE_USER} + ) + assert result["type"] is FlowResultType.FORM + assert result["step_id"] == "user" + assert result["errors"] == {} + with patch_config_flow_tautulli(AsyncMock()): - result = await hass.config_entries.flow.async_init( - DOMAIN, - context={"source": SOURCE_USER}, - data=CONF_DATA, + result = await hass.config_entries.flow.async_configure( + result["flow_id"], + user_input=CONF_DATA, ) assert result["type"] is FlowResultType.ABORT assert result["reason"] == "already_configured"