public void AlterationTest() { // Create inital combination ExpressionInt expression = _expression1.Combine(_expression2, ExpressionOperator.Plus) as ExpressionInt; Assert.AreEqual(expression.Result, 3); // Alter combined object _expression2 = _expression2.Combine(_expression3, ExpressionOperator.Plus) as ExpressionInt; Assert.AreEqual(expression.Result, 3); }
public void MultiplyTest() { ExpressionInt expression = _expression1.Combine(_expression2, ExpressionOperator.Multiply) as ExpressionInt; // 1 * 2 Assert.AreEqual(expression.Result, 2); expression = expression.Combine(_expression3, ExpressionOperator.Multiply) as ExpressionInt; // 1 * 2 * 3 Assert.AreEqual(expression.Result, 6); }
public void DivideTest() { ExpressionInt expression = _expression1.Combine(_expression2, ExpressionOperator.Divide) as ExpressionInt; // 1 / 2 Assert.AreEqual(expression.Result, 0); expression = expression.Combine(_expression3, ExpressionOperator.Divide) as ExpressionInt; // (1 / 2) / 3 Assert.AreEqual(expression.Result, 0); }
public void MinusTest() { ExpressionInt expression = _expression1.Combine(_expression2, ExpressionOperator.Minus) as ExpressionInt; // 1 - 2 Assert.AreEqual(expression.Result, -1); expression = expression.Combine(_expression3, ExpressionOperator.Minus) as ExpressionInt; // 1 - 2 - 3 Assert.AreEqual(expression.Result, -4); }
public void PlusTest() { ExpressionInt expression = _expression1.Combine(_expression2, ExpressionOperator.Plus) as ExpressionInt; // 1 + 2 Assert.AreEqual(expression.Result, 3); expression = expression.Combine(_expression3, ExpressionOperator.Plus) as ExpressionInt; // 1 + 2 + 3 Assert.AreEqual(expression.Result, 6); }
public void Initialize() { _expression1 = new ExpressionInt(new string[0], () => 1); _expression2 = new ExpressionInt(new string[0], () => 2); _expression3 = new ExpressionInt(new string[0], () => 3); }
public void DoubleToIntCastTest() { ExpressionInt expression = _expression1; Assert.AreEqual(expression.Result, 1); }