mirror of
https://github.com/rmcrackan/Libation.git
synced 2026-09-12 21:57:19 -04:00
TrackedQueue<T> is a pure data structure with no dependencies beyond System, so the behaviour parallel downloads relies on can be asserted directly rather than inferred from the UI. Every case here needs more than one book active at once, which is what made these defects unreachable before. The two that mattered: a book finishing out of order now reports the reorder, so a list bound only to CollectionChanged stays in step with the queue; and the queue can be enumerated while it is being mutated, which used to throw. The sequential path is covered too - one book at a time still raises no Move, because the book that finishes is already first.