public void Update_RemovedEntries_RemoveMissingItems( SubtitleStateEntry[] entries, SubtitleState state) { var failedFiles = entries.Skip(1).Select(e => e.File); state.Entries.Clear(); state.Entries.AddRange(entries); state.Update(failedFiles); Assert.That(state.Entries.Select(e => e.File), Is.EquivalentTo(failedFiles)); }
public void Cleanup_EntriesAreOld_RemoveAllEntriesOlderThanGiveupdays( int giveupdays, Action<SubtitleStateEntry> removalAction, SubtitleStateEntry[] entries, SubtitleState state) { var toBeRemoved = entries.Take(2); toBeRemoved.ForEach(e => e.Timestamp = DateTime.Now.AddDays(-giveupdays - 1)); var toKeep = entries.Skip(2); toKeep.ForEach(e => e.Timestamp = DateTime.Now); state.Entries.Clear(); state.Entries.AddRange(entries); state.Cleanup(giveupdays, removalAction); Assert.That(state.Entries.Select(s => s.File), Is.EquivalentTo(toKeep.Select(s => s.File))); }