public void EnumerateList() { var exists = new HashSet <int>(); var enumerator = new ReadLockWhereEnumerator <int, int>(_list, _stub, 0, _lock); while (enumerator.MoveNext()) { exists.Add(enumerator.Current).Should().BeTrue(); } exists.Count.Should().Be(_list.Count); enumerator.Dispose(); }
public void FilterListValues() { var exists = new HashSet <int>(); var greatestValue = _list.Max(); var enumerator = new ReadLockWhereEnumerator <int, int>(_list, (v, arg) => v >= arg, greatestValue, _lock); while (enumerator.MoveNext()) { exists.Add(enumerator.Current).Should().BeTrue(); } exists.Count.Should().Be(1); exists.Should().ContainSingle(v => v == greatestValue); enumerator.Dispose(); }