private void SetupTestData() { Db = new ProviderCommitmentsDbContext(new DbContextOptionsBuilder <ProviderCommitmentsDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .ConfigureWarnings(warnings => warnings.Throw(RelationalEventId.QueryClientEvaluationWarning)) .EnableSensitiveDataLogging() .Options); ApprenticeshipId = Fixture.Create <long>(); ApprenticeshipChangeOfPartyRequestResult = Fixture.Create <ChangeOfPartyRequest>(); Cohort = new Cohort { Id = 1000, ProviderId = Fixture.Create <long>(), AccountLegalEntity = new AccountLegalEntity() }; Apprenticeship = new Mock <Apprenticeship>(); Apprenticeship.Setup(x => x.Id).Returns(ApprenticeshipId); Apprenticeship.Setup(x => x.CommitmentId).Returns(1000); Apprenticeship.Setup(x => x.Cohort).Returns(Cohort); Apprenticeship.Setup(x => x.CreateChangeOfPartyRequest(It.IsAny <ChangeOfPartyRequestType>(), It.IsAny <Party>(), It.IsAny <long>(), It.IsAny <int?>(), It.IsAny <DateTime?>(), It.IsAny <DateTime?>(), It.IsAny <UserInfo>(), It.IsAny <DateTime>())) .Returns(ApprenticeshipChangeOfPartyRequestResult); Db.Apprenticeships.Add(Apprenticeship.Object); Db.Cohorts.Add(Cohort); Db.SaveChanges(); }
public AddCohortCommandHandlerTestFixture() { Db = new ProviderCommitmentsDbContext(new DbContextOptionsBuilder <ProviderCommitmentsDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .ConfigureWarnings(warnings => warnings.Throw(RelationalEventId.QueryClientEvaluationWarning)) .Options); EncodingServiceMock = new Mock <IEncodingService>(); DraftApprenticeshipDetailsMapperMock = new Mock <IOldMapper <AddCohortCommand, DraftApprenticeshipDetails> >(); DraftApprenticeshipDetailsMapperMock.Setup(x => x.Map(It.IsAny <AddCohortCommand>())) .ReturnsAsync(() => new DraftApprenticeshipDetails()); var commitment = new Cohort(); commitment.Apprenticeships.Add(new DraftApprenticeship()); CohortDomainServiceMock = new Mock <ICohortDomainService>(); CohortDomainServiceMock.Setup(x => x.CreateCohort(It.IsAny <long>(), It.IsAny <long>(), It.IsAny <long>(), It.IsAny <long?>(), It.IsAny <DraftApprenticeshipDetails>(), It.IsAny <UserInfo>(), It.IsAny <CancellationToken>())) .ReturnsAsync(commitment); Logger = new TestLogger(); UserInfo = new UserInfo(); }
public ApprenticeshipWithChangeOfPartyCreatedEventHandlerTestsFixture() { var autoFixture = new Fixture(); _event = autoFixture.Create <ApprenticeshipWithChangeOfPartyCreatedEvent>(); _apprenticeship = new Apprenticeship(); _apprenticeship.SetValue(x => x.Id, _event.ApprenticeshipId); _apprenticeship.SetValue(x => x.Cohort, new Cohort { AccountLegalEntity = new AccountLegalEntity() }); _changeOfPartyRequest = new Mock <ChangeOfPartyRequest>(); _changeOfPartyRequest.Setup(x => x.Id).Returns(_event.ChangeOfPartyRequestId); _changeOfPartyRequest.Setup(x => x.SetNewApprenticeship(_apprenticeship, _event.UserInfo, Party.Employer)); _db = new ProviderCommitmentsDbContext(new DbContextOptionsBuilder <ProviderCommitmentsDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .ConfigureWarnings(w => w.Throw(RelationalEventId.QueryClientEvaluationWarning)) .Options); _db.Apprenticeships.Add(_apprenticeship); _db.ChangeOfPartyRequests.Add(_changeOfPartyRequest.Object); _db.SaveChanges(); _messageHandlerContext = new Mock <IMessageHandlerContext>(); _handler = new ApprenticeshipWithChangeOfPartyCreatedEventHandler( new Lazy <ProviderCommitmentsDbContext>(() => _db), Mock.Of <ILogger <ApprenticeshipWithChangeOfPartyCreatedEventHandler> >()); }
public DeleteCohortHandlerTestsFixture() { _autoFixture = new Fixture(); CohortId = _autoFixture.Create <long>(); UserInfo = _autoFixture.Create <UserInfo>(); Logger = new Mock <ILogger <DeleteCohortHandler> >(); AuthenticationService = new Mock <IAuthenticationService>(); Command = new DeleteCohortCommand { CohortId = CohortId, UserInfo = UserInfo }; Db = new ProviderCommitmentsDbContext(new DbContextOptionsBuilder <ProviderCommitmentsDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()).ConfigureWarnings(warnings => warnings.Throw(RelationalEventId.QueryClientEvaluationWarning)).Options); Sut = new DeleteCohortHandler(new Lazy <ProviderCommitmentsDbContext>(() => Db), Logger.Object, AuthenticationService.Object); UnitOfWorkContext = new UnitOfWorkContext(); DraftApprenticeship = new DraftApprenticeship { Id = _autoFixture.Create <long>(), FirstName = "Test", LastName = "Test", ReservationId = _autoFixture.Create <Guid>() }; }
public TransferRequestCreatedEventHandlerTestsFixture() { var fixture = new Fixture(); UnitOfWorkContext = new UnitOfWorkContext(); MessageHandlerContext = new Mock <IMessageHandlerContext>(); LegacyTopicMessagePublisher = new Mock <ILegacyTopicMessagePublisher>(); Db = new ProviderCommitmentsDbContext(new DbContextOptionsBuilder <ProviderCommitmentsDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .ConfigureWarnings(w => w.Throw(RelationalEventId.QueryClientEvaluationWarning)) .Options); Sut = new TransferRequestCreatedEventHandler(LegacyTopicMessagePublisher.Object, Mock.Of <ILogger <TransferRequestCreatedEvent> >(), new Lazy <ProviderCommitmentsDbContext>(() => Db)); Cohort = new Cohort( fixture.Create <long>(), fixture.Create <long>(), fixture.Create <long>(), null, Party.Employer, "", new UserInfo()) { EmployerAccountId = 100, TransferSenderId = 99 }; TransferRequest = new TransferRequest { Status = TransferApprovalStatus.Pending, Cost = 1000, Cohort = Cohort }; }
public GetProviderPaymentsPriorityQueryHandlerTestFixtures() { Db = new ProviderCommitmentsDbContext(new DbContextOptionsBuilder <ProviderCommitmentsDbContext>().UseInMemoryDatabase(Guid.NewGuid().ToString()).Options); Logger = new Mock <ILogger <GetProviderPaymentsPriorityQueryHandler> >(); Handler = new GetProviderPaymentsPriorityQueryHandler( new Lazy <ProviderCommitmentsDbContext>(() => Db), Logger.Object); }
public CohortWithChangeOfPartyCreatedEventHandlerTestsFixture() { var autoFixture = new Fixture(); _event = autoFixture.Create <CohortWithChangeOfPartyCreatedEvent>(); _cohort = new Cohort(); _cohort.SetValue(x => x.Id, _event.CohortId); _cohort.SetValue(x => x.Approvals, Party.None); _cohort.SetValue(x => x.WithParty, Party.Employer); _changeOfPartyRequest = new Mock <ChangeOfPartyRequest>(); _changeOfPartyRequest.Setup(x => x.Id).Returns(_event.ChangeOfPartyRequestId); _changeOfPartyRequest.Setup(x => x.SetCohort(_cohort, _event.UserInfo)); _db = new ProviderCommitmentsDbContext(new DbContextOptionsBuilder <ProviderCommitmentsDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .ConfigureWarnings(w => w.Throw(RelationalEventId.QueryClientEvaluationWarning)) .Options); _db.Cohorts.Add(_cohort); _db.ChangeOfPartyRequests.Add(_changeOfPartyRequest.Object); _db.SaveChanges(); _messageHandlerContext = new Mock <IMessageHandlerContext>(); _handler = new CohortWithChangeOfPartyCreatedEventHandler( new Lazy <ProviderCommitmentsDbContext>(() => _db), Mock.Of <ILogger <CohortWithChangeOfPartyCreatedEventHandler> >()); }
public ProviderRejectedChangeOfProviderRequestEventHandlerTestFixture() { _autoFixture = new Fixture(); _mockMessageHandlerContext = new Mock <IMessageHandlerContext>(); _mockPipelineContext = _mockMessageHandlerContext.As <IPipelineContext>(); _event = _autoFixture.Create <ProviderRejectedChangeOfPartyRequestEvent>(); _mockEncodingService = new Mock <IEncodingService>(); _mockEncodingService.Setup(enc => enc.Encode(_event.EmployerAccountId, EncodingType.AccountId)) .Returns(AccountHashedId); _mockEncodingService.Setup(enc => enc.Encode(ApprenticeshipId, EncodingType.ApprenticeshipId)) .Returns(ApprenticeshipHashedId); _cohort = new Cohort(); _cohort.SetValue(x => x.ChangeOfPartyRequestId, _event.ChangeOfPartyRequestId); _changeOfPartyRequest = new Mock <ChangeOfPartyRequest>(); _changeOfPartyRequest.Setup(x => x.Id).Returns(_event.ChangeOfPartyRequestId); _changeOfPartyRequest.Setup(x => x.ApprenticeshipId).Returns(ApprenticeshipId); _db = new ProviderCommitmentsDbContext(new DbContextOptionsBuilder <ProviderCommitmentsDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .Options); _db.Cohorts.Add(_cohort); _db.ChangeOfPartyRequests.Add(_changeOfPartyRequest.Object); _db.SaveChanges(); _handler = new ProviderRejectedChangeOfPartyRequestEventHandler(_mockEncodingService.Object, new Lazy <ProviderCommitmentsDbContext>(() => _db)); }
public TransferRequestRejectedEventHandlerTestsFixture() { _fixture = new Fixture(); UnitOfWorkContext = new UnitOfWorkContext(); Db = new ProviderCommitmentsDbContext(new DbContextOptionsBuilder <ProviderCommitmentsDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .ConfigureWarnings(w => w.Throw(RelationalEventId.QueryClientEvaluationWarning)) .Options); TransferRequestRejectedEvent = _fixture.Create <TransferRequestRejectedEvent>(); Logger = new FakeLogger <TransferRequestRejectedEvent>(); LegacyTopicMessagePublisher = new Mock <ILegacyTopicMessagePublisher>(); Handler = new TransferRequestRejectedEventHandler(new Lazy <ProviderCommitmentsDbContext>(() => Db), LegacyTopicMessagePublisher.Object, Logger); Cohort = new Cohort( _fixture.Create <long>(), _fixture.Create <long>(), _fixture.Create <long>(), null, Party.Employer, "", new UserInfo()) { Id = TransferRequestRejectedEvent.CohortId, EmployerAccountId = 100, TransferSenderId = 99 }; ExistingApprenticeshipDetails = new DraftApprenticeship(_fixture.Build <DraftApprenticeshipDetails>().Create(), Party.Provider); Cohort.Apprenticeships.Add(ExistingApprenticeshipDetails); Cohort.WithParty = Party.TransferSender; Cohort.TransferApprovalStatus = TransferApprovalStatus.Pending; }
public CohortAssignedToEmployerEventHandlerForLegacyTaskCounterTestsFixture() { _fixture = new Fixture(); UnitOfWorkContext = new UnitOfWorkContext(); Db = new ProviderCommitmentsDbContext(new DbContextOptionsBuilder <ProviderCommitmentsDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .ConfigureWarnings(w => w.Throw(RelationalEventId.QueryClientEvaluationWarning)) .Options); CohortId = _fixture.Create <long>(); Now = DateTime.UtcNow; LegacyTopicMessagePublisher = new Mock <ILegacyTopicMessagePublisher>(); Logger = new FakeLogger <CohortAssignedToEmployerEventHandlerForLegacyTaskCounter>(); Handler = new CohortAssignedToEmployerEventHandlerForLegacyTaskCounter(new Lazy <ProviderCommitmentsDbContext>(() => Db), LegacyTopicMessagePublisher.Object, Logger); Cohort = new Cohort( _fixture.Create <long>(), _fixture.Create <long>(), _fixture.Create <long>(), null, Party.Employer, "", new UserInfo()) { Id = CohortId, EmployerAccountId = 100, TransferSenderId = 99 }; Cohort.WithParty = Party.Employer; }
public RejectTransferRequestCommandHandlerTestsFixture() { _transferRequestId = 235; _userInfo = new UserInfo { UserDisplayName = "TestName", UserEmail = "*****@*****.**", UserId = "23432" }; _transferRequest = new TransferRequest { Id = _transferRequestId }; _cohort = new Cohort { TransferRequests = { _transferRequest }, EmployerAccountId = 8787, AccountLegalEntityId = 234, //AccountLegalEntityPublicHashedId = "sfs1", ProviderId = 234234, TransferSenderId = 8999 }; _db = new ProviderCommitmentsDbContext(new DbContextOptionsBuilder <ProviderCommitmentsDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .ConfigureWarnings(w => w.Throw(RelationalEventId.QueryClientEvaluationWarning)) .Options); _logger = new FakeLogger <RejectTransferRequestCommandHandler>(); _mockMessageHandlerContext = new Mock <IMessageHandlerContext>(); _rejectedOnDate = new DateTime(2020, 01, 30, 14, 22, 00); _command = new RejectTransferRequestCommand(_transferRequestId, _rejectedOnDate, _userInfo); _unitOfWorkContext = new UnitOfWorkContext(); _sut = new RejectTransferRequestCommandHandler(new Lazy <ProviderCommitmentsDbContext>(() => _db), _logger); }
public void Init() { var databaseGuid = Guid.NewGuid().ToString(); _dbContext = new ProviderCommitmentsDbContext(new DbContextOptionsBuilder <ProviderCommitmentsDbContext>() .UseInMemoryDatabase(databaseGuid) .ConfigureWarnings(warnings => warnings.Throw(RelationalEventId.QueryClientEvaluationWarning)) .Options); _confirmationDbContext = new ProviderCommitmentsDbContext(new DbContextOptionsBuilder <ProviderCommitmentsDbContext>() .UseInMemoryDatabase(databaseGuid) .ConfigureWarnings(warnings => warnings.Throw(RelationalEventId.QueryClientEvaluationWarning)) .Options); _currentDateTime = new Mock <ICurrentDateTime>(); _authenticationService = new Mock <IAuthenticationService>(); _nserviceBusContext = new Mock <IMessageSession>(); _encodingService = new Mock <IEncodingService>(); _logger = new Mock <ILogger <StopApprenticeshipCommandHandler> >(); _unitOfWorkContext = new UnitOfWorkContext(); _handler = new StopApprenticeshipCommandHandler(new Lazy <ProviderCommitmentsDbContext>(() => _dbContext), _currentDateTime.Object, _authenticationService.Object, _nserviceBusContext.Object, _encodingService.Object, _logger.Object); }
public AddDraftApprenticeshipCommandHandlerTestsFixture() { Fixture = new Fixture(); DraftApprenticeshipDetails = Fixture.Create <DraftApprenticeshipDetails>(); DraftApprenticeship = new DraftApprenticeship().Set(a => a.Id, 123); CancellationToken = new CancellationToken(); Db = new ProviderCommitmentsDbContext(new DbContextOptionsBuilder <ProviderCommitmentsDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .ConfigureWarnings(w => w.Throw(RelationalEventId.QueryClientEvaluationWarning)) .Options); CohortDomainService = new Mock <ICohortDomainService>(); DraftApprenticeshipDetailsMapper = new Mock <IOldMapper <AddDraftApprenticeshipCommand, DraftApprenticeshipDetails> >(); UserInfo = Fixture.Create <UserInfo>(); Command = Fixture.Build <AddDraftApprenticeshipCommand>().With(o => o.UserInfo, UserInfo).Create(); Handler = new AddDraftApprenticeshipCommandHandler( new Lazy <ProviderCommitmentsDbContext>(() => Db), Mock.Of <ILogger <AddDraftApprenticeshipCommandHandler> >(), DraftApprenticeshipDetailsMapper.Object, CohortDomainService.Object); CohortDomainService.Setup(s => s.AddDraftApprenticeship(Command.ProviderId, Command.CohortId, DraftApprenticeshipDetails, Command.UserInfo, CancellationToken)).ReturnsAsync(DraftApprenticeship); DraftApprenticeshipDetailsMapper.Setup(m => m.Map(Command)).ReturnsAsync(DraftApprenticeshipDetails); }
public AddTransferRequestCommandHandlerTestFixture() { Fixture = new Fixture(); CancellationToken = new CancellationToken(); FundingCapCourseSummary1 = new FundingCapCourseSummary { ActualCap = 1000, ApprenticeshipCount = 1, CappedCost = 1200, CourseTitle = "C1Title" }; FundingCapCourseSummary2 = new FundingCapCourseSummary { ActualCap = 1100, ApprenticeshipCount = 2, CappedCost = 1300, CourseTitle = "C2Title" }; FundingService = new Mock <IFundingCapService>(); FundingService.Setup(x => x.FundingCourseSummary(It.IsAny <IEnumerable <ApprenticeshipBase> >())) .ReturnsAsync(new List <FundingCapCourseSummary> { FundingCapCourseSummary1, FundingCapCourseSummary2 }); Db = new ProviderCommitmentsDbContext(new DbContextOptionsBuilder <ProviderCommitmentsDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .ConfigureWarnings(w => w.Throw(RelationalEventId.QueryClientEvaluationWarning)) .Options); Handler = new AddTransferRequestCommandHandler( new Lazy <ProviderCommitmentsDbContext>(() => Db), FundingService.Object, Mock.Of <ILogger <AddTransferRequestCommandHandler> >()); UnitOfWorkContext = new UnitOfWorkContext(); LastApprovedByParty = Party.Employer; }
public GetApprovedProvidersQueryHandlerFixture() { Cohorts = new List <Cohort>(); Provider = new List <Provider>(); Query = new GetApprovedProvidersQuery(AccountId); Db = new ProviderCommitmentsDbContext(new DbContextOptionsBuilder <ProviderCommitmentsDbContext>().UseInMemoryDatabase(Guid.NewGuid().ToString()).Options); Handler = new GetApprovedProvidersQueryHandler(new Lazy <ProviderCommitmentsDbContext>(() => Db)); }
public static Task ProcessFullyApprovedCohort(this ProviderCommitmentsDbContext db, long cohortId, long accountId, ApprenticeshipEmployerType apprenticeshipEmployerType) { return(db.ExecuteSqlCommandAsync( "EXEC ProcessFullyApprovedCohort @cohortId, @accountId, @apprenticeshipEmployerType", new SqlParameter("cohortId", cohortId), new SqlParameter("accountId", accountId), new SqlParameter("apprenticeshipEmployerType", apprenticeshipEmployerType))); }
public GetDraftApprenticeHandlerTestFixtures() { AuthenticationServiceMock = new Mock <IAuthenticationService>(); Db = new ProviderCommitmentsDbContext(new DbContextOptionsBuilder <ProviderCommitmentsDbContext>().UseInMemoryDatabase(Guid.NewGuid().ToString()).Options); Handler = new GetDraftApprenticeshipQueryHandler( new Lazy <ProviderCommitmentsDbContext>(() => Db), AuthenticationServiceMock.Object); }
public ChangeOfPartyRequestCreatedEventHandlerTestsFixture() { var autoFixture = new Fixture(); Event = autoFixture.Create <ChangeOfPartyRequestCreatedEvent>(); Db = new ProviderCommitmentsDbContext(new DbContextOptionsBuilder <ProviderCommitmentsDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .ConfigureWarnings(w => w.Throw(RelationalEventId.QueryClientEvaluationWarning)) .Options); Cohort = new Cohort(); Cohort.SetValue(x => x.Id, autoFixture.Create <long>()); var apprenticeshipId = autoFixture.Create <long>(); ChangeOfPartyRequest = new Mock <ChangeOfPartyRequest>(); ChangeOfPartyRequest.Setup(x => x.Id).Returns(Event.ChangeOfPartyRequestId); ChangeOfPartyRequest.Setup(x => x.ChangeOfPartyType).Returns(ChangeOfPartyRequestType.ChangeEmployer); ChangeOfPartyRequest.Setup(x => x.ApprenticeshipId).Returns(apprenticeshipId); ChangeOfPartyRequest.Setup(x => x.AccountLegalEntityId).Returns(autoFixture.Create <long>()); ChangeOfPartyRequest.Setup(x => x.ProviderId).Returns(autoFixture.Create <long>()); ChangeOfPartyRequest.Setup(x => x.CreateCohort(It.IsAny <Apprenticeship>(), It.IsAny <Guid?>(), It.IsAny <UserInfo>())).Returns(Cohort); Apprenticeship = new Apprenticeship { Id = apprenticeshipId, Cohort = new Cohort { AccountLegalEntity = new AccountLegalEntity() }, ChangeOfPartyRequests = new List <ChangeOfPartyRequest> { ChangeOfPartyRequest.Object }, ReservationId = autoFixture.Create <Guid>() }; ChangeOfPartyRequest.Setup(x => x.Apprenticeship).Returns(Apprenticeship); Db.ChangeOfPartyRequests.Add(ChangeOfPartyRequest.Object); Db.Apprenticeships.Add(Apprenticeship); Db.SaveChanges(); MessageHandlerContext = new Mock <IMessageHandlerContext>(); ReservationsApiClient = new Mock <IReservationsApiClient>(); EncodingService = new Mock <IEncodingService>(); ChangeOfPartyReservationId = autoFixture.Create <Guid>(); ReservationsApiClient.Setup(x => x.CreateChangeOfPartyReservation(It.Is <Guid>(id => id == Apprenticeship.ReservationId.Value), It.IsAny <CreateChangeOfPartyReservationRequest>(), It.IsAny <CancellationToken>())) .ReturnsAsync(new CreateChangeOfPartyReservationResult(ChangeOfPartyReservationId)); CohortReference = autoFixture.Create <string>(); EncodingService.Setup(x => x.Encode(Cohort.Id, EncodingType.CohortReference)).Returns(CohortReference); Handler = new ChangeOfPartyRequestCreatedEventHandler(new Lazy <ProviderCommitmentsDbContext>(() => Db), ReservationsApiClient.Object, Mock.Of <ILogger <ChangeOfPartyRequestCreatedEventHandler> >(), EncodingService.Object); }
public EditEndDateRequestCommandHandlerTestsFixture() { Party = Party.Employer; UnitOfWorkContext = new UnitOfWorkContext(); Db = new ProviderCommitmentsDbContext(new DbContextOptionsBuilder <ProviderCommitmentsDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .ConfigureWarnings(warnings => warnings.Throw(RelationalEventId.QueryClientEvaluationWarning)) .Options); var fixture = new Fixture(); fixture.Behaviors.Add(new OmitOnRecursionBehavior()); var Cohort = new CommitmentsV2.Models.Cohort() .Set(c => c.Id, 111) .Set(c => c.EmployerAccountId, 222) .Set(c => c.ProviderId, 333) .Set(c => c.AccountLegalEntity, new AccountLegalEntity()); var Apprenticeship = fixture.Build <CommitmentsV2.Models.Apprenticeship>() .With(s => s.Cohort, Cohort) .With(s => s.PaymentStatus, PaymentStatus.Completed) .With(s => s.EndDate, DateTime.UtcNow) .With(s => s.CompletionDate, DateTime.UtcNow.AddDays(10)) .With(s => s.StartDate, DateTime.UtcNow.AddDays(-10)) .Without(s => s.DataLockStatus) .Without(s => s.EpaOrg) .Without(s => s.ApprenticeshipUpdate) .Without(s => s.Continuation) .Without(s => s.PreviousApprenticeship) .Create(); Db.Apprenticeships.Add(Apprenticeship); Db.SaveChanges(); ApprenticeshipId = Apprenticeship.Id; var authenticationService = new Mock <IAuthenticationService>(); authenticationService.Setup(x => x.GetUserParty()).Returns(() => Party); var lazyProviderDbContext = new Lazy <ProviderCommitmentsDbContext>(() => Db); var newEndDate = Apprenticeship.EndDate.Value.AddDays(1); Command = new EditEndDateRequestCommand { ApprenticeshipId = Apprenticeship.Id, EndDate = newEndDate, UserInfo = new UserInfo() }; Handler = new EditEndDateRequestCommandHandler(lazyProviderDbContext, Mock.Of <ICurrentDateTime>(), authenticationService.Object, Mock.Of <ILogger <EditEndDateRequestCommandHandler> >()); }
public CohortWithChangeOfPartyCreatedEventHandlerForEmailTestsFixture() { _autoFixture = new Fixture(); _mediator = new Mock <IMediator>(); UnitOfWorkContext = new UnitOfWorkContext(); _db = new ProviderCommitmentsDbContext(new DbContextOptionsBuilder <ProviderCommitmentsDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .Options); _cohortSummary = _autoFixture.Create <GetCohortSummaryQueryResult>(); _mediator.Setup(x => x.Send(It.IsAny <GetCohortSummaryQuery>(), It.IsAny <CancellationToken>())) .ReturnsAsync(() => _cohortSummary); _apprenticeship = new Apprenticeship { Id = _autoFixture.Create <long>(), FirstName = _autoFixture.Create <string>(), LastName = _autoFixture.Create <string>(), Cohort = new Cohort { AccountLegalEntity = new AccountLegalEntity() }, ReservationId = _autoFixture.Create <Guid>() }; _changeOfPartyRequest = new ChangeOfPartyRequest(_apprenticeship, ChangeOfPartyRequestType.ChangeProvider, Party.Employer, _autoFixture.Create <long>(), null, null, null, _autoFixture.Create <UserInfo>(), DateTime.Now); _apprenticeship.Cohort.ChangeOfPartyRequestId = _changeOfPartyRequest.Id; _db.ChangeOfPartyRequests.Add(_changeOfPartyRequest); _db.Apprenticeships.Add(_apprenticeship); _db.SaveChanges(); _expectedApprenticeName = _apprenticeship.LastName.EndsWith("s") ? $"{_apprenticeship.FirstName} {_apprenticeship.LastName}'" : $"{_apprenticeship.FirstName} {_apprenticeship.LastName}'s"; _expectedSubjectDetailsRequired = $"{_cohortSummary.LegalEntityName} has requested that you add details on their behalf"; _expectedSubjectForReview = $"{_cohortSummary.LegalEntityName} has added details for you to review"; _expectedRequestUrl = $"{_cohortSummary.ProviderId}/apprentices/{_cohortSummary.CohortReference}/details"; _cohortReference = _autoFixture.Create <string>(); _employerEncodedAccountId = _autoFixture.Create <string>(); _encodingService = new Mock <IEncodingService>(); _encodingService.Setup(x => x.Encode(It.Is <long>(id => id == _cohortSummary.CohortId), EncodingType.CohortReference)).Returns(_cohortReference); _encodingService.Setup(x => x.Encode(It.Is <long>(id => id == _cohortSummary.AccountId), EncodingType.AccountId)).Returns(_employerEncodedAccountId); _handler = new CohortWithChangeOfPartyCreatedEventHandlerForEmail(new Lazy <ProviderCommitmentsDbContext>(() => _db), _mediator.Object, _encodingService.Object, Mock.Of <ILogger <CohortWithChangeOfPartyCreatedEventHandlerForEmail> >()); _messageHandlerContext = new TestableMessageHandlerContext(); _event = new CohortWithChangeOfPartyCreatedEvent(_cohortSummary.CohortId, _changeOfPartyRequest.Id, Party.Employer, DateTime.Now, _autoFixture.Create <UserInfo>()); }
private static async Task <Provider> GetProvider(long providerId, ProviderCommitmentsDbContext db, CancellationToken cancellationToken) { var provider = await db.Providers.SingleOrDefaultAsync(p => p.UkPrn == providerId, cancellationToken); if (provider == null) { throw new BadRequestException($"Provider {providerId} was not found"); } return(provider); }
public GetProviderQueryHandlerTestsFixture() { Query = new GetProviderQuery(1); Provider = new Provider(1, "Foo", DateTime.UtcNow, DateTime.UtcNow); Db = new ProviderCommitmentsDbContext(new DbContextOptionsBuilder <ProviderCommitmentsDbContext>().UseInMemoryDatabase(Guid.NewGuid().ToString()).Options); Handler = new GetProviderQueryHandler(new Lazy <ProviderCommitmentsDbContext>(() => Db)); Db.Providers.Add(new Provider(2, "Bar", DateTime.UtcNow, DateTime.UtcNow)); Db.SaveChanges(); }
public GetDataLocksQueryHandlerTestsFixture() { _autofixture = new Fixture(); _apprenticeshipId = 1; _request = new GetDataLocksQuery(_apprenticeshipId); _db = new ProviderCommitmentsDbContext(new DbContextOptionsBuilder <ProviderCommitmentsDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()).EnableSensitiveDataLogging().Options); _handler = new GetDataLocksQueryHandler(new Lazy <ProviderCommitmentsDbContext>(() => _db)); }
public GetPriceEpisodesHandlerTestsFixture() { _autoFixture = new Fixture(); _apprenticeshipId = _autoFixture.Create <long>(); _request = new GetPriceEpisodesQuery(_apprenticeshipId); _db = new ProviderCommitmentsDbContext(new DbContextOptionsBuilder <ProviderCommitmentsDbContext>().UseInMemoryDatabase(Guid.NewGuid().ToString()).Options); SeedData(); _handler = new GetPriceEpisodesQueryHandler(new Lazy <ProviderCommitmentsDbContext>(() => _db)); }
private static async Task <Account> GetAccount(long accountId, ProviderCommitmentsDbContext db, CancellationToken cancellationToken) { var account = await db.Accounts.SingleOrDefaultAsync(x => x.Id == accountId, cancellationToken); if (account == null) { throw new BadRequestException($"Account {accountId} was not found"); } return(account); }
public UpdateProviderPaymentPriorityCommandHandlerTestsFixture() { Db = new ProviderCommitmentsDbContext(new DbContextOptionsBuilder <ProviderCommitmentsDbContext>().UseInMemoryDatabase(Guid.NewGuid().ToString()).Options); Logger = new Mock <ILogger <UpdateProviderPaymentsPriorityCommandHandler> >(); UnitOfWorkContext = new UnitOfWorkContext(); Handler = new UpdateProviderPaymentsPriorityCommandHandler( new Lazy <ProviderCommitmentsDbContext>(() => Db), Logger.Object); }
public GetDraftApprenticeshipsHandlerTestsFixture() { _autoFixture = new Fixture(); _cohortId = _autoFixture.Create <long>(); _query = new GetDraftApprenticeshipsQuery(_cohortId); _db = new ProviderCommitmentsDbContext(new DbContextOptionsBuilder <ProviderCommitmentsDbContext>().UseInMemoryDatabase(Guid.NewGuid().ToString()).Options); SeedData(); _queryHandler = new GetDraftApprenticeshipsQueryHandler(new Lazy <ProviderCommitmentsDbContext>(() => _db)); }
private void SeedData(ProviderCommitmentsDbContext dbContext) { dbContext.Cohorts.AddRange(SeedCohorts); if (SeedAccounts.Count > 0) { dbContext.Accounts.AddRange(SeedAccounts); } dbContext.SaveChanges(true); }
public ChangeOfPartyRequestsQueryHandlersTestsFixture() { _autoFixture = new Fixture(); _employerName = _autoFixture.Create <string>(); _apprenticeshipId = _autoFixture.Create <long>(); _request = new GetChangeOfPartyRequestsQuery(_apprenticeshipId); _db = new ProviderCommitmentsDbContext(new DbContextOptionsBuilder <ProviderCommitmentsDbContext>().UseInMemoryDatabase(Guid.NewGuid().ToString()).Options); SeedData(); _handler = new GetChangeOfPartyRequestsQueryHandler(new Lazy <ProviderCommitmentsDbContext>(() => _db)); }
private static Task ImportProviders(ProviderCommitmentsDbContext db, DataTable providersDataTable) { var providers = new SqlParameter("providers", SqlDbType.Structured) { TypeName = "Providers", Value = providersDataTable }; var now = new SqlParameter("now", DateTime.UtcNow); return(db.ExecuteSqlCommandAsync("EXEC ImportProviders @providers, @now", providers, now)); }