public Cep(ViaCepResponse cep) { this.NumeroDoCep = cep.cep; this.Logradouro = cep.logradouro; this.Bairro = cep.bairro; this.Cidade = cep.localidade; }
public async Task CadastrarCep_Post_QuandoNaoHaLogradouroNaoPodeInserir() { // Arrange var viewModel = new ViaCepResponse() { Cep = "00000-000" }; // Act var result = await _controller.CadastrarCep(viewModel); // Assert Assert.NotNull(result); var viewResult = Assert.IsType <PartialViewResult>(result); Assert.Equal("_PesquisaCep", viewResult.ViewName); Assert.False(_controller.ModelState.IsValid); Assert.Collection(_controller.ModelState.Values.SelectMany(a => a.Errors), item => Assert.Equal("CEP não pode inserido.", item.ErrorMessage)); }
public async Task CadastrarCep_Post_CadastrarCep() { // Arrange var viewModel = new ViaCepResponse() { Cep = "12345-678", Logradouro = "Rua Teste", Bairro = "Bairro Teste", Complemento = "Complemento Teste", DDD = "000", Uf = "UF", Unidade = "Unidade Teste", Gia = "123", Ibge = "123456", Localidade = "Localidade Teste", Siafi = "1234", }; // Act var result = await _controller.CadastrarCep(viewModel); // Assert Assert.NotNull(result); var viewResult = Assert.IsType <PartialViewResult>(result); Assert.Equal("CEP cadastrado na base de dados!!", _controller.TempData["success"]); var logradouro = await _db.Logradouros.FirstOrDefaultAsync(); Assert.Equal(viewModel.Bairro, logradouro.Bairro); Assert.Equal(viewModel.Cep, logradouro.Cep); Assert.Equal(viewModel.Complemento, logradouro.Complemento); Assert.Equal(viewModel.DDD, logradouro.DDD); Assert.Equal(viewModel.Logradouro, logradouro.Descricao); Assert.Equal(viewModel.Gia, logradouro.Gia); Assert.Equal(viewModel.Ibge, logradouro.Ibge); Assert.Equal(viewModel.Siafi, logradouro.Siafi); Assert.Equal(viewModel.Uf, logradouro.Uf); Assert.Equal(viewModel.Unidade, logradouro.Unidade); Assert.Equal(viewModel.Localidade, logradouro.Localidade); }
public async Task <ActionResult> CadastrarCep(ViaCepResponse cepConsultado) { var existeCepCadastrado = await context.Logradouros.AnyAsync(a => a.Cep.Equals(cepConsultado.Cep)); if (existeCepCadastrado) { ModelState.AddModelError("", "CEP já cadastrado em nossa base de dados!"); } if (string.IsNullOrWhiteSpace(cepConsultado.Logradouro)) { ModelState.AddModelError("", "CEP não pode inserido."); } if (ModelState.IsValid) { context.Logradouros.Add(new Models.Logradouro() { LogradouroId = Guid.NewGuid(), Cep = cepConsultado.Cep, Bairro = cepConsultado.Bairro, Complemento = cepConsultado.Complemento, Gia = cepConsultado.Gia, Ibge = cepConsultado.Ibge, Uf = cepConsultado.Uf, Unidade = cepConsultado.Unidade, Descricao = cepConsultado.Logradouro, Localidade = cepConsultado.Localidade, Siafi = cepConsultado.Siafi, DDD = cepConsultado.DDD, }); await context.SaveChangesAsync(); TempData["success"] = "CEP cadastrado na base de dados!!"; } return(PartialView("_PesquisaCep", null)); }
public async Task Consultar_Post_CadastrarCep() { // Arrange var resultCep = new ViaCepResponse() { Cep = "12345-678", Logradouro = "Rua Teste", Bairro = "Bairro Teste", Complemento = "Complemento Teste", DDD = "000", Uf = "UF", Unidade = "Unidade Teste", Gia = "123", Ibge = "123456", Localidade = "Localidade Teste", Siafi = "1234", }; _viaCepService.Setup(x => x.BuscaLogradouro(It.IsAny <string>())).Returns(Task.FromResult(resultCep)); var viewModel = new ConsultaCepViewModel() { Cep = "12345-678" }; // Act var result = await _controller.Consultar(viewModel, "CadastrarNovoCep"); // Assert Assert.NotNull(result); var viewResult = Assert.IsType <ViewResult>(result); Assert.Equal("Indice", viewResult.ViewName); var modelResult = Assert.IsType <ConsultaCepViewModel>(viewResult.Model); Assert.Equal(viewModel.Cep, modelResult.Cep); Assert.Equal("CEP cadastrado na base de dados!!", _controller.TempData["success"]); }
public async Task CadastrarCep_Post_QuandoCepJaEstaCadastradoDeveSerExibidaAoUsuario() { // Arrange _db.Logradouros.Add(new Models.Logradouro() { Cep = "12345-678" }); await _db.SaveChangesAsync(); var viewModel = new ViaCepResponse() { Cep = "12345-678", Logradouro = "Teste logradouro" }; // Act var result = await _controller.CadastrarCep(viewModel); // Assert Assert.NotNull(result); Assert.IsType <PartialViewResult>(result); Assert.False(_controller.ModelState.IsValid); Assert.Collection(_controller.ModelState.Values.SelectMany(a => a.Errors), item => Assert.Equal("CEP já cadastrado em nossa base de dados!", item.ErrorMessage)); }