Beispiel #1
0
        public void PostUsuarioOk()
        {
            int intTest   = 0;
            var logicMock = new Mock <IUsuario>(MockBehavior.Strict);
            UsuariosController controller = new UsuariosController(logicMock.Object);

            DatosUsuario datos = new DatosUsuario()
            {
                Apellido = "Asd",
                Mail     = "[email protected]",
                Nombre   = "Juan",
            };
            UsuarioModel usuarioModel = new UsuarioModel()
            {
                IsAdmin     = false,
                Datos       = datos,
                Token       = "Recien Creado",
                Contrasenia = "Contraseña",
            };

            Usuario usuario    = TraductorUsuario.AEntidad(usuarioModel);
            Usuario usuarioRet = usuario;

            usuarioRet.Id = intTest;

            logicMock.Setup(x => x.CrearUsuario(intTest, It.IsAny <Usuario>())).Returns(It.IsAny <Usuario>());
            logicMock.Setup(x => x.AgregarUsuario(It.IsAny <Usuario>()));

            var result   = controller.Post(intTest, usuarioModel);
            var okResult = result as OkObjectResult;

            logicMock.VerifyAll();
        }
Beispiel #2
0
 public IActionResult Post(int id, [FromBody] UsuarioModel usuarioModel)
 {
     try
     {
         if (usuarioModel != null)
         {
             Usuario usuarioAAgregar = TraductorUsuario.AEntidad(usuarioModel);
             Usuario usuario         = logica.CrearUsuario(id, usuarioAAgregar);
             logica.AgregarUsuario(usuario);
             return(Ok(usuarioModel));
         }
         else
         {
             return(BadRequest("Usuario no puede ser null"));
         }
     }
     catch (StringVacioException)
     {
         return(BadRequest("Alguno de los datos son vacios o nulos. Solo los Admin pueden omitir el apellido"));
     }
     catch (FormatoInvalidoException)
     {
         return(BadRequest("Formato del email no valido. Debe ser _@_._"));
     }
     catch (MailNoUnicoException)
     {
         return(BadRequest("El email ya esta en uso"));
     }
     catch (UnsupportedContentTypeException)
     {
         return(BadRequest("El cuerpo debe estar en formato JSON"));
     }
 }
Beispiel #3
0
 public IActionResult GetPorNombre(string nombre)
 {
     try
     {
         UsuarioModel usuario = TraductorUsuario.AModelo(logica.ObtenerPorNombre(nombre));
         return(Ok(usuario));
     }
     catch (EntidadNoExisteExcepcion)
     {
         return(NotFound("No existe el usuario"));
     }
 }
Beispiel #4
0
        public IActionResult Get()
        {
            List <Usuario>      usuarios      = logica.ObtenerTodos();
            List <UsuarioModel> usuariosModel = new List <UsuarioModel>();

            foreach (Usuario usuario in usuarios)
            {
                usuariosModel.Add(TraductorUsuario.AModelo(usuario));
            }

            return(Ok(usuariosModel));
        }
Beispiel #5
0
        public void PostUsuarioDatosVacio()
        {
            var logicMock = new Mock <IUsuario>(MockBehavior.Strict);
            UsuariosController controller = new UsuariosController(logicMock.Object);
            Usuario            usuario    = new Usuario()
            {
                IsAdmin     = false,
                Datos       = new DatosUsuario(),
                Id          = 0,
                Token       = "Recien Creado",
                Contrasenia = "Contraseña",
            };
            UsuarioModel usuarioModel = TraductorUsuario.AModelo(usuario);

            logicMock.Setup(x => x.CrearUsuario(usuario.Id, It.IsAny <Usuario>())).Throws(new StringVacioException());

            var result   = controller.Post(usuario.Id, usuarioModel);
            var okResult = result as BadRequestObjectResult;

            logicMock.VerifyAll();
        }
Beispiel #6
0
 public IActionResult Put(int id, [FromBody] UsuarioModel modelo)
 {
     try
     {
         if (modelo != null)
         {
             Usuario usuario = TraductorUsuario.AEntidad(modelo);
             logica.ActualizarUsuario(id, usuario);
             return(Ok(modelo));
         }
         else
         {
             return(BadRequest("El usuario no puede ser nulo"));
         }
     }
     catch (EntidadNoExisteExcepcion)
     {
         return(NotFound("No existe ese usuario"));
     }
     catch (StringVacioException)
     {
         return(BadRequest("Alguno de los datos son vacios o nulos. Solo los Admin pueden omitir el apellido"));
     }
     catch (FormatoInvalidoException)
     {
         return(BadRequest("Formato del email no valido. Debe ser _@_._"));
     }
     catch (MailNoUnicoException)
     {
         return(BadRequest("El email ya esta en uso"));
     }
     catch (UnsupportedContentTypeException)
     {
         return(BadRequest("El cuerpo debe estar en formato JSON"));
     }
 }