public void ShouldNotPopulateJobRolesForFrameworkWhenJobRoleItemsIsNull() { ApprenticeshipSearchResultsDocument source = CreateTestFrameworkSourceItem(); source.JobRoleItems = null; var result = _sut.MapToApprenticeshipSearchResult(source); result.JobRoles.Should().BeNullOrEmpty(); }
public V2ApprenticeshipSearchResultsItem MapToApprenticeshipSearchResult(ApprenticeshipSearchResultsDocument document) { var isStandard = IsStandard(document.StandardId.ToString()); if (isStandard) { return(CreateStandardVersion(document)); } return(CreateFrameworkVersion(document)); }
private static V2ApprenticeshipSearchResultsItem CreateStandardVersion(ApprenticeshipSearchResultsDocument document) { return(new V2ApprenticeshipSearchResultsItem { Id = document.StandardId.ToString(), ProgrammeType = ApprenticeshipTrainingType.Standard, Title = document.Title, Level = document.Level, Duration = document.Duration, EffectiveFrom = document.EffectiveFrom, EffectiveTo = document.EffectiveTo, LastDateForNewStarts = document.LastDateForNewStarts, Published = document.Published, JobRoles = document.JobRoles, Keywords = document.Keywords }); }
private static V2ApprenticeshipSearchResultsItem CreateFrameworkVersion(ApprenticeshipSearchResultsDocument document) { return(new V2ApprenticeshipSearchResultsItem { Id = document.FrameworkId, ProgrammeType = ApprenticeshipTrainingType.Framework, Title = document.Title, Level = document.Level, Duration = document.Duration, EffectiveFrom = document.EffectiveFrom, EffectiveTo = document.EffectiveTo, LastDateForNewStarts = document.LastDateForNewStarts, Published = document.Published, JobRoles = document.JobRoleItems?.Select(x => x.Title).ToList(), Keywords = document.Keywords, FrameworkName = document.FrameworkName, PathwayName = document.PathwayName }); }
public void ShouldPopulatePropertiesForFrameworkWithSubgroups() { ApprenticeshipSearchResultsDocument source = CreateTestFrameworkSourceItem(true); var result = _sut.MapToApprenticeshipSearchResult(source); result.Id.Should().Be(source.FrameworkId); result.ProgrammeType.Should().Be(ApprenticeshipTrainingType.Framework); result.Title.Should().Be(source.Title); result.Level.Should().Be(source.Level); result.Duration.Should().Be(source.Duration); result.EffectiveFrom.Should().Be(source.EffectiveFrom); result.EffectiveTo.Should().Be(source.EffectiveTo); result.LastDateForNewStarts.Should().Be(source.LastDateForNewStarts); result.JobRoles.Should().BeEquivalentTo(source.JobRoleItems.Select(x => x.Title).ToList()); result.Keywords.Should().BeEquivalentTo(source.Keywords); result.FrameworkName.Should().Be(source.FrameworkName); result.PathwayName.Should().Be(source.PathwayName); result.Published.Should().Be(source.Published); }
public void ShouldPopulatePropertiesForStandard() { ApprenticeshipSearchResultsDocument source = CreateTestStandardSourceItem(); var result = _sut.MapToApprenticeshipSearchResult(source); result.Id.Should().Be(source.StandardId.ToString()); result.ProgrammeType.Should().Be(ApprenticeshipTrainingType.Standard); result.Title.Should().Be(source.Title); result.Level.Should().Be(source.Level); result.Duration.Should().Be(source.Duration); result.EffectiveFrom.Should().Be(source.EffectiveFrom); result.EffectiveTo.Should().Be(source.EffectiveTo); result.LastDateForNewStarts.Should().Be(source.LastDateForNewStarts); result.JobRoles.Should().BeEquivalentTo(source.JobRoles); result.Keywords.Should().BeEquivalentTo(source.Keywords); result.FrameworkName.Should().BeNullOrEmpty(); result.PathwayName.Should().BeNullOrEmpty(); result.Published.Should().Be(source.Published); }
public ApprenticeshipSearchResultsItem MapToApprenticeshipSearchResultsItem(ApprenticeshipSearchResultsDocument document) { return new ApprenticeshipSearchResultsItem { Duration = document.Duration, EffectiveFrom = document.EffectiveFrom, EffectiveTo = document.EffectiveTo, FrameworkId = document.FrameworkId, FrameworkName = document.FrameworkName, JobRoleItems = document.JobRoleItems, JobRoles = document.JobRoles, Keywords = document.Keywords, LastDateForNewStarts = document.LastDateForNewStarts, Level = document.Level, PathwayName = document.PathwayName, Published = document.Published, StandardId = document.StandardId?.ToString(), Title = document.Title, TitleKeyword = document.TitleKeyword }; }
public void ShouldPopulatePropertiesForStandard() { ApprenticeshipSearchResultsDocument source = CreateTestDocument(); var result = _sut.MapToApprenticeshipSearchResultsItem(source); result.Duration.Should().Be(source.Duration); result.EffectiveFrom.Should().Be(source.EffectiveFrom); result.EffectiveTo.Should().Be(source.EffectiveTo); result.FrameworkId.Should().Be(source.FrameworkId); result.FrameworkName.Should().Be(source.FrameworkName); result.JobRoleItems.Should().BeSameAs(source.JobRoleItems); result.JobRoles.Should().BeSameAs(source.JobRoles); result.Keywords.Should().BeSameAs(source.Keywords); result.LastDateForNewStarts.Should().Be(source.LastDateForNewStarts); result.Level.Should().Be(source.Level); result.PathwayName.Should().Be(source.PathwayName); result.Published.Should().Be(source.Published); result.StandardId.Should().Be(source.StandardId?.ToString()); result.Title.Should().Be(source.Title); result.TitleKeyword.Should().Be(source.TitleKeyword); }