blob: 6a3372517c162ac0ab19ab3a45900910a10f5dbb [file] [log] [blame]
using System;
using System.Text;
using System.Collections.Generic;
using System.Linq;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using OfficeOpenXml.FormulaParsing.ExcelUtilities;
namespace EPPlusTest
{
[TestClass]
public class NumericExpressionEvaluatorTests
{
private NumericExpressionEvaluator _evaluator;
[TestInitialize]
public void Setup()
{
_evaluator = new NumericExpressionEvaluator();
}
[TestMethod]
public void EvaluateShouldReturnTrueIfOperandsAreEqual()
{
var result = _evaluator.Evaluate("1", "1");
Assert.IsTrue(result);
}
[TestMethod]
public void EvaluateShouldReturnTrueIfOperandsAreMatchingButDifferentTypes()
{
var result = _evaluator.Evaluate(1d, "1");
Assert.IsTrue(result);
}
[TestMethod]
public void EvaluateShouldEvaluateOperator()
{
var result = _evaluator.Evaluate(1d, "<2");
Assert.IsTrue(result);
}
[TestMethod]
public void EvaluateShouldEvaluateNumericString()
{
var result = _evaluator.Evaluate("1", ">0");
Assert.IsTrue(result);
}
[TestMethod, ExpectedException(typeof(ArgumentException))]
public void EvaluateShouldThrowIfOperatorIsNotBoolean()
{
var result = _evaluator.Evaluate(1d, "+1");
}
}
}