public Task <PagedResult <PaymentClaim> > BrowseAsync(GetPaymentClaims query) { if (query is null) { return(Task.FromResult(PagedResult <PaymentClaim> .Empty)); } var paymentClaims = GetAll(); if (paymentClaims.Length == 0) { return(Task.FromResult(PagedResult <PaymentClaim> .Empty)); } return(Task.FromResult(Query(paymentClaims.AsEnumerable(), query.DepositId, query.AssetId, query.Consumer, query.OnlyUnclaimed, query.OnlyPending).ToArray().Paginate(query))); }
public async Task Can_browse_with_query_and_pagination() { IMongoDatabase database = MongoForTest.Provider.GetDatabase(); var repo = new PaymentClaimMongoRepository(database); PaymentClaim paymentClaim = BuildDummyPaymentClaim(); await repo.AddAsync(paymentClaim); GetPaymentClaims query = new GetPaymentClaims(); query.Consumer = paymentClaim.Consumer; query.AssetId = paymentClaim.AssetId; query.DepositId = paymentClaim.DepositId; query.OnlyPending = false; query.OnlyUnclaimed = false; query.Page = 0; query.Results = 10; await repo.BrowseAsync(query); }
public async Task <PagedResult <PaymentClaim> > BrowseAsync(GetPaymentClaims query) => query is null ? PagedResult <PaymentClaim> .Empty : await Query(query.DepositId, query.AssetId, query.Consumer, query.OnlyUnclaimed, query.OnlyPending) .PaginateAsync(query);