public void SetUp()
        {
            _oversightReview = new OversightReview
            {
                ApplicationId = _applicationId,
                Status        = OversightReviewStatus.Unsuccessful
            };

            _oversightReviewRepository = new Mock <IOversightReviewRepository>();
            _oversightReviewRepository.Setup(x => x.GetByApplicationId(_applicationId)).ReturnsAsync(() => _oversightReview);

            _command = new MakeAppealCommand
            {
                ApplicationId = _applicationId,
                HowFailedOnPolicyOrProcesses = "howFailedOnPolicyOrProcesses",
                HowFailedOnEvidenceSubmitted = "howFailedOnEvidenceSubmitted",
                UserId   = "userId",
                UserName = "******"
            };

            _appealRepository = new Mock <IAppealRepository>();
            _appealRepository.Setup(x => x.Add(It.IsAny <Appeal>()));

            _auditService = new Mock <IAuditService>();
            _auditService.Setup(x => x.StartTracking(UserAction.UploadAppealFile, _command.UserId, _command.UserName));
            _auditService.Setup(x => x.AuditInsert(It.IsAny <AppealFile>()));

            _handler = new MakeAppealCommandHandler(_oversightReviewRepository.Object, _appealRepository.Object, _auditService.Object);
        }
        public async Task <IActionResult> MakeAppeal(Guid applicationId, [FromBody] MakeAppealRequest request)
        {
            var command = new MakeAppealCommand
            {
                ApplicationId = applicationId,
                HowFailedOnPolicyOrProcesses = request.HowFailedOnPolicyOrProcesses,
                HowFailedOnEvidenceSubmitted = request.HowFailedOnEvidenceSubmitted,
                UserId   = request.UserId,
                UserName = request.UserName
            };

            await _mediator.Send(command);

            return(new OkResult());
        }