public Conta CriarConta(ContaApi model) { var conta = model.ToConta(); _repoContaf.Incluir(conta); return(conta); }
public void QuandoExcecaoForLancadaDeveRetornarStatusCode400() { //arrange var mockConta = new Mock <IContaRepository>(); mockConta.Setup(r => r.Incluir(It.IsAny <Conta[]>())).Throws(new Exception("Houve um erro")); var repoConta = mockConta.Object; var mockTransf = new Mock <ITransferenciaRepository>().Object; var transService = new TransacoesService(mockTransf, repoConta); var contaService = new ContaService(repoConta); var controlador = new ContasController(contaService, transService); var model = new ContaApi(); model.Name = "Bruno"; model.Description = "Daldegan"; model.Status = "ACTIVE"; model.Idenfifier = "65432"; //act var retorno = controlador.Incluir(model); //assert Assert.IsType <BadRequestObjectResult>(retorno); var statusCodeRetornado = (retorno as BadRequestObjectResult).StatusCode; Assert.Equal(400, statusCodeRetornado); }
public void AoCadastrarContaApiDeveRetornar201() { //arrange var options = new DbContextOptionsBuilder <SocialContext>() .UseInMemoryDatabase("SocialContext") .Options; var contexto = new SocialContext(options); var repoConta = new ContaRepository(contexto); var repoTransf = new TransferenciaRepository(contexto); var contaService = new ContaService(repoConta); var transacoesService = new TransacoesService(repoTransf, repoConta); var controlador = new ContasController(contaService, transacoesService); var model = new ContaApi { Name = "Bruno", Description = "Daldegan", Status = "ACTIVE", Idenfifier = "65432" }; //act var retorno = controlador.Incluir(model); Assert.IsType <CreatedResult>(retorno); //201 }
static void Main(string[] args) { ApiClient apiClient = new ApiClient(HOST_NAME); String[] accerts = { "application/json" }; apiClient.SelectHeaderAccept(accerts); ContaApi contaApi = new ContaApi(HOST_NAME); contaApi.Configuration.AddDefaultHeader("access_token", ACCESS_TOKEN_CREFISA); contaApi.Configuration.AddDefaultHeader("client_id", CLIENT_ID_CREFISA); contaApi.Configuration.AddDefaultHeader("Host", HOST_PARAM); var datePatter = "yyyy-MM-dd"; var timerPatter = "T00:00:00"; var dataAjuste = DateTime.Today.ToString(datePatter) + timerPatter; ContaDetalheResponse contaDetalheResponse = contaApi.ConsultarUsingGET11(7); Console.WriteLine(contaDetalheResponse); Console.ReadKey(); }
public static Conta ToConta(this ContaApi model) { return(new Conta { ContaId = model.Idenfifier, Nome = model.Name, Descricao = model.Description, Status = model.Status.Equals("ACTIVE") }); }
public Conta EditarConta(ContaApi model) { var conta = RetornaConta(model.Idenfifier); conta.Descricao = model.Description; conta.Nome = model.Name; conta.Status = model.Status.Equals("ACTIVE"); _repoContaf.Alterar(conta); return(conta); }
public IActionResult Alterar([FromBody] ContaApi model) { if (ModelState.IsValid) { try { var conta = _contaService.EditarConta(model); return(Ok(conta.ToApi())); } catch (Exception ex) { return(BadRequest(ex.Message)); } } return(BadRequest()); }
public IActionResult Incluir([FromBody] ContaApi model) { if (ModelState.IsValid) { try { var conta = _contaService.CriarConta(model); return(Created($"contas/{model.Idenfifier}", conta.ToApi())); } catch (Exception ex) { return(BadRequest(ex.Message)); } } return(BadRequest()); }