예제 #1
0
        public void CannotPeekEmpty()
        {
            var tokens = new List <Token>();
            var walker = new TokensWalker(tokens);

            walker.PeekNext();
        }
예제 #2
0
        public void CannotGetNextEmpty()
        {
            var tokens = new List <Token>();
            var walker = new TokensWalker(tokens);

            walker.GetNext();
        }
예제 #3
0
        public void CanHandleEmptyList()
        {
            var tokens = new List <Token>();
            var walker = new TokensWalker(tokens);

            Assert.IsFalse(walker.ThereAreMoreTokens);
        }
예제 #4
0
        public void AfterGettingLastThereAreNoMoreIsSet()
        {
            Token firstToken = new MinusToken();
            var   tokens     = new List <Token>()
            {
                firstToken
            };
            var walker = new TokensWalker(tokens);

            walker.GetNext();
            Assert.IsFalse(walker.ThereAreMoreTokens);
        }
예제 #5
0
        public void CanGetExisting()
        {
            Token firstToken = new MinusToken();
            var   tokens     = new List <Token>()
            {
                firstToken
            };
            var walker = new TokensWalker(tokens);

            Assert.IsTrue(walker.ThereAreMoreTokens);
            var first = walker.GetNext();

            Assert.AreEqual(firstToken, first);
        }