Ejemplo n.º 1
0
        void PutMarcaDeveTestarSeNomeJaExisteERetornarOStatusBadRequest()
        {
            var marca = new MarcaParaAtualizarDto("DELL");

            var atual = _controller.PutMarca(0, marca);

            Assert.IsType <BadRequestObjectResult>(atual);
        }
Ejemplo n.º 2
0
        void PutMarcaDeveRetornarOStatusNoContent()
        {
            var marca = new MarcaParaAtualizarDto("Samsung");

            var atual = _controller.PutMarca(1, marca);

            Assert.IsType <NoContentResult>(atual);
        }
Ejemplo n.º 3
0
        public ActionResult PutMarca([FromRoute] int id, [FromBody] MarcaParaAtualizarDto marcaUpdated)
        {
            if (marcaUpdated == null)
            {
                var erro = new
                {
                    Mensagem   = "E necessario informar uma marca",
                    StatusCode = 400
                };

                return(BadRequest(erro));
            }
            if (!ModelState.IsValid)
            {
                var erro = new
                {
                    Mensagem   = ModelState.Values,
                    StatusCode = 400
                };
                return(BadRequest(erro));
            }
            if (!_repository.MarcaJaExiste(id))
            {
                return(NotFound());
            }
            if (_repository.NomeJaExiste(marcaUpdated.Nome, id))
            {
                var erro = new
                {
                    Mensagem   = "Já existe uma marca com esse nome",
                    StatusCode = 400
                };
                return(BadRequest(erro));
            }

            var marca = _repository.GetMarca(id);

            Mapper.Map(marcaUpdated, marca);

            if (!_repository.Salvar())
            {
                var erro = new
                {
                    Mesagem    = "Ocorreu um erro ao salvar alteracoes no banco",
                    StatusCode = 500
                };
                return(StatusCode(500, erro));
            }


            return(NoContent());
        }
Ejemplo n.º 4
0
        void PutMarcaDeveAtualizarAMarcaAVELLparaSamsung()
        {
            var marca = new MarcaParaAtualizarDto("Samsung");

            _controller.PutMarca(0, marca);

            var okObjectResult  = (OkObjectResult)_controller.GetMarca(0);
            var marcaAtualizada = (MarcaDto)okObjectResult.Value;
            var marcaMapeada    = Mapper.Map <Marca>(marcaAtualizada);
            var esperado        = new Marca {
                MarcaId = 0, Nome = marca.Nome
            };


            Assert.Equal(marcaMapeada, esperado);
        }