public void SelfAssessment_action_should_return_view_result()
        {
            // Given
            var selfAssessment = SelfAssessmentHelper.CreateDefaultSelfAssessment();
            var supervisors    = new List <SelfAssessmentSupervisor>();

            A.CallTo(() => selfAssessmentService.GetSelfAssessmentForCandidateById(CandidateId, SelfAssessmentId))
            .Returns(selfAssessment);
            var expectedModel = new SelfAssessmentDescriptionViewModel(selfAssessment, supervisors);

            // When
            var result = controller.SelfAssessment(SelfAssessmentId);

            // Then
            result.Should().BeViewResult()
            .WithViewName("SelfAssessments/SelfAssessmentDescription")
            .Model.Should().BeEquivalentTo(expectedModel);
        }
Exemple #2
0
        public IActionResult SelfAssessment(int selfAssessmentId)
        {
            var candidateId    = User.GetCandidateIdKnownNotNull();
            var selfAssessment = selfAssessmentService.GetSelfAssessmentForCandidateById(candidateId, selfAssessmentId);

            if (selfAssessment == null)
            {
                logger.LogWarning(
                    $"Attempt to display self assessment description for candidate {candidateId} with no self assessment"
                    );
                return(RedirectToAction("StatusCode", "LearningSolutions", new { code = 403 }));
            }

            selfAssessmentService.IncrementLaunchCount(selfAssessmentId, candidateId);
            selfAssessmentService.UpdateLastAccessed(selfAssessmentId, candidateId);
            var supervisors = selfAssessmentService.GetSupervisorsForSelfAssessmentId(
                selfAssessmentId,
                candidateId
                ).ToList();
            var model = new SelfAssessmentDescriptionViewModel(selfAssessment, supervisors);

            return(View("SelfAssessments/SelfAssessmentDescription", model));
        }