private async Task Valida_Tratamento_De_Duplicidade_De_Email_Nao_Encontrando_Email_Valido_Deve_Disparar_Excecao() { // Arrange var aluno = new AlunoEol(1, "José da Silva", string.Empty, string.Empty, new DateTime(1990, 9, 10)); var email = aluno.Email; var emailTentativa1 = "*****@*****.**"; var emailTentativa2 = "*****@*****.**"; var emailTentativa3 = "*****@*****.**"; repositorioUsuario.Setup(x => x.ExisteEmailUsuarioPorTipo(email, UsuarioTipo.Aluno, aluno.Codigo)) .ReturnsAsync(true); repositorioUsuario.Setup(x => x.ExisteEmailUsuarioPorTipo(emailTentativa1, UsuarioTipo.Aluno, aluno.Codigo)) .ReturnsAsync(true); repositorioUsuario.Setup(x => x.ExisteEmailUsuarioPorTipo(emailTentativa2, UsuarioTipo.Aluno, aluno.Codigo)) .ReturnsAsync(true); repositorioUsuario.Setup(x => x.ExisteEmailUsuarioPorTipo(emailTentativa3, UsuarioTipo.Aluno, aluno.Codigo)) .ReturnsAsync(true); var query = new VerificarEmailExistenteAlunoQuery(aluno); // Assert await Assert.ThrowsAsync <NegocioException>(() => verificarEmailExistenteAlunoQueryHandler.Handle(query, CancellationToken.None)); }
private async Task Valida_Tratamento_De_Duplicidade_De_Email_Ate_A_Ultima_Tentativa_Deve_Retornar_O_Email_Alterado() { // Arrange var aluno = new AlunoEol(1, "José da Silva", string.Empty, string.Empty, new DateTime(1990, 9, 10)); var email = aluno.Email; var emailTentativa1 = "*****@*****.**"; var emailTentativa2 = "*****@*****.**"; var emailTentativa3 = "*****@*****.**"; repositorioUsuario.Setup(x => x.ExisteEmailUsuarioPorTipo(email, UsuarioTipo.Aluno, aluno.Codigo)) .ReturnsAsync(true); repositorioUsuario.Setup(x => x.ExisteEmailUsuarioPorTipo(emailTentativa1, UsuarioTipo.Aluno, aluno.Codigo)) .ReturnsAsync(true); repositorioUsuario.Setup(x => x.ExisteEmailUsuarioPorTipo(emailTentativa2, UsuarioTipo.Aluno, aluno.Codigo)) .ReturnsAsync(true); repositorioUsuario.Setup(x => x.ExisteEmailUsuarioPorTipo(emailTentativa3, UsuarioTipo.Aluno, aluno.Codigo)) .ReturnsAsync(false); var query = new VerificarEmailExistenteAlunoQuery(aluno); // Act var alunoRetorno = await verificarEmailExistenteAlunoQueryHandler.Handle(query, CancellationToken.None); // Assert Assert.NotNull(alunoRetorno); Assert.Equal(emailTentativa3, alunoRetorno.Email); }
private async Task Valida_Inclusao_De_Aluno_Valido_Deve_Retornar_True() { // Arrange var aluno = new AlunoEol(1, "José da Silva", string.Empty, string.Empty, new DateTime(1990, 9, 10)); var alunoComEmailTratado = new AlunoEol(1, "José da Silva", string.Empty, string.Empty, new DateTime(1990, 9, 10)); mediator.Setup(a => a.Send(It.IsAny <VerificarEmailExistenteAlunoQuery>(), It.IsAny <CancellationToken>())) .ReturnsAsync(alunoComEmailTratado); mediator.Setup(a => a.Send(It.IsAny <ExisteAlunoPorCodigoQuery>(), It.IsAny <CancellationToken>())) .ReturnsAsync(false); mediator.Setup(a => a.Send(It.IsAny <InserirAlunoGoogleCommand>(), It.IsAny <CancellationToken>())) .ReturnsAsync(true); mediator.Setup(a => a.Send(It.IsAny <IncluirUsuarioCommand>(), It.IsAny <CancellationToken>())) .ReturnsAsync(10); mediator.Setup(a => a.Send(It.IsAny <PublicaFilaRabbitCommand>(), It.IsAny <CancellationToken>())) .ReturnsAsync(true); var alunoJson = JsonConvert.SerializeObject(aluno); var mensagem = new MensagemRabbit(alunoJson); // Act var retorno = await incluirAlunoUseCase.Executar(mensagem); // Assert Assert.True(retorno); }
public FiltroAlunoDto(AlunoEol alunoEol, int?anoLetivo, List <int> tiposUes, List <long> ues, List <long> turmas) { AlunoEol = alunoEol; AnoLetivo = anoLetivo; TiposUes = tiposUes; Ues = ues; Turmas = turmas; }
private void Valida_Geracao_Email_Invalido_Passando_O_Resultado_Esperado(string nome, DateTime dataNascimento, string emailEsperado) { // Arrange var aluno = new AlunoEol(1, nome, string.Empty, string.Empty, dataNascimento); // Assert Assert.NotEqual(emailEsperado, aluno.Email); }
public void Valida_Definicao_Do_Nome_E_Email_Valido_Passando_Os_Resultados_Esperados(int codigoAluno, string nomePessoa, string nomeSocial, DateTime dataNascimento, string nomeEsperado, string emailEsperado) { // Arrange var alunoEol = new AlunoEol(codigoAluno, nomePessoa, nomeSocial, string.Empty, dataNascimento); // Assert Assert.NotNull(alunoEol); Assert.Equal(nomeEsperado, alunoEol.Nome); Assert.Equal(emailEsperado, alunoEol.Email); }
private void Valida_Geracao_Email_Alternativo_Para_Tratamento_De_Duplicidade_Passando_O_Resultado_Esperado(int tentativa, string nome, DateTime dataNascimento, string emailEsperado) { // Arrange var aluno = new AlunoEol(1, nome, string.Empty, string.Empty, dataNascimento); // Act aluno.DefinirEmail(tentativa); // Assert Assert.Equal(emailEsperado, aluno.Email); }
private async Task Valida_Tratamento_De_Duplicidade_No_Google_Deve_Retornar_True() { // Arrange var aluno = new AlunoEol(1, "José da Silva", string.Empty, string.Empty, new DateTime(1990, 9, 10)); var alunoComEmailTratado = new AlunoEol(1, "José da Silva", string.Empty, string.Empty, new DateTime(1990, 9, 10)); mediator.Setup(a => a.Send(It.IsAny <VerificarEmailExistenteAlunoQuery>(), It.IsAny <CancellationToken>())) .ReturnsAsync(alunoComEmailTratado); mediator.Setup(a => a.Send(It.IsAny <ExisteAlunoPorCodigoQuery>(), It.IsAny <CancellationToken>())) .ReturnsAsync(false); var googleDuplicidadeException = new GoogleApiException(string.Empty, GoogleApiExceptionMensagens.Erro409EntityAlreadyExists); googleDuplicidadeException.HttpStatusCode = HttpStatusCode.Conflict; googleDuplicidadeException.Error = new Google.Apis.Requests.RequestError { Code = (int)HttpStatusCode.Conflict, Message = GoogleApiExceptionMensagens.Erro409EntityAlreadyExists }; mediator.Setup(a => a.Send(It.IsAny <InserirAlunoGoogleCommand>(), It.IsAny <CancellationToken>())) .Throws(googleDuplicidadeException); mediator.Setup(a => a.Send(It.IsAny <IncluirUsuarioCommand>(), It.IsAny <CancellationToken>())) .ReturnsAsync(10); mediator.Setup(a => a.Send(It.IsAny <PublicaFilaRabbitCommand>(), It.IsAny <CancellationToken>())) .ReturnsAsync(true); var alunoJson = JsonConvert.SerializeObject(aluno); var mensagem = new MensagemRabbit(alunoJson); // Act var retorno = await incluirAlunoUseCase.Executar(mensagem); // Assert Assert.True(retorno); }
private async Task Valida_Tratamento_De_Excecoes_Ao_Comunicar_Com_Google_Deve_Devolver_A_Excecao_Disparada() { // Arrange var aluno = new AlunoEol(1, "José da Silva", string.Empty, string.Empty, new DateTime(1990, 9, 10)); var alunoComEmailTratado = new AlunoEol(1, "José da Silva", string.Empty, string.Empty, new DateTime(1990, 9, 10)); mediator.Setup(a => a.Send(It.IsAny <VerificarEmailExistenteAlunoQuery>(), It.IsAny <CancellationToken>())) .ReturnsAsync(alunoComEmailTratado); mediator.Setup(a => a.Send(It.IsAny <ExisteAlunoPorCodigoQuery>(), It.IsAny <CancellationToken>())) .ReturnsAsync(false); var excecao = new NullReferenceException("Erro ao se comunicar Google Classroom."); mediator.Setup(a => a.Send(It.IsAny <InserirAlunoGoogleCommand>(), It.IsAny <CancellationToken>())) .Throws(excecao); var alunoJson = JsonConvert.SerializeObject(aluno); var mensagem = new MensagemRabbit(alunoJson); // Assert await Assert.ThrowsAsync <NullReferenceException>(() => incluirAlunoUseCase.Executar(mensagem)); }