Update docs and screenshots
CI / backend (pull_request) Canceled after 0s
CI / shell (pull_request) Canceled after 0s
CI / frontend (pull_request) Canceled after 0s
CI / arm64-smoke (pull_request) Canceled after 0s
CI / backend (push) Canceled after 0s
CI / shell (push) Canceled after 0s
CI / frontend (push) Canceled after 0s
CI / arm64-smoke (push) Canceled after 0s
CI / backend (pull_request) Canceled after 0s
CI / shell (pull_request) Canceled after 0s
CI / frontend (pull_request) Canceled after 0s
CI / arm64-smoke (pull_request) Canceled after 0s
CI / backend (push) Canceled after 0s
CI / shell (push) Canceled after 0s
CI / frontend (push) Canceled after 0s
CI / arm64-smoke (push) Canceled after 0s
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
from pathlib import Path
|
||||
|
||||
from app.backup.service import BackupService
|
||||
|
||||
|
||||
def test_backup_and_restore_roundtrip(tmp_path: Path) -> None:
|
||||
data_dir = tmp_path / "data"
|
||||
backup_dir = data_dir / "backups"
|
||||
data_dir.mkdir(parents=True)
|
||||
sample_file = data_dir / "settings.json"
|
||||
sample_file.write_text('{"scene":"base"}', encoding="utf-8")
|
||||
|
||||
service = BackupService(data_dir=data_dir, backup_dir=backup_dir)
|
||||
created = service.create_backup("audit-backup")
|
||||
|
||||
sample_file.write_text('{"scene":"modified"}', encoding="utf-8")
|
||||
service.restore_backup(created.id)
|
||||
|
||||
assert sample_file.read_text(encoding="utf-8") == '{"scene":"base"}'
|
||||
assert any(item.label == "audit-backup" for item in service.list_backups())
|
||||
|
||||
|
||||
def test_restore_empty_backup_clears_runtime_files(tmp_path: Path) -> None:
|
||||
data_dir = tmp_path / "data"
|
||||
backup_dir = data_dir / "backups"
|
||||
data_dir.mkdir(parents=True)
|
||||
|
||||
service = BackupService(data_dir=data_dir, backup_dir=backup_dir)
|
||||
empty_backup = service.create_backup("empty-runtime")
|
||||
|
||||
sample_file = data_dir / "settings.json"
|
||||
sample_file.write_text('{"scene":"modified"}', encoding="utf-8")
|
||||
service.restore_backup(empty_backup.id)
|
||||
|
||||
assert not sample_file.exists()
|
||||
Reference in New Issue
Block a user