public void TestParsingAllFilesTogether()
        {
            var trackerFiles = Directory.GetFiles(@"TestData").ToList();

            var virusTrackerItems = new List <VirusTrackerItem>();

            var csvHeaderMappings = GetCsvHeaderMappings();

            trackerFiles.ForEach(trackerFile => {
                var parser = new VirusTrackerDataParser(trackerFile, csvHeaderMappings);

                virusTrackerItems.AddRange(parser.GetVirusTrackerItems());
            });

            using (var writer = new StreamWriter("ConsolidatedReport.csv"))
            {
                using (var csv = new CsvHelper.CsvWriter(writer, CultureInfo.InvariantCulture))
                {
                    csv.WriteRecords(virusTrackerItems);
                }
            }
        }
        public void TestVirusTrackerDataParsingOfAlternateFormat()
        {
            var virusTrackerDataFile = @"TestData\03-29-2020-Format2.csv";

            var csvHeaderMappings = GetCsvHeaderMappings();

            var parser = new VirusTrackerDataParser(virusTrackerDataFile, csvHeaderMappings);

            var virusTrackerItems = parser.GetVirusTrackerItems();

            var numRecords = virusTrackerItems.Count;

            var numInfectionsUS = virusTrackerItems.Where(item => item.Country == "US").Sum(item => item.Infections);

            var numDeathsUS = virusTrackerItems.Where(item => item.Country == "US").Sum(item => item.Deaths);

            var numRecoveryUS = virusTrackerItems.Where(item => item.Country == "US").Sum(item => item.Recovery);

            Assert.True(numRecords > 0);
            Assert.True(numInfectionsUS == 140909);
            Assert.True(numDeathsUS == 2467);
            Assert.True(numRecoveryUS == 2665);
        }