Skip to content

Added v3 put QTLS endpoint #2407

Added v3 put QTLS endpoint

Added v3 put QTLS endpoint #2407

GitHub Actions / API test results failed Apr 22, 2024 in 0s

336 passed, 10 failed and 0 skipped

Tests failed

❌ TeachingRecordSystem/tests/TeachingRecordSystem.Api.Tests/TestResults/_fv-az740-616_2024-04-22_14_51_07.trx

346 tests were completed in 86s with 336 passed, 10 failed and 0 skipped.

Test suite Passed Failed Skipped Time
TeachingRecordSystem.Api.Tests.Endpoints.IdentityWebHooks.GetAnIdentityEndpointsTests 11✅ 878ms
TeachingRecordSystem.Api.Tests.Filters.CrmServiceProtectionFaultExceptionFilterTests 3✅ 439ms
TeachingRecordSystem.Api.Tests.V1.Operations.GetTeacherTests 7✅ 1s
TeachingRecordSystem.Api.Tests.V1.SwaggerTests 1✅ 825ms
TeachingRecordSystem.Api.Tests.V1.UnitTests.GetTeacherHandlerTests 5✅ 124ms
TeachingRecordSystem.Api.Tests.V2.Operations.FindTeachersTests 10✅ 1s
TeachingRecordSystem.Api.Tests.V2.Operations.GetIttProvidersTests 1✅ 103ms
TeachingRecordSystem.Api.Tests.V2.Operations.GetOrCreateTrnRequestTests 34✅ 4s
TeachingRecordSystem.Api.Tests.V2.Operations.GetTeacherTests 10✅ 642ms
TeachingRecordSystem.Api.Tests.V2.Operations.GetTrnRequestTests 6✅ 1s
TeachingRecordSystem.Api.Tests.V2.Operations.SetIttOutcomeTests 21✅ 3s
TeachingRecordSystem.Api.Tests.V2.Operations.SetNpqQualificationTests 7✅ 643ms
TeachingRecordSystem.Api.Tests.V2.Operations.UnlockTeacherTests 8✅ 2s
TeachingRecordSystem.Api.Tests.V2.Operations.UpdateTeacherTests 57✅ 4s
TeachingRecordSystem.Api.Tests.V2.SwaggerTests 1✅ 130ms
TeachingRecordSystem.Api.Tests.V3.SwaggerTests 1✅ 4❌ 774ms
TeachingRecordSystem.Api.Tests.V3.V20240101.CreateDateOfBirthChangeTests 9✅ 3s
TeachingRecordSystem.Api.Tests.V3.V20240101.CreateNameChangeTests 9✅ 2s
TeachingRecordSystem.Api.Tests.V3.V20240101.FindTeachersTests 8✅ 5s
TeachingRecordSystem.Api.Tests.V3.V20240101.GetEytsCertificateTests 3✅ 1s
TeachingRecordSystem.Api.Tests.V3.V20240101.GetInductionCertificateTests 5✅ 1s
TeachingRecordSystem.Api.Tests.V3.V20240101.GetNpqCertificateTests 7✅ 715ms
TeachingRecordSystem.Api.Tests.V3.V20240101.GetQtsCertificateTests 5✅ 613ms
TeachingRecordSystem.Api.Tests.V3.V20240101.GetTeacherByTrnTests 16✅ 44s
TeachingRecordSystem.Api.Tests.V3.V20240101.GetTeacherTests 35✅ 64s
TeachingRecordSystem.Api.Tests.V3.V20240307.CreateTrnRequestTests 12✅ 2s
TeachingRecordSystem.Api.Tests.V3.V20240307.GetQTLSDateRequestTests 4✅ 7s
TeachingRecordSystem.Api.Tests.V3.V20240307.GetTrnRequestTests 5✅ 10s
TeachingRecordSystem.Api.Tests.V3.V20240307.SetQTLSDateRequestTests 19✅ 6❌ 47s
TeachingRecordSystem.Api.Tests.V3.V20240412.CreateDateOfBirthChangeTests 7✅ 2s
TeachingRecordSystem.Api.Tests.V3.V20240412.CreateNameChangeTests 6✅ 2s
TeachingRecordSystem.Api.Tests.V3.V20240416.GetTeacherByTrnTests 3✅ 8s

✅ TeachingRecordSystem.Api.Tests.Endpoints.IdentityWebHooks.GetAnIdentityEndpointsTests

✅ Post_WithInvalidContent_ThrowsJsonException
✅ Post_WithInvalidMessageFormat_ThrowsJsonException
✅ Post_WithInvalidSignatureInHeader_ReturnsUnauthorised
✅ Post_WithMessageTypeWeAreNotInterestedIn_ThrowsJsonException
✅ Post_WithNonJsonMessage_ThrowsJsonException
✅ Post_WithNoSignatureInHeader_ReturnsUnauthorised
✅ Post_WithUserUpdatedMessageForRemovedTrn_RemovesLinkFromDqt
✅ Post_WithUserWithoutTrn_DoesNotCallDqt
✅ Post_WithValidUserCreatedMessage_ReturnsNoContent
✅ Post_WithValidUserMergedMessage_ReturnsNoContent
✅ Post_WithValidUserUpdatedMessage_ReturnsNoContent

✅ TeachingRecordSystem.Api.Tests.Filters.CrmServiceProtectionFaultExceptionFilterTests

✅ ServiceProtectionFaultThrown_Returns429Response(testEndpoint: "concurrent_requests")
✅ ServiceProtectionFaultThrown_Returns429Response(testEndpoint: "execution_time")
✅ ServiceProtectionFaultThrown_Returns429Response(testEndpoint: "number_of_requests")

✅ TeachingRecordSystem.Api.Tests.V1.Operations.GetTeacherTests

✅ Given_invalid_birthdate_returns_error(birthDate: "xxx")
✅ Given_invalid_trn_returns_error(trn: "123456")
✅ Given_invalid_trn_returns_error(trn: "12345678")
✅ Given_invalid_trn_returns_error(trn: "xxx")
✅ Given_match_returns_ok
✅ Given_multiple_matches_returns_match_on_TRN
✅ Given_no_match_found_returns_notfound

✅ TeachingRecordSystem.Api.Tests.V1.SwaggerTests

✅ Get_SwaggerEndpoint_ReturnsOk

✅ TeachingRecordSystem.Api.Tests.V1.UnitTests.GetTeacherHandlerTests

✅ Given_a_contact_the_details_are_mapped
✅ Given_a_contact_with_induction_the_details_are_mapped
✅ Given_a_contact_with_initial_teacher_training_the_details_are_mapped
✅ Given_a_contact_with_qualifications_the_details_are_mapped
✅ Given_a_contact_with_qualified_teacher_status_the_details_are_mapped

✅ TeachingRecordSystem.Api.Tests.V2.Operations.FindTeachersTests

✅ FindTeachers_ClientDoesNotHavePermission_ReturnsForbidden(roles: ["UpdateNpq", "UnlockPerson", "AssignQtls"])
✅ Given_both_ukprn_and_provider_name_are_specified_returns_error
✅ Given_find_with_no_search_parameters_return_empty_collection
✅ Given_no_results_returns_ok
✅ Given_search_returns_a_result_returns_expected_response
✅ Given_search_returns_a_result_with_activesanctions_set_returns_expected_response(activeSanctions: False)
✅ Given_search_returns_a_result_with_activesanctions_set_returns_expected_response(activeSanctions: True)
✅ Given_search_returns_a_result_with_no_active_sanctions_returns_expected_response
✅ Given_search_with_valid_provider_returns_results(providerName: "someProvider", providerUkprn: "")
✅ Given_search_with_valid_provider_returns_results(providerName: null, providerUkprn: "1005811506")

✅ TeachingRecordSystem.Api.Tests.V2.Operations.GetIttProvidersTests

✅ Given_request_returns_list_of_itt_providers

✅ TeachingRecordSystem.Api.Tests.V2.Operations.GetOrCreateTrnRequestTests

✅ GetOrCreateTrn_ClientDoesNotHavePermission_ReturnsForbidden(roles: ["UpdateNpq", "GetPerson", "UnlockPerson", "AssignQtls"])
✅ Given_dob_before_1_1_1940_returns_error(year: 1900, month: 1, day: 1)
✅ Given_dob_equal_or_after_today_returns_error(year: 2022, month: 1, day: 1)
✅ Given_dob_equal_or_after_today_returns_error(year: 2023, month: 1, day: 1)
✅ Given_invalid_age_combination_returns_error(ageRangeFrom: -1, ageRangeTo: 1, expectedErrorPropertyName: "InitialTeacherTraining.AgeRangeFrom", expectedErrorMessage: "Age must be 0-19 inclusive.")
✅ Given_invalid_age_combination_returns_error(ageRangeFrom: 1, ageRangeTo: -1, expectedErrorPropertyName: "InitialTeacherTraining.AgeRangeTo", expectedErrorMessage: "Age must be 0-19 inclusive.")
✅ Given_invalid_age_combination_returns_error(ageRangeFrom: 5, ageRangeTo: 4, expectedErrorPropertyName: "InitialTeacherTraining.AgeRangeTo", expectedErrorMessage: "'Age to' cannot be less than 'age from'.")
✅ Given_invalid_itt_provider_returns_error
✅ Given_invalid_itt_qualification_returns_error
✅ Given_invalid_itt_subject1_returns_error
✅ Given_invalid_itt_subject2_returns_error
✅ Given_invalid_qualification_country_returns_error
✅ Given_invalid_qualification_provider_returns_error
✅ Given_invalid_qualification_returns_error
✅ Given_invalid_qualification_subject_returns_error
✅ Given_invalid_qualification_subject2_returns_error
✅ Given_invalid_qualification_subject3_returns_error
✅ Given_invalid_qualificationtype_not_found_returns_error
✅ Given_OverseasQualifiedTeacher_and_EarlyYears_ProgrammeType_returns_error
✅ Given_request_for_non_traineeteacher_with_slugid_returns_error
✅ Given_request_with_id_already_exists_for_client_and_status_is_completed_returns_existing_trn
✅ Given_request_with_id_already_exists_for_client_and_status_is_pending_returns_null_trn
✅ Given_request_with_invalid_id_returns_error
✅ Given_request_with_new_id_creates_teacher_and_returns_created(trn: "1234567", expectedStatus: "Completed", expectedPotentialDuplicate: False)
✅ Given_request_with_new_id_creates_teacher_and_returns_created(trn: null, expectedStatus: "Pending", expectedPotentialDuplicate: True)
✅ Given_request_with_null_qualification_passes_request_to_DataverseAdapter_successfully
✅ Given_request_with_null_qualification_subject2_request_to_DataverseAdapter_successfully
✅ Given_request_with_null_qualification_subject3_request_to_DataverseAdapter_successfully
✅ Given_request_with_too_long_invalid_id_returns_error
✅ Given_request_with_too_long_invalid_slugid_returns_error
✅ Given_trainee_with_multiple_first_names_populates_middlename_field(firstName: "Joe Xavier", middleName: "", expectedFirstName: "Joe", expectedMiddleName: "Xavier")
✅ Given_trainee_with_multiple_first_names_populates_middlename_field(firstName: "Joe Xavier", middleName: "Andre", expectedFirstName: "Joe", expectedMiddleName: "Xavier Andre")
✅ Given_valid_InternationalQualifiedTeacherStatus_request_passes_request_to_DataverseAdapter_successfully
✅ Given_valid_OverseasQualifiedTeacher_request_passes_request_to_DataverseAdapter_successfully

✅ TeachingRecordSystem.Api.Tests.V2.Operations.GetTeacherTests

✅ GetTeacher_ClientDoesNotHavePermission_ReturnsForbidden(roles: ["UpdateNpq", "UnlockPerson", "AssignQtls"])
✅ Given_invalid_trn_returns_error(trn: "123456")
✅ Given_invalid_trn_returns_error(trn: "12345678")
✅ Given_invalid_trn_returns_error(trn: "xxx")
✅ Given_match_returns_ok
✅ Given_match_returns_ok_and_returns_active_and_inactive_itt_records
✅ Given_match_returns_returns_ok_with_correct_allowPIIUpdates(allowPiiUpdates: False, expectedAllowPiiUpdates: False)
✅ Given_match_returns_returns_ok_with_correct_allowPIIUpdates(allowPiiUpdates: null, expectedAllowPiiUpdates: False)
✅ Given_match_returns_returns_ok_with_correct_allowPIIUpdates(allowPiiUpdates: True, expectedAllowPiiUpdates: True)
✅ Given_no_match_found_returns_notfound

✅ TeachingRecordSystem.Api.Tests.V2.Operations.GetTrnRequestTests

✅ Get_ForTrnRequestWithTrnToken_ReturnsAccessYourQualificationsLink
✅ GetTrnRequest_ClientDoesNotHavePermission_ReturnsForbidden(roles: ["UpdateNpq", "GetPerson", "UnlockPerson", "AssignQtls"])
✅ Given_trn_request_with_specified_id_does_not_exist_for_current_client_returns_notfound
✅ Given_trn_request_with_specified_id_does_not_exist_returns_notfound
✅ Given_valid_completed_trn_request_returns_ok_with_completed_status_and_trn
✅ Given_valid_pending_trn_request_returns_ok_with_pending_status

✅ TeachingRecordSystem.Api.Tests.V2.Operations.SetIttOutcomeTests

✅ Given_AssessmentDate_would_lead_to_QtsDate_in_future_returns_error
✅ Given_missing_birthdate_returns_error
✅ Given_missing_IttProviderUkprn_returns_error
✅ Given_non_Pass_outcome_and_specified_AssessmentDate_returns_error(outcome: Deferred)
✅ Given_non_Pass_outcome_and_specified_AssessmentDate_returns_error(outcome: DeferredForSkillsTests)
✅ Given_non_Pass_outcome_and_specified_AssessmentDate_returns_error(outcome: Fail)
✅ Given_non_Pass_outcome_and_specified_AssessmentDate_returns_error(outcome: Withdrawn)
✅ Given_Passed_outcome_and_missing_AssessmentDate_returns_error
✅ Given_teacher_already_has_different_QTS_date_returns_error
✅ Given_teacher_is_fetched_using_correct_method_without_passing_slugid
✅ Given_teacher_is_fetched_using_fallback_if_notfound_using_slugid
✅ Given_teacher_passing_withdrawn_outcome_for_teacher_that_is_withdrawn_do_nothing_without_error
✅ Given_teacher_state_is_invalid_returns_error(failedReason: EytsDateMismatch, expectedErrorCode: 10003)
✅ Given_teacher_state_is_invalid_returns_error(failedReason: MultipleIttRecords, expectedErrorCode: 10004)
✅ Given_teacher_state_is_invalid_returns_error(failedReason: MultipleQtsRecords, expectedErrorCode: 10007)
✅ Given_teacher_state_is_invalid_returns_error(failedReason: NoMatchingIttRecord, expectedErrorCode: 10005)
✅ Given_teacher_state_is_invalid_returns_error(failedReason: NoMatchingQtsRecord, expectedErrorCode: 10006)
✅ Given_teacher_state_is_invalid_returns_error(failedReason: QtsDateMismatch, expectedErrorCode: 10003)
✅ Given_TRN_that_does_not_exist_returns_not_found
✅ Given_TRN_that_maps_to_multiple_teachers_return_error
✅ IttOutcome_ClientDoesNotHavePermission_ReturnsForbidden(roles: ["UpdateNpq", "GetPerson", "UnlockPerson", "AssignQtls"])

✅ TeachingRecordSystem.Api.Tests.V2.Operations.SetNpqQualificationTests

✅ Given_completeddate_before_provider_earliest_completiondate_return_error
✅ Given_contact_for_trn_not_found_return_error
✅ Given_invalid_qualificationtype_return_error
✅ Given_request_without_trn_return_error
✅ Given_valid_request_for_qualification_not_createdbyapi_return_error
✅ Given_valid_request_return_nocontent
✅ UnlockTeacher_ClientDoesNotHaveSecurityRoles_ReturnsForbidden(roles: ["UpdatePerson", "GetPerson", "UnlockPerson", "AssignQtls"])

✅ TeachingRecordSystem.Api.Tests.V2.Operations.UnlockTeacherTests

✅ Given_a_teacher_that_does_exist_and_is_locked_returns_ok
✅ Given_a_teacher_that_does_exist_but_is_not_locked_returns_ok(loginFailedCounter: 0)
✅ Given_a_teacher_that_does_exist_but_is_not_locked_returns_ok(loginFailedCounter: 1)
✅ Given_a_teacher_that_does_exist_but_is_not_locked_returns_ok(loginFailedCounter: 2)
✅ Given_a_teacher_that_does_exist_but_is_not_locked_returns_ok(loginFailedCounter: null)
✅ Given_a_teacher_that_does_not_exist_returns_notfound
✅ Given_a_teacher_that_has_activesanctions_returns_error
✅ UnlockTeacher_ClientDoesNotHaveSecurityRoles_ReturnsForbidden(roles: ["UpdateNpq", "UpdatePerson", "GetPerson", "AssignQtls"])

✅ TeachingRecordSystem.Api.Tests.V2.Operations.UpdateTeacherTests

✅ Given_a_teacher_that_does_not_exist_returns_notfound
✅ Given_a_two_teachers_have_the_same_trn_return_conflict
✅ Given_asessmentonlyroute_programmetype_then_intraining_outcome_is_not_permitted
✅ Given_emailaddress_exceeeds_maxlength_returns_error
✅ Given_firstname_empty_returns_error
✅ Given_firstname_exceeeds_maxlength_returns_error
✅ Given_InitialTeacherTraining_is_empty_return_error
✅ Given_invalid_age_combination_returns_error(ageRangeFrom: -1, ageRangeTo: 1, expectedErrorPropertyName: "InitialTeacherTraining.AgeRangeFrom", expectedErrorMessage: "Age must be 0-19 inclusive.")
✅ Given_invalid_age_combination_returns_error(ageRangeFrom: 1, ageRangeTo: -1, expectedErrorPropertyName: "InitialTeacherTraining.AgeRangeTo", expectedErrorMessage: "Age must be 0-19 inclusive.")
✅ Given_invalid_age_combination_returns_error(ageRangeFrom: 5, ageRangeTo: 4, expectedErrorPropertyName: "InitialTeacherTraining.AgeRangeTo", expectedErrorMessage: "'Age to' cannot be less than 'age from'.")
✅ Given_invalid_dateofbirth_returns_error
✅ Given_invalid_email_returns_error
✅ Given_invalid_gendercode_returns_error
✅ Given_invalid_itt_provider_returns_error
✅ Given_invalid_itt_qualification_returns_error
✅ Given_invalid_itt_subject1_returns_error
✅ Given_invalid_itt_subject2_returns_error
✅ Given_invalid_itt_subject3_returns_error
✅ Given_invalid_outcome_return_error
✅ Given_invalid_qualification_country_returns_error
✅ Given_invalid_qualification_subject_returns_error
✅ Given_invalid_qualification_subject2_returns_error
✅ Given_invalid_qualification_subject3_returns_error
✅ Given_invalid_qualification_type_returns_error
✅ Given_lastname_empty_returns_error
✅ Given_lastname_exceeeds_maxlength_returns_error
✅ Given_middlename_exceeeds_maxlength_returns_error
✅ Given_missing_birthdate_returns_error
✅ Given_missing_initialteachertraining_providerukprn_returns_error
✅ Given_multiple_lookups_failed_returns_error
✅ Given_non_asessmentonlyroute_programmetypes_then_underassessment_outcome_is_not_permitted(programmeType: Apprenticeship)
✅ Given_non_asessmentonlyroute_programmetypes_then_underassessment_outcome_is_not_permitted(programmeType: Core)
✅ Given_non_asessmentonlyroute_programmetypes_then_underassessment_outcome_is_not_permitted(programmeType: CoreFlexible)
✅ Given_non_asessmentonlyroute_programmetypes_then_underassessment_outcome_is_not_permitted(programmeType: EYITTGraduateEmploymentBased)
✅ Given_non_asessmentonlyroute_programmetypes_then_underassessment_outcome_is_not_permitted(programmeType: EYITTGraduateEntry)
✅ Given_non_asessmentonlyroute_programmetypes_then_underassessment_outcome_is_not_permitted(programmeType: EYITTSchoolDirectEarlyYears)
✅ Given_non_asessmentonlyroute_programmetypes_then_underassessment_outcome_is_not_permitted(programmeType: FutureTeachingScholars)
✅ Given_non_asessmentonlyroute_programmetypes_then_underassessment_outcome_is_not_permitted(programmeType: HEI)
✅ Given_non_asessmentonlyroute_programmetypes_then_underassessment_outcome_is_not_permitted(programmeType: InternationalQualifiedTeacherStatus)
✅ Given_non_asessmentonlyroute_programmetypes_then_underassessment_outcome_is_not_permitted(programmeType: LicensedTeacherProgramme)
✅ Given_non_asessmentonlyroute_programmetypes_then_underassessment_outcome_is_not_permitted(programmeType: OverseasTrainedTeacherProgramme)
✅ Given_non_asessmentonlyroute_programmetypes_then_underassessment_outcome_is_not_permitted(programmeType: ProviderLedPostgrad)
✅ Given_non_asessmentonlyroute_programmetypes_then_underassessment_outcome_is_not_permitted(programmeType: UndergraduateOptIn)
✅ Given_qts_registration_not_matched_return_error
✅ Given_request_slugid_exceeding_maxlength_return_error
✅ Given_request_with_existing_husid_for_another_teacher_returns_error
✅ Given_slugid_does_not_return_contact_fallback_to_trn_and_dob_return_nocontent
✅ Given_teacher_has_multiple_incomplete_itt_records_return_error
✅ Given_update_pii_request_returns_nocontent
✅ Given_update_with_firstname_provided_without_lastname_return_error
✅ Given_update_with_lastname_provided_without_firstname_return_error
✅ Given_update_with_middlename_provided_without_firstname_return_error
✅ Given_update_with_middlename_provided_without_lastname_return_error
✅ Given_valid_update_with_slugid_return_nocontent
✅ Given_valid_update_with_trn_and_dob_succeeds_return_nocontent
✅ Given_valid_update_without_qualification_succeeds
✅ UpdateTeacher_ClientDoesNotHaveSecurityRoles_ReturnsForbidden(roles: ["UpdateNpq", "GetPerson", "UnlockPerson", "AssignQtls"])

✅ TeachingRecordSystem.Api.Tests.V2.SwaggerTests

✅ Get_SwaggerEndpoint_ReturnsOk

❌ TeachingRecordSystem.Api.Tests.V3.SwaggerTests

✅ Get_SwaggerEndpoint_ReturnsOk(minorVersion: "20240101")
❌ Get_SwaggerEndpoint_ReturnsOk(minorVersion: "20240307")
	Swashbuckle.AspNetCore.SwaggerGen.SwaggerGeneratorException : Failed to generate Operation for action - TeachingRecordSystem.Api.V3.V20240307.Controllers.PersonsController.Put (TeachingRecordSystem.Api). See inner exception
	---- System.NotSupportedException : Cannot derive security scheme for operation.
❌ Get_SwaggerEndpoint_ReturnsOk(minorVersion: "20240412")
	Swashbuckle.AspNetCore.SwaggerGen.SwaggerGeneratorException : Failed to generate Operation for action - TeachingRecordSystem.Api.V3.V20240307.Controllers.PersonsController.Put (TeachingRecordSystem.Api). See inner exception
	---- System.NotSupportedException : Cannot derive security scheme for operation.
❌ Get_SwaggerEndpoint_ReturnsOk(minorVersion: "20240416")
	Swashbuckle.AspNetCore.SwaggerGen.SwaggerGeneratorException : Failed to generate Operation for action - TeachingRecordSystem.Api.V3.V20240307.Controllers.PersonsController.Put (TeachingRecordSystem.Api). See inner exception
	---- System.NotSupportedException : Cannot derive security scheme for operation.
❌ Get_SwaggerEndpoint_ReturnsOk(minorVersion: "Next")
	Swashbuckle.AspNetCore.SwaggerGen.SwaggerGeneratorException : Failed to generate Operation for action - TeachingRecordSystem.Api.V3.V20240307.Controllers.PersonsController.Put (TeachingRecordSystem.Api). See inner exception
	---- System.NotSupportedException : Cannot derive security scheme for operation.

✅ TeachingRecordSystem.Api.Tests.V3.V20240101.CreateDateOfBirthChangeTests

✅ Post_EvidenceFileDoesNotExist_ReturnsError
✅ Post_InvalidRequest_ReturnsBadRequest(includeTrn: False, newDateOfBirthString: "1990-07-01", evidenceFileName: "evidence.jpg", evidenceFileUrl: "https://place.com/evidence.jpg")
✅ Post_InvalidRequest_ReturnsBadRequest(includeTrn: True, newDateOfBirthString: "1990-07-01", evidenceFileName: "evidence.jpg", evidenceFileUrl: "https://place.com/evidence.jpg")
✅ Post_InvalidRequest_ReturnsBadRequest(includeTrn: True, newDateOfBirthString: "1990-07-01", evidenceFileName: "evidence.jpg", evidenceFileUrl: null)
✅ Post_InvalidRequest_ReturnsBadRequest(includeTrn: True, newDateOfBirthString: "1990-07-01", evidenceFileName: null, evidenceFileUrl: "https://place.com/evidence.jpg")
✅ Post_InvalidRequest_ReturnsBadRequest(includeTrn: True, newDateOfBirthString: null, evidenceFileName: "evidence.jpg", evidenceFileUrl: "https://place.com/evidence.jpg")
✅ Post_TeacherWithTrnDoesNotExist_ReturnsBadRequest
✅ Post_ValidRequest_CreatesIncident
✅ PostCreateDateOfBirthChange_ClientDoesNotHavePermission_ReturnsForbidden(roles: ["UpdateNpq", "GetPerson", "UnlockPerson", "AssignQtls"])

✅ TeachingRecordSystem.Api.Tests.V3.V20240101.CreateNameChangeTests

✅ Post_EvidenceFileDoesNotExist_ReturnsError
✅ Post_InvalidRequest_ReturnsBadRequest(includeTrn: False, newFirstName: "First", newMiddleName: "Middle", newLastName: "Last", evidenceFileName: "evidence.jpg", evidenceFileUrl: "https://place.com/evidence.jpg")
✅ Post_InvalidRequest_ReturnsBadRequest(includeTrn: True, newFirstName: "First", newMiddleName: "Middle", newLastName: "Last", evidenceFileName: "evidence.jpg", evidenceFileUrl: null)
✅ Post_InvalidRequest_ReturnsBadRequest(includeTrn: True, newFirstName: "First", newMiddleName: "Middle", newLastName: "Last", evidenceFileName: null, evidenceFileUrl: "https://place.com/evidence.jpg")
✅ Post_InvalidRequest_ReturnsBadRequest(includeTrn: True, newFirstName: "First", newMiddleName: "Middle", newLastName: null, evidenceFileName: "evidence.jpg", evidenceFileUrl: "https://place.com/evidence.jpg")
✅ Post_InvalidRequest_ReturnsBadRequest(includeTrn: True, newFirstName: null, newMiddleName: "Middle", newLastName: "Last", evidenceFileName: "evidence.jpg", evidenceFileUrl: "https://place.com/evidence.jpg")
✅ Post_TeacherWithTrnDoesNotExist_ReturnsBadRequest
✅ Post_ValidRequest_CreatesIncident
✅ PostNameChanges_ClientDoesNotHavePermission_ReturnsForbidden(roles: ["UpdateNpq", "UnlockPerson", "AssignQtls"])

✅ TeachingRecordSystem.Api.Tests.V3.V20240101.FindTeachersTests

✅ Get_ClientDoesNotHavePermission_ReturnsForbidden(roles: ["UpdateNpq", "UnlockPerson", "AssignQtls"])
✅ Get_InvalidFindBy_ReturnsError(findBy: "", expectedErrorMessage: "Invalid matching policy.")
✅ Get_InvalidFindBy_ReturnsError(findBy: "BadFindBy", expectedErrorMessage: "The value 'BadFindBy' is not valid for FindBy.")
✅ Get_MissingPropertiesForFindBy_ReturnsError(lastName: "", dateOfBirth: "1990-01-01", expectedErrorPropertyName: "lastName", expectedErrorMessage: "A value is required when findBy is 'LastNameAndDat"···)
✅ Get_MissingPropertiesForFindBy_ReturnsError(lastName: "Smith", dateOfBirth: "", expectedErrorPropertyName: "dateOfBirth", expectedErrorMessage: "A value is required when findBy is 'LastNameAndDat"···)
✅ Get_NonExposableSanctionCode_IsNotReturned
✅ Get_ValidRequestWithMatchesOnLastName_ReturnsMappedContacts
✅ Get_ValidRequestWithMatchOnPreviousName_ReturnsMappedContacts

✅ TeachingRecordSystem.Api.Tests.V3.V20240101.GetEytsCertificateTests

✅ Get_EytsCertificateWithEytsDateDoesNotExist_ReturnsNotFound
✅ Get_EytsCertificateWithTrnDoesNotExist_ReturnsNotFound
✅ Get_ValidRequest_ReturnsExpectedResponse

✅ TeachingRecordSystem.Api.Tests.V3.V20240101.GetInductionCertificateTests

✅ Get_InductionCertificateWhenInductionDoesNotExist_ReturnsNotFound
✅ Get_InductionCertificateWhenInductionHasNoCompletionDate_ReturnsNotFound
✅ Get_InductionCertificateWhenInductionNotPassed_ReturnsNotFound
✅ Get_InductionCertificateWhenNoTeacherAssociatedWithTrn_ReturnsNotFound
✅ Get_ValidRequest_ReturnsExpectedResponse

✅ TeachingRecordSystem.Api.Tests.V3.V20240101.GetNpqCertificateTests

✅ Get_NpqCertificateWhenAssociatedTeacherIsNotTheAuthenticatedUser_ReturnsNotFound
✅ Get_NpqCertificateWhenNoAssociatedTeacher_ReturnsNotFound
✅ Get_NpqCertificateWhenQualificationDoesNotExist_ReturnsNotFound
✅ Get_NpqCertificateWhenQualificationHasNoAwardDate_ReturnsNotFound
✅ Get_NpqCertificateWhenQualificationIsNotActive_ReturnsNotFound
✅ Get_NpqCertificateWhenQualificationIsNotNpq_ReturnsNotFound
✅ Get_ValidRequest_ReturnsExpectedResponse

✅ TeachingRecordSystem.Api.Tests.V3.V20240101.GetQtsCertificateTests

✅ Get_QtsCertificateForTeacherQualifiedInWales_ReturnsNotFound
✅ Get_QtsCertificateWithQtsDateDoesNotExist_ReturnsNotFound
✅ Get_QtsCertificateWithTrnDoesNotExist_ReturnsNotFound
✅ Get_ValidRequest_ReturnsExpectedResponse(exemptFromInduction: False)
✅ Get_ValidRequest_ReturnsExpectedResponse(exemptFromInduction: True)

✅ TeachingRecordSystem.Api.Tests.V3.V20240101.GetTeacherByTrnTests

✅ Get_TrnNotFound_ReturnsNotFound
✅ Get_UnauthenticatedRequest_ReturnsUnauthorized
✅ Get_ValidRequest_ReturnsExpectedResponse
✅ Get_ValidRequestForContactWithMultiWordFirstName_ReturnsExpectedResponse
✅ Get_ValidRequestForContactWithPendingDateOfBirthChange_ReturnsPendingDateOfBirthChangeTrue
✅ Get_ValidRequestForContactWithPendingNameChange_ReturnsPendingNameChangeTrue
✅ Get_ValidRequestForTeacherQualifiedInWales_ReturnsExpectedResponse
✅ Get_ValidRequestWithAlerts_ReturnsExpectedSanctionsContent
✅ Get_ValidRequestWithHigherEducationQualifications_ReturnsExpectedHigherEducationQualificationsContent
✅ Get_ValidRequestWithInduction_ReturnsExpectedInductionContent
✅ Get_ValidRequestWithInitialTeacherTraining_ReturnsExpectedInitialTeacherTrainingContent
✅ Get_ValidRequestWithMandatoryQualifications_ReturnsExpectedMandatoryQualificationsContent
✅ Get_ValidRequestWithNpqQualifications_ReturnsExpectedNpqQualificationsContent
✅ Get_ValidRequestWithPreviousNames_ReturnsExpectedPreviousNamesContent
✅ Get_ValidRequestWithSanctions_ReturnsExpectedSanctionsContent
✅ GetTeacher_ClientDoesNotHavePermission_ReturnsForbidden(roles: ["UpdateNpq", "UnlockPerson", "AssignQtls"])

✅ TeachingRecordSystem.Api.Tests.V3.V20240101.GetTeacherTests

✅ Get_MultipleEYTSRecords_ReturnsMostRecent
✅ Get_MultipleQTSRecords_ReturnsMostRecent
✅ Get_TeacherWithTrnDoesNotExist_ReturnsForbidden
✅ Get_ValidRequestForContactWithMultiWordFirstName_ReturnsExpectedResponse
✅ Get_ValidRequestForContactWithPendingDateOfBirthChange_ReturnsPendingDateOfBirthChangeTrue
✅ Get_ValidRequestForContactWithPendingNameChange_ReturnsPendingNameChangeTrue
✅ Get_ValidRequestForTeacherQualifiedInWales_ReturnsExpectedResponse(qtsStatusValue: "213", qtsStatusDescription: "Qualified")
✅ Get_ValidRequestWithAlerts_ReturnsExpectedSanctionsContent
✅ Get_ValidRequestWithEYTSandQTS_ReturnsExpectedResponse
✅ Get_ValidRequestWithHigherEducationQualifications_ReturnsExpectedHigherEducationQualificationsContent
✅ Get_ValidRequestWithInduction_ReturnsExpectedInductionContent
✅ Get_ValidRequestWithInitialTeacherTraining_ReturnsExpectedInitialTeacherTrainingContent
✅ Get_ValidRequestWithMandatoryQualifications_ReturnsExpectedMandatoryQualificationsContent
✅ Get_ValidRequestWithNpqQualifications_ReturnsExpectedNpqQualificationsContent
✅ Get_ValidRequestWithoutEYTSorQTS_ReturnsExpectedResponse
✅ Get_ValidRequestWithPreviousNames_ReturnsExpectedPreviousNamesContent
✅ Get_ValidRequestWithSanctions_ReturnsExpectedSanctionsContent
✅ Get_ValidRequestWithSingleEYTS_ReturnsExpectedResponse(eytsStatusValue: "220", eytsStatusDescription: "Early years trainee")
✅ Get_ValidRequestWithSingleEYTS_ReturnsExpectedResponse(eytsStatusValue: "221", eytsStatusDescription: "Qualified")
✅ Get_ValidRequestWithSingleEYTS_ReturnsExpectedResponse(eytsStatusValue: "222", eytsStatusDescription: "Early years professional status")
✅ Get_ValidRequestWithSingleQts_ReturnsExpectedResponse(qtsStatusValue: "100", qtsStatusDescription: "Qualified")
✅ Get_ValidRequestWithSingleQts_ReturnsExpectedResponse(qtsStatusValue: "103", qtsStatusDescription: "Qualified")
✅ Get_ValidRequestWithSingleQts_ReturnsExpectedResponse(qtsStatusValue: "104", qtsStatusDescription: "Qualified")
✅ Get_ValidRequestWithSingleQts_ReturnsExpectedResponse(qtsStatusValue: "206", qtsStatusDescription: "Qualified")
✅ Get_ValidRequestWithSingleQts_ReturnsExpectedResponse(qtsStatusValue: "211", qtsStatusDescription: "Trainee teacher")
✅ Get_ValidRequestWithSingleQts_ReturnsExpectedResponse(qtsStatusValue: "212", qtsStatusDescription: "Assessment only route candidate")
✅ Get_ValidRequestWithSingleQts_ReturnsExpectedResponse(qtsStatusValue: "214", qtsStatusDescription: "Partial qualified teacher status")
✅ Get_ValidRequestWithSingleQts_ReturnsExpectedResponse(qtsStatusValue: "28", qtsStatusDescription: "Qualified")
✅ Get_ValidRequestWithSingleQts_ReturnsExpectedResponse(qtsStatusValue: "50", qtsStatusDescription: "Qualified")
✅ Get_ValidRequestWithSingleQts_ReturnsExpectedResponse(qtsStatusValue: "67", qtsStatusDescription: "Qualified")
✅ Get_ValidRequestWithSingleQts_ReturnsExpectedResponse(qtsStatusValue: "68", qtsStatusDescription: "Qualified")
✅ Get_ValidRequestWithSingleQts_ReturnsExpectedResponse(qtsStatusValue: "69", qtsStatusDescription: "Qualified")
✅ Get_ValidRequestWithSingleQts_ReturnsExpectedResponse(qtsStatusValue: "71", qtsStatusDescription: "Qualified")
✅ Get_ValidRequestWithSingleQts_ReturnsExpectedResponse(qtsStatusValue: "87", qtsStatusDescription: "Qualified")
✅ Get_ValidRequestWithSingleQts_ReturnsExpectedResponse(qtsStatusValue: "90", qtsStatusDescription: "Qualified")

✅ TeachingRecordSystem.Api.Tests.V3.V20240307.CreateTrnRequestTests

✅ Post_ClientDoesNotHavePermission_ReturnsForbidden(roles: ["UpdateNpq", "UpdatePerson", "GetPerson", "UnlockPerson", "AssignQtls"])
✅ Post_DateOfBirthBefore01011940_ReturnsError(year: 1900, month: 1, day: 1)
✅ Post_NationalInsuranceNumberExceedingMaxLength_ReturnsError
✅ Post_NotMatchedToExistingRecord_CreatesTeacherWithTrnAndReturnsCompletedStatus
✅ Post_PotentialDuplicateRequest_CreatesContactWithoutTrnAndReturnsPendingStatus
✅ Post_RequestIdExceedingCharacterLimit_ReturnsError
✅ Post_RequestWithDateOfBirthEqualOrAfterToday_ReturnsError(daysAfterToday: 0)
✅ Post_RequestWithDateOfBirthEqualOrAfterToday_ReturnsError(daysAfterToday: 1)
✅ Post_RequestWithExistingRequestId_ReturnsConflict
✅ Post_RequestWithInvalidId_ReturnsError
✅ Post_RequestWithInvalidNino_ReturnsError
✅ Post_RequestWithoutNino_ReturnsOk

✅ TeachingRecordSystem.Api.Tests.V3.V20240307.GetQTLSDateRequestTests

✅ Get_ClientDoesNotHavePermission_ReturnsForbidden(roles: ["UpdateNpq", "GetPerson", "UnlockPerson", "AssignQtls"])
✅ Get_NoQTLS_ReturnsExpectedResult
✅ Get_WithQTLS_ReturnsExpectedResult
✅ Trn_TrnNotFound_ReturnsNotFound

✅ TeachingRecordSystem.Api.Tests.V3.V20240307.GetTrnRequestTests

✅ Get_ClientDoesNotHavePermission_ReturnsForbidden(roles: ["UpdateNpq", "UpdatePerson", "GetPerson", "UnlockPerson", "AssignQtls"])
✅ Get_MergedRecord_ReturnsExpectedResponse
✅ Get_TrnRequestNotFound_ReturnsNotFound
✅ Get_ValidCompletedTrnRequest_ReturnsExpectedResponse
✅ Get_ValidPendingTrnRequest_ReturnsExpectedResponse

❌ TeachingRecordSystem.Api.Tests.V3.V20240307.SetQTLSDateRequestTests

✅ Put_AwardedDateInFuture_ReturnsErrror
❌ Put_ClearExistingQTLSDate_ReturnsExpectedResult
	Assert.Equal() Failure: Values differ
	Expected: 200
	Actual:   404
✅ Put_ClientDoesNotHavePermission_ReturnsForbidden(roles: ["UpdateNpq", "GetPerson", "UnlockPerson", "AssignQtls"])
✅ Put_InvalidTrn_ReturnsErrror(trn: "123456")
✅ Put_InvalidTrn_ReturnsErrror(trn: "12345678")
✅ Put_InvalidTrn_ReturnsErrror(trn: "xxx")
❌ Put_QTLSDate_SetsInductionWhenExistingInductionStatusEmpty(existingQtls: "01/01/2021", incomingQtls: null, expectetInductionStatus: null, expectedHttpStatus: OK)
	Assert.Null() Failure: Value is not null
	Expected: null
	Actual:   Task { Account_Tasks = null, ActivityId = ee754cad-4d60-4816-981d-60a16565f662, Attributes = [···], business_unit_task_activities = null, Category = "Unable to set QTLSDate", ··· }
❌ Put_QTLSDate_SetsInductionWhenExistingInductionStatusEmpty(existingQtls: null, incomingQtls: "01/01/2021", expectetInductionStatus: Exempt, expectedHttpStatus: OK)
	Assert.Null() Failure: Value is not null
	Expected: null
	Actual:   Task { Account_Tasks = null, ActivityId = ee754cad-4d60-4816-981d-60a16565f662, Attributes = [···], business_unit_task_activities = null, Category = "Unable to set QTLSDate", ··· }
✅ Put_QTLSDateAfterAllQTSDates_SetsQTSDate
✅ Put_QTLSDateBeforeAllQTSDates_SetsQTSDate
✅ Put_RejectQTLSUpdate_ReturnsAcceptedAndCreatesTask(existingQtls: "01/01/2001", incomingQtls: "01/05/2003", inductionStatus: FailedinWales, reason: null, qts: null, expextedQTS: "01/01/2001")
✅ Put_RejectQTLSUpdate_ReturnsAcceptedAndCreatesTask(existingQtls: "01/01/2001", incomingQtls: "02/02/1999", inductionStatus: Exempt, reason: Exempt, qts: null, expextedQTS: "01/01/2001")
✅ Put_RejectQTLSUpdate_ReturnsAcceptedAndCreatesTask(existingQtls: "01/01/2001", incomingQtls: null, inductionStatus: Fail, reason: null, qts: null, expextedQTS: "01/01/2001")
✅ Put_RejectQTLSUpdate_ReturnsAcceptedAndCreatesTask(existingQtls: "01/01/2001", incomingQtls: null, inductionStatus: InductionExtended, reason: null, qts: null, expextedQTS: "01/01/2001")
✅ Put_RejectQTLSUpdate_ReturnsAcceptedAndCreatesTask(existingQtls: "01/01/2001", incomingQtls: null, inductionStatus: InProgress, reason: null, qts: null, expextedQTS: "01/01/2001")
❌ Put_RejectQTLSUpdate_ReturnsAcceptedAndCreatesTask(existingQtls: null, incomingQtls: "01/01/1998", inductionStatus: FailedinWales, reason: null, qts: null, expextedQTS: null)
	Assert.Equal() Failure: Values differ
	Expected: null
	Actual:   09/01/2022
❌ Put_RejectQTLSUpdate_ReturnsAcceptedAndCreatesTask(existingQtls: null, incomingQtls: "01/01/2021", inductionStatus: Fail, reason: null, qts: null, expextedQTS: null)
	Assert.Equal() Failure: Values differ
	Expected: null
	Actual:   09/01/2022
✅ Put_RemoveQTLS_SetsQTSDateToEarliestQTSRegistrationDate(qtls: "01/01/1999", qts1: "02/02/2023", qts2: "02/02/2022", expectedQTS: "02/02/2022")
✅ Put_RemoveQTLS_SetsQTSDateToEarliestQTSRegistrationDate(qtls: "01/01/2024", qts1: "02/02/2001", qts2: "02/02/2004", expectedQTS: "02/02/2001")
✅ Put_RemoveQTLSDate_SetsQTSDate
✅ Put_TrnNotFound_ReturnsNotFound
✅ Put_ValidQTLSDate_ReturnsExpectedResult
❌ Put_ValidQTLSDate_SetsInductionStatus(existingInductionStatus: InductionExtended, existingInductionExemptionReason: null, incomingQtls: "01/01/2021", expectetInductionStatus: Exempt, expectedHttpStatus: OK)
	Assert.Equal() Failure: Values differ
	Expected: OK
	Actual:   Accepted
✅ Put_ValidQTLSDate_SetsInductionStatus(existingInductionStatus: InductionExtended, existingInductionExemptionReason: null, incomingQtls: null, expectetInductionStatus: InductionExtended, expectedHttpStatus: OK)
✅ Put_ValidQTLSWithNoQTS_SetsQTSDate

✅ TeachingRecordSystem.Api.Tests.V3.V20240412.CreateDateOfBirthChangeTests

✅ Post_EvidenceFileDoesNotExist_ReturnsError
✅ Post_InvalidRequest_ReturnsBadRequest(newDateOfBirthString: "1990-07-01", evidenceFileName: "evidence.jpg", evidenceFileUrl: "https://place.com/evidence.jpg")
✅ Post_InvalidRequest_ReturnsBadRequest(newDateOfBirthString: "1990-07-01", evidenceFileName: "evidence.jpg", evidenceFileUrl: null)
✅ Post_InvalidRequest_ReturnsBadRequest(newDateOfBirthString: "1990-07-01", evidenceFileName: null, evidenceFileUrl: "https://place.com/evidence.jpg")
✅ Post_InvalidRequest_ReturnsBadRequest(newDateOfBirthString: null, evidenceFileName: "evidence.jpg", evidenceFileUrl: "https://place.com/evidence.jpg")
✅ Post_TeacherWithTrnDoesNotExist_ReturnsBadRequest
✅ Post_ValidRequest_CreatesIncidentAndReturnsTicketNumber

✅ TeachingRecordSystem.Api.Tests.V3.V20240412.CreateNameChangeTests

✅ Post_EvidenceFileDoesNotExist_ReturnsError
✅ Post_InvalidRequest_ReturnsBadRequest(newFirstName: "First", newMiddleName: "Middle", newLastName: "Last", evidenceFileName: "evidence.jpg", evidenceFileUrl: null)
✅ Post_InvalidRequest_ReturnsBadRequest(newFirstName: "First", newMiddleName: "Middle", newLastName: "Last", evidenceFileName: null, evidenceFileUrl: "https://place.com/evidence.jpg")
✅ Post_InvalidRequest_ReturnsBadRequest(newFirstName: "First", newMiddleName: "Middle", newLastName: null, evidenceFileName: "evidence.jpg", evidenceFileUrl: "https://place.com/evidence.jpg")
✅ Post_InvalidRequest_ReturnsBadRequest(newFirstName: null, newMiddleName: "Middle", newLastName: "Last", evidenceFileName: "evidence.jpg", evidenceFileUrl: "https://place.com/evidence.jpg")
✅ Post_ValidRequest_CreatesIncidentAndReturnsTicketNumber

✅ TeachingRecordSystem.Api.Tests.V3.V20240416.GetTeacherByTrnTests

✅ Get_DateOfBirthDoesNotMatchTeachingRecord_ReturnsNotFound
✅ Get_DateOfBirthMatchesTeachingRecord_ReturnsOk
✅ Get_DateOfBirthNotProvided_ReturnsOk

Annotations

Check failure on line 20 in TeachingRecordSystem/src/TeachingRecordSystem.Api/Infrastructure/Middleware/AssignRequestedVersionMiddleware.cs

See this annotation in the file changed.

@github-actions github-actions / API test results

TeachingRecordSystem.Api.Tests.V3.SwaggerTests ► Get_SwaggerEndpoint_ReturnsOk(minorVersion: "20240307")

Failed test found in:
  TeachingRecordSystem/tests/TeachingRecordSystem.Api.Tests/TestResults/_fv-az740-616_2024-04-22_14_51_07.trx
Error:
  Swashbuckle.AspNetCore.SwaggerGen.SwaggerGeneratorException : Failed to generate Operation for action - TeachingRecordSystem.Api.V3.V20240307.Controllers.PersonsController.Put (TeachingRecordSystem.Api). See inner exception
  ---- System.NotSupportedException : Cannot derive security scheme for operation.
Raw output
Swashbuckle.AspNetCore.SwaggerGen.SwaggerGeneratorException : Failed to generate Operation for action - TeachingRecordSystem.Api.V3.V20240307.Controllers.PersonsController.Put (TeachingRecordSystem.Api). See inner exception
---- System.NotSupportedException : Cannot derive security scheme for operation.
   at Swashbuckle.AspNetCore.SwaggerGen.SwaggerGenerator.GenerateOperation(ApiDescription apiDescription, SchemaRepository schemaRepository)
   at Swashbuckle.AspNetCore.SwaggerGen.SwaggerGenerator.GenerateOperations(IEnumerable`1 apiDescriptions, SchemaRepository schemaRepository)
   at Swashbuckle.AspNetCore.SwaggerGen.SwaggerGenerator.GeneratePaths(IEnumerable`1 apiDescriptions, SchemaRepository schemaRepository)
   at Swashbuckle.AspNetCore.SwaggerGen.SwaggerGenerator.GetSwaggerDocumentWithoutFilters(String documentName, String host, String basePath)
   at Swashbuckle.AspNetCore.SwaggerGen.SwaggerGenerator.GetSwaggerAsync(String documentName, String host, String basePath)
   at Swashbuckle.AspNetCore.Swagger.SwaggerMiddleware.Invoke(HttpContext httpContext, ISwaggerProvider swaggerProvider)
   at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
   at TeachingRecordSystem.Api.Infrastructure.Middleware.AssignRequestedVersionMiddleware.Invoke(HttpContext context) in /home/runner/work/teaching-record-system/teaching-record-system/TeachingRecordSystem/src/TeachingRecordSystem.Api/Infrastructure/Middleware/AssignRequestedVersionMiddleware.cs:line 20
   at Microsoft.AspNetCore.TestHost.HttpContextBuilder.<>c__DisplayClass23_0.<<SendAsync>g__RunRequestAsync|0>d.MoveNext()
--- End of stack trace from previous location ---
   at Microsoft.AspNetCore.TestHost.ClientHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
   at Microsoft.AspNetCore.Mvc.Testing.Handlers.CookieContainerHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
   at Microsoft.AspNetCore.Mvc.Testing.Handlers.RedirectHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
   at System.Net.Http.HttpClient.<SendAsync>g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken)
   at TeachingRecordSystem.Api.Tests.V3.SwaggerTests.Get_SwaggerEndpoint_ReturnsOk(String minorVersion) in /home/runner/work/teaching-record-system/teaching-record-system/TeachingRecordSystem/tests/TeachingRecordSystem.Api.Tests/V3/SwaggerTests.cs:line 16
----- Inner Stack Trace -----
   at TeachingRecordSystem.Api.Infrastructure.OpenApi.AddSecuritySchemeOperationFilter.Apply(OpenApiOperation operation, OperationFilterContext context) in /home/runner/work/teaching-record-system/teaching-record-system/TeachingRecordSystem/src/TeachingRecordSystem.Api/Infrastructure/OpenApi/AddSecuritySchemeOperationFilter.cs:line 52
   at Swashbuckle.AspNetCore.SwaggerGen.SwaggerGenerator.GenerateOperation(ApiDescription apiDescription, SchemaRepository schemaRepository)

Check failure on line 20 in TeachingRecordSystem/src/TeachingRecordSystem.Api/Infrastructure/Middleware/AssignRequestedVersionMiddleware.cs

See this annotation in the file changed.

@github-actions github-actions / API test results

TeachingRecordSystem.Api.Tests.V3.SwaggerTests ► Get_SwaggerEndpoint_ReturnsOk(minorVersion: "20240412")

Failed test found in:
  TeachingRecordSystem/tests/TeachingRecordSystem.Api.Tests/TestResults/_fv-az740-616_2024-04-22_14_51_07.trx
Error:
  Swashbuckle.AspNetCore.SwaggerGen.SwaggerGeneratorException : Failed to generate Operation for action - TeachingRecordSystem.Api.V3.V20240307.Controllers.PersonsController.Put (TeachingRecordSystem.Api). See inner exception
  ---- System.NotSupportedException : Cannot derive security scheme for operation.
Raw output
Swashbuckle.AspNetCore.SwaggerGen.SwaggerGeneratorException : Failed to generate Operation for action - TeachingRecordSystem.Api.V3.V20240307.Controllers.PersonsController.Put (TeachingRecordSystem.Api). See inner exception
---- System.NotSupportedException : Cannot derive security scheme for operation.
   at Swashbuckle.AspNetCore.SwaggerGen.SwaggerGenerator.GenerateOperation(ApiDescription apiDescription, SchemaRepository schemaRepository)
   at Swashbuckle.AspNetCore.SwaggerGen.SwaggerGenerator.GenerateOperations(IEnumerable`1 apiDescriptions, SchemaRepository schemaRepository)
   at Swashbuckle.AspNetCore.SwaggerGen.SwaggerGenerator.GeneratePaths(IEnumerable`1 apiDescriptions, SchemaRepository schemaRepository)
   at Swashbuckle.AspNetCore.SwaggerGen.SwaggerGenerator.GetSwaggerDocumentWithoutFilters(String documentName, String host, String basePath)
   at Swashbuckle.AspNetCore.SwaggerGen.SwaggerGenerator.GetSwaggerAsync(String documentName, String host, String basePath)
   at Swashbuckle.AspNetCore.Swagger.SwaggerMiddleware.Invoke(HttpContext httpContext, ISwaggerProvider swaggerProvider)
   at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
   at TeachingRecordSystem.Api.Infrastructure.Middleware.AssignRequestedVersionMiddleware.Invoke(HttpContext context) in /home/runner/work/teaching-record-system/teaching-record-system/TeachingRecordSystem/src/TeachingRecordSystem.Api/Infrastructure/Middleware/AssignRequestedVersionMiddleware.cs:line 20
   at Microsoft.AspNetCore.TestHost.HttpContextBuilder.<>c__DisplayClass23_0.<<SendAsync>g__RunRequestAsync|0>d.MoveNext()
--- End of stack trace from previous location ---
   at Microsoft.AspNetCore.TestHost.ClientHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
   at Microsoft.AspNetCore.Mvc.Testing.Handlers.CookieContainerHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
   at Microsoft.AspNetCore.Mvc.Testing.Handlers.RedirectHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
   at System.Net.Http.HttpClient.<SendAsync>g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken)
   at TeachingRecordSystem.Api.Tests.V3.SwaggerTests.Get_SwaggerEndpoint_ReturnsOk(String minorVersion) in /home/runner/work/teaching-record-system/teaching-record-system/TeachingRecordSystem/tests/TeachingRecordSystem.Api.Tests/V3/SwaggerTests.cs:line 16
----- Inner Stack Trace -----
   at TeachingRecordSystem.Api.Infrastructure.OpenApi.AddSecuritySchemeOperationFilter.Apply(OpenApiOperation operation, OperationFilterContext context) in /home/runner/work/teaching-record-system/teaching-record-system/TeachingRecordSystem/src/TeachingRecordSystem.Api/Infrastructure/OpenApi/AddSecuritySchemeOperationFilter.cs:line 52
   at Swashbuckle.AspNetCore.SwaggerGen.SwaggerGenerator.GenerateOperation(ApiDescription apiDescription, SchemaRepository schemaRepository)

Check failure on line 20 in TeachingRecordSystem/src/TeachingRecordSystem.Api/Infrastructure/Middleware/AssignRequestedVersionMiddleware.cs

See this annotation in the file changed.

@github-actions github-actions / API test results

TeachingRecordSystem.Api.Tests.V3.SwaggerTests ► Get_SwaggerEndpoint_ReturnsOk(minorVersion: "20240416")

Failed test found in:
  TeachingRecordSystem/tests/TeachingRecordSystem.Api.Tests/TestResults/_fv-az740-616_2024-04-22_14_51_07.trx
Error:
  Swashbuckle.AspNetCore.SwaggerGen.SwaggerGeneratorException : Failed to generate Operation for action - TeachingRecordSystem.Api.V3.V20240307.Controllers.PersonsController.Put (TeachingRecordSystem.Api). See inner exception
  ---- System.NotSupportedException : Cannot derive security scheme for operation.
Raw output
Swashbuckle.AspNetCore.SwaggerGen.SwaggerGeneratorException : Failed to generate Operation for action - TeachingRecordSystem.Api.V3.V20240307.Controllers.PersonsController.Put (TeachingRecordSystem.Api). See inner exception
---- System.NotSupportedException : Cannot derive security scheme for operation.
   at Swashbuckle.AspNetCore.SwaggerGen.SwaggerGenerator.GenerateOperation(ApiDescription apiDescription, SchemaRepository schemaRepository)
   at Swashbuckle.AspNetCore.SwaggerGen.SwaggerGenerator.GenerateOperations(IEnumerable`1 apiDescriptions, SchemaRepository schemaRepository)
   at Swashbuckle.AspNetCore.SwaggerGen.SwaggerGenerator.GeneratePaths(IEnumerable`1 apiDescriptions, SchemaRepository schemaRepository)
   at Swashbuckle.AspNetCore.SwaggerGen.SwaggerGenerator.GetSwaggerDocumentWithoutFilters(String documentName, String host, String basePath)
   at Swashbuckle.AspNetCore.SwaggerGen.SwaggerGenerator.GetSwaggerAsync(String documentName, String host, String basePath)
   at Swashbuckle.AspNetCore.Swagger.SwaggerMiddleware.Invoke(HttpContext httpContext, ISwaggerProvider swaggerProvider)
   at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
   at TeachingRecordSystem.Api.Infrastructure.Middleware.AssignRequestedVersionMiddleware.Invoke(HttpContext context) in /home/runner/work/teaching-record-system/teaching-record-system/TeachingRecordSystem/src/TeachingRecordSystem.Api/Infrastructure/Middleware/AssignRequestedVersionMiddleware.cs:line 20
   at Microsoft.AspNetCore.TestHost.HttpContextBuilder.<>c__DisplayClass23_0.<<SendAsync>g__RunRequestAsync|0>d.MoveNext()
--- End of stack trace from previous location ---
   at Microsoft.AspNetCore.TestHost.ClientHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
   at Microsoft.AspNetCore.Mvc.Testing.Handlers.CookieContainerHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
   at Microsoft.AspNetCore.Mvc.Testing.Handlers.RedirectHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
   at System.Net.Http.HttpClient.<SendAsync>g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken)
   at TeachingRecordSystem.Api.Tests.V3.SwaggerTests.Get_SwaggerEndpoint_ReturnsOk(String minorVersion) in /home/runner/work/teaching-record-system/teaching-record-system/TeachingRecordSystem/tests/TeachingRecordSystem.Api.Tests/V3/SwaggerTests.cs:line 16
----- Inner Stack Trace -----
   at TeachingRecordSystem.Api.Infrastructure.OpenApi.AddSecuritySchemeOperationFilter.Apply(OpenApiOperation operation, OperationFilterContext context) in /home/runner/work/teaching-record-system/teaching-record-system/TeachingRecordSystem/src/TeachingRecordSystem.Api/Infrastructure/OpenApi/AddSecuritySchemeOperationFilter.cs:line 52
   at Swashbuckle.AspNetCore.SwaggerGen.SwaggerGenerator.GenerateOperation(ApiDescription apiDescription, SchemaRepository schemaRepository)

Check failure on line 20 in TeachingRecordSystem/src/TeachingRecordSystem.Api/Infrastructure/Middleware/AssignRequestedVersionMiddleware.cs

See this annotation in the file changed.

@github-actions github-actions / API test results

TeachingRecordSystem.Api.Tests.V3.SwaggerTests ► Get_SwaggerEndpoint_ReturnsOk(minorVersion: "Next")

Failed test found in:
  TeachingRecordSystem/tests/TeachingRecordSystem.Api.Tests/TestResults/_fv-az740-616_2024-04-22_14_51_07.trx
Error:
  Swashbuckle.AspNetCore.SwaggerGen.SwaggerGeneratorException : Failed to generate Operation for action - TeachingRecordSystem.Api.V3.V20240307.Controllers.PersonsController.Put (TeachingRecordSystem.Api). See inner exception
  ---- System.NotSupportedException : Cannot derive security scheme for operation.
Raw output
Swashbuckle.AspNetCore.SwaggerGen.SwaggerGeneratorException : Failed to generate Operation for action - TeachingRecordSystem.Api.V3.V20240307.Controllers.PersonsController.Put (TeachingRecordSystem.Api). See inner exception
---- System.NotSupportedException : Cannot derive security scheme for operation.
   at Swashbuckle.AspNetCore.SwaggerGen.SwaggerGenerator.GenerateOperation(ApiDescription apiDescription, SchemaRepository schemaRepository)
   at Swashbuckle.AspNetCore.SwaggerGen.SwaggerGenerator.GenerateOperations(IEnumerable`1 apiDescriptions, SchemaRepository schemaRepository)
   at Swashbuckle.AspNetCore.SwaggerGen.SwaggerGenerator.GeneratePaths(IEnumerable`1 apiDescriptions, SchemaRepository schemaRepository)
   at Swashbuckle.AspNetCore.SwaggerGen.SwaggerGenerator.GetSwaggerDocumentWithoutFilters(String documentName, String host, String basePath)
   at Swashbuckle.AspNetCore.SwaggerGen.SwaggerGenerator.GetSwaggerAsync(String documentName, String host, String basePath)
   at Swashbuckle.AspNetCore.Swagger.SwaggerMiddleware.Invoke(HttpContext httpContext, ISwaggerProvider swaggerProvider)
   at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
   at TeachingRecordSystem.Api.Infrastructure.Middleware.AssignRequestedVersionMiddleware.Invoke(HttpContext context) in /home/runner/work/teaching-record-system/teaching-record-system/TeachingRecordSystem/src/TeachingRecordSystem.Api/Infrastructure/Middleware/AssignRequestedVersionMiddleware.cs:line 20
   at Microsoft.AspNetCore.TestHost.HttpContextBuilder.<>c__DisplayClass23_0.<<SendAsync>g__RunRequestAsync|0>d.MoveNext()
--- End of stack trace from previous location ---
   at Microsoft.AspNetCore.TestHost.ClientHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
   at Microsoft.AspNetCore.Mvc.Testing.Handlers.CookieContainerHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
   at Microsoft.AspNetCore.Mvc.Testing.Handlers.RedirectHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
   at System.Net.Http.HttpClient.<SendAsync>g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken)
   at TeachingRecordSystem.Api.Tests.V3.SwaggerTests.Get_SwaggerEndpoint_ReturnsOk(String minorVersion) in /home/runner/work/teaching-record-system/teaching-record-system/TeachingRecordSystem/tests/TeachingRecordSystem.Api.Tests/V3/SwaggerTests.cs:line 16
----- Inner Stack Trace -----
   at TeachingRecordSystem.Api.Infrastructure.OpenApi.AddSecuritySchemeOperationFilter.Apply(OpenApiOperation operation, OperationFilterContext context) in /home/runner/work/teaching-record-system/teaching-record-system/TeachingRecordSystem/src/TeachingRecordSystem.Api/Infrastructure/OpenApi/AddSecuritySchemeOperationFilter.cs:line 52
   at Swashbuckle.AspNetCore.SwaggerGen.SwaggerGenerator.GenerateOperation(ApiDescription apiDescription, SchemaRepository schemaRepository)

Check failure on line 14 in TeachingRecordSystem/tests/TeachingRecordSystem.TestCommon/AssertEx.Http.cs

See this annotation in the file changed.

@github-actions github-actions / API test results

TeachingRecordSystem.Api.Tests.V3.V20240307.SetQTLSDateRequestTests ► Put_ClearExistingQTLSDate_ReturnsExpectedResult

Failed test found in:
  TeachingRecordSystem/tests/TeachingRecordSystem.Api.Tests/TestResults/_fv-az740-616_2024-04-22_14_51_07.trx
Error:
  Assert.Equal() Failure: Values differ
  Expected: 200
  Actual:   404
Raw output
Assert.Equal() Failure: Values differ
Expected: 200
Actual:   404
   at TeachingRecordSystem.TestCommon.AssertEx.JsonResponse(HttpResponseMessage response, Int32 expectedStatusCode) in /home/runner/work/teaching-record-system/teaching-record-system/TeachingRecordSystem/tests/TeachingRecordSystem.TestCommon/AssertEx.Http.cs:line 14
   at TeachingRecordSystem.TestCommon.AssertEx.JsonResponseEquals(HttpResponseMessage response, Object expected, Int32 expectedStatusCode) in /home/runner/work/teaching-record-system/teaching-record-system/TeachingRecordSystem/tests/TeachingRecordSystem.TestCommon/AssertEx.Http.cs:line 27
   at TeachingRecordSystem.Api.Tests.V3.V20240307.SetQTLSDateRequestTests.Put_ClearExistingQTLSDate_ReturnsExpectedResult() in /home/runner/work/teaching-record-system/teaching-record-system/TeachingRecordSystem/tests/TeachingRecordSystem.Api.Tests/V3/V20240307/SetQTLSDateRequestTests.cs:line 222

Check failure on line 580 in TeachingRecordSystem/tests/TeachingRecordSystem.Api.Tests/V3/V20240307/SetQTLSDateRequestTests.cs

See this annotation in the file changed.

@github-actions github-actions / API test results

TeachingRecordSystem.Api.Tests.V3.V20240307.SetQTLSDateRequestTests ► Put_QTLSDate_SetsInductionWhenExistingInductionStatusEmpty(existingQtls: "01/01/2021", incomingQtls: null, expectetInductionStatus: null, expectedHttpStatus: OK)

Failed test found in:
  TeachingRecordSystem/tests/TeachingRecordSystem.Api.Tests/TestResults/_fv-az740-616_2024-04-22_14_51_07.trx
Error:
  Assert.Null() Failure: Value is not null
  Expected: null
  Actual:   Task { Account_Tasks = null, ActivityId = ee754cad-4d60-4816-981d-60a16565f662, Attributes = [···], business_unit_task_activities = null, Category = "Unable to set QTLSDate", ··· }
Raw output
Assert.Null() Failure: Value is not null
Expected: null
Actual:   Task { Account_Tasks = null, ActivityId = ee754cad-4d60-4816-981d-60a16565f662, Attributes = [···], business_unit_task_activities = null, Category = "Unable to set QTLSDate", ··· }
   at TeachingRecordSystem.Api.Tests.V3.V20240307.SetQTLSDateRequestTests.Put_QTLSDate_SetsInductionWhenExistingInductionStatusEmpty(String existingQtls, String incomingQtls, Nullable`1 expectetInductionStatus, HttpStatusCode expectedHttpStatus) in /home/runner/work/teaching-record-system/teaching-record-system/TeachingRecordSystem/tests/TeachingRecordSystem.Api.Tests/V3/V20240307/SetQTLSDateRequestTests.cs:line 580

Check failure on line 580 in TeachingRecordSystem/tests/TeachingRecordSystem.Api.Tests/V3/V20240307/SetQTLSDateRequestTests.cs

See this annotation in the file changed.

@github-actions github-actions / API test results

TeachingRecordSystem.Api.Tests.V3.V20240307.SetQTLSDateRequestTests ► Put_QTLSDate_SetsInductionWhenExistingInductionStatusEmpty(existingQtls: null, incomingQtls: "01/01/2021", expectetInductionStatus: Exempt, expectedHttpStatus: OK)

Failed test found in:
  TeachingRecordSystem/tests/TeachingRecordSystem.Api.Tests/TestResults/_fv-az740-616_2024-04-22_14_51_07.trx
Error:
  Assert.Null() Failure: Value is not null
  Expected: null
  Actual:   Task { Account_Tasks = null, ActivityId = ee754cad-4d60-4816-981d-60a16565f662, Attributes = [···], business_unit_task_activities = null, Category = "Unable to set QTLSDate", ··· }
Raw output
Assert.Null() Failure: Value is not null
Expected: null
Actual:   Task { Account_Tasks = null, ActivityId = ee754cad-4d60-4816-981d-60a16565f662, Attributes = [···], business_unit_task_activities = null, Category = "Unable to set QTLSDate", ··· }
   at TeachingRecordSystem.Api.Tests.V3.V20240307.SetQTLSDateRequestTests.Put_QTLSDate_SetsInductionWhenExistingInductionStatusEmpty(String existingQtls, String incomingQtls, Nullable`1 expectetInductionStatus, HttpStatusCode expectedHttpStatus) in /home/runner/work/teaching-record-system/teaching-record-system/TeachingRecordSystem/tests/TeachingRecordSystem.Api.Tests/V3/V20240307/SetQTLSDateRequestTests.cs:line 580

Check failure on line 487 in TeachingRecordSystem/tests/TeachingRecordSystem.Api.Tests/V3/V20240307/SetQTLSDateRequestTests.cs

See this annotation in the file changed.

@github-actions github-actions / API test results

TeachingRecordSystem.Api.Tests.V3.V20240307.SetQTLSDateRequestTests ► Put_RejectQTLSUpdate_ReturnsAcceptedAndCreatesTask(existingQtls: null, incomingQtls: "01/01/1998", inductionStatus: FailedinWales, reason: null, qts: null, expextedQTS: null)

Failed test found in:
  TeachingRecordSystem/tests/TeachingRecordSystem.Api.Tests/TestResults/_fv-az740-616_2024-04-22_14_51_07.trx
Error:
  Assert.Equal() Failure: Values differ
  Expected: null
  Actual:   09/01/2022
Raw output
Assert.Equal() Failure: Values differ
Expected: null
Actual:   09/01/2022
   at TeachingRecordSystem.Api.Tests.V3.V20240307.SetQTLSDateRequestTests.Put_RejectQTLSUpdate_ReturnsAcceptedAndCreatesTask(String existingQtls, String incomingQtls, dfeta_InductionStatus inductionStatus, Nullable`1 reason, String qts, String expextedQTS) in /home/runner/work/teaching-record-system/teaching-record-system/TeachingRecordSystem/tests/TeachingRecordSystem.Api.Tests/V3/V20240307/SetQTLSDateRequestTests.cs:line 487

Check failure on line 487 in TeachingRecordSystem/tests/TeachingRecordSystem.Api.Tests/V3/V20240307/SetQTLSDateRequestTests.cs

See this annotation in the file changed.

@github-actions github-actions / API test results

TeachingRecordSystem.Api.Tests.V3.V20240307.SetQTLSDateRequestTests ► Put_RejectQTLSUpdate_ReturnsAcceptedAndCreatesTask(existingQtls: null, incomingQtls: "01/01/2021", inductionStatus: Fail, reason: null, qts: null, expextedQTS: null)

Failed test found in:
  TeachingRecordSystem/tests/TeachingRecordSystem.Api.Tests/TestResults/_fv-az740-616_2024-04-22_14_51_07.trx
Error:
  Assert.Equal() Failure: Values differ
  Expected: null
  Actual:   09/01/2022
Raw output
Assert.Equal() Failure: Values differ
Expected: null
Actual:   09/01/2022
   at TeachingRecordSystem.Api.Tests.V3.V20240307.SetQTLSDateRequestTests.Put_RejectQTLSUpdate_ReturnsAcceptedAndCreatesTask(String existingQtls, String incomingQtls, dfeta_InductionStatus inductionStatus, Nullable`1 reason, String qts, String expextedQTS) in /home/runner/work/teaching-record-system/teaching-record-system/TeachingRecordSystem/tests/TeachingRecordSystem.Api.Tests/V3/V20240307/SetQTLSDateRequestTests.cs:line 487

Check failure on line 539 in TeachingRecordSystem/tests/TeachingRecordSystem.Api.Tests/V3/V20240307/SetQTLSDateRequestTests.cs

See this annotation in the file changed.

@github-actions github-actions / API test results

TeachingRecordSystem.Api.Tests.V3.V20240307.SetQTLSDateRequestTests ► Put_ValidQTLSDate_SetsInductionStatus(existingInductionStatus: InductionExtended, existingInductionExemptionReason: null, incomingQtls: "01/01/2021", expectetInductionStatus: Exempt,...

Failed test found in:
  TeachingRecordSystem/tests/TeachingRecordSystem.Api.Tests/TestResults/_fv-az740-616_2024-04-22_14_51_07.trx
Error:
  Assert.Equal() Failure: Values differ
  Expected: OK
  Actual:   Accepted
Raw output
Assert.Equal() Failure: Values differ
Expected: OK
Actual:   Accepted
   at TeachingRecordSystem.Api.Tests.V3.V20240307.SetQTLSDateRequestTests.Put_ValidQTLSDate_SetsInductionStatus(dfeta_InductionStatus existingInductionStatus, Nullable`1 existingInductionExemptionReason, String incomingQtls, dfeta_InductionStatus expectetInductionStatus, HttpStatusCode expectedHttpStatus) in /home/runner/work/teaching-record-system/teaching-record-system/TeachingRecordSystem/tests/TeachingRecordSystem.Api.Tests/V3/V20240307/SetQTLSDateRequestTests.cs:line 539