Ejemplo n.º 1
0
        public void BufferedEnumeratorTakingMoreThanBufferSizeQueriesSourceMoreThanOnce()
        {
            // Arrange
            var state = new BufferedEnumerable<int>.QueryState<int>(5);
            var query = Enumerable.Range(0, 10000).AsQueryable();
            var e = new BufferedEnumerable<int>.BufferedEnumerator<int>(state, query, 5);
            e.Reset();

            // Act
            for (int i = 0; i < 6; i++) {
                e.MoveNext();
            }

            // Assert
            Assert.AreEqual(10, state.Cache.Count);
        }
Ejemplo n.º 2
0
        public void IfNoMoreItemsInSourceSetsIsEmpty()
        {
            // Arrange
            var state = new BufferedEnumerable<int>.QueryState<int>(5);
            var query = Enumerable.Range(0, 5).AsQueryable();
            var e = new BufferedEnumerable<int>.BufferedEnumerator<int>(state, query, 1);
            e.Reset();

            // Act
            for (int i = 0; i < 5; i++) {
                e.MoveNext();
            }

            // Assert
            Assert.IsTrue(e.IsEmpty);
            Assert.AreEqual(5, state.Cache.Count);
        }
        public void BufferedEnumeratorTakingMoreThanBufferSizeQueriesSourceMoreThanOnce()
        {
            // Arrange
            var state = new BufferedEnumerable <int> .QueryState <int>(5);

            var query = Enumerable.Range(0, 10000).AsQueryable();
            var e     = new BufferedEnumerable <int> .BufferedEnumerator <int>(state, query, 5);

            e.Reset();

            // Act
            for (int i = 0; i < 6; i++)
            {
                e.MoveNext();
            }

            // Assert
            Assert.Equal(10, state.Cache.Count);
        }
        public void IfNoMoreItemsInSourceSetsIsEmpty()
        {
            // Arrange
            var state = new BufferedEnumerable <int> .QueryState <int>(5);

            var query = Enumerable.Range(0, 5).AsQueryable();
            var e     = new BufferedEnumerable <int> .BufferedEnumerator <int>(state, query, 1);

            e.Reset();

            // Act
            for (int i = 0; i < 5; i++)
            {
                e.MoveNext();
            }

            // Assert
            Assert.True(e.IsEmpty);
            Assert.Equal(5, state.Cache.Count);
        }