Ejemplo n.º 1
0
        public void CrearCancion_SinNombre_Falla()
        {
            var entrada = new EditarCancionEntrada
            {
                Nombre = "",
            };

            var salida = _gestorDominio.EditarCancion(entrada);

            Assert.IsTrue(salida == SalidaBase.Resultados.Fallo);
            Assert.AreEqual(Cadenas.cancion_falta_nombre, salida.Mensaje);
        }
Ejemplo n.º 2
0
        public void EditarCancion_SiNoExiste_Falla()
        {
            var entrada = new EditarCancionEntrada
            {
                CancionId = 10000000,
                Nombre    = "Interprete de pruebas",
            };

            var salida = _gestorDominio.EditarCancion(entrada);

            Assert.IsTrue(salida == SalidaBase.Resultados.Fallo);
            Assert.AreEqual(string.Format(Cadenas.cancion_id_no_encontrado, 10000000), salida.Mensaje);
        }
Ejemplo n.º 3
0
        public void CrearCancion_AlbumNoExiste_Falla()
        {
            var entrada = new EditarCancionEntrada
            {
                Nombre  = "Cancion de pruebas",
                AlbumId = 10000000
            };

            var salida = _gestorDominio.EditarCancion(entrada);

            Assert.IsTrue(salida == SalidaBase.Resultados.Fallo);
            Assert.AreEqual(string.Format(Cadenas.album_id_no_encontrado, entrada.AlbumId), salida.Mensaje);
        }
Ejemplo n.º 4
0
        public ActionResult Editar(Cancion cancion)
        {
            if (ModelState.IsValid)
            {
                var entrada = new EditarCancionEntrada {
                    CancionId = cancion.Id, Nombre = cancion.Nombre
                };
                var salida = _gestorDominio.EditarCancion(entrada);
                if (salida != SalidaBase.Resultados.Exito)
                {
                    PasarMensaje(salida.Mensaje, "msj-error");
                }
                return(RedirectToAction("Index"));
            }

            return(RedirectToAction("Index"));
        }
Ejemplo n.º 5
0
        public EditarCancionSalida EditarCancion(EditarCancionEntrada entrada)
        {
            var salida = new EditarCancionSalida();

            if (string.IsNullOrEmpty(entrada.Nombre))
            {
                return(SalidaBase.Fallo(salida, Cadenas.cancion_falta_nombre));
            }
            if (entrada.AlbumId != null)
            {
                Album album = _gestorPersistencia.TraerAlbum(entrada.AlbumId.Value);
                if (album == null)
                {
                    return(SalidaBase.Fallo(salida, string.Format(Cadenas.album_id_no_encontrado, entrada.AlbumId)));
                }
            }

            Cancion cancion;

            if (entrada.CancionId > 0)
            {
                cancion = _gestorPersistencia.TraerCancion(entrada.CancionId);
                if (cancion == null)
                {
                    return(SalidaBase.Fallo(salida, string.Format(Cadenas.cancion_id_no_encontrado, entrada.CancionId)));
                }
                cancion.AlbumId = entrada.AlbumId;
                cancion.Nombre  = entrada.Nombre;
            }
            else
            {
                cancion = new Cancion
                {
                    Id          = entrada.CancionId,
                    FchCreacion = DateTime.Now,
                    Nombre      = entrada.Nombre,
                    AlbumId     = entrada.AlbumId
                };
            }
            CrearVotable(cancion);
            _gestorPersistencia.Guardar(cancion);

            return(SalidaBase.Exito(salida));
        }