示例#1
0
        public void QuandoOcorrerErroAoAtualizarUmaListaDeIvaDeveRetornarStatusDeErro()
        {
            var cadastroUnidadeMedidaMock = new Mock <ICadastroUnidadeDeMedida>(MockBehavior.Strict);

            cadastroUnidadeMedidaMock.Setup(x => x.AtualizarUnidadesDeMedida(It.IsAny <IList <UnidadeDeMedidaCadastroVm> >()))
            .Throws(new ExcecaoDeTeste("Ocorreu um erro ao atualizar as unidades de Medida"));
            var unidadeMedidaApiController = new UnidadeMedidaApiController(cadastroUnidadeMedidaMock.Object);
            var unidadeDeMedidaCadastroVm  = new UnidadeDeMedidaCadastroVm()
            {
                CodigoInterno = "I01",
                CodigoExterno = "E01",
                Descricao     = "UNIDADE 01"
            };

            unidadeMedidaApiController.Request = new HttpRequestMessage(HttpMethod.Post, "http://localhost/UnidadeMedidaApi/PostMultiplo");
            unidadeMedidaApiController.Request.Properties.Add(HttpPropertyKeys.HttpConfigurationKey, new HttpConfiguration());

            var resposta = unidadeMedidaApiController.PostMultiplo(new ListaUnidadesDeMedida()
            {
                unidadeDeMedidaCadastroVm
            });
            var apiResponseMessage = (ApiResponseMessage)((ObjectContent)(resposta.Content)).Value;

            Assert.AreEqual(HttpStatusCode.OK, resposta.StatusCode);
            Assert.AreEqual("500", apiResponseMessage.Retorno.Codigo);
            cadastroUnidadeMedidaMock.Verify(x => x.AtualizarUnidadesDeMedida(It.IsAny <IList <UnidadeDeMedidaCadastroVm> >()), Times.Once());
        }
        public CadastroUnidadeDeMedidaTests()
        {
            _unitOfWorkMock       = CommonMocks.DefaultUnitOfWorkMock();
            _unidadesConsulta     = new List <UnidadeDeMedida>();
            _unidadesDeMedidaMock = new Mock <IUnidadesDeMedida>(MockBehavior.Strict);
            _unidadesDeMedidaMock.Setup(x => x.Save(It.IsAny <UnidadeDeMedida>()))
            .Callback(CommonGenericMocks <UnidadeDeMedida> .DefaultSaveCallBack(_unitOfWorkMock));
            _unidadesDeMedidaMock.Setup(x => x.FiltraPorListaDeCodigosInternos(It.IsAny <string[]> ()))
            .Returns(_unidadesDeMedidaMock.Object)
            .Callback(
                (string[] i) =>
            {
                if (i.Contains("I01"))
                {
                    _unidadesConsulta.Add(new UnidadeDeMedidaParaAtualizacao("I01", "E01", "Unidade 01"));
                }
            });


            _unidadesDeMedidaMock.Setup(x => x.List())
            .Returns(() => _unidadesConsulta);

            _cadastroUnidadeDeMedida = new CadastroUnidadeDeMedida(_unitOfWorkMock.Object, _unidadesDeMedidaMock.Object);
            _unidadeDeMedidaPadrao   = new UnidadeDeMedidaCadastroVm()
            {
                CodigoInterno = "I01",
                CodigoExterno = "E01",
                Descricao     = "Unidade 01"
            };
            _listaunidadesDeMedida = new List <UnidadeDeMedidaCadastroVm>()
            {
                _unidadeDeMedidaPadrao
            };
        }
示例#3
0
        private void AtualizarUnidadeDeMedida(UnidadeDeMedidaCadastroVm unidadeDeMedidaCadastroVm)
        {
            UnidadeDeMedida unidadeDeMedida =
                _unidadesDeMedidaConsultadas.SingleOrDefault(
                    x => x.CodigoInterno == unidadeDeMedidaCadastroVm.CodigoInterno);

            if (unidadeDeMedida != null)
            {
                unidadeDeMedida.Atualizar(unidadeDeMedidaCadastroVm.CodigoExterno, unidadeDeMedidaCadastroVm.Descricao);
            }
            else
            {
                unidadeDeMedida = new UnidadeDeMedida(unidadeDeMedidaCadastroVm.CodigoInterno, unidadeDeMedidaCadastroVm.CodigoExterno, unidadeDeMedidaCadastroVm.Descricao);
            }
            _unidadesDeMedida.Save(unidadeDeMedida);
        }
        //



        public IList<UnidadeDeMedidaCadastroVm> Listar(PaginacaoVm paginacaoVm, UnidadeDeMedidaCadastroVm filtro)
        {
            if (!string.IsNullOrEmpty(filtro.Id_unidademedida))
            {
                _ivas.BuscaPeloCodigo(filtro.Id_unidademedida);

            }

            if (!string.IsNullOrEmpty(filtro.Descricao))
            {
                _ivas.FiltraPelaDescricao(filtro.Descricao);
            }
            int skip = (paginacaoVm.Page - 1) * paginacaoVm.PageSize;

            //paginacaoVm.TotalRecords = _condicoesDePagamento.Count();

            return _builder.BuildList(_ivas.Skip(skip).Take(paginacaoVm.Take).List());

        }