public void CrearAlbum_SinNombre_Falla() { var entrada = new EditarAlbumEntrada { Nombre = "", }; var salida = _gestorDominio.EditarAlbum(entrada); Assert.IsTrue(salida == SalidaBase.Resultados.Fallo); Assert.AreEqual(Cadenas.album_falta_nombre, salida.Mensaje); }
public void EditarAlbum_SiNoExiste_Falla() { var entrada = new EditarAlbumEntrada { AlbumId = 10000000, Nombre = "Interprete de pruebas", }; var salida = _gestorDominio.EditarAlbum(entrada); Assert.IsTrue(salida == SalidaBase.Resultados.Fallo); Assert.AreEqual(string.Format(Cadenas.album_id_no_encontrado, 10000000), salida.Mensaje); }
public ActionResult Editar(FormCollection form) { var editarAlbumEntrada = new EditarAlbumEntrada { AlbumId = Convert.ToInt32(form["Id"]), Nombre = form["Nombre"], AñoLanzamiento = Convert.ToInt32(form["AñoLanzamiento"]), }; EditarAlbumSalida editarAlbumSalida = _gestorDominio.EditarAlbum(editarAlbumEntrada); if (editarAlbumSalida != SalidaBase.Resultados.Exito) { PasarMensaje(editarAlbumSalida.Mensaje, "msj-error"); return(RedirectToAction("Index")); } var interpretes = JsonConvert.DeserializeObject <List <MVInterprete> >(form["hidInterpretes"]); if (!RelacionarInterpretesAAlbum(editarAlbumSalida.Album.Id, interpretes, false)) { return(RedirectToAction("Index")); } var canciones = JsonConvert.DeserializeObject <List <MVCancion> >(form["hidCanciones"]); if (!CrearCancionesNuevas(editarAlbumSalida.Album.Id, canciones, false)) { return(RedirectToAction("Index")); } if (!AsociarCancionesExistentes(editarAlbumSalida.Album.Id, canciones)) { return(RedirectToAction("Index")); } return(RedirectToAction("Index")); }
public EditarAlbumSalida EditarAlbum(EditarAlbumEntrada entrada) { var salida = new EditarAlbumSalida(); if (string.IsNullOrEmpty(entrada.Nombre)) { return(SalidaBase.Fallo(salida, Cadenas.album_falta_nombre)); } Album album; if (entrada.AlbumId > 0) { album = _gestorPersistencia.TraerAlbum(entrada.AlbumId); if (album == null) { return(SalidaBase.Fallo(salida, string.Format(Cadenas.album_id_no_encontrado, entrada.AlbumId))); } album.Nombre = entrada.Nombre; album.AñoLanzamiento = entrada.AñoLanzamiento; } else { album = new Album { Nombre = entrada.Nombre, FchCreacion = DateTime.Now, AñoLanzamiento = entrada.AñoLanzamiento, }; } salida.Album = album; CrearVotable(album); _gestorPersistencia.Guardar(album); return(SalidaBase.Exito(salida)); }