public void SourceReader_WillIgnoreNegativeNumbers() { /* * * A B C D * 1 Henrik Alice Simpson * 2 222222 100 50 * 3 333333 0 100 200 * 4 444444 150 -10 300 * */ var parameters = new InputParameters(); parameters.ElementIdSpan = "A2A4"; parameters.BuyersSpan = "B1D1"; // Reusing columns to simplify test parameters.BrickLinkDescriptionSpan = "A2A4"; parameters.BrickLinkIdSpan = "A2A4"; parameters.BrickLinkColorSpan = "A2A4"; parameters.TlgColorSpan = "A2A4"; var sheet = new Mock <IXLWorksheet>(); ExcelMocker.AddMockRange(sheet, "A2A4"); ExcelMocker.AddMockRange(sheet, "B1D1"); ExcelMocker.CreateMockCell("Henrik", 1, 2, sheet); ExcelMocker.CreateMockCell("Alice", 1, 3, sheet); ExcelMocker.CreateMockCell("Simpson", 1, 4, sheet); ExcelMocker.CreateMockCell("222222", 2, 1, sheet); ExcelMocker.CreateMockCell("333333", 3, 1, sheet); ExcelMocker.CreateMockCell("444444", 4, 1, sheet); ExcelMocker.CreateMockCell("100", 2, 2, sheet); ExcelMocker.CreateMockCell("0", 3, 2, sheet); ExcelMocker.CreateMockCell("150", 4, 2, sheet); ExcelMocker.CreateMockCell("50", 2, 3, sheet); ExcelMocker.CreateMockCell("100", 3, 3, sheet); ExcelMocker.CreateMockCell("-10", 4, 3, sheet); ExcelMocker.CreateMockCell("", 2, 4, sheet); ExcelMocker.CreateMockCell("200", 3, 4, sheet); ExcelMocker.CreateMockCell("300", 4, 4, sheet); var reader = new SourceReader(sheet.Object, parameters); var result = reader.GetReservations(); Assert.That(result.Count, Is.EqualTo(6)); Assert.True(result.Any(x => x.Element.ElementID == "222222" && x.Buyer.Name == "Henrik" && x.Amount == 100)); Assert.True(result.Any(x => x.Element.ElementID == "444444" && x.Buyer.Name == "Henrik" && x.Amount == 150)); Assert.True(result.Any(x => x.Element.ElementID == "222222" && x.Buyer.Name == "Alice" && x.Amount == 50)); Assert.True(result.Any(x => x.Element.ElementID == "333333" && x.Buyer.Name == "Alice" && x.Amount == 100)); Assert.True(result.Any(x => x.Element.ElementID == "333333" && x.Buyer.Name == "Simpson" && x.Amount == 200)); Assert.True(result.Any(x => x.Element.ElementID == "444444" && x.Buyer.Name == "Simpson" && x.Amount == 300)); }