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")); } }
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(); }
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")); } }