public async Task Get_ComIdEspecificado_DeveRetornarRegistroDesejado() { var login = await Utils.RealizarLogin(Client); var contato1 = new Contato(Guid.NewGuid(), "Teste", "*****@*****.**", new DateTime(2010, 12, 10)); contato1.AtivarContato(Guid.NewGuid()); contato1.AtribuirEndereco(new Endereco(Guid.NewGuid(), "Rua 1", "123", null, "bairro", "14778665", "cidade", "SP")); var contatoIdDesejado = Guid.NewGuid(); var contato2 = new Contato(contatoIdDesejado, "Teste", "*****@*****.**", new DateTime(2010, 12, 10)); contato2.AtivarContato(Guid.NewGuid()); contato2.AtribuirEndereco(new Endereco(Guid.NewGuid(), "Rua 1", "123", null, "bairro", "14778665", "cidade", "SP")); TestMainContext.Add(contato1); TestMainContext.Add(contato2); TestMainContext.SaveChanges(); var response = await Server .CreateRequest($"api/contatos/{contatoIdDesejado}") .AddHeader("Authorization", "Bearer " + login.access_token) .GetAsync(); response.EnsureSuccessStatusCode(); var retorno = JsonConvert.DeserializeObject <ContatoDTO>(await response.Content.ReadAsStringAsync()); Assert.NotNull(retorno); Assert.Equal(retorno.nome, contato2.Nome); }
public void Email_DeveTerEntre1e256CaracteresEDeveSerEmailValido(string email, string mensagemEsperada) { var contato = new Contato(Guid.NewGuid(), NOME_VALIDO, email, null); contato.AtribuirEndereco(_enderecoMock.Object); contato.AtribuirTelefone(_telefoneMock.Object); contato.EstaValido(); AssertMensagemEsperada(mensagemEsperada, contato); }
public void Nome_DeveTerEntre2e150Caracteres(string nome, string mensagemEsperada) { var contato = new Contato(Guid.NewGuid(), nome, EMAIL_VALIDO, null); contato.AtribuirEndereco(_enderecoMock.Object); contato.AtribuirTelefone(_telefoneMock.Object); contato.EstaValido(); AssertMensagemEsperada(mensagemEsperada, contato); }
public void Contato_DeveValidarEnderecoETelefonesSeHouver() { var contato = new Contato(Guid.NewGuid(), NOME_VALIDO, EMAIL_VALIDO, null); contato.AtribuirEndereco(_enderecoMock.Object); contato.AtribuirTelefone(_telefoneMock.Object); contato.EstaValido(); _enderecoMock.Verify(x => x.EstaValido(), Times.Exactly(2)); _telefoneMock.Verify(x => x.EstaValido(), Times.Exactly(2)); }
public async Task Put_ContatoValido_DeveRetornar200() { var login = await Utils.RealizarLogin(Client); var contatoId = Guid.NewGuid(); var enderecoId = Guid.NewGuid(); var ativadoPor = Guid.NewGuid(); var contato = new Contato(contatoId, "Teste", "*****@*****.**", new DateTime(2010, 12, 10)); contato.AtivarContato(ativadoPor); contato.AtribuirEndereco(new Endereco(enderecoId, "Rua 1", "123", null, "bairro", "14778665", "cidade", "SP")); TestMainContext.Add(contato); TestMainContext.SaveChanges(); var contatoVM = new ContatoViewModel { Id = contatoId, Nome = "Alterado", Email = "*****@*****.**", EnderecoId = enderecoId, AtivadoPor = ativadoPor, Endereco = new EnderecoViewModel { Id = enderecoId, Logradouro = "Rua 1", Bairro = "bairro", CEP = "14778665", Cidade = "cidade", Estado = "SP", Numero = "123" } }; var response = await Server .CreateRequest("api/contatos") .AddHeader("Authorization", "Bearer " + login.access_token) .And(req => req.Content = Utils.GerarRequestContent(contatoVM)) .SendAsync("PUT"); response.EnsureSuccessStatusCode(); var result = JsonConvert.DeserializeObject <ContatoJsonDTO>(await response.Content.ReadAsStringAsync()); Assert.Equal(result.data.nome, contatoVM.Nome); Assert.NotEmpty(result.data.id); Assert.NotNull(result.data.id); Assert.NotEmpty(result.data.enderecoId); Assert.NotNull(result.data.enderecoId); }
public async Task Delete_ComIdExistente_DeveRetornar200() { var login = await Utils.RealizarLogin(Client); var contatoId = Guid.NewGuid(); var contato = new Contato(contatoId, "Teste", "*****@*****.**", new DateTime(2010, 12, 10)); contato.AtivarContato(Guid.NewGuid()); contato.AtribuirEndereco(new Endereco(Guid.NewGuid(), "Rua 1", "123", null, "bairro", "14778665", "cidade", "SP")); TestMainContext.Add(contato); TestMainContext.SaveChanges(); var response = await Server .CreateRequest($"api/contatos/{contatoId}") .AddHeader("Authorization", "Bearer " + login.access_token) .SendAsync("DELETE"); response.EnsureSuccessStatusCode(); }
public async Task Get_SemEspecificarId_DeveRetornarTodosContatosAtivos() { var contato1 = new Contato(Guid.NewGuid(), "Teste", "*****@*****.**", new DateTime(2010, 12, 10)); contato1.AtivarContato(Guid.NewGuid()); contato1.AtribuirEndereco(new Endereco(Guid.NewGuid(), "Rua 1", "123", null, "bairro", "14778665", "cidade", "SP")); var contato2 = new Contato(Guid.NewGuid(), "Teste", "*****@*****.**", new DateTime(2010, 12, 10)); contato2.AtribuirEndereco(new Endereco(Guid.NewGuid(), "Rua 1", "123", null, "bairro", "14778665", "cidade", "SP")); TestMainContext.Add(contato1); TestMainContext.Add(contato2); TestMainContext.SaveChanges(); var response = await Client.GetAsync("api/contatos"); response.EnsureSuccessStatusCode(); var retorno = JsonConvert.DeserializeObject <List <ContatoDTO> >(await response.Content.ReadAsStringAsync()); Assert.Equal(retorno.Count, 1); Assert.Contains(retorno, x => x.nome == contato1.Nome); }