public async Task Handle_ThrowsUnauthorizedUserReportException_WhenThereIsNoUserLoggedIn() { //arrange var query = new GetReportsQuery(RoleEnum.None); //act + assert await Assert.ThrowsAsync <GetReportUnauthorizedUserException>(async() => await _handler.Handle(query) ); }
public async Task Handle_ReturnsNoReports_WhenDatabaseIsEmpty(RoleEnum role) { //arrange var query = new GetReportsQuery(role); //act List <GetReportViewModel>?actual = await _handler.Handle(query); //assert Assert.Empty(actual); }
public override async Task <ActionResult <IEnumerable <ReportDto> > > HandleAsync(CancellationToken cancellationToken = default) { var user = _userAccessor.Get(); if (user == null) { return(Unauthorized()); } var query = new GetReportsQuery(user.UserId, user.CompanyId); return(Ok(await _mediator.Send(query))); }
public async Task Handle_ReturnsAllTagEditableRelatedReports_WhenUserHasTagEditRole() { //arrange var prompt = new Prompt(); DbContext.Reports.AddRange( new Report { ReportReason = ReportReason.Duplicate, Prompt = prompt }, new Report { ReportReason = ReportReason.IllegalContent, Prompt = prompt }, new Report { ReportReason = ReportReason.IncorrectTags, Prompt = prompt }, new Report { ReportReason = ReportReason.LowQuality, Prompt = prompt }, new Report { ReportReason = ReportReason.NeedsCorrection, Prompt = prompt }, new Report { ReportReason = ReportReason.Other, Prompt = prompt }, new Report { ReportReason = ReportReason.UntaggedNsfw, Prompt = prompt }); await DbContext.SaveChangesAsync(); var query = new GetReportsQuery(RoleEnum.TagEdit); //act List <GetReportViewModel>?actual = await _handler.Handle(query); //assert Assert.Equal(2, actual.Count); }
public async Task <ActionResult <List <ReportDto> > > GetReports([FromHybrid] GetReportsQuery query) { var result = await _mediator.Send(query); return(Ok(result)); }