public async Task ObterPorId_DeveRetornarNullQuandoNaoForEncontradoNoBanco()
        {
            var query        = new ObterUsuarioPorIdQuery(Guid.NewGuid());
            var queryHandler = new UsuarioQueryHandler(_usuarioRepository);

            var usuarioBanco = await queryHandler.Handle(query, CancellationToken.None);

            usuarioBanco.Should().BeNull();
        }
Пример #2
0
        public async Task Handle_UsuarioHandler_RetornarUsuarioPorId()
        {
            var query = new ObterUsuarioPorIdQuery
            {
                Id = _usuarioId
            };

            var usuarioResult = await _mediator.Send(query);

            usuarioResult.Email.Should().Be("*****@*****.**");
        }
        public async Task ObterPorId_DeveInvalidarQueryQuandoIdForVazio()
        {
            var query        = new ObterUsuarioPorIdQuery(Guid.Empty);
            var queryHandler = new UsuarioQueryHandler(_usuarioRepository);

            await queryHandler.Handle(query, CancellationToken.None);

            (await query.EhValido()).Should().Be(false);
            query.ValidationResult.Errors
            .Should()
            .Contain(error => error.ErrorMessage == "Id deve possuir conteúdo");
        }
Пример #4
0
        public async Task <UsuarioModel> ObterUsuarioPorIdAsync(Guid usuarioId)
        {
            var obterUsuarioPorIdQuery = new ObterUsuarioPorIdQuery
            {
                Id = usuarioId
            };

            var usuario = await _mediator
                          .Send(obterUsuarioPorIdQuery);

            return(usuario);
        }
        public async Task ObterPorId_DeveRetornarUsuarioQuandoForEncontradoNoBanco()
        {
            var usuario = UsuarioFactory.GerarUsuario();
            await _context.Usuarios.AddAsync(usuario);

            await _context.SaveChangesAsync();

            var query        = new ObterUsuarioPorIdQuery(usuario.Id);
            var queryHandler = new UsuarioQueryHandler(_usuarioRepository);

            var usuarioBanco = await queryHandler.Handle(query, CancellationToken.None);

            usuarioBanco.Should().BeEquivalentTo(usuario);
        }
Пример #6
0
 public async Task <UsuarioModel> Handle(ObterUsuarioPorIdQuery request, CancellationToken cancellationToken)
 {
     return(await _usuarioServico.ObterUsuarioPorIdAsync(request.Id));
 }