public async Task CriarAsync_DeveRetornarSucesso_QuandoIncluirUsuario()
        {
            //Arrange
            A.CallTo(() => _usuarioDominioFake.CriarAsync(_usuario.Usuario, _usuario.Senha));

            var expect = new UsuarioResult
            {
                Sucesso  = true,
                Usuario  = _usuario.Usuario,
                Mensagem = Messages.Usuario_S001
            };

            //Act
            var result = await _usuarioServico.CriarAsync(_usuario);

            //Assert
            result.Should().BeEquivalentTo(expect);
        }
 public MiddlewareFixture()
 {
     _usuario    = new AutoFaker <UsuarioRequest>().Generate();
     _httpClient = GetHttpClient();
     A.CallTo(() => _usuarioServicoFake
              .CriarAsync(A <UsuarioRequest>
                          .That
                          .Matches(u => u.Usuario == _usuario.Usuario && u.Senha == _usuario.Senha)))
     .ThrowsAsync(new Exception());
 }
        public async Task <IActionResult> Post([FromBody] UsuarioRequest login)
        {
            if (string.IsNullOrWhiteSpace(login.Usuario) || string.IsNullOrWhiteSpace(login.Senha))
            {
                return(BadRequest());
            }

            var result = await _usuarioService.CriarAsync(login);

            if (result.Sucesso)
            {
                return(Ok(result));
            }
            else
            {
                return(UnprocessableEntity(result));
            }
        }