Release SyncVito 1.0.10
This commit is contained in:
1 parent
4efc1efa18
commit
7098fa1c0c
9 files changed
+317
-20
No files matched your search
@@ -93,3 +93,47 @@ def test_start_resets_stale_progress_before_worker_starts(
|
||||
coordinator.enqueue(coordinator.config.tasks[0].id)
|
||||
assert len(workers) == 1
|
||||
assert coordinator.current_overall_status() == ("active", "Synchronisierung läuft")
|
||||
|
||||
|
||||
def test_pause_and_resume_preserves_queue_and_state(coordinator: SyncCoordinator) -> None:
|
||||
task1 = coordinator.config.tasks[0]
|
||||
task2 = SyncTask(name="Documents", source="c:/src2", target="c:/dst2")
|
||||
coordinator.config.tasks.append(task2)
|
||||
|
||||
# Global pausieren
|
||||
coordinator.set_paused(True)
|
||||
assert coordinator.config.settings.paused
|
||||
assert coordinator.current_overall_status() == ("paused", "Pausiert")
|
||||
|
||||
# Aufgaben in Warteschlange einreihen
|
||||
coordinator.enqueue(task1.id)
|
||||
coordinator.enqueue(task2.id)
|
||||
|
||||
assert coordinator.queued_task_ids == [task1.id, task2.id]
|
||||
assert coordinator.config.settings.pending_queue == [task1.id, task2.id]
|
||||
|
||||
# Fortsetzen
|
||||
workers = []
|
||||
from types import SimpleNamespace
|
||||
|
||||
coordinator.pool = SimpleNamespace(start=workers.append)
|
||||
coordinator.set_paused(False)
|
||||
|
||||
assert not coordinator.config.settings.paused
|
||||
assert len(workers) == 1
|
||||
assert coordinator.running_task_id == task1.id
|
||||
assert coordinator.queued_task_ids == [task2.id]
|
||||
|
||||
|
||||
def test_stop_persists_running_task_and_queue_for_restart(coordinator: SyncCoordinator) -> None:
|
||||
task1 = coordinator.config.tasks[0]
|
||||
task2 = SyncTask(name="Documents", source="c:/src2", target="c:/dst2")
|
||||
coordinator.config.tasks.append(task2)
|
||||
|
||||
coordinator._running_task_id = task1.id
|
||||
coordinator._queue.append(task2.id)
|
||||
|
||||
coordinator.stop()
|
||||
|
||||
assert coordinator.config.settings.paused is True
|
||||
assert coordinator.config.settings.pending_queue == [task1.id, task2.id]
|
||||
Reference in new issue
Block a user