public void TestHasNext() { List <Token> tokens = new List <Token>(); tokens.Add(new Token(TokenType.DollarIdentifier, "a", 5, 2)); tokens.Add(new Token(TokenType.Word, "a", 5, 3)); tokens.Add(new Token(TokenType.AtIdentifier, "@b", 12, 0)); tokens.Add(new Token(TokenType.Word, "c", 14, 42)); TokenIterator tokenIterator = new TokenIterator(tokens); Assert.IsTrue(tokenIterator.HasNextType(TokenType.DollarIdentifier)); Assert.IsTrue(tokenIterator.HasNextType(TokenType.DollarIdentifier, TokenType.Pipe)); Assert.IsTrue(tokenIterator.HasNextType(TokenType.Period, TokenType.DollarIdentifier, TokenType.Pipe)); Assert.IsFalse(tokenIterator.HasNextType(TokenType.Number)); tokenIterator.Next(); tokenIterator.Next(); tokenIterator.Next(); tokenIterator.Next(); Assert.IsFalse(tokenIterator.HasNextType(TokenType.Word)); }