public async Task <IActionResult> Filter([FromBody] MsgFilter viewModel) { if (!viewModel.AuthorKeys.Any() && !viewModel.RecipientKeys.Any()) { viewModel.RecipientKeys.Add(CurrentUser.Id); } var query = new MsgDisplayByFilter { Filter = viewModel, CurrentUser = CurrentUser }; await DataHandler.Execute(query); return(Ok(new PagedResult <IEnumerable <MsgDisplay> > { Data = Secure(query.Result), Paging = query.Paging, Success = true })); }
public async Task MsgDisplayByFilterDataTestPrivate() { var filter = new MsgFilter { PrivateRestrict = true, Take = 10 }; using var store = GetDocumentStore(); using var session = store.OpenAsyncSession(); var query = new MsgDisplayByFilter { Session = session, Filter = filter, CurrentUser = StandardUser }; await query.Execute(); query.Result.Should().NotBeNull(); query.Result.Count().Should().Be(0); }
public async Task MsgDisplayByFilterDataTestSearch() { var filter = new MsgFilter { Search = "test", Take = 10 }; using var store = GetDocumentStore(); using var session = store.OpenAsyncSession(); var query = new MsgDisplayByFilter { Session = session, Filter = filter, CurrentUser = StandardUser }; await query.Execute(); query.Result.Should().NotBeNull(); query.Result.Count().Should().Be(1); Assert.That(query.Result.First(), Is.DeepEqualTo(MsgData.GetFirstDisplay(false))); }
public async Task MsgDisplayByFilterDataTestDate() { var filter = new MsgFilter { DateFrom = DateTime.UtcNow.AddDays(-1), DateTo = DateTime.UtcNow.AddDays(1), Take = 10, Skip = 1 }; using var store = GetDocumentStore(); using var session = store.OpenAsyncSession(); var query = new MsgDisplayByFilter { Session = session, Filter = filter, CurrentUser = StandardUser }; await query.Execute(); query.Result.Should().NotBeNull(); query.Result.Count().Should().Be(0); filter.Skip.Should().Be(1); filter.Start.Should().Be(10); query.Favourites.Should().Be(0); }