Beispiel #1
0
        public void Edit_Course_Options_page_redirects_to_Index_when_course_details_are_updated()
        {
            // Given
            const int customisationId = 1;
            var       courseOptions   = new CourseOptions
            {
                Active              = true,
                DiagObjSelect       = true,
                HideInLearnerPortal = true,
                SelfRegister        = true,
            };

            A.CallTo(
                () => courseService.UpdateCourseOptions(
                    A <CourseOptions> ._,
                    customisationId
                    )
                ).DoesNothing();

            var editCourseOptionsViewModel = new EditCourseOptionsViewModel(courseOptions, customisationId);

            // When
            var result = controller.EditCourseOptions(customisationId, editCourseOptionsViewModel);

            // Then
            A.CallTo(
                () => courseService.UpdateCourseOptions(
                    A <CourseOptions> ._,
                    customisationId
                    )
                ).MustHaveHappened();

            result.Should().BeRedirectToActionResult().WithControllerName("ManageCourse").WithActionName("Index");
        }
Beispiel #2
0
 public void UpdateCourseOptions(CourseOptions courseOptions, int customisationId)
 {
     courseDataService.UpdateCourseOptions(
         courseOptions,
         customisationId
         );
 }
 public EditCourseOptionsViewModel(CourseOptions courseOptions, int customisationId)
 {
     Active                       = courseOptions.Active;
     AllowSelfEnrolment           = courseOptions.SelfRegister;
     DiagnosticObjectiveSelection = courseOptions.DiagObjSelect;
     HideInLearningPortal         = courseOptions.HideInLearnerPortal;
     CustomisationId              = customisationId;
     SetUpCheckboxes(courseOptions.DiagAssess, true);
 }
        public IActionResult EditCourseOptions(
            int customisationId,
            EditCourseOptionsViewModel editCourseOptionsViewModel
            )
        {
            var courseOptions = new CourseOptions
            {
                Active              = editCourseOptionsViewModel.Active,
                SelfRegister        = editCourseOptionsViewModel.AllowSelfEnrolment,
                HideInLearnerPortal = editCourseOptionsViewModel.HideInLearningPortal,
                DiagObjSelect       = editCourseOptionsViewModel.DiagnosticObjectiveSelection,
            };

            courseService.UpdateCourseOptions(courseOptions, customisationId);
            return(RedirectToAction("Index", "ManageCourse", new { customisationId }));
        }
Beispiel #5
0
        public EditCourseOptionsViewModel(CourseOptions courseOptions, int customisationId)
        {
            Active                       = courseOptions.Active;
            AllowSelfEnrolment           = courseOptions.SelfRegister;
            DiagnosticObjectiveSelection = courseOptions.DiagObjSelect;
            HideInLearningPortal         = courseOptions.HideInLearnerPortal;
            CustomisationId              = customisationId;

            if (courseOptions.DiagAssess)
            {
                Checkboxes.Add(
                    new CheckboxListItemViewModel(
                        nameof(DiagnosticObjectiveSelection),
                        "Allow diagnostic objective selection",
                        "Allow the learner to choose which objectives to be assessed against when starting a diagnostic assessment."
                        )
                    );
            }
        }
Beispiel #6
0
        public void UpdateCourseOptions_updates_course_options_successfully()
        {
            using var transaction = new TransactionScope();

            // Given
            const int customisationId = 100;
            const int centreId        = 101;
            int?      categoryId      = null;

            var defaultCourseOptions = new CourseOptions
            {
                Active              = true,
                DiagObjSelect       = true,
                SelfRegister        = false,
                HideInLearnerPortal = false,
            };

            try
            {
                // When
                courseDataService.UpdateCourseOptions(defaultCourseOptions, customisationId);
                var updatedCourseOptions = courseDataService.GetCourseOptionsFilteredByCategory(
                    customisationId,
                    centreId,
                    categoryId
                    ) !;

                // Then
                using (new AssertionScope())
                {
                    updatedCourseOptions.Active.Should().BeTrue();
                    updatedCourseOptions.DiagObjSelect.Should().BeTrue();
                    updatedCourseOptions.SelfRegister.Should().BeFalse();
                    updatedCourseOptions.HideInLearnerPortal.Should().BeFalse();
                }
            }
            finally
            {
                transaction.Dispose();
            }
        }