public void InvalidSymbolInPostfixFormShouldThrowException(IStack stack)
        {
            var postfixForm = "5 5 XD";

            Assert.Throws <System.ArgumentException>(() => StackCalculator.CalculatePostfixForm(postfixForm, stack));
        }
示例#2
0
 public void Setup()
 {
     stackCalculator = new StackCalculator(new StackArray());
 }
        public void DivisionByZeroShouldThrowException(IStack stack)
        {
            var postfixForm = "20 0 /";

            Assert.Throws <System.DivideByZeroException>(() => StackCalculator.CalculatePostfixForm(postfixForm, stack));
        }
示例#4
0
 public void CalculateCorrectExpression1Test(IStack stack)
 {
     Assert.AreEqual((true, 3), StackCalculator.Calculate("96 6 - 17 13 + /", stack));
 }
示例#5
0
 public void CalculateCorrectExpression2Test(IStack stack)
 {
     Assert.AreEqual((true, 110), StackCalculator.Calculate("26 42 2 * +", stack));
 }
示例#6
0
 public void NotEnoughOperationTest(IStack stack)
 {
     Assert.AreEqual((false, 0), StackCalculator.Calculate("4 5 + 3 2 *", stack));
 }
示例#7
0
 public void StackShouldBeEmpty3Test(IStack stack)
 {
     StackCalculator.Calculate("9 6", stack);
     Assert.IsTrue(stack.IsEmpty());
 }
示例#8
0
 public void OneOperandBeforeOperationTest(IStack stack)
 {
     Assert.AreEqual((false, 0), StackCalculator.Calculate("3 - 2", stack));
 }
示例#9
0
 public void DivideByZeroTest(IStack stack)
 {
     Assert.AreEqual((false, 0), StackCalculator.Calculate("9 0 / 5 3 +", stack));
 }
示例#10
0
 public void EmptyStringTest(IStack stack)
 {
     Assert.AreEqual((false, 0), StackCalculator.Calculate("", stack));
 }
示例#11
0
 public void WithInvalidSymbolsTest(IStack stack)
 {
     Assert.AreEqual((false, 0), StackCalculator.Calculate("1 3 * a -", stack));
 }
 public void SetUp()
 {
     _stackCalculator = CalculatorFactory.BuildStackCalculator();
 }