public void TestAllOperaters() { var RPC = new ReversePolishCalculator(); Assert.AreEqual(4d, RPC.Calculate("2 2 +")); Assert.AreEqual(1d, RPC.Calculate("3 2 -")); Assert.AreEqual(9d, RPC.Calculate("3 3 *")); Assert.AreEqual(1d, RPC.Calculate("3 3 /")); Assert.AreEqual(81d, RPC.Calculate("3 4 ^")); }
public void TestShouldGive14() { var RPC = new ReversePolishCalculator(); Assert.AreEqual(14d, RPC.Calculate("5 1 2 + 4 * + 3 -")); }
public void TestComplexExpressions() { var RPC = new ReversePolishCalculator(); Assert.AreEqual(2d, RPC.Calculate("2 2 + 2 -")); Assert.AreEqual(9d, RPC.Calculate("3 2 - 2 + 3 *")); Assert.AreEqual(6d, RPC.Calculate("3 3 * 5 2 - + 2 /")); }
public void TestNothingAndNull() { var RPC = new ReversePolishCalculator(); Assert.AreEqual(0d, RPC.Calculate("")); Assert.AreEqual(0d, RPC.Calculate(null)); }
private static void Main(string[] args) { var RPC = new ReversePolishCalculator(); while (true) { var s = Console.ReadLine(); if (s == "quit") break; Console.WriteLine("= " + RPC.Calculate(s)); } }