public void Should_handle_special_characters_correctly()
        {
            var analysis = new Analysis
            {
                metadata = new Analysis.Metadata
                {
                    tags = new Analysis.Metadata.Tags
                    {
                        artist = new [] { "  p!nk/ke$ha  " },
                        album  = new [] { "Iron&Wine>cheese\\   ham~eggs" },
                        title  = new [] { "fight-for(your)[right]to.progr@m!" }
                    }
                }
            };
            var actual   = new MetadataAnalysis(analysis).Aggregate();
            var expected = new List <string> {
                "pink", "kesha", "iron", "wine", "cheese",
                "ham", "eggs", "fight", "for", "your", "right", "to", "program"
            };

            foreach (var word in actual)
            {
                Console.WriteLine(word);
                Assert.That(expected.Contains(word), "Actual contained the unexpected word: " + word);
            }
            Assert.That(actual.Count, Is.EqualTo(expected.Count));
        }
Ejemplo n.º 2
0
        public Color From(Analysis analysis)
        {
            var metadataAnalysis = new MetadataAnalysis(analysis);

            _weightedColours.AddList(metadataAnalysis.GetColours(), MetadataWeighting);

            var audioAnalysis = new AudioAnalysis(analysis);

            _weightedColours.AddList(audioAnalysis.GetPredominantColours(), AudioWeighting);

            var aggregatedColour = ColorHandling.Aggregate(_weightedColours);

            return(ColorHandling.ExaggerateColour(1, aggregatedColour));
        }