public void ResourceCanBeAddedToActionPlan_returns_true_with_no_learning_log_records() { // Given A.CallTo(() => learningLogItemsDataService.GetLearningLogItems(GenericDelegateId)) .Returns(new List <LearningLogItem>()); // When var result = actionPlanService.ResourceCanBeAddedToActionPlan(1, GenericDelegateId); // Then result.Should().BeTrue(); }
public async Task <IActionResult> AddResourceToActionPlan( int selfAssessmentId, int resourceReferenceId, ReturnPageQuery returnPageQuery ) { var delegateId = User.GetCandidateIdKnownNotNull(); if (!actionPlanService.ResourceCanBeAddedToActionPlan(resourceReferenceId, delegateId)) { return(NotFound()); } try { await actionPlanService.AddResourceToActionPlan(resourceReferenceId, delegateId, selfAssessmentId); } catch (ResourceNotFoundException e) { if (!e.ApiIsAccessible) { return(NotFound()); } var assessment = selfAssessmentService.GetSelfAssessmentForCandidateById(delegateId, selfAssessmentId); var model = new ResourceRemovedViewModel(assessment !); return(View("ResourceRemovedErrorPage", model)); } var routeData = returnPageQuery.ToRouteDataDictionary(); routeData.Add("selfAssessmentId", selfAssessmentId.ToString()); return(RedirectToAction("RecommendedLearning", "RecommendedLearning", routeData, returnPageQuery.ItemIdToReturnTo)); }
public async Task AddResourceToActionPlan_returns_not_found_when_resource_already_in_action_plan() { // Given const int resourceReferenceId = 1; A.CallTo(() => actionPlanService.ResourceCanBeAddedToActionPlan(resourceReferenceId, DelegateId)) .Returns(false); // When var result = await controller.AddResourceToActionPlan(SelfAssessmentId, resourceReferenceId); // Then result.Should().BeNotFoundResult(); A.CallTo(() => actionPlanService.AddResourceToActionPlan(A <int> ._, A <int> ._, A <int> ._)) .MustNotHaveHappened(); }
public async Task <IActionResult> AddResourceToActionPlan(int selfAssessmentId, int resourceReferenceId) { var delegateId = User.GetCandidateIdKnownNotNull(); if (!actionPlanService.ResourceCanBeAddedToActionPlan(resourceReferenceId, delegateId)) { return(NotFound()); } await actionPlanService.AddResourceToActionPlan(resourceReferenceId, delegateId, selfAssessmentId); return(RedirectToAction("RecommendedLearning", new { selfAssessmentId })); }