public void Music_Update_InvalidMusicName_ThrowsElementUpdateException() { MusicRepository repository = new MusicRepository(_context, _mapper); Music music = repository.GetAll().First(); Music secondMusic = repository.GetAll().Last(); music.Name = secondMusic.Name; music.Artist = secondMusic.Artist; music.Genre = secondMusic.Genre; Assert.Throws <ElementUpdateException <Music> >(() => repository.Update(music)); }
public void Store(string originalFileName, string guid) { string mediaServerUrlBase = ConfigurationManager.AppSettings["MediaServerSaveBaseUrl"]; string fullName = Path.Combine(mediaServerUrlBase, guid); using (SmartPlayerEntities context = new SmartPlayerEntities()) { MusicRepository repo = new MusicRepository(context); var allSongs = repo.GetAll() .Select(x => new AnalyzableSong { Id = x.Id, PhysicalFileName = x.Guid }) .ToList(); allSongs.ForEach(x => x.PhysicalFileName = Path.Combine(mediaServerUrlBase, x.PhysicalFileName)); List <double> correlationCoefficients = Analyzer.GetCorreleationCoefficientsFor(fullName, allSongs); Song song = new Song() { Name = originalFileName, Guid = guid }; for (int i = 0; i < correlationCoefficients.Count; i++) { song.CorrelationsAsPrimary.Add(new SongSongCorrelation { SecondarySongId = allSongs[i].Id, CorrelationScore = correlationCoefficients[i] }); } repo.Create(song); } }
public void Music_Update_WithoutGenre_ThrowsElementUpdateException() { MusicRepository repository = new MusicRepository(_context, _mapper); Music music = repository.GetAll().First(); music.Genre = null; Assert.Throws <ElementUpdateException <Music> >(() => repository.Update(music)); }
public void Music_Insert_DuplicateMusic_ThrowsElementInsertException() { MusicRepository repository = new MusicRepository(_context, _mapper); Music baseMusic = repository.GetAll().First(); Music music = new Music { Name = baseMusic.Name, Artist = baseMusic.Artist, Genre = baseMusic.Genre }; Assert.Throws <ElementInsertException <Music> >(() => repository.Insert(music)); }
public void Music_Insert_WithoutGenre_ThrowsElementInsertException() { MusicRepository repository = new MusicRepository(_context, _mapper); Music baseMusic = repository.GetAll().First(); Music music = new Music { Name = "SomeName", Artist = baseMusic.Artist }; Assert.Throws <ElementInsertException <Music> >(() => repository.Insert(music)); }
public void Music_Update_InvalidMusicId_ThrowsElementUpdateException() { MusicRepository repository = new MusicRepository(_context, _mapper); string name = "name"; Music baseMusic = repository.GetAll().First(); Music music = new Music { ID = -1, Name = name, Artist = baseMusic.Artist, Genre = baseMusic.Genre }; Assert.Throws <ElementUpdateException <Music> >(() => repository.Update(music)); }
public void Music_Update_ValidMusic_ValidatesItsUpdate() { MusicRepository repository = new MusicRepository(_context, _mapper); string name = "newName"; Music music = repository.GetAll().First(); music.Name = name; Assert.DoesNotThrow(() => repository.Update(music)); Assert.AreEqual(music, repository.GetByName(name)); }
public void Music_Insert_ValidMusic_ValidatesItsInsertion() { MusicRepository repository = new MusicRepository(_context, _mapper); string name = "test"; Music baseMusic = repository.GetAll().First(); Music music = new Music { Name = name, Artist = baseMusic.Artist, Genre = baseMusic.Genre }; Assert.DoesNotThrow(() => repository.Insert(music)); Assert.AreEqual(music, repository.GetByName(name)); }
public List <SongDto> GetAllSongs() { using (SmartPlayerEntities context = new SmartPlayerEntities()) { MusicRepository repo = new MusicRepository(context); var allSongs = repo.GetAll() .Select(x => new SongDto { Id = x.Id, SongName = x.Name }) .ToList(); return(allSongs); } }
public List<SongDto> GetAllSongs() { using(SmartPlayerEntities context = new SmartPlayerEntities()) { MusicRepository repo = new MusicRepository(context); var allSongs = repo.GetAll() .Select(x => new SongDto { Id = x.Id, SongName = x.Name }) .ToList(); return allSongs; } }
/// <summary> /// Removes the Album request. /// </summary> /// <param name="requestId">The request identifier.</param> /// <returns></returns> public async Task <RequestEngineResult> RemoveAlbumRequest(int requestId) { var request = await MusicRepository.GetAll().FirstOrDefaultAsync(x => x.Id == requestId); var result = await CheckCanManageRequest(request); if (result.IsError) { return(result); } await MusicRepository.Delete(request); return(new RequestEngineResult { Result = true, }); }
public async Task <bool> UserHasRequest(string userId) { return(await MusicRepository.GetAll().AnyAsync(x => x.RequestedUserId == userId)); }
/// <summary> /// Removes the Album request. /// </summary> /// <param name="requestId">The request identifier.</param> /// <returns></returns> public async Task RemoveAlbumRequest(int requestId) { var request = await MusicRepository.GetAll().FirstOrDefaultAsync(x => x.Id == requestId); await MusicRepository.Delete(request); }
public void Store(string originalFileName, string guid) { string mediaServerUrlBase = ConfigurationManager.AppSettings["MediaServerSaveBaseUrl"]; string fullName = Path.Combine(mediaServerUrlBase, guid); using(SmartPlayerEntities context = new SmartPlayerEntities()) { MusicRepository repo = new MusicRepository(context); var allSongs = repo.GetAll() .Select(x => new AnalyzableSong { Id = x.Id, PhysicalFileName = x.Guid }) .ToList(); allSongs.ForEach(x => x.PhysicalFileName = Path.Combine(mediaServerUrlBase, x.PhysicalFileName)); List<double> correlationCoefficients = Analyzer.GetCorreleationCoefficientsFor(fullName, allSongs); Song song = new Song() { Name = originalFileName, Guid = guid }; for(int i = 0; i < correlationCoefficients.Count; i++) { song.CorrelationsAsPrimary.Add(new SongSongCorrelation { SecondarySongId = allSongs[i].Id, CorrelationScore = correlationCoefficients[i] }); } repo.Create(song); } }
public ActionResult <List <Music> > GetMusic() { return(_musicRepository.GetAll()); }
public void Music_GetAll_ReturnsMusicCollection() { MusicRepository repository = new MusicRepository(_context, _mapper); Assert.IsNotEmpty(repository.GetAll()); }