public async Task DeveObterEnderecoComoJsonAsync() { var jsonEndereco = await _viaCepService.ObterEnderecoComoJsonAsync("01001000"); Assert.True(jsonEndereco.Contains("\"cep\": \"01001-000\"")); jsonEndereco = await _viaCepService.ObterEnderecoComoJsonAsync("01001-000"); Assert.True(jsonEndereco.Contains("\"cep\": \"01001-000\"")); var jsonEnderecos = await _viaCepService.ObterEnderecosComoJsonAsync(_enderecoRequisicao); Assert.True(jsonEnderecos.Contains("\"localidade\": \"Porto Alegre\"")); }
public async Task <IActionResult> ObterEndereco([FromBody] string cep) { if (string.IsNullOrEmpty(cep)) { return(BadRequest("Atributo CEP é obrigatório.")); } Regex rgx = new Regex("^[0-9]{5}-?[\\d]{3}$"); if (!rgx.IsMatch(cep)) { return(BadRequest("CEP Inválido")); } string jsonEndereco = null; try { cep = cep.Replace("-", ""); jsonEndereco = await viaCepService.ObterEnderecoComoJsonAsync(cep); var obj = JsonConvert.DeserializeObject <ViaCepReturn>(jsonEndereco); if (obj != null) { var cepobj = obj.getCEP(); if (cepobj != null) { await clientRepository.AddCepAsync(cepobj); } } } catch (CepInexistenteException e) { jsonEndereco = e.Message; return(BadRequest(jsonEndereco)); } return(Ok(jsonEndereco)); }
public async Task <string> ComoJsonAsync() => await _viaCepService.ObterEnderecoComoJsonAsync(_cep);