public void CircularDependencyWithMultiplePropertiesTest() { var config = new CsvHelper.Configuration.Configuration(); var map = config.AutoMap <A>(); Assert.AreEqual(1, map.MemberMaps.Count); Assert.AreEqual(3, map.ReferenceMaps.Count); }
public void CircularDependencyTest() { var config = new CsvHelper.Configuration.Configuration(); var map = config.AutoMap <ACircular>(); Assert.IsNotNull(map); Assert.AreEqual(1, map.MemberMaps.Count); Assert.AreEqual(1, map.ReferenceMaps.Count); Assert.AreEqual(1, map.ReferenceMaps[0].Data.Mapping.MemberMaps.Count); Assert.AreEqual(0, map.ReferenceMaps[0].Data.Mapping.ReferenceMaps.Count); }
public static void GenerateComic(DateTime currentDate) { var csv = new CsvReader(new StreamReader(dataFilePath)); var config = new CsvHelper.Configuration.Configuration(); config.AutoMap <CrimeRecord>(); var records = csv.GetRecords <CrimeRecord>().Where(r => r.OccFrom.Month == currentDate.Month && r.OccFrom.Day == currentDate.Day).ToArray(); var allowedKeywords = File.ReadAllText("comic/keywords.txt"); //must be present var keywords = records.Select(s => s.KeyWord).Where(s => allowedKeywords.Contains(s)).Distinct().ToArray(); var selectedKeyword = keywords[rnd.Next(0, keywords.Count() - 1)]; var splitChars = new[] { ';', '/' }; var tokens = selectedKeyword.Split(splitChars, StringSplitOptions.RemoveEmptyEntries); selectedKeyword = tokens[0]; print($"Theme:{selectedKeyword}"); var crimes = records.Where(r => r.KeyWord.Contains(selectedKeyword)).ToArray(); print($"related crimes:{crimes.Length}"); var crime = crimes[rnd.Next(0, crimes.Length - 1)]; foreach (var kv in scenes) { AddScene(kv, crime); } ComicGen gen = new ComicGen(); if (!Directory.Exists("result")) { Directory.CreateDirectory("result"); } WriteComic(gen.Generate("", messages), $"result/comic_{currentDate.Ticks}.png"); }
public void SelfCircularDependencyTest() { var config = new CsvHelper.Configuration.Configuration(); var map = config.AutoMap <SelfCircularA>(); }