From 52683c5f75af9eab7eb5a7b35af08c6c5d0fa7e2 Mon Sep 17 00:00:00 2001 From: Joost Lekkerkerker Date: Thu, 19 Dec 2024 19:58:33 +0100 Subject: [PATCH] Improve Airgradient config flow tests (#133594) --- .../components/airgradient/quality_scale.yaml | 4 +--- tests/components/airgradient/test_config_flow.py | 14 ++++++++++++++ 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/homeassistant/components/airgradient/quality_scale.yaml b/homeassistant/components/airgradient/quality_scale.yaml index 71132fdb47a..43816401cdb 100644 --- a/homeassistant/components/airgradient/quality_scale.yaml +++ b/homeassistant/components/airgradient/quality_scale.yaml @@ -7,9 +7,7 @@ rules: appropriate-polling: done brands: done common-modules: done - config-flow-test-coverage: - status: todo - comment: Missing zeroconf duplicate entry test. + config-flow-test-coverage: done config-flow: done dependency-transparency: done docs-actions: diff --git a/tests/components/airgradient/test_config_flow.py b/tests/components/airgradient/test_config_flow.py index 73dbd17a213..8927947c40e 100644 --- a/tests/components/airgradient/test_config_flow.py +++ b/tests/components/airgradient/test_config_flow.py @@ -255,6 +255,20 @@ async def test_zeroconf_flow_abort_old_firmware(hass: HomeAssistant) -> None: assert result["reason"] == "invalid_version" +async def test_zeroconf_flow_abort_duplicate( + hass: HomeAssistant, mock_config_entry: MockConfigEntry +) -> None: + """Test zeroconf flow aborts with duplicate.""" + mock_config_entry.add_to_hass(hass) + result = await hass.config_entries.flow.async_init( + DOMAIN, + context={"source": SOURCE_ZEROCONF}, + data=ZEROCONF_DISCOVERY, + ) + assert result["type"] is FlowResultType.ABORT + assert result["reason"] == "already_configured" + + async def test_user_flow_works_discovery( hass: HomeAssistant, mock_new_airgradient_client: AsyncMock,