private static bool IsContained(MusicFile musicFile, string searchText) { return(MusicTitleHelper.GetTitleText(musicFile.FileName, musicFile.IsMetadataLoaded ? musicFile.Metadata.Artists : null, musicFile.IsMetadataLoaded ? musicFile.Metadata.Title : null) .IndexOf(searchText, StringComparison.CurrentCultureIgnoreCase) >= 0 || musicFile.IsMetadataLoaded && (musicFile.Metadata.Artists.Any(y => y.IndexOf(searchText, StringComparison.CurrentCultureIgnoreCase) >= 0))); }
private static int TitleColumnComparison(MusicFileDataModel x, MusicFileDataModel y) { var titleX = MusicTitleHelper.GetTitleText(x.MusicFile.FileName, x.MusicFile.IsMetadataLoaded ? x.MusicFile.Metadata.Artists : null, x.MusicFile.IsMetadataLoaded ? x.MusicFile.Metadata.Title : null); var titleY = MusicTitleHelper.GetTitleText(y.MusicFile.FileName, y.MusicFile.IsMetadataLoaded ? y.MusicFile.Metadata.Artists : null, y.MusicFile.IsMetadataLoaded ? y.MusicFile.Metadata.Title : null); return(string.Compare(titleX, titleY, StringComparison.CurrentCulture)); }
public void GetTitleTextTest() { var fileName = @"C:\Users\Public\Music\Dancefloor\Culture Beat - Serenity.mp3"; Assert.AreEqual("Culture Beat - Serenity", MusicTitleHelper.GetTitleText(fileName, new string[0], null)); Assert.AreEqual("Culture Beat - Serenity", MusicTitleHelper.GetTitleText(fileName, new string[0], "")); Assert.AreEqual("", MusicTitleHelper.GetTitleText(fileName, new[] { "Culture Beat" }, null)); Assert.AreEqual("", MusicTitleHelper.GetTitleText(fileName, new[] { "Culture Beat" }, "")); Assert.AreEqual("Serenity (Epilog)", MusicTitleHelper.GetTitleText(fileName, new[] { "Culture Beat" }, "Serenity (Epilog)")); }
public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture) { if (values.First() == DependencyProperty.UnsetValue) { return(DependencyProperty.UnsetValue); } var fileName = (string)values[0]; var artists = values[1] as IEnumerable <string>; var title = values[2] as string; return(MusicTitleHelper.GetTitleText(fileName, artists, title)); }