Example #1
0
        public virtual void SetUp()
        {
            MockCommitmentRespository         = new Mock <ICommitmentRepository>();
            MockApprenticeshipRespository     = new Mock <IApprenticeshipRepository>();
            MockHistoryRepository             = new Mock <IHistoryRepository>();
            MockDataLockRepository            = new Mock <IDataLockRepository>();
            MockCurrentDateTime               = new Mock <ICurrentDateTime>();
            MockAcademicYearValidator         = new Mock <IAcademicYearValidator>();
            MockCommitmentsLogger             = new Mock <ICommitmentsLogger>();
            MockApprenticeshipEventsPublisher = new Mock <IApprenticeshipEventsPublisher>();
            MockV2EventsPublisher             = new Mock <IV2EventsPublisher>();

            Handler = new UpdateApprenticeshipStopDateCommandHandler(
                MockCommitmentRespository.Object,
                MockApprenticeshipRespository.Object,
                new UpdateApprenticeshipStopDateCommandValidator(),
                MockCurrentDateTime.Object,
                MockCommitmentsLogger.Object,
                MockHistoryRepository.Object,
                MockAcademicYearValidator.Object,
                MockApprenticeshipEventsPublisher.Object,
                new ApprenticeshipEventsList(),
                MockDataLockRepository.Object,
                MockV2EventsPublisher.Object);
        }
        public void Setup()
        {
            _newStopDate = DateTime.UtcNow.AddMonths(-2).Date;

            _validCommand = new UpdateApprenticeshipStopDateCommand
            {
                EmployerAccountId = 12L,
                ApprenticeshipId  = 4L,
                UserId            = "externalUserId",
                NewStopDate       = _newStopDate,
                CommitmentId      = 123
            };

            _testApprenticeship = new Apprenticeship
            {
                Id        = 4L,
                FirstName = "TEST",
                LastName  = "APPRENTICE",
                StartDate = DateTime.UtcNow.AddMonths(-2).Date,
                StopDate  = DateTime.UtcNow.AddMonths(6).Date
            };

            _mockCommitmentApi = new Mock <IEmployerCommitmentApi>();
            _mockCommitmentApi.Setup(x => x.GetEmployerCommitment(It.IsAny <long>(), It.IsAny <long>())).ReturnsAsync(new CommitmentView {
                ProviderId = 456L
            });
            _mockCommitmentApi.Setup(x => x.GetEmployerApprenticeship(It.IsAny <long>(), It.IsAny <long>()))
            .ReturnsAsync(_testApprenticeship);

            _mockCurrentDateTime = new Mock <ICurrentDateTime>();
            _mockCurrentDateTime.SetupGet(x => x.Now).Returns(DateTime.UtcNow);

            _providerEmailNotificationService = new Mock <IProviderEmailNotificationService>();
            _providerEmailNotificationService.Setup(x =>
                                                    x.SendProviderApprenticeshipStopEditNotification(It.IsAny <Apprenticeship>(), It.IsAny <DateTime>()))
            .Returns(Task.CompletedTask);

            _handler = new UpdateApprenticeshipStopDateCommandHandler(
                _mockCommitmentApi.Object,
                _mockCurrentDateTime.Object,
                _validator,
                _providerEmailNotificationService.Object
                );
        }