예제 #1
0
        public void Set_Model_CurrentSchedule_Property_Correctly()
        {
            var mockedView            = new Mock <IManagingScheduleView>();
            var mockedScheduleService = new Mock <IScheduleDataService>();
            var mockedClassOfStudentsManagementService = new Mock <IClassOfStudentsManagementService>();
            var mockedSubjectManagementService         = new Mock <ISubjectManagementService>();

            var model = new ManagingScheduleControlModel();
            var args  = new ManagingScheduleEventArgs()
            {
                ClassId     = 1,
                DayOfWeekId = 2
            };

            mockedView.SetupGet(x => x.Model).Returns(model);

            var presenter = new ManagingSchedulePresenter(
                mockedView.Object,
                mockedScheduleService.Object,
                mockedClassOfStudentsManagementService.Object,
                mockedSubjectManagementService.Object);

            var expected = new List <ManagingScheduleModel>();

            mockedScheduleService
            .Setup(x => x.GetClassScheduleForTheDay(It.IsAny <int>(), It.IsAny <int>()))
            .Returns(expected);

            mockedView.Raise(x => x.EventBindScheduleData += null, args);

            Assert.AreEqual(expected, mockedView.Object.Model.CurrentSchedule);
        }
 private void BindScheduleData(object sender, ManagingScheduleEventArgs e)
 {
     this.View.Model.CurrentSchedule = this.scheduleService.GetClassScheduleForTheDay(e.DayOfWeekId, e.ClassId);
 }