public void InfixToRPNTest3()
        {
            var tokens = Tokenizer.Default.GetTokens("max(10 - 4, 2 + 6)");
            var rpn    = MathEvaluator.InfixToRPN(tokens);

            // 10 4 - 2 6 + max
            var expected = new string[] { "10", "4", "-", "2", "6", "+", "max" };

            Assert.AreEqual(expected, TokenExtensions.ToStringArray(rpn), "{0}\n{1}", rpn.CollectionToString(s => s.Value), rpn.CollectionToString());
        }
        public void InfixToRPNTest2()
        {
            var tokens = Tokenizer.Default.GetTokens("(10 + (-5 * 2))");
            var rpn    = MathEvaluator.InfixToRPN(tokens);

            //10 5 - 2 * +
            var expected = new string[] { "10", "5", "-", "2", "*", "+" };

            Assert.AreEqual(expected, TokenExtensions.ToStringArray(rpn), "{0}\n{1}", rpn.CollectionToString(s => s.Value), rpn.CollectionToString());
        }