Handle empty fields in SolarEdge config flow (#155978)

This commit is contained in:
tronikos
2025-11-06 12:51:07 -08:00
committed by GitHub
parent d3bebd94aa
commit dca9389735
2 changed files with 10 additions and 2 deletions

View File

@@ -133,8 +133,11 @@ class SolarEdgeConfigFlow(ConfigFlow, domain=DOMAIN):
if api_key_ok and web_login_ok:
data = {CONF_SITE_ID: site_id}
data.update(api_auth)
data.update(web_auth)
if api_key:
data[CONF_API_KEY] = api_key
if username:
data[CONF_USERNAME] = username
data[CONF_PASSWORD] = web_auth[CONF_PASSWORD]
if self.source == SOURCE_RECONFIGURE:
if TYPE_CHECKING:

View File

@@ -54,6 +54,10 @@ async def test_user_api_key(
CONF_NAME: NAME,
CONF_SITE_ID: SITE_ID,
CONF_SECTION_API_AUTH: {CONF_API_KEY: API_KEY},
CONF_SECTION_WEB_AUTH: {
CONF_USERNAME: "",
CONF_PASSWORD: "",
},
},
)
assert result.get("type") is FlowResultType.CREATE_ENTRY
@@ -85,6 +89,7 @@ async def test_user_web_login(
{
CONF_NAME: NAME,
CONF_SITE_ID: SITE_ID,
CONF_SECTION_API_AUTH: {CONF_API_KEY: ""},
CONF_SECTION_WEB_AUTH: {
CONF_USERNAME: USERNAME,
CONF_PASSWORD: PASSWORD,