public void TokenStream_Can_Iterate_Over_Collection()
 {
     List<Token> tokens = new List<Token> { new Token(TokenType.Numeric, 1D), new Token(TokenType.Addition, "+"), new Token(TokenType.Numeric, 2D) };
     TokenStream stream = new TokenStream(tokens, TokenNotation.Infix);
     var enumerator = stream.GetEnumerator();
     List<Token> result = new List<Token>();
     while (enumerator.MoveNext())
     {
         result.Add(enumerator.Current);
     }
     Assert.AreEqual(3, result.Count);
     Assert.AreEqual(1, (double)result[0].Value);
     Assert.AreEqual(TokenType.Addition, result[1].Type);
     Assert.AreEqual(2, (double)result[2].Value);
 }