public AsyncFileParserTests() { _fileRetriever = _fixture.Freeze <IFileRetriever>(); _csvParser = _fixture.Freeze <ICsvRowParser>(); _sut = _fixture.Create <AsyncFileParser>(); }
public async Task WHEN_data_file_exists_THEN_it_is_read_and_parsed_by_some_CsvRowParser() { var testdataRealFilename = $"{Environment.CurrentDirectory}\\testdata-deleteme-{Guid.NewGuid()}.csv"; var theFileContents = GetSomeFileContents(); File.WriteAllText(testdataRealFilename, theFileContents); try { var csvRowParser = _fixture.Freeze <ICsvRowParser>(); var SUT = new AsyncFileParser(csvRowParser, new FileRetriever()); await SUT.ParseFiles(Environment.CurrentDirectory); theFileContents.Split(Environment.NewLine) .Select(r => csvRowParser.Received(1).ParseRow(r)).ToArray(); } finally { File.Delete(testdataRealFilename); } }