public void CountPostfixOperations()
 {
     var fa = new FormulaAnalyzer("A6%");
     var ops = fa.Functions().ToList();
     Assert.AreEqual(1, ops.Count());
     CollectionAssert.Contains(ops, "%");
 }
 public void CountFunctionOperations()
 {
     var fa = new FormulaAnalyzer("SUM(3,5)");
     var ops = fa.Functions().ToList();
     Assert.AreEqual(1, ops.Count());
     CollectionAssert.Contains(ops, "SUM");
 }
 public void CountInfixOperations()
 {
     var fa = new FormulaAnalyzer("3+4/5");
     var ops = fa.Functions().ToList();
     Assert.AreEqual(2, ops.Count());
     CollectionAssert.Contains(ops, "+");
     CollectionAssert.Contains(ops, "/");
 }
 public void CountComparisons()
 {
     var fa = new FormulaAnalyzer("IF(A1>A2,3,4)");
     var ops = fa.Functions().Distinct().ToList();
     Assert.AreEqual(2, ops.Count());
     CollectionAssert.Contains(ops, ">");
     CollectionAssert.Contains(ops, "IF");
 }
 public void DontCountSheetReferenes()
 {
     string formula = "Weight!B1";
     var fa = new FormulaAnalyzer(formula);
     Assert.AreEqual(0, fa.Functions().Count());
 }
 public void ComparisonIsFunction()
 {
     var fa = new FormulaAnalyzer("IF(A1<=A2,A1+1,A2)");
     CollectionAssert.Contains(fa.Functions().ToList(), "<=");
 }
 public void IntersectIsFunction()
 {
     var fa = new FormulaAnalyzer("SUM(A1:A3 A2:A3)");
     var functions = fa.Functions().Distinct().ToList();
     CollectionAssert.Contains(functions, "INTERSECT");
 }