|
17 | 17 | Folder,
|
18 | 18 | FreezeOptions,
|
19 | 19 | FullBackupOptions,
|
| 20 | + FullRestoreOptions, |
20 | 21 | PartialBackupOptions,
|
21 | 22 | PartialRestoreOptions,
|
22 | 23 | RemoveBackupOptions,
|
@@ -372,31 +373,53 @@ async def test_remove_backup(
|
372 | 373 | }
|
373 | 374 |
|
374 | 375 |
|
| 376 | +@pytest.mark.parametrize( |
| 377 | + "options", |
| 378 | + [ |
| 379 | + None, |
| 380 | + FullRestoreOptions(password="abc123"), # noqa: S106 |
| 381 | + FullRestoreOptions(background=True), |
| 382 | + FullRestoreOptions(location=None), |
| 383 | + FullRestoreOptions(location="test"), |
| 384 | + ], |
| 385 | +) |
375 | 386 | async def test_full_restore(
|
376 |
| - responses: aioresponses, supervisor_client: SupervisorClient |
| 387 | + responses: aioresponses, |
| 388 | + supervisor_client: SupervisorClient, |
| 389 | + options: FullRestoreOptions | None, |
377 | 390 | ) -> None:
|
378 | 391 | """Test full restore API."""
|
379 | 392 | responses.post(
|
380 | 393 | f"{SUPERVISOR_URL}/backups/abc123/restore/full",
|
381 | 394 | status=200,
|
382 | 395 | body=load_fixture("backup_restore.json"),
|
383 | 396 | )
|
384 |
| - result = await supervisor_client.backups.full_restore("abc123") |
| 397 | + result = await supervisor_client.backups.full_restore("abc123", options) |
385 | 398 | assert result.job_id == "dc9dbc16f6ad4de592ffa72c807ca2bf"
|
386 | 399 |
|
387 | 400 |
|
| 401 | +@pytest.mark.parametrize( |
| 402 | + "options", |
| 403 | + [ |
| 404 | + PartialRestoreOptions(addons={"core_ssh"}), |
| 405 | + PartialRestoreOptions(homeassistant=True, location=None), |
| 406 | + PartialRestoreOptions(folders={Folder.SHARE, Folder.SSL}, location="test"), |
| 407 | + PartialRestoreOptions(addons={"core_ssh"}, background=True), |
| 408 | + PartialRestoreOptions(addons={"core_ssh"}, password="abc123"), # noqa: S106 |
| 409 | + ], |
| 410 | +) |
388 | 411 | async def test_partial_restore(
|
389 |
| - responses: aioresponses, supervisor_client: SupervisorClient |
| 412 | + responses: aioresponses, |
| 413 | + supervisor_client: SupervisorClient, |
| 414 | + options: PartialRestoreOptions, |
390 | 415 | ) -> None:
|
391 | 416 | """Test partial restore API."""
|
392 | 417 | responses.post(
|
393 | 418 | f"{SUPERVISOR_URL}/backups/abc123/restore/partial",
|
394 | 419 | status=200,
|
395 | 420 | body=load_fixture("backup_restore.json"),
|
396 | 421 | )
|
397 |
| - result = await supervisor_client.backups.partial_restore( |
398 |
| - "abc123", PartialRestoreOptions(addons={"core_ssh"}) |
399 |
| - ) |
| 422 | + result = await supervisor_client.backups.partial_restore("abc123", options) |
400 | 423 | assert result.job_id == "dc9dbc16f6ad4de592ffa72c807ca2bf"
|
401 | 424 |
|
402 | 425 |
|
|
0 commit comments