示例#1
0
        public async Task Authentication_Post_Returns_AccessDenied()
        {
            #region Dados do Teste

            //montando os dados que deverão ser enviados para a API..
            var auth = new ClienteLoginViewModel
            {
                Email = "*****@*****.**",
                Senha = "teste@123456"
            };

            #endregion

            #region Requisição para a API

            var client  = TestServerConfiguration.CreateClient();
            var request = ContentHelper.CreateContent(auth);

            //executando uma requisição POST para a API..
            var response = await client.PostAsync("api/auth", request);

            //critério de teste..
            response.StatusCode
            .Should()
            .Be(HttpStatusCode.InternalServerError);

            //obtendo a resposta gerada pela API..
            var mensagem = ContentHelper.ReadContent(response);

            //critério de teste..
            mensagem.Should().Contain("Acesso Negado. Cliente não encontrado");

            #endregion
        }
示例#2
0
        public ClienteLoginViewModel Login(string cnpj)
        {
            string documento = Utils.SomenteNumero(cnpj);

            string novoCnpj;

            if (documento.Length == 11)
            {
                novoCnpj = Utils.FormatarCPF(cnpj);
            }
            else
            {
                novoCnpj = Utils.FormatarCNPJ(cnpj);
            }

            var clienteLogin = new ClienteLoginViewModel();

            clienteLogin.CNPJ      = cnpj;
            clienteLogin.Resultado = "OK";

            var model = _rep.Login(novoCnpj);

            if (model == null)
            {
                clienteLogin.Resultado = "Cliente não Cadastrado!";
                return(clienteLogin);
            }
            if (model.Ativo == false)
            {
                clienteLogin.Resultado = "Cliente não está Ativo!";
            }

            return(clienteLogin);
        }
示例#3
0
        public ClienteLoginViewModel Login(string cnpj)
        {
            string documento = Utils.SomenteNumero(cnpj);

            string novoCnpj;

            if (documento.Length == 11)
            {
                novoCnpj = Utils.FormatarCPF(cnpj);
            }
            else
            {
                novoCnpj = Utils.FormatarCNPJ(cnpj);
            }

            var clienteLogin = new ClienteLoginViewModel
            {
                CNPJ      = cnpj,
                Resultado = "OK"
            };

            var model = _uow.RepositorioCliente.First(x => x.Dcto == novoCnpj);

            if (model == null)
            {
                clienteLogin.Resultado = "Cliente não Cadastrado!";
                return(clienteLogin);
            }
            if (model.Ativo == false)
            {
                clienteLogin.Resultado = "Cliente não está Ativo!";
            }

            return(clienteLogin);
        }
示例#4
0
 public IActionResult Post(ClienteLoginViewModel model)
 {
     try
     {
         var accessToken = clienteApplicationService.GetAccessToken(model);
         return(Ok(accessToken));
     }
     catch (Exception e)
     {
         return(StatusCode(500, e.Message));
     }
 }
        public string GetAccessToken(ClienteLoginViewModel model)
        {
            //buscar o cliente atraves do email e senha
            var cliente = clienteDomainService.Get(model.Email, model.Senha);

            if (cliente == null)
            {
                throw new Exception("Acesso Negado. Cliente não encontrado");
            }

            //retornando o TOKEN gerado..
            return(tokenService.GenerateToken(cliente.Email));
        }
        public ClienteLoginViewModel Login(string cnpj)
        {
            var clienteLoginViewModel = new ClienteLoginViewModel();

            try
            {
                clienteLoginViewModel = _servicoCliente.Login(cnpj);
                return(clienteLoginViewModel);
            }
            catch (Exception ex)
            {
                clienteLoginViewModel.Resultado = ex.Message;
                return(clienteLoginViewModel);
            }
        }
示例#7
0
        public ActionResult Login(ClienteLoginViewModel clienteLoginViewModel)
        {
            //string senha = clienteApp.CriarHash(clienteLoginViewModel.Senha);
            Cliente cliente = clienteApp.ObterPorEmailSenha(clienteLoginViewModel.Email, clienteLoginViewModel.Senha);

            if (cliente == null)
            {
                clienteLoginViewModel.Mensagem = "Cliente não encontrado";
                return(RedirectToAction("Login"));
            }
            else
            {
                AppHelper.RegistrarCliente(cliente);
                return(RedirectToAction("Inicio", "WebApp"));
            }
        }
示例#8
0
        public async Task <string> Authentication_Post_Returns_Ok()
        {
            #region Dados do Teste

            //cadastrando um cliente na API..
            var clienteTest = new ClientesTest();
            var cliente     = await clienteTest.Cliente_Post_Returns_Ok();

            //montando os dados que deverão ser enviados para a API..
            var auth = new ClienteLoginViewModel
            {
                Email = cliente.Email,
                Senha = cliente.Senha
            };

            #endregion

            #region Requisição para a API

            var client  = TestServerConfiguration.CreateClient();
            var request = ContentHelper.CreateContent(auth);

            //executando uma requisição POST para a API..
            var response = await client.PostAsync("api/auth", request);

            //critério de teste..
            response.StatusCode
            .Should()
            .Be(HttpStatusCode.OK);

            //obtendo o TOKEN gerado pela API..
            var token = ContentHelper.ReadContent(response);

            //critério de teste..
            token.Should().Contain("Bearer");
            token.Length.Should().BeGreaterThan(180);

            #endregion

            return(token);
        }
示例#9
0
        public async Task Authentication_Post_Returns_BadRequest()
        {
            #region Dados do Teste

            //montando os dados que deverão ser enviados para a API..
            var auth = new ClienteLoginViewModel();

            #endregion

            #region Requisição para a API

            var client  = TestServerConfiguration.CreateClient();
            var request = ContentHelper.CreateContent(auth);

            //executando uma requisição POST para a API..
            var response = await client.PostAsync("api/auth", request);

            //critério de teste..
            response.StatusCode
            .Should()
            .Be(HttpStatusCode.BadRequest);

            #endregion
        }
示例#10
0
        public ActionResult Login()
        {
            var clienteLoginViewModel = new ClienteLoginViewModel();

            return(View(clienteLoginViewModel));
        }