public void CalculateTest() { //Arrange var token = Token.CreateToken("1"); Stack <double> stack = new Stack <double>(); ITokenCalculator tokenCalculator = token as ITokenCalculator; //Act tokenCalculator.Calculate(stack); //Assert Assert.AreEqual(token.Value, stack.Pop().ToString()); }
public void Calculate_DivideByZeroTest() { //Arrange var token = Token.CreateToken("/"); Stack <double> stack = new Stack <double>(); stack.Push(2); stack.Push(0); ITokenCalculator tokenCalculator = token as ITokenCalculator; //Act //Assert Assert.ThrowsException <DivideByZeroException>(() => tokenCalculator.Calculate(stack)); }
public void CalculateTest(double operand1, string @operator, double operand2, double result) { //Arrange var token = Token.CreateToken(@operator); Stack <double> stack = new Stack <double>(); stack.Push(operand1); stack.Push(operand2); ITokenCalculator tokenCalculator = token as ITokenCalculator; //Act tokenCalculator.Calculate(stack); //Assert Assert.AreEqual(result, stack.Pop()); }