public Qualification Build(QualificationType qualificationType = null, TlLookup subjectLookup = null) => new Qualification { TlLookup = subjectLookup ?? new TlLookupBuilder().BuildSubjectType(), QualificationType = qualificationType ?? new QualificationTypeBuilder().Build(), Code = "100/1976/5", Title = "EDEXCEL Level 1/Level 2 GCSE in English Literature", IsSendQualification = false, IsActive = true, CreatedBy = Constants.CreatedByUser, CreatedOn = Constants.CreatedOn, ModifiedBy = Constants.ModifiedByUser, ModifiedOn = Constants.ModifiedOn };
public static TlLookup CreateTlLookup(ResultsAndCertificationDbContext _dbContext, string category, string code, string value, bool isActive, int?sortOrder, bool addToDbContext = true) { var tlLookup = new TlLookup { Category = category, Code = code, Value = value, IsActive = isActive, SortOrder = sortOrder, CreatedBy = "Test User" }; if (addToDbContext) { _dbContext.Add(tlLookup); } return(tlLookup); }
public TqPathwayResult Build(TqPathwayAssessment tqPathwayAssessment = null, TlLookup tlLookupPathwayComponentGrade = null, bool isBulkUpload = true) { tqPathwayAssessment ??= new TqPathwayAssessmentBuilder().Build(); tlLookupPathwayComponentGrade ??= new TlLookupBuilder().Build(); return(new TqPathwayResult { TqPathwayAssessmentId = tqPathwayAssessment.Id, TqPathwayAssessment = tqPathwayAssessment, TlLookupId = tlLookupPathwayComponentGrade.Id, TlLookup = tlLookupPathwayComponentGrade, StartDate = DateTime.UtcNow, IsOptedin = true, IsBulkUpload = isBulkUpload, CreatedBy = Constants.CreatedByUser, CreatedOn = Constants.CreatedOn, ModifiedBy = Constants.ModifiedByUser, ModifiedOn = Constants.ModifiedOn }); }
public void Expected_Results_Are_Returned() { _stage3Result.Result.Should().NotBeNull(); _stage3Result.Result.Count().Should().Be(_stage2Response.Count()); // 1. ULN not recognised with AO var rowIndex = 0; var actualResult = _stage3Result.Result[rowIndex]; actualResult.IsValid.Should().BeFalse(); actualResult.ValidationErrors.Count.Should().Be(1); var expectedErrors = new List <string> { ValidationMessages.UlnNotRegistered }; TestValidatonErrors(actualResult.ValidationErrors, expectedErrors, rowIndex); // 2. ULN is withdrawn rowIndex++; actualResult = _stage3Result.Result[rowIndex]; actualResult.IsValid.Should().BeFalse(); actualResult.ValidationErrors.Count.Should().Be(1); expectedErrors = new List <string> { ValidationMessages.CannotAddResultToWithdrawnRegistration }; TestValidatonErrors(actualResult.ValidationErrors, expectedErrors, rowIndex); // 3. Invalid - Core Code rowIndex++; actualResult = _stage3Result.Result[rowIndex]; actualResult.IsValid.Should().BeFalse(); actualResult.ValidationErrors.Count.Should().Be(1); expectedErrors = new List <string> { ValidationMessages.InvalidCoreComponentCode }; TestValidatonErrors(actualResult.ValidationErrors, expectedErrors, rowIndex); // 4. Invalid - Assessment Series rowIndex++; actualResult = _stage3Result.Result[rowIndex]; actualResult.IsValid.Should().BeFalse(); actualResult.ValidationErrors.Count.Should().Be(1); expectedErrors = new List <string> { ValidationMessages.InvalidCoreAssessmentSeriesEntry }; TestValidatonErrors(actualResult.ValidationErrors, expectedErrors, rowIndex); // 5. Invalid - Core Grade rowIndex++; actualResult = _stage3Result.Result[rowIndex]; actualResult.IsValid.Should().BeFalse(); actualResult.ValidationErrors.Count.Should().Be(1); expectedErrors = new List <string> { ValidationMessages.InvalidCoreComponentGrade }; TestValidatonErrors(actualResult.ValidationErrors, expectedErrors, rowIndex); // 6. Invalid - No assessment entry is currently active rowIndex++; actualResult = _stage3Result.Result[rowIndex]; actualResult.IsValid.Should().BeFalse(); actualResult.ValidationErrors.Count.Should().Be(1); expectedErrors = new List <string> { ValidationMessages.NoCoreAssessmentEntryCurrentlyActive }; TestValidatonErrors(actualResult.ValidationErrors, expectedErrors, rowIndex); // 7. Invalid - Assessment entry mapping error rowIndex++; actualResult = _stage3Result.Result[rowIndex]; actualResult.IsValid.Should().BeFalse(); actualResult.ValidationErrors.Count.Should().Be(1); expectedErrors = new List <string> { ValidationMessages.AssessmentSeriesDoesNotMatchTheSeriesOnTheRegistration }; TestValidatonErrors(actualResult.ValidationErrors, expectedErrors, rowIndex); // 8. Invalid - Combination of Core code, Core assessment series and core grade error rowIndex++; actualResult = _stage3Result.Result[rowIndex]; actualResult.IsValid.Should().BeFalse(); actualResult.ValidationErrors.Count.Should().Be(3); expectedErrors = new List <string> { ValidationMessages.InvalidCoreComponentCode, ValidationMessages.InvalidCoreAssessmentSeriesEntry, ValidationMessages.InvalidCoreComponentGrade }; TestValidatonErrors(actualResult.ValidationErrors, expectedErrors, rowIndex); // 9. Invalid - Combination of Core code, Core assessment series, core grade and No assessment entry is currently active error rowIndex++; actualResult = _stage3Result.Result[rowIndex]; actualResult.IsValid.Should().BeFalse(); actualResult.ValidationErrors.Count.Should().Be(4); expectedErrors = new List <string> { ValidationMessages.InvalidCoreComponentCode, ValidationMessages.InvalidCoreAssessmentSeriesEntry, ValidationMessages.InvalidCoreComponentGrade, ValidationMessages.NoCoreAssessmentEntryCurrentlyActive }; TestValidatonErrors(actualResult.ValidationErrors, expectedErrors, rowIndex); // 10. Valid Row. rowIndex++; actualResult = _stage3Result.Result[rowIndex]; actualResult.IsValid.Should().BeTrue(); actualResult.ValidationErrors.Count.Should().Be(0); var expectedTqPathwayAssessmentId = _pathwayAssessments.FirstOrDefault(pa => pa.TqRegistrationPathway.TqRegistrationProfile.UniqueLearnerNumber == _stage2Response[rowIndex].Uln && pa.IsOptedin && pa.EndDate == null)?.Id; var expectedTlLookupId = TlLookup.FirstOrDefault(x => x.Category.Equals(LookupCategory.PathwayComponentGrade.ToString(), StringComparison.InvariantCultureIgnoreCase) && x.Value.Equals(_stage2Response[rowIndex].CoreGrade, StringComparison.InvariantCultureIgnoreCase))?.Id; actualResult.TqPathwayAssessmentId.Should().Be(expectedTqPathwayAssessmentId); actualResult.PathwayComponentGradeLookupId.Should().Be(expectedTlLookupId); }
public static TlLookup CreateTlLookup(ResultsAndCertificationDbContext _dbContext, TlLookup tlLookup, bool addToDbContext = true) { if (tlLookup == null) { tlLookup = new TlLookupBuilder().Build(); } if (addToDbContext) { _dbContext.Add(tlLookup); } return(tlLookup); }
public static Qualification CreateQualification(ResultsAndCertificationDbContext _dbContext, QualificationType qualificationType, TlLookup tlLookup, string code, string title, bool isSendQualification, bool isActive, bool addToDbContext = true) { if (qualificationType != null && tlLookup != null) { var qualification = new Qualification { QualificationTypeId = qualificationType.Id, QualificationType = qualificationType, TlLookupId = tlLookup.Id, TlLookup = tlLookup, Code = code, Title = title, IsSendQualification = isSendQualification, IsActive = isActive, CreatedBy = "Test User" }; if (addToDbContext) { _dbContext.Add(qualification); } return(qualification); } return(null); }