public void Delete_Test() { var dataGenerator = new DataManager(_seed); var sourceStream = dataGenerator.GenerateData(10); using (var repo = new ManagedRepository(BlockSize, ChecksumSize, _workDir)) { for (var i = 0; i < 3; i++) { sourceStream.Seek(0, SeekOrigin.Begin); using (var map = repo.Write(sourceStream)) using (new MapMonitor(map)) { map.Start(); map.Wait(); } Console.WriteLine(); } Assert.Contains(0, repo.Maps.ToList()); Assert.Contains(1, repo.Maps.ToList()); Assert.Contains(2, repo.Maps.ToList()); using (var map = repo.Delete(1)) using (new MapMonitor(map)) { map.Start(); map.Wait(); } Assert.Contains(0, repo.Maps.ToList()); Assert.Contains(2, repo.Maps.ToList()); Assert.IsFalse(repo.Maps.Any(x => x == 1), "Map with id 1 should be deleted!"); } }