public async Task GetByCEPAsync_ReturnViaCEPModelTestAsync()
        {
            var httpClientMock = "https://viacep.com.br/ws/";
            var cep            = "17052520";

            _httpMessageHandlerMock.Protected().Setup <Task <HttpResponseMessage> >("SendAsync",
                                                                                    ItExpr.IsAny <HttpRequestMessage>(),
                                                                                    ItExpr.IsAny <CancellationToken>())
            .ReturnsAsync(new HttpResponseMessage()
            {
                StatusCode = HttpStatusCode.OK,
                Content    = new StringContent(JsonSerializer.Serialize(ViaCEPMock.ViaCEPModelFaker.Generate()))
            });

            var httpClient = new HttpClient(_httpMessageHandlerMock.Object)
            {
                BaseAddress = new Uri(httpClientMock)
            };

            var viaCEPservice = new ViaCEPService(httpClient);
            var viaCEPMethod  = await viaCEPservice.GetByCEPAsync(cep);

            var serviceResult = Assert.IsType <ViaCEP>(viaCEPMethod);

            Assert.NotNull(serviceResult);
            Assert.NotNull(serviceResult.CEP);
        }
示例#2
0
        private void BuscarCEP(object sender, EventArgs e)
        {
            ResultadoLabel.Text = string.Empty;

            string cep = MaskTool.RemoveMask(CepEntry.Text);

            //Validar CEP inserido
            if (string.IsNullOrEmpty(cep) || cep.Length != 8 || !int.TryParse(cep, out int cepInt))
            {
                DisplayAlert("Alerta", "CEP informado é inválido!", "OK");
                return;
            }

            CepEntry.Text = MaskTool.RenderMask("#####-###", cep);

            //Busca CEP na internet
            Result result = ViaCEPService.BuscarEnderecoCep(cep, out Endereco endereco);

            if (!result.Sucess)
            {
                DisplayAlert("Erro", $"Ocorreu um erro na transação. Detalhes:\n{result.Message}", "OK");
                return;
            }

            //Exibe CEP na tela
            ResultadoLabel.Text = $"Cidade: {endereco.Localidade}\n" +
                                  $"UF: {endereco.Uf}\n" +
                                  $"Bairro: {endereco.Bairro}\n" +
                                  $"Rua: {endereco.Logradouro}\n" +
                                  $"Complemento: {endereco.Complemento}\n";
        }
示例#3
0
        private void SearchCEP(object sender, EventArgs args)
        {
            Address address = new Address();

            string cep = Convert.ToString(CEP.Text.Trim());

            if (isValidCEP(cep))
            {
                try
                {
                    address = ViaCEPService.searchAddressViaCEP(cep);

                    if (address != null)
                    {
                        TEXTNAME.Text = string.Format("Endereço: {0}, {1}, {2}, {3}, {4}", address.logradouro, address.bairro, address.localidade, address.Complemento, address.uf);
                    }
                    else
                    {
                        DisplayAlert("ERRO", "CEP não encontrado: " + cep, "OK");
                    }
                }
                catch (Exception ex)
                {
                    DisplayAlert("ERRO CRÍTICO", ex.Message, "OK");
                }
            }
        }
        private void BuscarCEP(object sender, EventArgs args)
        {
            string cep = CEP.Text.Trim();

            if (isValidCEP(cep))
            {
                try
                {
                    Endereco end = ViaCEPService.BuscarEnderecoViaCEP(cep);

                    if (end != null)
                    {
                        RESULTADO.Text = string.Format("Endereço: {2} de {3} {0}, {1}", end.localidade, end.uf, end.logradouro, end.bairro);
                    }
                    else
                    {
                        DisplayAlert("ERRO", "O Endereço não foi encontrado para o CEP informado: " + cep, "OK");
                    }
                }
                catch (Exception ex)
                {
                    DisplayAlert("ERRO CRÍTICO", ex.Message, "OK");
                }
            }
            else
            {
                RESULTADO.Text = string.Empty;
            }
        }
        private void BuscarCep(object sender, EventArgs args)
        {
            string cep = enCep.Text.Trim();

            if (IsValid(cep))
            {
                try
                {
                    Endereco end = ViaCEPService.BuscarEnderecoViaCEP(cep);
                    if (end != null)
                    {
                        lblResult.Text += "Endereço: " + end.uf + " - " + end.localidade + " - " + end.bairro + " - " + end.logradouro + " - " + end.unidade + "\n";
                    }
                    else
                    {
                        lblResult.Text += "Endereço não encontrado! \n";
                    }
                } catch (Exception e)
                {
                    DisplayAlert("Erro Crítico", e.Message, "Ok");
                }
            }
            else
            {
                DisplayAlert("Erro", "O CEP informado é inválido", "Ok");
            }
        }
示例#6
0
        private void BuscarCEP(object sender, EventArgs args)
        {
            string cep = Cep.Text.Trim();

            if (isValidCep(cep))
            {
                try
                {
                    Endereco end = ViaCEPService.BuscarEnderecoViaCEP(cep);

                    if (end != null)
                    {
                        Resultado.Text = String.Format("Endereco: " + end.Logradouro
                                                       + " " + end.Bairro + ", " + end.Localidade + ", " + end.UF + ", " + end.Cep);
                    }
                    else
                    {
                        DisplayAlert("Erro", "O endereco nao foi encontrado para o CEP informado", "OK");
                    }
                }
                catch (Exception ex)
                {
                    DisplayAlert("Erro critico ", ex.Message, "OK");
                }
            }
        }
示例#7
0
        private void SearchCEP(object sender, EventArgs args)
        {
            string  cep = Cep.Text.Trim();
            Address add = ViaCEPService.SearchAddressViaCEP(cep);

            Result.Text = string.Format("Endereço: {2} de {3} {0},{1} ", add.localidade, add.uf, add.logradouro, add.bairro);
        }
        public async Task GetByCEPAsync_ReturnViaCEPModelTestAsync()
        {
            var cep           = "68901111";
            var viaCEPservice = await ViaCEPService.GetByCEPAsync(cep);

            var serviceResult = Assert.IsType <ViaCEP>(viaCEPservice);

            Assert.NotNull(serviceResult);
            Assert.NotNull(serviceResult.CEP);
        }
示例#9
0
        public async Task GetByCEPAsync_ReturnViaCEPModelTest(string cep)
        {
            var service = new ViaCEPService(_httpClient);
            var method  = await service.GetByCEPAsync(cep);

            var result = Assert.IsType <ViaCEP>(method);

            Assert.NotNull(result);
            Assert.NotNull(result.CEP);
        }
示例#10
0
        public static async Task Run([TimerTrigger("0 */1 * * * *")] TimerInfo myTimer, ILogger log)
        {
            log.LogInformation($"ViaCEPTimerTriggerFunction executada: {DateTime.Now}");

            var cep = "29315755";

            var endereco = await ViaCEPService.GetByCEPAsync(cep);

            log.LogInformation($"Endereço: {JsonConvert.SerializeObject(endereco)}");

            log.LogInformation($"ViaCEPTimerTriggerFunction finalizada: {DateTime.Now}");
        }
示例#11
0
        public async Task ViaCEPHttpTriggerFunction_NoAuthReturnViaCEPTest(string query, string cep)
        {
            var service     = new ViaCEPService(_httpClient);
            var accessToken = new AccessTokenProvider(string.Empty, string.Empty);

            var request  = FactoryConfiguration.CreateHttpRequest(query, cep);
            var response = (OkObjectResult)await new ViaCEPHttpTriggerFunction(accessToken, service).Run(request, _logger);

            dynamic data = response.Value;

            Assert.NotNull(data);
        }
示例#12
0
        private void BuscarCEP(object sender, EventArgs args)
        {
            //TODO - Lógica do Programa


            //TODO - Validações

            string   cep      = CEP.Text.Trim();
            Endereco endereco = ViaCEPService.BuscarEnderecoViaCEP(cep);

            RESULTADO.Text = string.Format("Endereco: {0}, {1} {2}", endereco.localidade, endereco.uf, endereco.logradouro);
        }
        public static async Task <IActionResult> Run(
            [HttpTrigger(AuthorizationLevel.Anonymous, "get", Route = "v1/cep")] HttpRequest req, ILogger log)
        {
            log.LogInformation($"ViaCEPHttpTriggerFunction executada: {DateTime.Now}");

            var cep = req.Query["cep"];

            var endereco = await ViaCEPService.GetByCEPAsync(cep);

            log.LogInformation($"ViaCEPHttpTriggerFunction finalizada: {DateTime.Now}");

            return(new OkObjectResult(JsonConvert.SerializeObject(endereco)));
        }
示例#14
0
        public async Task ViaCEPTimerTriggerFunction_ReturnLogMessageTest()
        {
            var logger  = (ListLogger)FactoryConfiguration.CreateLogger(LoggerTypes.List);
            var service = new ViaCEPService(_httpClient);

            await new ViaCEPTimerTriggerFunction(service).Run(null, logger);

            var messageInit     = logger.Logs[0];
            var messageService  = logger.Logs[1];
            var messageFinished = logger.Logs[2];

            Assert.Contains("C# timer trigger function processed a request.", messageInit);
            Assert.Contains("{ CEP = 29315755, Street = Rua João Antônio Vasques, StreetFull = , UF = ES }", messageService);
            Assert.Contains("C# timer trigger function finished.", messageFinished);
        }
        private void BuscarCEP(object sender, EventArgs args)
        {
            string cep = InputCep.Text.Trim();

            if (isValidCEP(cep))
            {
                try
                {
                    Endereco end = ViaCEPService.BuscarEnderecoViaCEP(cep);
                    if (end != null)
                    {
                        LabelResultado.Text = $"Endereço: {end.Logradouro}, Bairro {end.Bairro}, {end.Localidade}/{end.Uf}";
                    }
                    else
                    {
                        DisplayAlert("Erro", $"O endereço não foi encontrado para o CEP informado: {cep}", "Ok");
                    }
                } catch (Exception e)
                {
                    DisplayAlert("Erro crítico", e.Message, "Ok");
                }
            }
        }
示例#16
0
        private void BuscarCEP(object sender, EventArgs args)
        {
            string cep = txtCep.Text.Trim();

            if (isValideCEP(cep))
            {
                try {
                    Endereco endereco = ViaCEPService.BuscarEnderecoViaCEP(cep);

                    if (endereco != null)
                    {
                        lblResultado.Text = string.Format("Endereço: {2} de {3} {0}, {1}", endereco.localidade, endereco.uf, endereco.logradouro, endereco.bairro);
                    }
                    else
                    {
                        DisplayAlert("ERRO", "Endereço não encontrado para o CEP informado: " + cep, "OK");
                    }
                }
                catch (Exception ex)
                {
                    DisplayAlert("Erro crítico", ex.Message, "OK");
                }
            }
        }