public async Task ShouldSetRecordStatusTextForApprenticeshipWithUpdateReadyForReview() { MockDateTime.Setup(m => m.Now).Returns(new DateTime(1998, 12, 8)); MockMediator.Setup(m => m.SendAsync(It.IsAny <GetApprenticeshipQueryRequest>())) .ReturnsAsync(new GetApprenticeshipQueryResponse { Apprenticeship = new Apprenticeship { PaymentStatus = PaymentStatus.Active , StartDate = new DateTime(1998, 11, 1) , PendingUpdateOriginator = Originator.Provider } }); MockMediator.Setup(m => m.SendAsync(It.IsAny <GetApprenticeshipUpdateRequest>())) .ReturnsAsync(new GetApprenticeshipUpdateResponse { ApprenticeshipUpdate = new ApprenticeshipUpdate { ApprenticeshipId = 1L, Originator = Originator.Provider } }); var result = await Orchestrator.GetApprenticeship("hashedAccountId", "hashedApprenticeshipId", "UserId"); MockMediator.Verify(m => m.SendAsync(It.IsAny <GetApprenticeshipQueryRequest>()), Times.Once); result.Data.PendingChanges.Should().Be(PendingChanges.ReadyForApproval); }
public void Arrange() { _now = new DateTime(DateTime.Now.Year, 11, 01); AcademicYearValidator.Setup(m => m.IsAfterLastAcademicYearFundingPeriod).Returns(true); AcademicYearValidator.Setup(m => m.Validate(It.IsAny <DateTime>())).Returns(AcademicYearValidationResult.Success); MockDateTime.Setup(m => m.Now).Returns(_now); }
public void ThenInvalidStateExceptionOccursWhenNoViewModelReturned() { MockDateTime.Setup(m => m.Now).Returns(new DateTime(1998, 1, 1)); MockMediator.Setup(m => m.SendAsync(It.IsAny <GetApprenticeshipQueryRequest>())) .ReturnsAsync(new GetApprenticeshipQueryResponse { Apprenticeship = new Apprenticeship { PaymentStatus = PaymentStatus.Active, StartDate = new DateTime(1998, 1, 1) } }); MockMediator.Setup(m => m.SendAsync(It.IsAny <GetApprenticeshipUpdateRequest>())) .ReturnsAsync(new GetApprenticeshipUpdateResponse()); Assert.ThrowsAsync <InvalidStateException>(() => Orchestrator.GetViewChangesViewModel("hashedAccountId", "hashedApprenticeshipId", "UserId")); }
public async Task IfIsAfterR14CutoffTimeThenDateOfchangeIsStartOfacademicYear() { _testApprenticeship.StartDate = AcademicYearDateProvider.Object.CurrentAcademicYearStartDate.AddMonths(-6); // Apprenticeship was started last academic year _testApprenticeship.PauseDate = AcademicYearDateProvider.Object.CurrentAcademicYearStartDate.AddMonths(-3); // Apprenticeship was was paused last academic year MockDateTime.Setup(x => x.Now).Returns(AcademicYearDateProvider.Object.LastAcademicYearFundingPeriod.AddMinutes(1)); // resume after r14 cutoff OrchestratorResponse <ConfirmationStateChangeViewModel> response = await Orchestrator.GetChangeStatusConfirmationViewModel( "ABC123", "CDE321", ChangeStatusType.Resume, WhenToMakeChangeOptions.Immediately, null, null, "user123"); response.Data.ChangeStatusViewModel.DateOfChange.DateTime.Should().Be(AcademicYearDateProvider.Object.CurrentAcademicYearStartDate); }
public async Task ShouldSetStatusTextForApprenticeshipNotStarted(int nowMonth, int nowDay, int startMonth) { MockDateTime.Setup(m => m.Now).Returns(new DateTime(1998, nowMonth, nowDay)); MockMediator.Setup(m => m.SendAsync(It.IsAny <GetApprenticeshipQueryRequest>())) .ReturnsAsync(new GetApprenticeshipQueryResponse { Apprenticeship = new Apprenticeship { PaymentStatus = PaymentStatus.Active, StartDate = new DateTime(1998, startMonth, 1) } }); MockMediator.Setup(m => m.SendAsync(It.IsAny <GetApprenticeshipUpdateRequest>())) .ReturnsAsync(new GetApprenticeshipUpdateResponse()); var result = await Orchestrator.GetApprenticeship("hashedAccountId", "hashedApprenticeshipId", "UserId"); MockMediator.Verify(m => m.SendAsync(It.IsAny <GetApprenticeshipQueryRequest>()), Times.Once); result.Data.Status.Should().Be("Waiting to start"); }
protected void SetLocalDateTime(DateTime now) => MockDateTime .Setup(m => m.Now) .Returns(now);
protected void SetUtcDateTime(DateTime now) => MockDateTime .Setup(m => m.UtcNow) .Returns(now);