public async Task ShouldBeReturned_SuccessAuthResponse_IfCredentialsIsValid() { var response = await HttpClientTest .PostAsJsonAsync(_requestUri, _authorLoginRequest); response.StatusCode.Should().Be(HttpStatusCode.OK); (await response.Content.ReadAsAsync <AuthSuccessResponse>()) .Token.Should().NotBeNullOrEmpty(); _output.WriteLine($"Valor entrada: {JObject.FromObject(_authorLoginRequest)} | Resultado teste: {response.StatusCode}"); }
public async Task ShouldBeReturned_SuccessResetPasswordResponse() { var response = await HttpClientTest .PostAsJsonAsync(_requestUri, _authorResetPasswordRequest); var content = await response.Content .ReadAsAsync <ResetPasswordSuccessResponse>(); response.StatusCode.Should().Be(HttpStatusCode.OK); content.Reseted.Should().BeTrue(); content.SuccessMessage.Should() .Be("Senha redefinida com sucesso"); }
public async Task Login_AuthenticationController_RespostaComSucessoEUsuarioRecebeTokenDeAcesso() { var response = await HttpClientTest .PostAsJsonAsync(_requestUri, _loginRequest); response.StatusCode.Should().Be(HttpStatusCode.OK); var authResponse = await response.Content.ReadAsAsync <AutenticacaoComSucessoResponse>(); authResponse.Mensagem.Should().Be(Dicionario.MS001); authResponse.Token.Should().NotBeNullOrEmpty(); authResponse.Usuario.Email.Should().Be(_loginRequest.Email); Output.WriteLine($@"Valor entrada: {JsonSerializer.Serialize(_loginRequest)} | Resultado teste: {response.StatusCode}"); }
public async Task ShouldBeReturned_FailerAuthResponse_IfEmailIsInvalid() { _authorLoginRequest.Email = _faker.Person.Email; var response = await HttpClientTest .PostAsJsonAsync(_requestUri, _authorLoginRequest); response.StatusCode.Should().Be(HttpStatusCode.BadRequest); (await response.Content.ReadAsAsync <AuthFailedResponse>()) .Errors.Should() .HaveCount(1).And .BeEquivalentTo(new[] { "Author does not exist" }); _output.WriteLine($"Valor entrada: {_authorLoginRequest.Email} | Resultado teste: {response.StatusCode}"); }
public async Task ShouldBeReturned_FailerAuthResponse_IfPasswordIsInvalid() { _authorLoginRequest.Password = _faker.Internet.Password(); var response = await HttpClientTest .PostAsJsonAsync(_requestUri, _authorLoginRequest); response.StatusCode.Should().Be(HttpStatusCode.BadRequest); (await response.Content.ReadAsAsync <AuthFailedResponse>()) .Errors.Should() .HaveCount(1).And .BeEquivalentTo(new[] { "Email/password combination is invalid" }); _output.WriteLine($"Valor entrada: {_authorLoginRequest.Password} | Resultado teste: {response.StatusCode}"); }
public async Task ShouldBeReturned_FailedResponse_IfAlreadyExistsEqualsEmail(string alreadyRegisteredEmail) { _authorRegistrationhorRequest.Email = alreadyRegisteredEmail; var response = await HttpClientTest .PostAsJsonAsync(_requestUri, _authorRegistrationhorRequest); response.StatusCode.Should().Be(HttpStatusCode.BadRequest); (await response.Content.ReadAsAsync <AuthFailedResponse>()) .Errors.Should() .HaveCount(1).And .BeEquivalentTo(new[] { "Author with this email already exists" }); _output.WriteLine($"Valor entrada: {alreadyRegisteredEmail} | Resultado teste: {response.StatusCode}"); }
public async Task ResetarSenha_AutenticacaoController_RespostaComFalhaSeEmailNaoExiste() { _resetarSenhaRequest.Email = Faker.Person.Email; var response = await HttpClientTest .PostAsJsonAsync(_requestUri, _resetarSenhaRequest); response.StatusCode.Should().Be(HttpStatusCode.BadRequest); var authResponse = await response.Content .ReadAsAsync <AutenticacaoComFalhaResponse>(); authResponse.Mensagem.Should() .Be(Dicionario.ME001); Output.WriteLine($@"Valor entrada: {JsonSerializer.Serialize(_resetarSenhaRequest)} | Resultado teste: {response.StatusCode}"); }
public async Task ResetarSenha_AutenticacaoController_RespostaDeSucessoESenhaDoUsuarioResetada() { _resetarSenhaRequest.Email = "*****@*****.**"; var response = await HttpClientTest .PostAsJsonAsync(_requestUri, _resetarSenhaRequest); response.StatusCode.Should().Be(HttpStatusCode.OK); var authResponse = await response.Content .ReadAsAsync <AutenticacaoComSucessoResponse>(); authResponse.Mensagem.Should() .Be(Dicionario.MS002); Output.WriteLine($@"Valor entrada: {JsonSerializer.Serialize(_resetarSenhaRequest)} | Resultado teste: {response.StatusCode}"); }
public async Task RegistrarUsuario_AutenticacaoController_RespostaComFalhaSeNomeTiverCaracteresEspeciaisOuNumeros() { _registrarUsuarioRequest.Nome = Faker.Random.String2(5, 10, chars: "abc123#@$"); var response = await HttpClientTest .PostAsJsonAsync(_requestUri, _registrarUsuarioRequest); response.StatusCode.Should().Be(HttpStatusCode.BadRequest); var authResponse = await response.Content .ReadAsAsync <AutenticacaoComFalhaResponse>(); authResponse.Errors.Should() .HaveCount(1).And .BeEquivalentTo(new[] { Dicionario.MV009 }); Output.WriteLine($@"Valor entrada: {JsonSerializer.Serialize(_registrarUsuarioRequest)} | Resultado teste: {response.StatusCode}"); }
public async Task RegistrarUsuario_AutenticacaoController_RespostaComFalhaSeNomeEhNuloOuVazio(string nomeInvalido) { _registrarUsuarioRequest.Nome = nomeInvalido; var response = await HttpClientTest .PostAsJsonAsync(_requestUri, _registrarUsuarioRequest); response.StatusCode.Should().Be(HttpStatusCode.BadRequest); var authResponse = await response.Content .ReadAsAsync <AutenticacaoComFalhaResponse>(); authResponse.Errors.Should() .HaveCount(1).And .BeEquivalentTo(new[] { Dicionario.MV005 }); Output.WriteLine($@"Valor entrada: {JsonSerializer.Serialize(_registrarUsuarioRequest)} | Resultado teste: {response.StatusCode}"); }
public async Task RegistrarUsuario_AutenticacaoController_RespostaComFalhaSeSobrenomePossuirMenosDe4Caracteres() { _registrarUsuarioRequest.Sobrenome = Faker.Random.String2(1, 3); var response = await HttpClientTest .PostAsJsonAsync(_requestUri, _registrarUsuarioRequest); response.StatusCode.Should().Be(HttpStatusCode.BadRequest); var authResponse = await response.Content .ReadAsAsync <AutenticacaoComFalhaResponse>(); authResponse.Errors.Should() .HaveCount(1).And .BeEquivalentTo(new[] { Dicionario.MV008 }); Output.WriteLine($@"Valor entrada: {JsonSerializer.Serialize(_registrarUsuarioRequest)} | Resultado teste: {response.StatusCode}"); }
public async Task ShouldBeReturned_SuccessResponse_AndRegisterNewTag() { await AuthenticateAsync(); var response = await HttpClientTest .PostAsJsonAsync(_requestUri, _createTagRequest); _output.WriteLine($"Response: {await response.Content.ReadAsStringAsync()}"); response.StatusCode.Should().Be(HttpStatusCode.Created); (await response.Content.ReadAsAsync <Response <TagResponse> >()) .Data.Should().BeEquivalentTo(new Response <TagResponse>( new TagResponse { Name = _createTagRequest.Name }), x => x.ExcludingMissingMembers()); }
public async Task ResetarSenha_AutenticacaoController_RespostaComFalhaSeSenhaEhNulaOuVazia(string senhaInvalida) { _resetarSenhaRequest.Senha = senhaInvalida; var response = await HttpClientTest .PostAsJsonAsync(_requestUri, _resetarSenhaRequest); response.StatusCode.Should().Be(HttpStatusCode.BadRequest); var authResponse = await response.Content .ReadAsAsync <AutenticacaoComFalhaResponse>(); authResponse.Errors.Should() .HaveCount(1).And .BeEquivalentTo(new[] { Dicionario.MV013 }); Output.WriteLine($@"Valor entrada: {JsonSerializer.Serialize(_resetarSenhaRequest)} | Resultado teste: {response.StatusCode}"); }
public async Task ResetarSenha_AutenticacaoController_RespostaComFalhaSeConfirmacaoDeSenhaNaoForIgualASenha() { _resetarSenhaRequest.ConfirmacaoSenha = Faker.Internet.Password(); var response = await HttpClientTest .PostAsJsonAsync(_requestUri, _resetarSenhaRequest); response.StatusCode.Should().Be(HttpStatusCode.BadRequest); var authResponse = await response.Content .ReadAsAsync <AutenticacaoComFalhaResponse>(); authResponse.Errors.Should() .HaveCount(1).And .BeEquivalentTo(new[] { Dicionario.MV015 }); Output.WriteLine($@"Valor entrada: {JsonSerializer.Serialize(_resetarSenhaRequest)} | Resultado teste: {response.StatusCode}"); }
public async Task Login_AutenticacaoController_RespostaComFalhaQuandoSenhaEhInvalida() { _loginRequest.Senha = Faker.Internet.Password(); var response = await HttpClientTest .PostAsJsonAsync(_requestUri, _loginRequest); response.StatusCode.Should().Be(HttpStatusCode.BadRequest); var authResponse = await response.Content .ReadAsAsync <AutenticacaoComFalhaResponse>(); authResponse.Mensagem.Should() .Be(Dicionario.ME004); authResponse.Errors.Should() .HaveCount(1).And .BeEquivalentTo(new[] { Dicionario.MV002 }); Output.WriteLine($@"Valor entrada: {JsonSerializer.Serialize(_loginRequest)} | Resultado teste: {response.StatusCode}"); }
public async Task ResetarSenha_AutenticacaoController_RespostaComFalhaSeSenhaNaoCorresponderComPadraoForte() { var invalidPassword = Faker.Random.String2(10, 14); _resetarSenhaRequest.Senha = invalidPassword; _resetarSenhaRequest.ConfirmacaoSenha = invalidPassword; var response = await HttpClientTest .PostAsJsonAsync(_requestUri, _resetarSenhaRequest); response.StatusCode.Should().Be(HttpStatusCode.BadRequest); var authResponse = await response.Content .ReadAsAsync <AutenticacaoComFalhaResponse>(); authResponse.Errors.Should() .HaveCount(1).And .BeEquivalentTo(new[] { Dicionario.MV014 }); Output.WriteLine($@"Valor entrada: {JsonSerializer.Serialize(_resetarSenhaRequest)} | Resultado teste: {response.StatusCode}"); }
public async Task RegistrarUsuario_AutenticacaoController_RespostaComFalhaSeEmailJaExiste() { var existingEmail = "*****@*****.**"; _registrarUsuarioRequest.Email = existingEmail; var response = await HttpClientTest .PostAsJsonAsync(_requestUri, _registrarUsuarioRequest); response.StatusCode.Should().Be(HttpStatusCode.BadRequest); var authResponse = await response.Content .ReadAsAsync <AutenticacaoComFalhaResponse>(); authResponse.Mensagem.Should().Be(Dicionario.ME005); authResponse.Errors.Should() .HaveCount(1).And .BeEquivalentTo(new[] { Dicionario.MV003 }); Output.WriteLine($@"Valor entrada: {JsonSerializer.Serialize(_registrarUsuarioRequest)} | Resultado teste: {response.StatusCode}"); }
public async Task ShouldBeReturned_SuccessResponse_AndRegisterNewPost() { await AuthenticateAsync(); var response = await HttpClientTest .PostAsJsonAsync(_requestUri, _createPostRequest); _output.WriteLine($"Response: {await response.Content.ReadAsStringAsync()}"); response.StatusCode.Should().Be(HttpStatusCode.Created); (await response.Content.ReadAsAsync <Response <PostResponse> >()) .Data.Should().BeEquivalentTo(new Response <PostResponse>( new PostResponse { Title = _createPostRequest.Title, Content = _createPostRequest.Content, Attachments = _createPostRequest.Attachments, AuthorId = Guid.Parse("9ab3d110-71e1-418f-86eb-519146e7d702") }), x => x.ExcludingMissingMembers()); }
public async Task ShouldBeReturned_ErrorResponse_IfUsernameFieldIsNotValidated() { _authorRegistrationhorRequest.Username = string.Empty; var response = await HttpClientTest .PostAsJsonAsync(_requestUri, _authorRegistrationhorRequest); response.StatusCode.Should().Be(HttpStatusCode.BadRequest); var content = await response.Content.ReadAsStringAsync(); JObject jContent = JObject.Parse(content); jContent.Value <string>("title").Should() .Be("One or more validation errors occurred."); jContent.GetValue("errors")["Username"].HasValues.Should() .BeTrue(); _output.WriteLine($"Resultado teste: {jContent.GetValue("errors")["Username"].First}"); }
public async Task ShouldBeReturned_FailedAuthResponse_IfPasswordNotMatchThePatterns() { _authorResetPasswordRequest.NewPassword = _faker.Random.AlphaNumeric(10); var response = await HttpClientTest .PostAsJsonAsync(_requestUri, _authorResetPasswordRequest); response.StatusCode.Should().Be(HttpStatusCode.BadRequest); var content = await response.Content.ReadAsStringAsync(); JObject jContent = JObject.Parse(content); jContent.Value <string>("title").Should() .Be("One or more validation errors occurred."); jContent.GetValue("errors")["NewPassword"].HasValues.Should() .BeTrue(); _output.WriteLine($"Valor entrada: {_authorResetPasswordRequest.NewPassword} | Resultado teste: {response.StatusCode}"); }
public async Task ShouldBeReturned_ErrorResponse_IfTitleIsNotValidated() { await AuthenticateAsync(); _createPostRequest.Title = _faker.Random.String2(51, 100); var response = await HttpClientTest .PostAsJsonAsync(_requestUri, _createPostRequest); _output.WriteLine($"Response: {await response.Content.ReadAsStringAsync()}"); response.StatusCode.Should().Be(HttpStatusCode.BadRequest); var content = await response.Content.ReadAsStringAsync(); JObject jContent = JObject.Parse(content); jContent.Value <string>("title").Should() .Be("One or more validation errors occurred."); jContent.GetValue("errors")["Title"].HasValues.Should() .BeTrue(); }
public async Task ShouldBeReturned_ErrorResponse_IfEmailFieldIsNotValidated() { var invalidEmail = _faker.Random.String2(10, 20); _authorRegistrationhorRequest.Email = invalidEmail; var response = await HttpClientTest .PostAsJsonAsync(_requestUri, _authorRegistrationhorRequest); response.StatusCode.Should().Be(HttpStatusCode.BadRequest); var content = await response.Content.ReadAsStringAsync(); JObject jContent = JObject.Parse(content); jContent.Value <string>("title").Should() .Be("One or more validation errors occurred."); jContent.GetValue("errors")["Email"].HasValues.Should() .BeTrue(); _output.WriteLine($"Valor entrada: {invalidEmail} | Resultado teste: {jContent.GetValue("errors")["Email"].First}"); }
public async Task Login_AuthenticationController_RespostaComFalhaQuandoUsuarioEstaDeletado() { var loginUserDeletedRequest = new LoginRequest { Email = "*****@*****.**", Senha = "test123" }; var response = await HttpClientTest .PostAsJsonAsync(_requestUri, loginUserDeletedRequest); response.StatusCode.Should().Be(HttpStatusCode.BadRequest); var authResponse = await response.Content .ReadAsAsync <AutenticacaoComFalhaResponse>(); authResponse.Mensagem.Should() .Be(Dicionario.ME004); authResponse.Errors.Should() .HaveCount(1).And .BeEquivalentTo(new[] { Dicionario.MV001 }); Output.WriteLine($@"Valor entrada: {JsonSerializer.Serialize(_loginRequest)} | Resultado teste: {response.StatusCode}"); }