示例#1
0
        public void should_get_current_equal_to_zero()
        {
            var enumerator =
                new SingleByteEnumerator(
                    new OutputEnumerator(series(0, 256, index => (byte)index), new MemoryStream(), 4)
                    );

            var buffer = monad(enumerator, e => e.MoveNext()).Current;

            Assert.AreEqual((byte)0, buffer);
        }
示例#2
0
        public void should_move_next_three_times()
        {
            var enumerator =
                new SingleByteEnumerator(
                    new OutputEnumerator(series(0, 256, index => (byte)index), new MemoryStream(), 4)
                    );

            for (int i = 0; i < 3; i++)
            {
                enumerator.MoveNext();
            }

            Assert.AreEqual(2, enumerator.Current);
        }
示例#3
0
        public void should_move_next_two_times()
        {
            var enumerator =
                new SingleByteEnumerator(
                    new OutputEnumerator(series(0, 256, index => (byte)index), new MemoryStream(), 4)
                    );

            var buffer =
                monad(
                    monad(enumerator, e => e.MoveNext()),
                    e => e.MoveNext()
                    ).Current;

            Assert.AreEqual(1, buffer);
        }