|  | using System; | 
|  | using System.IO; | 
|  | using Microsoft.VisualStudio.TestTools.UnitTesting; | 
|  | using OfficeOpenXml; | 
|  |  | 
|  | namespace EPPlusTest.FormulaParsing.IntegrationTests | 
|  | { | 
|  | [TestClass] | 
|  | public class CalcExtensionsTests | 
|  | { | 
|  | [TestMethod] | 
|  | public void ShouldCalculateChainTest() | 
|  | { | 
|  | var package = new ExcelPackage(new FileInfo("c:\\temp\\chaintest.xlsx")); | 
|  | package.Workbook.Calculate(); | 
|  | } | 
|  |  | 
|  | [TestMethod] | 
|  | public void CalculateTest() | 
|  | { | 
|  | //var pck = new ExcelPackage(); | 
|  | //var ws = pck.Workbook.Worksheets.Add("Calc1"); | 
|  |  | 
|  | //ws.SetValue("A1", (short)1); | 
|  | //var v = pck.Workbook.FormulaParserManager.Parse("2.5-Calc1!A1+abs(3.0)-SIN(3)"); | 
|  | //Assert.AreEqual(4.358879992, Math.Round((double)v, 9)); | 
|  |  | 
|  | var pck = new ExcelPackage(); | 
|  | var ws = pck.Workbook.Worksheets.Add("Calc1"); | 
|  |  | 
|  | ws.SetValue("A1", (short)1); | 
|  | var v = pck.Workbook.FormulaParserManager.Parse("2.5-Calc1!A1+ABS(-3.0)-SIN(3)*abs(5)"); | 
|  | Assert.AreEqual(3.79439996, Math.Round((double)v,9)); | 
|  | } | 
|  |  | 
|  | [TestMethod] | 
|  | public void CalculateTest2() | 
|  | { | 
|  | var pck = new ExcelPackage(); | 
|  | var ws = pck.Workbook.Worksheets.Add("Calc1"); | 
|  |  | 
|  | ws.SetValue("A1", (short)1); | 
|  | var v = pck.Workbook.FormulaParserManager.Parse("3*(2+5.5*2)+2*0.5+3"); | 
|  | Assert.AreEqual(43, Math.Round((double)v, 9)); | 
|  | } | 
|  | } | 
|  | } |