Example #1
0
        public void BuscarLivro_RetornaListaComLivrosSeIdNaoForEspecificado()
        {
            var spec   = new LivroComEditoraEAutorSpecification();
            var result = _evaluator
                         .GetQuery(_autorMock, spec)
                         .ToList();

            Assert.NotNull(result);
            Assert.Equal(3, result.Count);
        }
Example #2
0
        public void BuscarLivro_RetornaLivroComIdEspecificado()
        {
            var spec   = new LivroComEditoraEAutorSpecification(_livroId);
            var result = _evaluator
                         .GetQuery(_autorMock, spec)
                         .FirstOrDefault();

            Assert.NotNull(result);
            Assert.Equal(_livroId, result.Id);
        }
Example #3
0
        public void BuscarLivro_NuloSeNaoExistirLivroComIdEspecificado()
        {
            var idInvalido = Guid.NewGuid();

            var spec   = new LivroComEditoraEAutorSpecification(idInvalido);
            var result = _evaluator
                         .GetQuery(_autorMock, spec)
                         .FirstOrDefault();

            Assert.Null(result);
        }
Example #4
0
        public async Task <Result <LivroModel> > GetLivroAsync(Guid livroId)
        {
            Guard.Against.NullOrEmpty(livroId, "LivroId");

            var spec  = new LivroComEditoraEAutorSpecification(livroId);
            var livro = (await _repositorio.ListAsync(spec)).FirstOrDefault();

            if (livro is null)
            {
                _logger.LogWarning("Não foi encontrado livro com id igual a '{0}'", livroId);
                return(Result <LivroModel> .NotFound());
            }

            _logger.LogInformation("Livro com id '{0}' encontrada na base de dados", livroId);
            return(Result <LivroModel> .Success(
                       _mapper.Map <LivroModel>(livro)));
        }