| 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"); | |
| } | |
| } | |
| } |