| using System; | |
| using System.Text; | |
| using System.Collections.Generic; | |
| using System.Linq; | |
| using Microsoft.VisualStudio.TestTools.UnitTesting; | |
| using Rhino.Mocks; | |
| using OfficeOpenXml.FormulaParsing; | |
| using OfficeOpenXml.FormulaParsing.Exceptions; | |
| namespace EPPlusTest.FormulaParsing.IntegrationTests.ExcelDataProviderTests | |
| { | |
| [TestClass] | |
| public class ExcelDataProviderIntegrationTests | |
| { | |
| private ExcelCell CreateItem(object val, int row) | |
| { | |
| return new ExcelCell(val, null, 0, row); | |
| } | |
| //[TestMethod] | |
| //public void ShouldCallProviderInSumFunctionAndCalculateResult() | |
| //{ | |
| // var expectedAddres = "A1:A2"; | |
| // var provider = MockRepository.GenerateStub<ExcelDataProvider>(); | |
| // provider | |
| // .Stub(x => x.GetRangeValues(string.Empty, expectedAddres)) | |
| // .Return(new object[] { 1, 2 }); | |
| // var parser = new FormulaParser(provider); | |
| // var result = parser.Parse(string.Format("sum({0})", expectedAddres)); | |
| // Assert.AreEqual(3d, result); | |
| //} | |
| //[TestMethod] | |
| //public void ShouldExecuteFormulaInRange() | |
| //{ | |
| // var expectedAddres = "A1:A2"; | |
| // var provider = MockRepository.GenerateStub<ExcelDataProvider>(); | |
| // provider | |
| // .Stub(x => x.GetRangeValues(expectedAddres)) | |
| // .Return(new object[] { 1, new ExcelCell(null, "SUM(1,2)", 0, 1) }); | |
| // var parser = new FormulaParser(provider); | |
| // var result = parser.Parse(string.Format("sum({0})", expectedAddres)); | |
| // Assert.AreEqual(4d, result); | |
| //} | |
| //[TestMethod, ExpectedException(typeof(CircularReferenceException))] | |
| //public void ShouldHandleCircularReference2() | |
| //{ | |
| // var expectedAddres = "A1:A2"; | |
| // var provider = MockRepository.GenerateStub<ExcelDataProvider>(); | |
| // provider | |
| // .Stub(x => x.GetRangeValues(expectedAddres)) | |
| // .Return(new ExcelCell[] { CreateItem(1, 0), new ExcelCell(null, "SUM(A1:A2)",0, 1) }); | |
| // var parser = new FormulaParser(provider); | |
| // var result = parser.Parse(string.Format("sum({0})", expectedAddres)); | |
| //} | |
| } | |
| } |