Skip to content

WIP: bulk person API #185

WIP: bulk person API

WIP: bulk person API #185

GitHub Actions / DQT integration test results succeeded Aug 19, 2024 in 0s

133 passed, 0 failed and 0 skipped

Tests passed successfully

✅ TeachingRecordSystem/tests/TeachingRecordSystem.Core.Dqt.CrmIntegrationTests/TestResults/_fv-az1117-399_2024-08-19_13_24_15.trx

133 tests were completed in 447s with 133 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.PluginTests.QTSRegistrationDeleteTests 4✅ 114s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.PluginTests.UpdateInductionStatusTests 21✅ 348s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.PluginTests.UpdateQtlsDateSetTests 2✅ 89s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.ApproveIncidentTests 1✅ 35s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.CancelIncidentTests 1✅ 46s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.CreateContactTests 5✅ 133s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.CreateDateOfBirthChangeIncidentTests 1✅ 50s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.CreateNameChangeIncidentTests 1✅ 55s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.CreateReviewTaskTests 1✅ 58s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.CreateTrnRequestTaskTests 1✅ 8s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.FindPotentialDuplicateContactsTests 2✅ 87s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetActiveContactByTrnTests 2✅ 41s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetActiveContactDetailByIdTests 3✅ 85s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetActiveContactDetailByTrnTests 3✅ 80s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetActiveContactsByLastNameAndDateOfBirthTests 1✅ 92s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetActiveContactsByNameTests 6✅ 7s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetActiveIncidentsTests 1✅ 41s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetAllEarlyYearsStatusesTests 1✅ 1s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetAllHeQualificationsTests 1✅ 868ms
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetAllHeSubjectsTests 1✅ 2s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetAllMqEstablishmentsTests 1✅ 1s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetAllSanctionCodesTests 1✅ 1s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetAllSpecialismsTests 1✅ 1s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetAllSubjectsTests 1✅ 1s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetAllTeacherStatusesTests 1✅ 567ms
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetContactByTrnRequestIdTests 2✅ 40s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetContactsByDateOfBirthTests 6✅ 202s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetDocumentByIdTests 2✅ 46s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetIncidentByTicketNumberTests 3✅ 81s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetInductionByContactIdTests 24✅ 365s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetNotesByContactIdTests 9✅ 162s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetOpenTasksForEmailAddressTests 4✅ 107s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetQualificationsByContactIdTests 4✅ 122s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetSanctionsByContactIdsTests 1✅ 106s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetSystemUserByAzureActiveDirectoryObjectIdTests 2✅ 933ms
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.RejectIncidentTests 1✅ 61s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.SetQtlsDateTests 2✅ 72s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.UpdateContactDateOfBirthTests 1✅ 43s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.UpdateContactNameTests 1✅ 18s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.UpdateSanctionStateTests 2✅ 66s
TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.Services.DqtReporting.DqtReportingServiceTests 5✅ 3s

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.PluginTests.QTSRegistrationDeleteTests

✅ WhenCreatingTeacherWithQtlsDate_QtsDateIsSet
✅ WhenCreatingTeacherWithQts_QtsDateIsSet
✅ WhenCreatingTeacherWithQtsAndQtls_QtlsDateIsChosen
✅ WhenCreatingTeacherWithQtsAndQtls_QtsDateIsChosen

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.PluginTests.UpdateInductionStatusTests

✅ WhenCalled_WithoutTRAInductionStatusAndQTLSDate_ReturnsExpectedResults
✅ WhenCalled_WithoutTRAInductionStatusStatusAndQTLSDate_ReturnsExpectedResults
✅ WhenCalled_WithoutTRAQTLSDate_ReturnsExpectedResults(inductionStatus: Exempt, exemptionReason: Exempt, expectedInductionStatus: Exempt)
✅ WhenCalled_WithoutTRAQTLSDate_ReturnsExpectedResults(inductionStatus: Fail, exemptionReason: null, expectedInductionStatus: Fail)
✅ WhenCalled_WithoutTRAQTLSDate_ReturnsExpectedResults(inductionStatus: FailedinWales, exemptionReason: null, expectedInductionStatus: FailedinWales)
✅ WhenCalled_WithoutTRAQTLSDate_ReturnsExpectedResults(inductionStatus: InductionExtended, exemptionReason: null, expectedInductionStatus: InductionExtended)
✅ WhenCalled_WithoutTRAQTLSDate_ReturnsExpectedResults(inductionStatus: InProgress, exemptionReason: null, expectedInductionStatus: InProgress)
✅ WhenCalled_WithoutTRAQTLSDate_ReturnsExpectedResults(inductionStatus: NotYetCompleted, exemptionReason: null, expectedInductionStatus: NotYetCompleted)
✅ WhenCalled_WithoutTRAQTLSDate_ReturnsExpectedResults(inductionStatus: Pass, exemptionReason: null, expectedInductionStatus: Pass)
✅ WhenCalled_WithoutTRAQTLSDate_ReturnsExpectedResults(inductionStatus: PassedinWales, exemptionReason: null, expectedInductionStatus: PassedinWales)
✅ WhenCalled_WithoutTRAQTLSDate_ReturnsExpectedResults(inductionStatus: RequiredtoComplete, exemptionReason: null, expectedInductionStatus: RequiredtoComplete)
✅ WhenCalled_WithQTLSDate_ReturnsExpectedResults
✅ WhenCalled_WithTRAInductionStatusAndQTLSDate_ReturnsExpectedResults(inductionStatus: Exempt, exemptionReason: Exempt, qtls: "01/04/2018", expectedInductionStatus: Exempt)
✅ WhenCalled_WithTRAInductionStatusAndQTLSDate_ReturnsExpectedResults(inductionStatus: Fail, exemptionReason: null, qtls: "01/04/2018", expectedInductionStatus: Fail)
✅ WhenCalled_WithTRAInductionStatusAndQTLSDate_ReturnsExpectedResults(inductionStatus: FailedinWales, exemptionReason: null, qtls: "01/04/2018", expectedInductionStatus: Exempt)
✅ WhenCalled_WithTRAInductionStatusAndQTLSDate_ReturnsExpectedResults(inductionStatus: InductionExtended, exemptionReason: null, qtls: "01/04/2018", expectedInductionStatus: Exempt)
✅ WhenCalled_WithTRAInductionStatusAndQTLSDate_ReturnsExpectedResults(inductionStatus: InProgress, exemptionReason: null, qtls: "01/04/2018", expectedInductionStatus: Exempt)
✅ WhenCalled_WithTRAInductionStatusAndQTLSDate_ReturnsExpectedResults(inductionStatus: NotYetCompleted, exemptionReason: null, qtls: "01/04/2018", expectedInductionStatus: Exempt)
✅ WhenCalled_WithTRAInductionStatusAndQTLSDate_ReturnsExpectedResults(inductionStatus: Pass, exemptionReason: null, qtls: "01/04/2018", expectedInductionStatus: Pass)
✅ WhenCalled_WithTRAInductionStatusAndQTLSDate_ReturnsExpectedResults(inductionStatus: PassedinWales, exemptionReason: null, qtls: "01/04/2018", expectedInductionStatus: PassedinWales)
✅ WhenCalled_WithTRAInductionStatusAndQTLSDate_ReturnsExpectedResults(inductionStatus: RequiredtoComplete, exemptionReason: null, qtls: "01/04/2018", expectedInductionStatus: Exempt)

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.PluginTests.UpdateQtlsDateSetTests

✅ WhenCreatingTeacherWithoutQtlsDate_QtlsHasBeenSetIsFalse
✅ WhenCreatingTeacherWithQtlsDate_QtlsHasBeenSetIsTrue

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.ApproveIncidentTests

✅ QueryExecutesSuccessfully

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.CancelIncidentTests

✅ QueryExecutesSuccessfully

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.CreateContactTests

✅ QueryExecutesSuccessfully
✅ QueryWithDigits_ExecutesSuccessfully_CreatesTask(firstNameStr: "", middleNameStr: "", lastNameStr: "1", description: "Last name contains a digit")
✅ QueryWithDigits_ExecutesSuccessfully_CreatesTask(firstNameStr: "", middleNameStr: "1", lastNameStr: "", description: "Middle name contains a digit")
✅ QueryWithDigits_ExecutesSuccessfully_CreatesTask(firstNameStr: "1", middleNameStr: "", lastNameStr: "", description: "First name contains a digit")
✅ QueryWithMatchedDuplicateContactName_ExecutesSuccessfully_CreatesTask

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.CreateDateOfBirthChangeIncidentTests

✅ QueryExecutesSuccessfully

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.CreateNameChangeIncidentTests

✅ QueryExecutesSuccessfully

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.CreateReviewTaskTests

✅ QueryExecutesSuccessfully

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.CreateTrnRequestTaskTests

✅ QueryExecutesSuccessfully

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.FindPotentialDuplicateContactsTests

✅ MatchOnEmail_ReturnsMatch
✅ MatchOnNameAndDob_ReturnsMatch

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetActiveContactByTrnTests

✅ WhenCalled_WithTrnForExistingContact_ReturnsContactDetail
✅ WhenCalled_WithTrnForNonExistentContact_ReturnsNull

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetActiveContactDetailByIdTests

✅ WhenCalled_WithContactIdForExistingContact_ReturnsContactDetail
✅ WhenCalled_WithContactIdForExistingContactWithPreviousName_ReturnsContactDetailIncludingPreviousNames
✅ WhenCalled_WithContactIdForNonExistentContact_ReturnsNull

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetActiveContactDetailByTrnTests

✅ WhenCalled_WithTrnForExistingContact_ReturnsContactDetail
✅ WhenCalled_WithTrnForExistingContactWithPreviousName_ReturnsContactDetailIncludingPreviousNames
✅ WhenCalled_WithTrnForNonExistentContact_ReturnsNull

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetActiveContactsByLastNameAndDateOfBirthTests

✅ ReturnsMatchingContactsFromCrm

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetActiveContactsByNameTests

✅ ReturnsMatchingContactsFromCrmInExpectedSortOrder(testScenarioData: ContactSearchSortScenarioData { IsAscending = False, Selector = Func`2 { Method = System.String <GetContactSearchSortScenarioData>b__5_1(TeachingRecordSystem.Core.Dqt.Models.Contact), Target = <>c { ··· } }, SortBy = LastNameDescending })
✅ ReturnsMatchingContactsFromCrmInExpectedSortOrder(testScenarioData: ContactSearchSortScenarioData { IsAscending = False, Selector = Func`2 { Method = System.String <GetContactSearchSortScenarioData>b__5_3(TeachingRecordSystem.Core.Dqt.Models.Contact), Target = <>c { ··· } }, SortBy = FirstNameDescending })
✅ ReturnsMatchingContactsFromCrmInExpectedSortOrder(testScenarioData: ContactSearchSortScenarioData { IsAscending = False, Selector = Func`2 { Method = System.String <GetContactSearchSortScenarioData>b__5_5(TeachingRecordSystem.Core.Dqt.Models.Contact), Target = <>c { ··· } }, SortBy = DateOfBirthDescending })
✅ ReturnsMatchingContactsFromCrmInExpectedSortOrder(testScenarioData: ContactSearchSortScenarioData { IsAscending = True, Selector = Func`2 { Method = System.String <GetContactSearchSortScenarioData>b__5_0(TeachingRecordSystem.Core.Dqt.Models.Contact), Target = <>c { ··· } }, SortBy = LastNameAscending })
✅ ReturnsMatchingContactsFromCrmInExpectedSortOrder(testScenarioData: ContactSearchSortScenarioData { IsAscending = True, Selector = Func`2 { Method = System.String <GetContactSearchSortScenarioData>b__5_2(TeachingRecordSystem.Core.Dqt.Models.Contact), Target = <>c { ··· } }, SortBy = FirstNameAscending })
✅ ReturnsMatchingContactsFromCrmInExpectedSortOrder(testScenarioData: ContactSearchSortScenarioData { IsAscending = True, Selector = Func`2 { Method = System.String <GetContactSearchSortScenarioData>b__5_4(TeachingRecordSystem.Core.Dqt.Models.Contact), Target = <>c { ··· } }, SortBy = DateOfBirthAscending })

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetActiveIncidentsTests

✅ ReturnsActiveIncidentsOnly

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetAllEarlyYearsStatusesTests

✅ QueryExecutesSuccessfully

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetAllHeQualificationsTests

✅ QueryExecutesSuccessfully

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetAllHeSubjectsTests

✅ QueryExecutesSuccessfully

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetAllMqEstablishmentsTests

✅ QueryExecutesSuccessfully

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetAllSanctionCodesTests

✅ QueryExecutesSuccessfully

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetAllSpecialismsTests

✅ QueryExecutesSuccessfully

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetAllSubjectsTests

✅ QueryExecutesSuccessfully

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetAllTeacherStatusesTests

✅ QueryExecutesSuccessfully

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetContactByTrnRequestIdTests

✅ WhenCalled_WithTrnForExistingContact_ReturnsContactDetail
✅ WhenCalled_WithTrnForNonExistentContact_ReturnsNull

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetContactsByDateOfBirthTests

✅ ReturnsMatchingContactsFromCrmInExpectedSortOrder(testScenarioData: ContactSearchSortScenarioData { IsAscending = False, Selector = Func`2 { Method = System.String <GetContactSearchSortScenarioData>b__5_1(TeachingRecordSystem.Core.Dqt.Models.Contact), Target = <>c { ··· } }, SortBy = LastNameDescending })
✅ ReturnsMatchingContactsFromCrmInExpectedSortOrder(testScenarioData: ContactSearchSortScenarioData { IsAscending = False, Selector = Func`2 { Method = System.String <GetContactSearchSortScenarioData>b__5_3(TeachingRecordSystem.Core.Dqt.Models.Contact), Target = <>c { ··· } }, SortBy = FirstNameDescending })
✅ ReturnsMatchingContactsFromCrmInExpectedSortOrder(testScenarioData: ContactSearchSortScenarioData { IsAscending = False, Selector = Func`2 { Method = System.String <GetContactSearchSortScenarioData>b__5_5(TeachingRecordSystem.Core.Dqt.Models.Contact), Target = <>c { ··· } }, SortBy = DateOfBirthDescending })
✅ ReturnsMatchingContactsFromCrmInExpectedSortOrder(testScenarioData: ContactSearchSortScenarioData { IsAscending = True, Selector = Func`2 { Method = System.String <GetContactSearchSortScenarioData>b__5_0(TeachingRecordSystem.Core.Dqt.Models.Contact), Target = <>c { ··· } }, SortBy = LastNameAscending })
✅ ReturnsMatchingContactsFromCrmInExpectedSortOrder(testScenarioData: ContactSearchSortScenarioData { IsAscending = True, Selector = Func`2 { Method = System.String <GetContactSearchSortScenarioData>b__5_2(TeachingRecordSystem.Core.Dqt.Models.Contact), Target = <>c { ··· } }, SortBy = FirstNameAscending })
✅ ReturnsMatchingContactsFromCrmInExpectedSortOrder(testScenarioData: ContactSearchSortScenarioData { IsAscending = True, Selector = Func`2 { Method = System.String <GetContactSearchSortScenarioData>b__5_4(TeachingRecordSystem.Core.Dqt.Models.Contact), Target = <>c { ··· } }, SortBy = DateOfBirthAscending })

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetDocumentByIdTests

✅ WhenCalled_WithDocumentIdForExistingDocument_ReturnsDocument
✅ WhenCalled_WithDocumentIdForNonExistentDocument_ReturnsNull

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetIncidentByTicketNumberTests

✅ WhenCalled_ForIncidentWithMultipleDocument_ReturnsSingleIncidentAndMultipleDocuments
✅ WhenCalled_ForIncidentWithSingleDocument_ReturnsSingleIncidentAndSingleDocument
✅ WhenCalled_WithTicketNumberForNonExistentIncident_ReturnsNull

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetInductionByContactIdTests

✅ WhenCalled_WithContactIdForNonExistentContact_ReturnsNullInductionAndInductionPeriods
✅ WhenCalled_WithContactWithInduction_ReturnsResultWithInductionAndNullInductionPeriods
✅ WhenCalled_WithInductionAndInductionPeriod_ReturnsExpectedResults
✅ WhenCalled_WithoutTRAInductionStatusAndQTLSDate_ReturnsExpectedResults
✅ WhenCalled_WithoutTRAInductionStatusStatusAndQTLSDate_ReturnsExpectedResults
✅ WhenCalled_WithoutTRAQTLSDate_ReturnsExpectedResults(inductionStatus: Exempt, exemptionReason: Exempt, expectedInductionStatus: Exempt)
✅ WhenCalled_WithoutTRAQTLSDate_ReturnsExpectedResults(inductionStatus: Fail, exemptionReason: null, expectedInductionStatus: Fail)
✅ WhenCalled_WithoutTRAQTLSDate_ReturnsExpectedResults(inductionStatus: FailedinWales, exemptionReason: null, expectedInductionStatus: FailedinWales)
✅ WhenCalled_WithoutTRAQTLSDate_ReturnsExpectedResults(inductionStatus: InductionExtended, exemptionReason: null, expectedInductionStatus: InductionExtended)
✅ WhenCalled_WithoutTRAQTLSDate_ReturnsExpectedResults(inductionStatus: InProgress, exemptionReason: null, expectedInductionStatus: InProgress)
✅ WhenCalled_WithoutTRAQTLSDate_ReturnsExpectedResults(inductionStatus: NotYetCompleted, exemptionReason: null, expectedInductionStatus: NotYetCompleted)
✅ WhenCalled_WithoutTRAQTLSDate_ReturnsExpectedResults(inductionStatus: Pass, exemptionReason: null, expectedInductionStatus: Pass)
✅ WhenCalled_WithoutTRAQTLSDate_ReturnsExpectedResults(inductionStatus: PassedinWales, exemptionReason: null, expectedInductionStatus: PassedinWales)
✅ WhenCalled_WithoutTRAQTLSDate_ReturnsExpectedResults(inductionStatus: RequiredtoComplete, exemptionReason: null, expectedInductionStatus: RequiredtoComplete)
✅ WhenCalled_WithQTLSDate_ReturnsExpectedResults
✅ WhenCalled_WithTRAInductionStatusAndQTLSDate_ReturnsExpectedResults(inductionStatus: Exempt, exemptionReason: Exempt, qtls: "01/04/2018", expectedInductionStatus: Exempt)
✅ WhenCalled_WithTRAInductionStatusAndQTLSDate_ReturnsExpectedResults(inductionStatus: Fail, exemptionReason: null, qtls: "01/04/2018", expectedInductionStatus: Fail)
✅ WhenCalled_WithTRAInductionStatusAndQTLSDate_ReturnsExpectedResults(inductionStatus: FailedinWales, exemptionReason: null, qtls: "01/04/2018", expectedInductionStatus: Exempt)
✅ WhenCalled_WithTRAInductionStatusAndQTLSDate_ReturnsExpectedResults(inductionStatus: InductionExtended, exemptionReason: null, qtls: "01/04/2018", expectedInductionStatus: Exempt)
✅ WhenCalled_WithTRAInductionStatusAndQTLSDate_ReturnsExpectedResults(inductionStatus: InProgress, exemptionReason: null, qtls: "01/04/2018", expectedInductionStatus: Exempt)
✅ WhenCalled_WithTRAInductionStatusAndQTLSDate_ReturnsExpectedResults(inductionStatus: NotYetCompleted, exemptionReason: null, qtls: "01/04/2018", expectedInductionStatus: Exempt)
✅ WhenCalled_WithTRAInductionStatusAndQTLSDate_ReturnsExpectedResults(inductionStatus: Pass, exemptionReason: null, qtls: "01/04/2018", expectedInductionStatus: Pass)
✅ WhenCalled_WithTRAInductionStatusAndQTLSDate_ReturnsExpectedResults(inductionStatus: PassedinWales, exemptionReason: null, qtls: "01/04/2018", expectedInductionStatus: PassedinWales)
✅ WhenCalled_WithTRAInductionStatusAndQTLSDate_ReturnsExpectedResults(inductionStatus: RequiredtoComplete, exemptionReason: null, qtls: "01/04/2018", expectedInductionStatus: Exempt)

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetNotesByContactIdTests

✅ WhenCalled_WithContactIdForContactWithNoNotes_ReturnsResultWithNotes(hasAnnotations: False, hasTasks: False, hasIncidentResolutions: False)
✅ WhenCalled_WithContactIdForContactWithNoNotes_ReturnsResultWithNotes(hasAnnotations: False, hasTasks: False, hasIncidentResolutions: True)
✅ WhenCalled_WithContactIdForContactWithNoNotes_ReturnsResultWithNotes(hasAnnotations: False, hasTasks: True, hasIncidentResolutions: False)
✅ WhenCalled_WithContactIdForContactWithNoNotes_ReturnsResultWithNotes(hasAnnotations: False, hasTasks: True, hasIncidentResolutions: True)
✅ WhenCalled_WithContactIdForContactWithNoNotes_ReturnsResultWithNotes(hasAnnotations: True, hasTasks: False, hasIncidentResolutions: False)
✅ WhenCalled_WithContactIdForContactWithNoNotes_ReturnsResultWithNotes(hasAnnotations: True, hasTasks: False, hasIncidentResolutions: True)
✅ WhenCalled_WithContactIdForContactWithNoNotes_ReturnsResultWithNotes(hasAnnotations: True, hasTasks: True, hasIncidentResolutions: False)
✅ WhenCalled_WithContactIdForContactWithNoNotes_ReturnsResultWithNotes(hasAnnotations: True, hasTasks: True, hasIncidentResolutions: True)
✅ WhenCalled_WithContactIdForNonExistentContact_ReturnsResultWithEmptyProperties

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetOpenTasksForEmailAddressTests

✅ WhenCalled_WithEmailWithCancelledTasks_ReturnsEmpty
✅ WhenCalled_WithEmailWithCompletedTasks_ReturnsEmpty
✅ WhenCalled_WithEmailWithNoOpenTasks_ReturnsEmpty
✅ WhenCalled_WithEmailWithOpenTasks_ReturnsTasks

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetQualificationsByContactIdTests

✅ WhenCalled_ForContactWithoutQualifications_ReturnsEmptyArray
✅ WhenCalled_ForContactWithQualifications_ReturnsQualificationsAsExpected
✅ WhenCalledWithIncludeHigherEducationDetails_ForContactWithHeQualifications_ReturnsHeQualificationDetailsAsExpected(includeHeEducationDetails: False)
✅ WhenCalledWithIncludeHigherEducationDetails_ForContactWithHeQualifications_ReturnsHeQualificationDetailsAsExpected(includeHeEducationDetails: True)

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetSanctionsByContactIdsTests

✅ ReturnsSanctionsForEachContactIdSpecified

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.GetSystemUserByAzureActiveDirectoryObjectIdTests

✅ WhenCalled_WithAzureActiveDirectoryObjectIdForExistingUser_ReturnsSystemUserInfo
✅ WhenCalled_WithAzureActiveDirectoryObjectIdForNonExistentUser_ReturnsNull

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.RejectIncidentTests

✅ QueryExecutesSuccessfully

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.SetQtlsDateTests

✅ QueryExecutesSuccessfully
✅ WhenClearingExistingQtlsDate_DoesNotSetQtlsDateHasBeenSet

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.UpdateContactDateOfBirthTests

✅ QueryExecutesSuccessfully

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.UpdateContactNameTests

✅ QueryExecutesSuccessfully

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.QueryTests.UpdateSanctionStateTests

✅ QueryExecutesSuccessfully(setActive: False)
✅ QueryExecutesSuccessfully(setActive: True)

✅ TeachingRecordSystem.Core.Dqt.CrmIntegrationTests.Services.DqtReporting.DqtReportingServiceTests

✅ ProcessChangesForEntityType_DeletesRemovedRecordFromDatabase
✅ ProcessChangesForEntityType_SameRecordMultipleTimesInBatch_WritesMostRecentUpdate(contactExistsPreSync: False)
✅ ProcessChangesForEntityType_SameRecordMultipleTimesInBatch_WritesMostRecentUpdate(contactExistsPreSync: True)
✅ ProcessChangesForEntityType_WritesNewRecordToDatabase
✅ ProcessChangesForEntityType_WritesUpdatedRecordToDatabase