mirror of
https://github.com/home-assistant/core.git
synced 2025-04-24 01:08:12 +00:00
Fix onedrive does not fail on delete not found (#136910)
* Fix onedrive does not fail on delete not found * Fix onedrive does not fail on delete not found
This commit is contained in:
parent
773375e7b0
commit
d148bd9b0c
@ -190,7 +190,13 @@ class OneDriveBackupAgent(BackupAgent):
|
||||
**kwargs: Any,
|
||||
) -> None:
|
||||
"""Delete a backup file."""
|
||||
await self._get_backup_file_item(backup_id).delete()
|
||||
|
||||
try:
|
||||
await self._get_backup_file_item(backup_id).delete()
|
||||
except APIError as err:
|
||||
if err.response_status_code == 404:
|
||||
return
|
||||
raise
|
||||
|
||||
@handle_backup_errors
|
||||
async def async_list_backups(self, **kwargs: Any) -> list[AgentBackup]:
|
||||
|
@ -156,6 +156,28 @@ async def test_agents_delete(
|
||||
mock_drive_items.delete.assert_called_once()
|
||||
|
||||
|
||||
async def test_agents_delete_not_found_does_not_throw(
|
||||
hass: HomeAssistant,
|
||||
hass_ws_client: WebSocketGenerator,
|
||||
mock_drive_items: MagicMock,
|
||||
) -> None:
|
||||
"""Test agent delete backup."""
|
||||
mock_drive_items.delete = AsyncMock(side_effect=APIError(response_status_code=404))
|
||||
client = await hass_ws_client(hass)
|
||||
|
||||
await client.send_json_auto_id(
|
||||
{
|
||||
"type": "backup/delete",
|
||||
"backup_id": BACKUP_METADATA["backup_id"],
|
||||
}
|
||||
)
|
||||
response = await client.receive_json()
|
||||
|
||||
assert response["success"]
|
||||
assert response["result"] == {"agent_errors": {}}
|
||||
mock_drive_items.delete.assert_called_once()
|
||||
|
||||
|
||||
async def test_agents_upload(
|
||||
hass_client: ClientSessionGenerator,
|
||||
caplog: pytest.LogCaptureFixture,
|
||||
@ -257,7 +279,7 @@ async def test_agents_download(
|
||||
("side_effect", "error"),
|
||||
[
|
||||
(
|
||||
APIError(response_status_code=404, message="File not found."),
|
||||
APIError(response_status_code=500),
|
||||
"Backup operation failed",
|
||||
),
|
||||
(TimeoutError(), "Backup operation timed out"),
|
||||
|
Loading…
x
Reference in New Issue
Block a user