public async Task MeetingControllerRecurUnauthorised() { var data = new MeetingApiDataHandler(); var logic = new InteractApiLogicHandler(); var viewModel = new RecurViewModel() { MeetingId = MeetingData.FirstId, When = DateHelper.FormatDayStart(DateTime.UtcNow) }; data.Result.Setup(m => m.Execute(It.IsAny <Loader <Meeting> >())).Returns(MeetingData.GetFirst()); var controller = new MeetingController(data, logic) { CurrentUser = NonTenantUser }; var result = await controller.Recur(viewModel) as UnauthorizedResult; result.Should().NotBeNull(); result.Should().BeOfType <UnauthorizedResult>(); data.HasExecuted.Should().BeTrue(); data.HasCommitted.Should().BeFalse(); data.Result.Verify(s => s.Execute(It.IsAny <Loader <Meeting> >()), Times.Once); data.Result.Verify(s => s.Execute(It.IsAny <Persist <Meeting> >()), Times.Never()); }
public async Task MeetingControllerRecurAttendFail() { var data = new MeetingApiDataHandler(); var logic = new InteractApiLogicHandler(); var viewModel = new RecurViewModel() { MeetingId = MeetingData.FirstId, When = DateHelper.FormatDayStart(DateTime.UtcNow) }; data.Result.Setup(m => m.Execute(It.IsAny <Loader <Meeting> >())).Returns(MeetingData.GetFirst()); data.Result.Setup(m => m.Execute(It.IsAny <Persist <Meeting> >())).Returns(MeetingData.GetSecond()); logic.Result.Setup(m => m.Execute(It.IsAny <AttendCheck>())).Returns(false); var controller = new MeetingController(data, logic) { CurrentUser = StandardUser }; var result = await controller.Recur(viewModel) as OkObjectResult; result.Should().NotBeNull(); result.Should().BeOfType <OkObjectResult>(); result.Value.Should().NotBeNull(); var check = result.Value as ConfirmViewModel; check.Success.Should().BeFalse(); data.HasExecuted.Should().BeTrue(); data.HasCommitted.Should().BeFalse(); data.Result.Verify(s => s.Execute(It.IsAny <Loader <Meeting> >()), Times.Once); data.Result.Verify(s => s.Execute(It.IsAny <Persist <Meeting> >()), Times.Never()); }
public async Task MeetingControllerCloseNotDone() { var data = new MeetingApiDataHandler(); var logic = new InteractApiLogicHandler(); data.Result.Setup(m => m.Execute(It.IsAny <MeetingById>())).Returns(MeetingData.GetFirst()); data.Result.Setup(m => m.Execute(It.IsAny <Persist <Meeting> >())).Returns(MeetingData.GetSecond()); var attendance = AttendanceData.GetFirst(); attendance.HasAttended = false; data.ResultAttendances = new List <Attendance>() { attendance }; var controller = new MeetingController(data, logic) { CurrentUser = StandardUser }; var result = await controller.Close(MeetingData.FirstId) as OkObjectResult; result.Should().NotBeNull(); result.Should().BeOfType <OkObjectResult>(); result.Value.Should().NotBeNull(); var check = result.Value as ConfirmViewModel; check.Success.Should().BeFalse(); data.HasExecuted.Should().BeTrue(); data.HasCommitted.Should().BeFalse(); data.Result.Verify(s => s.Execute(It.IsAny <MeetingById>()), Times.Once); data.Result.Verify(s => s.Execute(It.IsAny <Persist <Meeting> >()), Times.Never()); }