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)); }
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)); }