Example #1
0
 public EditCourseOptionsFormData(CourseOptionsTempData tempData)
 {
     Active                       = tempData.Active;
     AllowSelfEnrolment           = tempData.AllowSelfEnrolment;
     DiagnosticObjectiveSelection = tempData.DiagnosticObjectiveSelection;
     HideInLearningPortal         = tempData.HideInLearningPortal;
 }
        public void Summary_post_resets_temp_data_and_redirects_to_confirmation()
        {
            // Given
            var applicationName   = application.ApplicationName;
            var customisationName = GetSetCourseDetailsViewModel().CustomisationName;

            var tutorial    = new Tutorial(1, "Tutorial name", true, true);
            var sectionData = new SectionContentTempData(
                new List <Tutorial> {
                tutorial
            }
                );

            var setCourseOptionsModel = new CourseOptionsTempData(true, true, true, true);

            SetAddNewCentreCourseTempData(
                application,
                GetSetCourseDetailsData(GetSetCourseDetailsViewModel()),
                setCourseOptionsModel,
                new CourseContentTempData(),
                new List <SectionContentTempData> {
                sectionData
            }
                );

            A.CallTo(
                () => courseService.CreateNewCentreCourse(A <Customisation> ._)
                ).Returns(1);

            A.CallTo(
                () => tutorialService.UpdateTutorialsStatuses(A <IEnumerable <Tutorial> > ._, A <int> ._)
                ).DoesNothing();

            // When
            var result = controller.CreateNewCentreCourse();

            // Then
            using (new AssertionScope())
            {
                A.CallTo(
                    () => courseService.CreateNewCentreCourse(A <Customisation> ._)
                    ).MustHaveHappenedOnceExactly();
                A.CallTo(
                    () => tutorialService.UpdateTutorialsStatuses(A <IEnumerable <Tutorial> > ._, A <int> ._)
                    ).MustHaveHappenedOnceExactly();
                controller.TempData.Peek <AddNewCentreCourseTempData>().Should().BeNull();
                controller.TempData.Peek("customisationId").Should().Be(1);
                controller.TempData.Peek("applicationName").Should().Be(applicationName);
                controller.TempData.Peek("customisationName").Should().Be(customisationName);
                result.Should().BeRedirectToActionResult().WithActionName("Confirmation");
            }
        }
 private void SetAddNewCentreCourseTempData(
     ApplicationDetails?selectedApplication                = null,
     CourseDetailsTempData?setCourseDetailsModel           = null,
     CourseOptionsTempData setCourseOptionsTempData        = null !,