Exemplo n.º 1
0
        public async Task E_Possivel_Invocar_a_Controller_Update()
        {
            var serviceMock = new Mock <IClienteService>();
            var nome        = Faker.Name.FullName();
            var email       = Faker.Internet.Email();

            serviceMock.Setup(m => m.Put(It.IsAny <ClienteDtoUpdate>())).ReturnsAsync(
                new ClienteDtoUpdateResult
            {
                Id       = Guid.NewGuid(),
                Nome     = nome,
                UpdateAt = DateTime.UtcNow
            }
                );

            _controller = new ClientesController(serviceMock.Object);
            _controller.ModelState.AddModelError("Email", "É um campo obrigatorio");

            var clienteDtoUpdate = new ClienteDtoUpdate
            {
                Id   = Guid.NewGuid(),
                Nome = nome,
            };

            var result = await _controller.Put(clienteDtoUpdate);

            Assert.True(result is BadRequestObjectResult);
            Assert.False(_controller.ModelState.IsValid);
        }
        public async Task E_Possivel_Invocar_a_Controller_Update()
        {
            var serviceMock = new Mock <IClienteService>();
            var nome        = Faker.Name.FullName();
            var email       = Faker.Internet.Email();

            serviceMock.Setup(m => m.Put(It.IsAny <ClienteDtoUpdate>())).ReturnsAsync(
                new ClienteDtoUpdateResult
            {
                Id       = Guid.NewGuid(),
                Nome     = nome,
                UpdateAt = DateTime.UtcNow
            }
                );

            _controller = new ClientesController(serviceMock.Object);

            var clienteDtoUpdate = new ClienteDtoUpdate
            {
                Id   = Guid.NewGuid(),
                Nome = nome,
            };

            var result = await _controller.Put(clienteDtoUpdate);

            Assert.True(result is OkObjectResult);

            ClienteDtoUpdateResult resultValue = ((OkObjectResult)result).Value as ClienteDtoUpdateResult;

            Assert.NotNull(resultValue);
            Assert.Equal(clienteDtoUpdate.Nome, resultValue.Nome);
        }
Exemplo n.º 3
0
        public async Task <ClienteDtoUpdateResult> Put(ClienteDtoUpdate cliente)
        {
            var model  = _mapper.Map <ClienteModel>(cliente);
            var entity = _mapper.Map <ClienteEntity>(model);

            var result = await _repository.UpdateAsync(entity);

            return(_mapper.Map <ClienteDtoUpdateResult>(result));
        }
Exemplo n.º 4
0
        public ClienteTestes()
        {
            IdCliente           = Guid.NewGuid();
            NomeCliente         = Faker.Name.FullName();
            NomeClienteAlterado = Faker.Name.FullName();

            for (int i = 0; i < 10; i++)
            {
                var dto = new ClienteDto()
                {
                    Id   = Guid.NewGuid(),
                    Nome = Faker.Name.FullName()
                };
                listaClienteDto.Add(dto);
            }

            clienteDto = new ClienteDto
            {
                Id   = IdCliente,
                Nome = NomeCliente
            };

            clienteDtoCreate = new ClienteDtoCreate
            {
                Nome = NomeCliente
            };


            clienteDtoCreateResult = new ClienteDtoCreateResult
            {
                Id       = IdCliente,
                Nome     = NomeCliente,
                CreateAt = DateTime.UtcNow
            };

            clienteDtoUpdate = new ClienteDtoUpdate
            {
                Id   = IdCliente,
                Nome = NomeClienteAlterado
            };

            clienteDtoUpdateResult = new ClienteDtoUpdateResult
            {
                Id       = IdCliente,
                Nome     = NomeClienteAlterado,
                UpdateAt = DateTime.UtcNow
            };
        }
        public async Task <ActionResult> Put([FromBody] ClienteDtoUpdate dtoUpdate)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            try
            {
                var result = await _service.Put(dtoUpdate);

                if (result != null)
                {
                    return(Ok(result));
                }
                else
                {
                    return(BadRequest());
                }
            }
            catch (ArgumentException e)
            {
                return(StatusCode((int)HttpStatusCode.InternalServerError, e.Message));
            }
        }