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);
        }
Ejemplo n.º 3
0
        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>();
 }