public async Task UpdateAssessorReviewStatus_calls_mediator() { _mediator.Setup(x => x.Send(It.IsAny <GetApplicationRequest>(), It.IsAny <CancellationToken>())) .ReturnsAsync(() => new Apply()); var request = new RoatpAssessorController.UpdateAssessorReviewStatusCommand { UserId = _userId, Status = AssessorReviewStatus.Approved }; await _controller.UpdateAssessorReviewStatus(_applicationId, request); _mediator.Verify(x => x.Send(It.Is <UpdateAssessorReviewStatusRequest>(r => r.ApplicationId == _applicationId && r.UserId == request.UserId && r.Status == request.Status), It.IsAny <CancellationToken>()), Times.Once); }
public async Task UpdateAssessorReviewStatus_creates_moderator_review_outcomes_when_both_assessors_have_approved(string assessor1ReviewStatus, string assessor2ReviewStatus, bool expectModeratorReviewCreation) { _mediator.Setup(x => x.Send(It.IsAny <GetApplicationRequest>(), It.IsAny <CancellationToken>())) .ReturnsAsync(() => new Apply { Assessor1ReviewStatus = assessor1ReviewStatus, Assessor2ReviewStatus = assessor2ReviewStatus }); var request = new RoatpAssessorController.UpdateAssessorReviewStatusCommand { UserId = _userId, UserName = _userName, Status = AssessorReviewStatus.Approved }; await _controller.UpdateAssessorReviewStatus(_applicationId, request); _moderatorReviewCreationService.Verify(x => x.CreateEmptyReview(_applicationId, _userId, _userName), Times.Exactly(expectModeratorReviewCreation ? 1 : 0)); }