public async Task Then_Apprenticeships_Are_Returned_Correctly() { var result = await _handler.Handle(_query, CancellationToken.None); Assert.IsNotNull(result); Assert.AreEqual(_apiResponse.Apprenticeships.Count, result.Apprenticeships.Count()); Assert.AreEqual(_apiResponse.TotalApprenticeshipsFound, result.TotalApprenticeshipsFound); var i = 0; foreach (var apprenticeship in result.Apprenticeships) { var expected = _apiResponse.Apprenticeships.ToArray()[i]; Assert.AreEqual(expected.Id, apprenticeship.Id); Assert.AreEqual(expected.TransferSenderId, apprenticeship.TransferSenderId); Assert.AreEqual(expected.Uln, apprenticeship.Uln); Assert.AreEqual(expected.ProviderId, apprenticeship.ProviderId); Assert.AreEqual(expected.ProviderName, apprenticeship.ProviderName); Assert.AreEqual(expected.FirstName, apprenticeship.FirstName); Assert.AreEqual(expected.LastName, apprenticeship.LastName); Assert.AreEqual(expected.CourseCode, apprenticeship.CourseCode); Assert.AreEqual(expected.CourseName, apprenticeship.CourseName); Assert.AreEqual(expected.StartDate, apprenticeship.StartDate); Assert.AreEqual(expected.EndDate, apprenticeship.EndDate); Assert.AreEqual(expected.Cost, apprenticeship.Cost); Assert.AreEqual(expected.PledgeApplicationId, apprenticeship.PledgeApplicationId); Assert.AreEqual(expected.HasHadDataLockSuccess, apprenticeship.HasHadDataLockSuccess); Assert.AreEqual(_courseList.First().Level, apprenticeship.CourseLevel); i++; } }
public async Task ThenQueriesApprenticeshipsWithEmployerIdWhenOrderingInReverse( [Frozen] GetApprenticeshipsQuery query, List <Apprenticeship> apprenticeships, GetApprenticeshipsQueryResult.ApprenticeshipDetails apprenticeshipDetails, [Frozen] Mock <IProviderCommitmentsDbContext> mockContext, [Frozen] Mock <IApprenticeshipSearch> mockSearch, [Frozen] Mock <IMapper <Apprenticeship, GetApprenticeshipsQueryResult.ApprenticeshipDetails> > mockMapper, GetApprenticeshipsQueryHandler handler) { query.SortField = "test"; query.ReverseSort = true; query.ProviderId = null; apprenticeships[1].Cohort.EmployerAccountId = query.EmployerAccountId.Value; mockSearch.Setup(x => x.Find(It.IsAny <ReverseOrderedApprenticeshipSearchParameters>())) .ReturnsAsync(new ApprenticeshipSearchResult { Apprenticeships = apprenticeships }); mockContext .Setup(context => context.Apprenticeships) .ReturnsDbSet(new List <Apprenticeship>()); await handler.Handle(query, CancellationToken.None); mockSearch.Verify(x => x.Find(It.Is <ReverseOrderedApprenticeshipSearchParameters>(sp => sp.EmployerAccountId.Equals(query.EmployerAccountId) && sp.ProviderId == null)), Times.Once); }
public async Task ThenWillReturnCurrentSelectedPage( [Frozen] GetApprenticeshipsQuery query, List <Apprenticeship> apprenticeships, ApprenticeshipSearchResult searchResult, [Frozen] Mock <IProviderCommitmentsDbContext> mockContext, [Frozen] Mock <IApprenticeshipSearch> mockSearch, [Frozen] Mock <IMapper <Apprenticeship, GetApprenticeshipsQueryResult.ApprenticeshipDetails> > mockMapper, GetApprenticeshipsQueryHandler handler) { query.SortField = "test"; query.ReverseSort = true; query.ProviderId = null; apprenticeships[1].Cohort.EmployerAccountId = query.EmployerAccountId.Value; mockSearch.Setup(x => x.Find(It.IsAny <ReverseOrderedApprenticeshipSearchParameters>())) .ReturnsAsync(new ApprenticeshipSearchResult { Apprenticeships = apprenticeships }); mockContext .Setup(context => context.Apprenticeships) .ReturnsDbSet(new List <Apprenticeship>()); mockSearch.Setup(x => x.Find(It.IsAny <ReverseOrderedApprenticeshipSearchParameters>())) .ReturnsAsync(searchResult); var result = await handler.Handle(query, CancellationToken.None); Assert.AreEqual(searchResult.PageNumber, result.PageNumber); }
public async Task ThenReturnUnsortedApprenticeshipsWhenNotOrdering( List <Apprenticeship> apprenticeships, [Frozen] GetApprenticeshipsQuery query, [Frozen] Mock <IApprenticeshipSearch> mockSearch, [Frozen] Mock <IProviderCommitmentsDbContext> mockContext, [Frozen] Mock <IMapper <Apprenticeship, GetApprenticeshipsQueryResult.ApprenticeshipDetails> > mockMapper, GetApprenticeshipsQueryHandler handler) { query.SortField = ""; query.EmployerAccountId = null; apprenticeships[1].Cohort.ProviderId = query.ProviderId ?? 0; mockSearch.Setup(x => x.Find(It.IsAny <ApprenticeshipSearchParameters>())) .ReturnsAsync(new ApprenticeshipSearchResult { Apprenticeships = apprenticeships }); mockContext .Setup(context => context.Apprenticeships) .ReturnsDbSet(new List <Apprenticeship>()); await handler.Handle(query, CancellationToken.None); mockSearch.Verify(x => x.Find(It.Is <ApprenticeshipSearchParameters>(sp => sp.ProviderId.Equals(query.ProviderId) && sp.EmployerAccountId == null)), Times.Once); mockMapper .Verify(mapper => mapper.Map(It.IsIn(apprenticeships .Where(apprenticeship => apprenticeship.Cohort.ProviderId == query.ProviderId))), Times.Once()); }
public async Task ThenReturnsMappedApprenticeships( [Frozen] GetApprenticeshipsQuery query, List <Apprenticeship> apprenticeships, [Frozen] GetApprenticeshipsQueryResult.ApprenticeshipDetails apprenticeshipDetails, [Frozen] Mock <IProviderCommitmentsDbContext> mockContext, [Frozen] Mock <IApprenticeshipSearch> search, [Frozen] Mock <IMapper <Apprenticeship, GetApprenticeshipsQueryResult.ApprenticeshipDetails> > mockMapper, GetApprenticeshipsQueryHandler handler) { query.SortField = ""; query.EmployerAccountId = null; apprenticeships[1].Cohort.ProviderId = query.ProviderId ?? 0; search.Setup(x => x.Find(It.IsAny <ApprenticeshipSearchParameters>())) .ReturnsAsync(new ApprenticeshipSearchResult { Apprenticeships = apprenticeships }); mockContext .Setup(context => context.Apprenticeships) .ReturnsDbSet(apprenticeships); mockMapper .Setup(mapper => mapper.Map(It.IsIn(apprenticeships .Where(apprenticeship => apprenticeship.Cohort.ProviderId == query.ProviderId)))) .ReturnsAsync(apprenticeshipDetails); var result = await handler.Handle(query, CancellationToken.None); result.Apprenticeships.Should().AllBeEquivalentTo(apprenticeshipDetails); }
public async Task ThenTheCommitmentRepositoryIsCalledForTheEmployer() { _mockApprenticeshipRespository.Setup(x => x.GetActiveApprenticeshipsByEmployer(It.IsAny <long>())) .ReturnsAsync(new ApprenticeshipsResult()); await _handler.Handle(new GetApprenticeshipsRequest { Caller = new Caller { CallerType = CallerType.Employer, Id = _apprenticeship.EmployerAccountId } }); _mockApprenticeshipRespository.Verify(x => x.GetActiveApprenticeshipsByEmployer( It.Is <long>(id => id == _apprenticeship.EmployerAccountId)), Times.Once); }
public async Task ThenReturnsApprenticeshipsData( int totalApprenticeshipsFoundWithAlertsCount, int totalApprenticeshipsFoundCount, List <Apprenticeship> apprenticeships, GetApprenticeshipsQueryResult.ApprenticeshipDetails apprenticeshipDetails, [Frozen] GetApprenticeshipsQuery query, [Frozen] Mock <IApprenticeshipSearch> search, [Frozen] Mock <IProviderCommitmentsDbContext> mockContext, [Frozen] Mock <IMapper <Apprenticeship, GetApprenticeshipsQueryResult.ApprenticeshipDetails> > mockMapper, GetApprenticeshipsQueryHandler handler) { query.SortField = ""; query.EmployerAccountId = null; apprenticeships[1].Cohort.ProviderId = query.ProviderId ?? 0; search.Setup(x => x.Find(It.IsAny <ApprenticeshipSearchParameters>())) .ReturnsAsync(new ApprenticeshipSearchResult { Apprenticeships = new Apprenticeship[0], TotalAvailableApprenticeships = apprenticeships.Count, TotalApprenticeshipsFound = totalApprenticeshipsFoundCount, TotalApprenticeshipsWithAlertsFound = totalApprenticeshipsFoundWithAlertsCount }); mockContext .Setup(context => context.Apprenticeships) .ReturnsDbSet(new List <Apprenticeship>()); mockMapper .Setup(mapper => mapper.Map(It.IsIn(apprenticeships .Where(apprenticeship => apprenticeship.Cohort.ProviderId == query.ProviderId)))) .ReturnsAsync(apprenticeshipDetails); var result = await handler.Handle(query, CancellationToken.None); result.TotalApprenticeshipsFound.Should().Be(totalApprenticeshipsFoundCount); result.TotalApprenticeshipsWithAlertsFound.Should().Be(totalApprenticeshipsFoundWithAlertsCount); result.TotalApprenticeships.Should().Be(apprenticeships.Count); }
public async Task ThenReturnsPageNumber( [Frozen] GetApprenticeshipsQuery query, List <Apprenticeship> apprenticeships, ApprenticeshipSearchResult searchResult, [Frozen] Mock <IProviderCommitmentsDbContext> mockContext, [Frozen] Mock <IApprenticeshipSearch> search, GetApprenticeshipsQueryHandler handler) { query.SortField = ""; query.EmployerAccountId = null; apprenticeships[1].Cohort.ProviderId = query.ProviderId ?? 0; search.Setup(x => x.Find(It.IsAny <ApprenticeshipSearchParameters>())) .ReturnsAsync(searchResult); mockContext .Setup(context => context.Apprenticeships) .ReturnsDbSet(apprenticeships); var result = await handler.Handle(query, CancellationToken.None); result.PageNumber.Should().Be(searchResult.PageNumber); }