public HttpResponseMessage Insert(LivroCadastroModel model) { try { if (ModelState.IsValid) { Livro l = new Livro(); l.Autor = new Autor(); l.Assunto = new Assunto(); l.Titulo = model.Titulo; l.Editora = model.Editora; l.Edicao = model.Edicao; l.AnoPublicacao = model.AnoPublicacao; l.Autor.Nome = model.NomeAutor; l.Assunto.Descricao = model.Descricao; LivroRepository rep = new LivroRepository(); rep.Insert(l); return(Request.CreateResponse(HttpStatusCode.OK, "Livro Cadastrado com Sucesso")); } else { return(Request.CreateResponse(HttpStatusCode.BadRequest, ModelState)); } }catch (Exception e) { return(Request.CreateResponse(HttpStatusCode.BadRequest, e.Message)); } }
public override void Given() { // Arrange model = new LivroCadastroModel { Autor = "Autor Teste", DataPublicacao = DateTime.Now, ImagemCapaUrl = "imageurl/imagename.png", ISBN = 12345, Nome = "Nome Livro Teste", Preco = 10 }; loginModel = new UsuarioLoginModel { Login = "******", Senha = "12345" }; usuarioAppService.Setup(x => x.FindByLoginAndSenha(It.IsAny <UsuarioLoginModel>())) .Returns(new Domain.Entities.Usuario { IdUsuario = 1, Nome = "Usuario teste", Senha = "senhacriptografada", Login = "******" }); livroDomainService.Setup(x => x.Insert(It.IsAny <Domain.Entities.Livro>())).Throws(new Exception("ISBN já está cadastrado.")); }
public IActionResult Cadastro(LivroCadastroModel model) { if (ModelState.IsValid) { var token = HttpContext.Session.GetString("token"); if (string.IsNullOrEmpty(token)) { ViewBag.Message = "Usuario não logado, ou token expirado. Por favor, faça o login novamente."; return(View()); } var jsonContent = JsonSerializer.Serialize(model); var postContent = new StringContent(jsonContent, Encoding.UTF8, "application/json"); using (var client = new HttpClient()) { client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("bearer", token); var post = client.PostAsync("https://localhost:44376/api/livro", postContent).GetAwaiter().GetResult(); var retorno = post.Content.ReadAsStringAsync().GetAwaiter().GetResult(); if (!string.IsNullOrEmpty(retorno)) { ViewBag.Message = retorno; } } } ModelState.Clear(); return(View()); }
public HttpResponseMessage Alterar(LivroCadastroModel model) { try { LivroRepositorio rep = new LivroRepositorio(); Livro l = new Livro(); l.ISBN = model.ISBN; l.Autor = model.Autor; l.Nome = model.Nome; l.Preco = model.Preco; l.Data_Publicacao = model.Data_Publicacao; l.Imagem_Capa = model.Imagem_Capa; rep.Insert(l); return(Request.CreateResponse(HttpStatusCode.OK, $"Livro {l.Nome}, alterado com sucesso.")); //} } catch (Exception e) { return(Request.CreateResponse(HttpStatusCode.InternalServerError, e.Message)); } }
public override void Given() { // Arrange model = new LivroCadastroModel { Autor = "", DataPublicacao = DateTime.MinValue, ImagemCapaUrl = "", ISBN = 0, Nome = "", Preco = 0 }; loginModel = new UsuarioLoginModel { Login = "******", Senha = "a3eilm" }; usuarioAppService.Setup(x => x.FindByLoginAndSenha(It.IsAny <UsuarioLoginModel>())) .Returns(new Domain.Entities.Usuario { IdUsuario = 1, Nome = "Usuario teste", Senha = "senhacriptografada", Login = "******" }); }
public HttpResponseMessage Cadastrar(LivroCadastroModel model) { if (ModelState.IsValid) { try { LivroRepositorio rep = new LivroRepositorio(); Livro l = new Livro(); l.ISBN = model.ISBN; l.Autor = model.Autor; l.Nome = model.Nome; l.Preco = model.Preco; l.Data_Publicacao = model.Data_Publicacao; l.Imagem_Capa = model.Imagem_Capa; rep.Insert(l); return(Request.CreateResponse(HttpStatusCode.OK, $"Livro {l.Nome}, cadastrado com sucesso.")); } catch (Exception e) { return(Request.CreateResponse(HttpStatusCode.InternalServerError, e.Message)); } } else { List <string> lista = ListarErros(); return(Request.CreateResponse(HttpStatusCode.BadRequest, lista)); } }
[Fact] //método para execução de teste do XUnit //async -> método executado como uma Thread (assincrono) public async Task Livro_Post_ReturnsOk() { //preencher os campos da model var modelCadastro = new LivroCadastroModel() { Nome = "Biografia de Francisco", Isbn = 12345678, Autor = "Francisco Luiz", Preco = 120.00, DataPublicacao = new DateTime(1979, 04, 27), ImagemCapa = "https://www.infoescola.com/wp-content/uploads/2017/04/cegonha-0470854409.jpg" }; var requestCadastro = new StringContent(JsonConvert.SerializeObject(modelCadastro), Encoding.UTF8, "application/json"); var responseCadastro = await appContext.Client.PostAsync(endpoint, requestCadastro); var resultCadastro = string.Empty; using (HttpContent content = responseCadastro.Content) { Task <string> r = content.ReadAsStringAsync(); resultCadastro += r.Result; } var resposta = JsonConvert.DeserializeObject <ResultModel>(resultCadastro); //verificação de teste responseCadastro.StatusCode.Should().Be(HttpStatusCode.OK); resposta.Mensagem.Should().Be("Livro cadastrado com sucesso."); }
public IActionResult Cadastro() { LivroCadastroModel model = new LivroCadastroModel() { ListaLivro = _livroServico.BuscarLivros() }; return(View(model)); }
public IActionResult Post(LivroCadastroModel model) { if (!ModelState.IsValid) { return(BadRequest()); } try { var livro = new Livro(); livro.Nome = model.Nome; livro.Isbn = model.Isbn; livro.Autor = model.Autor; livro.DataPublicacao = model.DataPublicacao; livro.Preco = model.Preco; livro.ImagemCapa = model.ImagemCapa; var consulta = livroRepository.Consultar(); var isbnjacadastrado = false; foreach (var item in consulta) { if (item.Isbn == model.Isbn) { isbnjacadastrado = true; } } if (isbnjacadastrado) { return(BadRequest("Livro não cadastrado, Isbn já existente.")); } else { livroRepository.Inserir(livro); var result = new { mensagem = "Livro cadastrado com sucesso.", livro }; return(Ok(result)); } } catch (Exception e) { return(StatusCode(500, "Erro: " + e.Message)); } }
public IActionResult Cadastro(LivroCadastroModel model) { if (ModelState.IsValid) { _livroServico.InserirLivro(new Livro() { Ano = model.Ano, Titulo = model.Titulo, Autor = model.Autor, Editora = model.Editora }); ModelState.Clear(); } return(Cadastro()); }
public IActionResult Post([FromBody] LivroCadastroModel model) { if (ModelState.IsValid) { try { appService.Insert(model); return(Ok(LivroResource.LivroCadastradoSucesso)); } catch (Exception ex) { return(StatusCode(500, ex.Message)); } } else { return(BadRequest()); } }
public async Task Livro_Post_ReturnsBadRequest() { var model = new LivroCadastroModel() { Nome = string.Empty, Isbn = 0, Autor = string.Empty, Preco = 0, DataPublicacao = new DateTime(0001, 01, 01), ImagemCapa = string.Empty }; var request = new StringContent(JsonConvert.SerializeObject(model), Encoding.UTF8, "application/json"); var response = await appContext.Client.PostAsync(endpoint, request); //critério de teste (Serviço da API retornar HTTP BADREQUEST (400)) response.StatusCode.Should().Be(HttpStatusCode.BadRequest); }
public void Insert(LivroCadastroModel model) { var livro = mapper.Map <Livro>(model); domain.Insert(livro); }