private async Task <bool> ClientePreExistente(CadastroClienteViewModel model)
        {
            Expression <Func <Cliente, bool> > clienteComCPF = c => c.CPF == model.Cpf;
            var clientes = await _clienteServices.GetBy(clienteComCPF, includes : new[] { "Endereco" });

            return(clientes.Any());
        }
Exemple #2
0
        public async Task CreateAsync_ClienteComEndereco_ReturnOkResult(string nome, string cpf, DateTime dtNasc,
                                                                        string logradouro, string bairro, string cidade,
                                                                        string uf, string cep, string pais)
        {
            var cadastro = new CadastroClienteViewModel()
            {
                Nome         = nome,
                Cpf          = cpf,
                DtNascimento = dtNasc,
                Endereco     = new EnderecoViewModel()
                {
                    Logradouro = logradouro,
                    Bairro     = bairro,
                    Cidade     = cidade,
                    CEP        = cep,
                    UF         = uf,
                    Pais       = pais
                }
            };

            // Arrange
            var mockServices = new Mock <IClienteAppServices>();

            mockServices.Setup(s => s.Insert(cadastro));
            var controller = new ClientController();

            // Act
            var result = await controller.CreateAsync(cadastro, mockServices.Object);

            // Assert
            var okResult = Assert.IsType <OkObjectResult>(result);

            Assert.Equal(StatusCodes.Status201Created, okResult.Value);
        }
        public CadastroClientePage()
        {
            var viewModel = new CadastroClienteViewModel();

            BindingContext = viewModel;
            Carregar();
        }
        public void DeveOcorrerErroValidacao_ao_cadastrar_novos_clientes()
        {
            var cliente = new CadastroClienteViewModel();

            var validatinResult = validator.Validate(cliente);

            Assert.Equal(false, validatinResult.IsValid);
        }
Exemple #5
0
        public void Test_Retorno_Nome_nao_Vazio_ou_nulo()
        {
            // Arrange
            CadastroClienteViewModel cadastro = new CadastroClienteViewModel();

            // Act
            Cliente cliente = cadastro.RetornaNomeSobrenome();

            // Assert
            Assert.IsNotNullOrEmpty(cliente.Nome);
        }
        public async Task Insert(CadastroClienteViewModel model)
        {
            if (ClientePreExistente(model).GetAwaiter().GetResult())
            {
                throw new Exception("CPF já associado a outro cliente");
            }

            var cliente = _mapper.Map <CadastroClienteViewModel, Cliente>(model);

            await _clienteServices.Insert(cliente);
        }
Exemple #7
0
        public async Task <IActionResult> CreateAsync([FromBody] CadastroClienteViewModel novo,
                                                      [FromServices] IComercianteAppServices clientAppServices)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            await clientAppServices.Insert(novo);

            return(Ok(StatusCodes.Status201Created));
        }
        public CadastroClientePage(Cliente cliente)
        {
            var viewModel = new CadastroClienteViewModel(cliente)
            {
                Nome     = cliente.Nome,
                CPF      = cliente.CPF,
                Telefone = cliente.Telefone,
                Id       = cliente.Id
            };

            BindingContext = viewModel;
            Carregar();
        }
Exemple #9
0
        public void Test_Retorno_Nome_igual_Renan()
        {
            // Arrange
            CadastroClienteViewModel cadastro = new CadastroClienteViewModel();
            Cliente cliente = new Cliente();

            cliente.Nome = "Renan";

            // Act
            Cliente nomeSobrenome = cadastro.RetornaNomeSobrenome();

            // Assert
            Assert.AreSame(nomeSobrenome.Nome, cliente.Nome);
        }
        public void Nao_deve_ocorrer_erro()
        {
            var cliente = new CadastroClienteViewModel()
            {
                Nome             = "João das Couves",
                Senha            = "123@45",
                ConfirmacaoSenha = "123@45",
                Documento        = "06.860.342/0001-68",
                LimiteCredito    = 50
            };

            var validatinResult = validator.Validate(cliente);

            Assert.Equal(true, validatinResult.IsValid);
        }
        public async Task <IActionResult> CreateAsync([FromBody] CadastroClienteViewModel novo, [FromServices] IClienteAppServices clientAppServices)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }
            try
            {
                await clientAppServices.Insert(novo);
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("", ex.Message);
                return(BadRequest(ModelState));
            }

            return(Ok(StatusCodes.Status201Created));
        }
        public async Task CreateAsync_ReturnOkResult(string nome, string senha, string confirmacaoSenha, string documento, double limiteCredito)
        {
            var cadastro = new CadastroClienteViewModel()
            {
                Nome = nome, Senha = senha, ConfirmacaoSenha = confirmacaoSenha, Documento = documento, LimiteCredito = limiteCredito
            };

            // Arrange
            var mockServices = new Mock <IComercianteAppServices>();

            mockServices.Setup(s => s.Insert(cadastro));
            var controller = new ClientController();

            // Act
            var result = await controller.CreateAsync(cadastro, mockServices.Object);

            // Assert
            var okResult = Assert.IsType <OkObjectResult>(result);

            Assert.Equal(StatusCodes.Status201Created, okResult.Value);
        }
Exemple #13
0
        public async Task CreateAsync_ClienteSemEndereco_ReturnOkResult(string nome, string cpf, DateTime dtNasc)
        {
            var cadastro = new CadastroClienteViewModel()
            {
                Nome = nome, Cpf = cpf, DtNascimento = dtNasc
            };

            // Arrange
            var mockServices = new Mock <IClienteAppServices>();

            mockServices.Setup(s => s.Insert(cadastro));
            var controller = new ClientController();

            // Act
            var result = await controller.CreateAsync(cadastro, mockServices.Object);

            // Assert
            var okResult = Assert.IsType <OkObjectResult>(result);

            Assert.Equal(StatusCodes.Status201Created, okResult.Value);
        }
        public async Task InsertAsync_CpfJaCadastrado_Exception()
        {
            var cpf      = "123456789";
            var cadastro = new CadastroClienteViewModel()
            {
                Cpf = cpf
            };

            // Arrange
            var mockServices = new Mock <IClienteServices>();

            mockServices.Setup(s => s.GetBy(It.IsAny <Expression <Func <Cliente, bool> > >(), It.IsAny <bool>(), null)).Returns(ObterClientesFake(cpf));

            var mockAutoMapperServices = new Mock <IMapperServices>();

            var appService = new ClienteAppServices(mockServices.Object, mockAutoMapperServices.Object);

            // Assert
            var ex = Assert.ThrowsAsync <Exception>(() => appService.Insert(cadastro));

            Assert.Equal("CPF já associado a outro cliente", ex.GetAwaiter().GetResult().Message);
        }
Exemple #15
0
        public async Task CreateAsync_ReturnBadRequestResult(string nome, string senha, string confirmacaoSenha, string documento, double limiteCredito)
        {
            var cadastro = new CadastroClienteViewModel()
            {
                Nome = nome, Senha = senha, ConfirmacaoSenha = confirmacaoSenha, Documento = documento, LimiteCredito = limiteCredito
            };

            // Arrange
            var mockServices = new Mock <IComercianteAppServices>();

            mockServices.Setup(s => s.Insert(cadastro));
            var controller = new ClientController();

            controller.ModelState.AddModelError("Nome", "Deve ser informado.");

            // Act
            var result = await controller.CreateAsync(cadastro, mockServices.Object);

            // Assert
            var badRequest = Assert.IsType <BadRequestResult>(result);

            Assert.Equal(StatusCodes.Status400BadRequest, badRequest.StatusCode);
        }
Exemple #16
0
        public async Task CreateAsync_SemEndereco_ReturnBadRequestResult(string nome, string documento, DateTime dtNasc)
        {
            var cadastro = new CadastroClienteViewModel()
            {
                Nome = nome, Cpf = documento, DtNascimento = dtNasc
            };

            // Arrange
            var mockServices = new Mock <IClienteAppServices>();

            mockServices.Setup(s => s.Insert(cadastro));
            var controller = new ClientController();

            controller.ModelState.AddModelError("Nome", "Deve ser informado.");

            // Act
            var result = await controller.CreateAsync(cadastro, mockServices.Object);

            // Assert
            var badRequest = Assert.IsType <BadRequestResult>(result);

            Assert.Equal(StatusCodes.Status400BadRequest, badRequest.StatusCode);
        }
Exemple #17
0
        public async Task CreateAsync_ComEndereco_ReturnBadRequestResult(string nome, string documento, DateTime dtNasc,
                                                                         string logradouro, string bairro, string cidade,
                                                                         string uf, string cep, string pais)
        {
            var cadastro = new CadastroClienteViewModel()
            {
                Nome         = nome,
                Cpf          = documento,
                DtNascimento = dtNasc,
                Endereco     = new EnderecoViewModel()
                {
                    Logradouro = logradouro,
                    Bairro     = bairro,
                    Cidade     = cidade,
                    CEP        = cep,
                    UF         = uf,
                    Pais       = pais
                }
            };

            // Arrange
            var mockServices = new Mock <IClienteAppServices>();

            mockServices.Setup(s => s.Insert(cadastro));
            var controller = new ClientController();

            controller.ModelState.AddModelError("Nome", "Deve ser informado.");

            // Act
            var result = await controller.CreateAsync(cadastro, mockServices.Object);

            // Assert
            var badRequest = Assert.IsType <BadRequestResult>(result);

            Assert.Equal(StatusCodes.Status400BadRequest, badRequest.StatusCode);
        }
        public CadastroClienteView(IAbpApplicationWithInternalServiceProvider application, ClienteDto clienteDto)
        {
            InitializeComponent();

            DataContext = _viewModels = new CadastroClienteViewModel(application, clienteDto);
        }
        public CadastroClienteView(ClienteDto clienteDto)
        {
            InitializeComponent();

            BindingContext = viewModel = new CadastroClienteViewModel(Navigation, clienteDto);
        }