public void GetEnumerator_should_call_ToCursor_each_time( [Values(1, 2)] int times) { var mockSource = new Mock<IAsyncCursorSource<BsonDocument>>(); var cursor = new Mock<IAsyncCursor<BsonDocument>>().Object; mockSource.Setup(c => c.ToCursor(CancellationToken.None)).Returns(cursor); var subject = new AsyncCursorSourceEnumerableAdapter<BsonDocument>(mockSource.Object, CancellationToken.None); for (var i = 0; i < times; i++) { subject.GetEnumerator(); } mockSource.Verify(s => s.ToCursor(CancellationToken.None), Times.Exactly(times)); }
public void GetEnumerator_should_call_ToCursor_each_time( [Values(1, 2)] int times) { var source = Substitute.For<IAsyncCursorSource<BsonDocument>>(); var cursor = Substitute.For<IAsyncCursor<BsonDocument>>(); source.ToCursor().Returns(cursor); var subject = new AsyncCursorSourceEnumerableAdapter<BsonDocument>(source, CancellationToken.None); for (var i = 0; i < times; i++) { subject.GetEnumerator(); } source.Received(times).ToCursor(); }