public IActionResult Post(int idAlbum, [FromBody] Models.Request.MusicaDto musicaRequest) { if (albumRepository.Obter(idAlbum) == null) { return(NotFound()); } var musica = MapearDtoParaDominio(musicaRequest); var mensagens = musicaService.Validar(musica); if (mensagens.Count > 0) { return(BadRequest(mensagens)); } musicaRepository.SalvarMusica(idAlbum, musica); return(CreatedAtRoute("GetMusica", new { idAlbum = idAlbum, id = musica.Id }, musica)); }
public void EmCasoDeMaisDeUmErroTodosDevemSerRetornados() { var albumService = new MusicaService(); var erros = albumService.Validar(new Musica(null, 0)); CollectionAssert.AreEqual(new List <string> { "É necessário informar o nome da música", "É necessário informar a duração da música" }, erros); }
public void DeveRetornarErroSeUmaDuracaoNaoForInformada() { var albumService = new MusicaService(); var erros = albumService.Validar(new Musica("Musica 1", 0)); CollectionAssert.AreEqual(new List <string> { "É necessário informar a duração da música" }, erros); }
public void DeveRetornarErroSeUmNomeNaoForInformado() { var albumService = new MusicaService(); var erros = albumService.Validar(new Musica(null, 200)); CollectionAssert.AreEqual(new List <string> { "É necessário informar o nome da música" }, erros); }
public IActionResult Post(int idAlbum, [FromBody] Models.Request.MusicaDto musicaRequest) { var album = albumRepository.Obter(idAlbum); if (album == null) { return(NotFound()); } var musica = new Musica(musicaRequest.Nome, musicaRequest.Duracao, album); var mensagens = musicaService.Validar(musica); if (mensagens.Count > 0) { return(BadRequest(mensagens)); } var musicaCadastrada = musicaRepository.SalvarMusica(idAlbum, musica); contexto.SaveChanges(); return(CreatedAtRoute("GetMusica", new { id = musicaCadastrada.IdMusica }, musicaCadastrada)); }