public void QuandoOcorrerErroAoAtualizarUmaListaDeIvaDeveRetornarStatusDeErro() { var cadastroIvaMock = new Mock <ICadastroIva>(MockBehavior.Strict); cadastroIvaMock.Setup(x => x.AtualizarIvas(It.IsAny <IList <IvaCadastroVm> >())) .Throws(new Exception("Ocorreu um erro ao atualizar os Ivas")); var ivaApiController = new IvaApiController(cadastroIvaMock.Object); var ivaCadastroVm = new IvaCadastroVm() { Codigo = "FORNEC0001", Descricao = "FORNECEDOR 0001" }; ivaApiController.Request = new HttpRequestMessage(HttpMethod.Post, "http://localhost/IvaApi/PostMultiplo"); ivaApiController.Request.Properties.Add(HttpPropertyKeys.HttpConfigurationKey, new HttpConfiguration()); var resposta = ivaApiController.PostMultiplo(new ListaIva() { ivaCadastroVm }); var apiResponseMessage = (ApiResponseMessage)((ObjectContent)(resposta.Content)).Value; Assert.AreEqual(HttpStatusCode.OK, resposta.StatusCode); Assert.AreEqual("500", apiResponseMessage.Retorno.Codigo); cadastroIvaMock.Verify(x => x.AtualizarIvas(It.IsAny <IList <IvaCadastroVm> >()), Times.Once()); }
public CadastroIvaTests() { _unitOfWorkMock = CommonMocks.DefaultUnitOfWorkMock(); _ivasConsulta = new List <Iva>(); _ivasMock = new Mock <IIvas>(MockBehavior.Strict); _ivasMock.Setup(x => x.Save(It.IsAny <Iva>())).Callback((Iva iva) => Assert.IsNotNull(iva)); _ivasMock.Setup(x => x.BuscaListaPorCodigo(It.IsAny <string[]>())) .Callback((string[] codigos) => { if (codigos.Contains("01")) { _ivasConsulta.Add(new IvaParaAtualizacao("01", "IVA 01")); } }) .Returns(_ivasMock.Object); _ivasMock.Setup(x => x.List()).Returns(_ivasConsulta); _cadastroIva = new CadastroIva(_unitOfWorkMock.Object, _ivasMock.Object); _ivaPadrao = new IvaCadastroVm() { Codigo = "01", Descricao = "IVA 01" }; _listaIvas = new List <IvaCadastroVm>() { _ivaPadrao }; }
private void AtualizarIva(IvaCadastroVm ivaCadastroVm) { Iva iva = _ivasConsultados.SingleOrDefault(x => x.Codigo == ivaCadastroVm.Codigo); if (iva != null) { iva.AtualizaDescricao(ivaCadastroVm.Descricao); } else { iva = new Iva(ivaCadastroVm.Codigo, ivaCadastroVm.Descricao); } _ivas.Save(iva); }
public void Novo(IvaCadastroVm ivaCadastroVm) { try { _unitOfWork.BeginTransaction(); var iva = new Iva(ivaCadastroVm.CodigoSap, ivaCadastroVm.Descricao); _ivas.Save(iva); _unitOfWork.Commit(); } catch (Exception) { _unitOfWork.RollBack(); throw; } }
public void QuandoAtualizarUmaListaDeIvasComSucessoDeveRetornarStatusOk() { var cadastroIvaMock = new Mock <ICadastroIva>(MockBehavior.Strict); cadastroIvaMock.Setup(x => x.AtualizarIvas(It.IsAny <IList <IvaCadastroVm> >())); var ivaApiController = new IvaApiController(cadastroIvaMock.Object); var ivaCadastroVm = new IvaCadastroVm() { Codigo = "01", Descricao = "IVA 01" }; ivaApiController.Request = new HttpRequestMessage(HttpMethod.Post, "http://localhost/IvaApi/PostMultiplo"); ivaApiController.Request.Properties.Add(HttpPropertyKeys.HttpConfigurationKey, new HttpConfiguration()); var resposta = ivaApiController.PostMultiplo(new ListaIva() { ivaCadastroVm }); Assert.AreEqual(HttpStatusCode.OK, resposta.StatusCode); cadastroIvaMock.Verify(x => x.AtualizarIvas(It.IsAny <IList <IvaCadastroVm> >()), Times.Once()); }