Pick onedrive owner from a more reliable source (#136929)

* Pick onedrive owner from a more reliable source

* fix
This commit is contained in:
Josef Zweck 2025-01-30 17:08:35 +01:00 committed by Bram Kragten
parent 07acabdb36
commit 252b13e63a
2 changed files with 6 additions and 3 deletions

View File

@ -78,7 +78,7 @@ class OneDriveConfigFlow(AbstractOAuth2FlowHandler, domain=DOMAIN):
self.logger.exception("Unknown error")
return self.async_abort(reason="unknown")
drive = response.json()
drive: dict = response.json()
await self.async_set_unique_id(drive["parentReference"]["driveId"])
@ -94,7 +94,10 @@ class OneDriveConfigFlow(AbstractOAuth2FlowHandler, domain=DOMAIN):
self._abort_if_unique_id_configured()
title = f"{drive['shared']['owner']['user']['displayName']}'s OneDrive"
user = drive.get("createdBy", {}).get("user", {}).get("displayName")
title = f"{user}'s OneDrive" if user else "OneDrive"
return self.async_create_entry(title=title, data=data)
async def async_step_reauth(

View File

@ -88,7 +88,7 @@ def mock_adapter() -> Generator[MagicMock]:
status_code=200,
json={
"parentReference": {"driveId": "mock_drive_id"},
"shared": {"owner": {"user": {"displayName": "John Doe"}}},
"createdBy": {"user": {"displayName": "John Doe"}},
},
)
yield adapter