public void RowShouldReturnRowNumber() { _excelDataProvider.Stub(x => x.GetRangeFormula("", 4, 1)).Return("Row()"); var result = _parser.ParseAt("A4"); Assert.AreEqual(4, result); }
public void ShouldUseFirstWorksheetNameWhenBuildIsCalledWithoutParams() { _excelDataProvider.Stub(x => x.GetWorksheetNames()).Return(new List <string> { "a", "b" }); _excelDataProvider.Stub(x => x.GetWorksheetFormulas("a")).Return(new Dictionary <string, string>()); var chain = _builder.Build(); _excelDataProvider.AssertWasCalled(x => x.GetWorksheetFormulas("a")); }
public void IsNamedValueShouldReturnTrueIfKeyIsANamedValue() { var dict = new Dictionary <string, object>(); dict.Add("A", "B"); _excelDataProvider.Stub(x => x.GetWorkbookNameValues()) .Return(dict); var nameValueProvider = new NameValueProvider(_excelDataProvider); var result = nameValueProvider.IsNamedValue("A"); Assert.IsTrue(result); }
public void ShouldTranslateToEntireColumnWhenRowIsEqualToMaxRows() { _excelDataProvider.Stub(x => x.ExcelMaxRows).Return(123456); var result = _indexToAddressTranslator.ToAddress(0, 123456); Assert.AreEqual("A", result); }
public void TextShouldConcatenateWithNextExpression() { _provider.Stub(x => x.GetFormat(23.5, "$0.00")).Return("$23.50"); var result = _parser.Parse("TEXT(23.5,\"$0.00\") & \" per hour\""); Assert.AreEqual("$23.50 per hour", result); }
public void Initialize() { _excelDataProvider = MockRepository.GenerateStub <ExcelDataProvider>(); _excelDataProvider.Stub(x => x.GetDimensionEnd(Arg <string> .Is.Anything)).Return(new ExcelCellAddress(10, 1)); _parser = new FormulaParser(_excelDataProvider); _package = new ExcelPackage(); _worksheet = _package.Workbook.Worksheets.Add("Test"); }
public void Initialize() { _excelDataProvider = MockRepository.GenerateStub<ExcelDataProvider>(); _excelDataProvider.Stub(x => x.GetDimensionEnd(Arg<string>.Is.Anything)).Return(new ExcelCellAddress(10, 1)); _parser = new FormulaParser(_excelDataProvider); _package = new ExcelPackage(); _worksheet = _package.Workbook.Worksheets.Add("Test"); }
public void IsTextShouldReturnTrueWhenReferencedCellContainsText() { _excelDataProvider.Stub(x => x.GetRangeValues("A1")).Return(new List <ExcelCell> { new ExcelCell("abc", string.Empty, 0, 0) }); var result = _parser.Parse("ISTEXT(A1)"); Assert.IsTrue((bool)result); }
public void SubtotalShouldNotIncludeSubtotalChildren() { _excelDataProvider .Stub(x => x.GetRangeValues("A1")) .Return(new List <ExcelCell> { new ExcelCell(null, "SUBTOTAL(9, A2:A3)", 0, 0) }); _excelDataProvider .Stub(x => x.GetRangeValues("A2:A3")) .Return(new List <ExcelCell> { new ExcelCell(null, "SUBTOTAL(9, A5:A6)", 0, 1), new ExcelCell(2d, null, 0, 2) }); _excelDataProvider .Stub(x => x.GetRangeValues("A5:A6")) .Return(new List <ExcelCell> { new ExcelCell(2d, null, 0, 4), new ExcelCell(2d, null, 0, 5) }); var result = _parser.ParseAt("A1"); Assert.AreEqual(2d, result); }
private void SetupExcelProvider() { _provider.Stub(x => x.GetCellValue("A1")).Return(CreateFormulaCell("SUM(B1:B2) + A2")); _provider.Stub(x => x.GetCellValue("A2")).Return(CreateFormulaCell("SUM(C2:C3) + B2")); _provider.Stub(x => x.GetCellValue("B1")).Return(CreateFormulaCell("SUM(C1:C2)")); _provider.Stub(x => x.GetCellValue("B2")).Return(CreateFormulaCell("C4")); _provider.Stub(x => x.GetCellValue("C1")).Return(CreateValueCell(3)); _provider.Stub(x => x.GetCellValue("C2")).Return(CreateValueCell(4)); _provider.Stub(x => x.GetCellValue("C3")).Return(CreateValueCell(5)); _provider.Stub(x => x.GetCellValue("C4")).Return(CreateFormulaCell("D1")); _provider.Stub(x => x.GetCellValue("D1")).Return(CreateValueCell(4)); _provider.Stub(x => x.GetWorksheetFormulas("ws1")).Return( new Dictionary <string, string> { { "A1", "SUM(B1:B2) + A2" }, { "A2", "SUM(C2:C3) + B2" }, { "B1", "SUM(C1:C2)" }, { "B2", "C4" }, { "C4", "D1" } } ); }
public void Setup() { _excelDataProvider = MockRepository.GenerateStub <ExcelDataProvider>(); _excelDataProvider.Stub(x => x.ExcelMaxRows).Return(ExcelMaxRows); _addressTranslator = new AddressTranslator(_excelDataProvider); }
public void Setup() { _excelDataProvider = MockRepository.GenerateStub<ExcelDataProvider>(); _excelDataProvider.Stub(x => x.ExcelMaxRows).Return(ExcelMaxRows); _addressTranslator = new AddressTranslator(_excelDataProvider); }
public void VLookupShouldReturnCorrespondingValue() { var lookupAddress = "A1:B2"; _excelDataProvider.Stub(x => x.GetCellValue(0, 0)).Return(new ExcelCell(3, null, 0, 0)); _excelDataProvider.Stub(x => x.GetCellValue(0, 1)).Return(new ExcelCell(1, null, 0, 0)); _excelDataProvider.Stub(x => x.GetCellValue(1, 0)).Return(new ExcelCell(2, null, 0, 0)); _excelDataProvider.Stub(x => x.GetCellValue(1, 1)).Return(new ExcelCell(5, null, 0, 0)); var result = _parser.Parse("VLOOKUP(2, " + lookupAddress + ", 2)"); Assert.AreEqual(5, result); }
public void Setup() { _provider = MockRepository.GenerateStub<ExcelDataProvider>(); _provider.Stub(x => x.ExcelMaxRows).Return(5000); }
private void SetupTranslator(int maxRows, ExcelReferenceType refType) { _excelDataProvider = MockRepository.GenerateStub<ExcelDataProvider>(); _excelDataProvider.Stub(x => x.ExcelMaxRows).Return(maxRows); _indexToAddressTranslator = new IndexToAddressTranslator(_excelDataProvider, refType); }
public void HLookupShouldReturnClosestValueBelowIfLastArgIsTrue() { var lookupAddress = "A1:B2"; _excelDataProvider.Stub(x => x.GetCellValue(WorksheetName, 1, 1)).Return(3); _excelDataProvider.Stub(x => x.GetCellValue(WorksheetName, 1, 2)).Return(5); _excelDataProvider.Stub(x => x.GetCellValue(WorksheetName, 2, 1)).Return(1); _excelDataProvider.Stub(x => x.GetCellValue(WorksheetName, 2, 2)).Return(2); var result = _parser.Parse("HLOOKUP(4, " + lookupAddress + ", 2, true)"); Assert.AreEqual(1, result); }
public void Setup() { _provider = MockRepository.GenerateStub <ExcelDataProvider>(); _provider.Stub(x => x.ExcelMaxRows).Return(5000); }
private void SetupTranslator(int maxRows, ExcelReferenceType refType) { _excelDataProvider = MockRepository.GenerateStub <ExcelDataProvider>(); _excelDataProvider.Stub(x => x.ExcelMaxRows).Return(maxRows); _indexToAddressTranslator = new IndexToAddressTranslator(_excelDataProvider, refType); }