public async Task GetPricesFromExampleCsv() { //given some example data var example1 = @"identifier,desc,unit,costAUD 586e0bd4-a84c-4c39-a696-1fafdf85e5bb,Suspended Slab Formwork per m2,m2,23.59"; byte[] byteArray = Encoding.UTF8.GetBytes(example1); var stringReader = new MemoryStream(byteArray); var reader = new HumpriesCsvReader(); var itemProvider = new HumpriesSupplyPriceItemProvider(reader); //when the data is processed var priceListing = await itemProvider.GetItemsFromFile(stringReader); priceListing.Should().ContainSingle(); var priceItem = priceListing.First(); priceItem.Id.Should().Be("586e0bd4-a84c-4c39-a696-1fafdf85e5bb"); priceItem.Price.Should().Be(23.59m); }
public async Task ReadExample() { //given some example data var example1 = @"identifier,desc,unit,costAUD 586e0bd4-a84c-4c39-a696-1fafdf85e5bb,Suspended Slab Formwork per m2,m2,23.59"; byte[] byteArray = Encoding.UTF8.GetBytes(example1); var stringReader = new MemoryStream(byteArray); var reader = new HumpriesCsvReader(); //when the data is processed var csvItemEnumerable = reader.ReadFileStream(stringReader); var csvItems = await csvItemEnumerable.ToListAsync(); csvItems.Should().ContainSingle(); //then values match input var onlyItem = csvItems[0]; onlyItem.Identifier.Should().Be("586e0bd4-a84c-4c39-a696-1fafdf85e5bb"); onlyItem.CostAUD.Should().Be(23.59m); onlyItem.Unit.Should().Be("m2"); }