public void InstantiateCorrectly() { MediaFile mediaFile = Create.MediaFile(); const string title = "title"; const string album = "album"; const string artist = "artist"; Song song = new Song {Title = title, Album = album, Artist = artist, MediaFileId = mediaFile.Id}; Assert.AreEqual(mediaFile.Id, song.MediaFileId); Assert.AreEqual(title, song.Title); Assert.AreEqual(album, song.Album); Assert.AreEqual(artist, song.Artist); }
public void GetMusicByAlbum() { Song expectedMusic1 = new Song { Album = "album1", Artist = "fail1", MediaFileId = new Guid(), Title = "fail1" }; Song expectedMusic2 = new Song { Album = "album1", Artist = "fail2", MediaFileId = new Guid(), Title = "fIlTer" }; Song expectedMusic3 = new Song { Album = "album2", Artist = "fIlTer", MediaFileId = new Guid(), Title = "fail3" }; Song expectedMusic4 = new Song { Album = "album1", Artist = "fail4", MediaFileId = new Guid(), Title = "fail4" }; Repository.Add(expectedMusic1); Repository.Add(expectedMusic2); Repository.Add(expectedMusic3); Repository.Add(expectedMusic4); IList<Song> gettedMusics = Repository.GetByAlbum("album1"); Assert.AreEqual(3, gettedMusics.Count); CollectionAssert.Contains(gettedMusics.Select(g => g.Title).ToList(), expectedMusic1.Title); CollectionAssert.Contains(gettedMusics.Select(g => g.Title).ToList(), expectedMusic2.Title); CollectionAssert.Contains(gettedMusics.Select(g => g.Title).ToList(), expectedMusic4.Title); }
public void GetAlbumByArtist() { const string artist = "artist1"; Song expectedMusic1 = new Song { Artist = artist, Album = "album1", MediaFileId = new Guid(), Title = "fail1" }; Song expectedMusic2 = new Song { Artist = artist, Album = "album1", MediaFileId = new Guid(), Title = "fIlTer" }; Song expectedMusic3 = new Song { Artist = "artist2", Album = "fIlTer", MediaFileId = new Guid(), Title = "fail3" }; Song expectedMusic4 = new Song { Artist = artist, Album = "album2", MediaFileId = new Guid(), Title = "fail4" }; Repository.Add(expectedMusic1); Repository.Add(expectedMusic2); Repository.Add(expectedMusic3); Repository.Add(expectedMusic4); IList<string> gettedAlbums = Repository.GetAlbumsByArtist(artist); Assert.AreEqual(2, gettedAlbums.Count); CollectionAssert.Contains(gettedAlbums.ToList(), expectedMusic1.Album); CollectionAssert.Contains(gettedAlbums.ToList(), expectedMusic4.Album); }
public DownloadTask(Song song) { Song = song; }
public SongToPlay(Song song, bool isPlaying = false, bool isPlayed = false) { Song = song; IsPlaying = isPlaying; Played = isPlayed; }
private void DownloadOneSongExecute(Song song) { TaskObserver.NotifyAddTask(new DownloadTask(song)); }
private void AddOneSongToPlayListExecute(Song song) { PlayerObserver.NotifyAddToPlayList(new ObservableCollection<Song> {song}); }
public void AddASong(Song song, MediaFile mediaFile) { song.MediaFileId = MediaFileRepository.Add(mediaFile).Id; SongRepository.Add(song); }
public static void NotifyPlayNewSong(Song song) { PlaySongHandler handler = PlaySong; if (handler != null) handler(song); }
private ObservableCollection<SongToAdd> GetAllSongsFromARootPath(string root) { IList<SongToAdd> songs = new List<SongToAdd>(); if (Directory.Exists(root)) { foreach (string path in Directory.GetFiles(root)) { try { if (path.EndsWith(".mp3")) { File mp3 = File.Create(path); MediaFile mediaFile = new MediaFile {Content = StreamHelper.ReadToEnd(path)}; Song song = new Song { Album = mp3.Tag.Album, Title = mp3.Tag.Title, Artist = mp3.Tag.FirstAlbumArtist }; songs.Add(new SongToAdd {IsSelected = true, Song = song, Path = path, MediaFile = mediaFile}); } } //TODO Logger le message catch (Exception) { continue; } } foreach (string directory in Directory.GetDirectories(root)) { foreach (SongToAdd song in GetAllSongsFromARootPath(directory)) { songs.Add(song); } } } return new ObservableCollection<SongToAdd>(songs); }
public UploadTask(Song song, MediaFile mediaFile) { Song = song; MediaFile = mediaFile; }
private void PlayNewSong(Song song) { MusicPlayer.Stop(); CurrentSong = song; MediaFile fileToPlay = Service.GetMediaFileById(song.MediaFileId); try { MusicPlayer.Play(fileToPlay.Id, fileToPlay.Content); } catch (Exception e) { new PlayException(); } }