public void BuscarLivro_RetornaListaComLivrosSeIdNaoForEspecificado() { var spec = new LivroComEditoraEAutorSpecification(); var result = _evaluator .GetQuery(_autorMock, spec) .ToList(); Assert.NotNull(result); Assert.Equal(3, result.Count); }
public void BuscarLivro_RetornaLivroComIdEspecificado() { var spec = new LivroComEditoraEAutorSpecification(_livroId); var result = _evaluator .GetQuery(_autorMock, spec) .FirstOrDefault(); Assert.NotNull(result); Assert.Equal(_livroId, result.Id); }
public void BuscarLivro_NuloSeNaoExistirLivroComIdEspecificado() { var idInvalido = Guid.NewGuid(); var spec = new LivroComEditoraEAutorSpecification(idInvalido); var result = _evaluator .GetQuery(_autorMock, spec) .FirstOrDefault(); Assert.Null(result); }
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))); }