public override Expression <Func <Blog, bool> > SatisfiedBy() { Criterion <Blog> c = new TrueCriterion <Blog>(); if (IsEnabled.HasValue) { c &= IsEnabled.Value ? EnabledCriteria.Enabled <Blog>() : EnabledCriteria.Disabled <Blog>(); } if (string.IsNullOrEmpty(Keyword)) { c &= BlogCriteria.Keyword(Keyword); } return(c.SatisfiedBy()); }
public async Task GetPagedResultAsync_returns_data() { //Arrange await SeedAsync(); using var db = _fixture.GetConnection(); var blogCriteria = new BlogCriteria { Search = "category", CurrentPage = 2, PageSize = 4 }; var expected = await db.Blogs.Where(x => x.Category.Contains(blogCriteria.Search)).GetPagedResultAsync(blogCriteria); var expected_item = expected.Results.First(); IBlogRepository service = new BlogService(db); //Act PagedResult <Blog> result = await service.GetPagedAsync(blogCriteria); //Assert var result_item = result.Results.First(); Assert.Equal(expected_item.Title, result_item.Title); }
public async Task <IActionResult> Get([FromQuery] BlogCriteria blogCriteria) { var result = await _service.GetPagedAsync(blogCriteria); return(Ok(result)); }