Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

EHD-1518: Switch over Live service #620

Merged
merged 6 commits into from
Feb 19, 2025

EHD-1518: Switch over Live service: Remove now-unused "Service unavai…

1de7b6d
Select commit
Loading
Failed to load commit list.
Sign in for the full log view
Merged

EHD-1518: Switch over Live service #620

EHD-1518: Switch over Live service: Remove now-unused "Service unavai…
1de7b6d
Select commit
Loading
Failed to load commit list.
GitHub Actions / test-results succeeded Feb 19, 2025 in 1s

191 passed, 0 failed and 0 skipped

Tests passed successfully

✅ GenderPayGap.UnitTests/GenderPayGap.WebUI.Tests/TestResults/test-results.trx

191 tests were completed in 6s with 191 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
GenderPayGap.BusinessLogic.Tests.Services.AuditLoggerTests 1✅ 13ms
GenderPayGap.Core.Tests.Helpers.CsvWriterTests 6✅ 29ms
GenderPayGap.Core.Tests.Helpers.ReportingYearsHelperTests 11✅ 5ms
GenderPayGap.Database.ReturnTests.IsLateSubmissionTests 25✅ 22ms
GenderPayGap.Database.ReturnTests.IsVoluntarySubmissionTests 46✅ 6ms
GenderPayGap.Extensions.Tests.VirtualDateTimeTests 1✅ 11ms
GenderPayGap.WebUI.Tests.CodeQualityTests.DoNotAllowHtmlDotRawTests 1✅ 167ms
GenderPayGap.WebUI.Tests.CodeQualityTests.DoNotUseRedirectWithReturnUrls 1✅ 836ms
GenderPayGap.WebUI.Tests.CodeQualityTests.EnsureAllPostRequestsRequireAntiForgeryTokenTests 1✅ 52ms
GenderPayGap.WebUI.Tests.Controllers.Account.AccountCreationTests 2✅ 1s
GenderPayGap.WebUI.Tests.Controllers.Account.ChangeEmailTests 6✅ 442ms
GenderPayGap.WebUI.Tests.Controllers.Account.ChangePasswordControllerTests 9✅ 342ms
GenderPayGap.WebUI.Tests.Controllers.Account.CloseAccountTests 3✅ 307ms
GenderPayGap.WebUI.Tests.Controllers.Administration.AdminDatabaseIntegrityChecksControllerTests 12✅ 381ms
GenderPayGap.WebUI.Tests.Controllers.Administration.AdminUnconfirmedPinsControllerTests 2✅ 43ms
GenderPayGap.WebUI.Tests.Controllers.CookieControllerTests 3✅ 29ms
GenderPayGap.WebUI.Tests.Controllers.PasswordReset.PasswordResetControllerTests 6✅ 135ms
GenderPayGap.WebUI.Tests.Controllers.Scope.ScopeControllerTests 1✅ 26ms
GenderPayGap.WebUI.Tests.Search.SearchRepositoryTests 14✅ 191ms
GenderPayGap.WebUI.Tests.Services.PinInThePostServiceTests 6✅ 3ms
Repositories.RegistrationRepository.RemoveRegistrationTests 2✅ 87ms
Repositories.UserRepository.CheckPasswordTests 2✅ 38ms
Repositories.UserRepository.FindByEmailTests 7✅ 67ms
Repositories.UserRepository.RemoveRetiredUserRegistrationsTests 1✅ 26ms
Repositories.UserRepository.RetireUserTests 5✅ 41ms
Repositories.UserRepository.UpdateEmailTests 8✅ 63ms
Repositories.UserRepository.UpdatePasswordTests 8✅ 97ms
Tests.ConfigTests 1✅ 1ms

✅ GenderPayGap.BusinessLogic.Tests.Services.AuditLoggerTests

✅ AllAuditActionsMustHaveUniqueEnumValues

✅ GenderPayGap.Core.Tests.Helpers.CsvWriterTests

✅ CsvWriter_Does_Not_Sanitize_Negative_Values
✅ CsvWriter_Does_Not_Sanitize_Strings_That_Do_Not_Start_With_Injection_Character
✅ CsvWriter_Sanitizes_Strings_That_Start_With('-')
✅ CsvWriter_Sanitizes_Strings_That_Start_With('@')
✅ CsvWriter_Sanitizes_Strings_That_Start_With('+')
✅ CsvWriter_Sanitizes_Strings_That_Start_With('=')

✅ GenderPayGap.Core.Tests.Helpers.ReportingYearsHelperTests

✅ IsReportingYearWithFurloughScheme_Returns_False_Given_A_Year_Without_Furlough_Scheme(2017)
✅ IsReportingYearWithFurloughScheme_Returns_False_Given_A_Year_Without_Furlough_Scheme(2018)
✅ IsReportingYearWithFurloughScheme_Returns_False_Given_A_Year_Without_Furlough_Scheme(2019)
✅ IsReportingYearWithFurloughScheme_Returns_False_Given_A_Year_Without_Furlough_Scheme(2022)
✅ IsReportingYearWithFurloughScheme_Returns_False_Given_A_Year_Without_Furlough_Scheme(2023)
✅ IsReportingYearWithFurloughScheme_Returns_False_Given_A_Year_Without_Furlough_Scheme(2024)
✅ IsReportingYearWithFurloughScheme_Returns_False_Given_A_Year_Without_Furlough_Scheme(2025)
✅ IsReportingYearWithFurloughScheme_Returns_False_Given_A_Year_Without_Furlough_Scheme(2026)
✅ IsReportingYearWithFurloughScheme_Returns_False_Given_A_Year_Without_Furlough_Scheme(2027)
✅ IsReportingYearWithFurloughScheme_Returns_True_Given_A_Year_With_Furlough_Scheme(2020)
✅ IsReportingYearWithFurloughScheme_Returns_True_Given_A_Year_With_Furlough_Scheme(2021)

✅ GenderPayGap.Database.ReturnTests.IsLateSubmissionTests

✅ Is_False_When_ModifiedDate_Is_Late_And_ExcludeFromLateFlagEnforcement_Year_And_AnyScope(Private,InScope)
✅ Is_False_When_ModifiedDate_Is_Late_And_ExcludeFromLateFlagEnforcement_Year_And_AnyScope(Private,OutOfScope)
✅ Is_False_When_ModifiedDate_Is_Late_And_ExcludeFromLateFlagEnforcement_Year_And_AnyScope(Private,PresumedInScope)
✅ Is_False_When_ModifiedDate_Is_Late_And_ExcludeFromLateFlagEnforcement_Year_And_AnyScope(Private,PresumedOutOfScope)
✅ Is_False_When_ModifiedDate_Is_Late_And_ExcludeFromLateFlagEnforcement_Year_And_AnyScope(Public,InScope)
✅ Is_False_When_ModifiedDate_Is_Late_And_ExcludeFromLateFlagEnforcement_Year_And_AnyScope(Public,OutOfScope)
✅ Is_False_When_ModifiedDate_Is_Late_And_ExcludeFromLateFlagEnforcement_Year_And_AnyScope(Public,PresumedInScope)
✅ Is_False_When_ModifiedDate_Is_Late_And_ExcludeFromLateFlagEnforcement_Year_And_AnyScope(Public,PresumedOutOfScope)
✅ Is_False_When_ModifiedDate_Is_Late_And_OutOfScope(Private,OutOfScope)
✅ Is_False_When_ModifiedDate_Is_Late_And_OutOfScope(Private,PresumedOutOfScope)
✅ Is_False_When_ModifiedDate_Is_Late_And_OutOfScope(Public,OutOfScope)
✅ Is_False_When_ModifiedDate_Is_Late_And_OutOfScope(Public,PresumedOutOfScope)
✅ Is_False_When_ModifiedDate_Is_Late_Given_Any_ExcludeFromLateFlagEnforcement_Year(2019)
✅ Is_False_When_ModifiedDate_Is_Not_Late_And_AnyScope(Private,InScope)
✅ Is_False_When_ModifiedDate_Is_Not_Late_And_AnyScope(Private,OutOfScope)
✅ Is_False_When_ModifiedDate_Is_Not_Late_And_AnyScope(Private,PresumedInScope)
✅ Is_False_When_ModifiedDate_Is_Not_Late_And_AnyScope(Private,PresumedOutOfScope)
✅ Is_False_When_ModifiedDate_Is_Not_Late_And_AnyScope(Public,InScope)
✅ Is_False_When_ModifiedDate_Is_Not_Late_And_AnyScope(Public,OutOfScope)
✅ Is_False_When_ModifiedDate_Is_Not_Late_And_AnyScope(Public,PresumedInScope)
✅ Is_False_When_ModifiedDate_Is_Not_Late_And_AnyScope(Public,PresumedOutOfScope)
✅ Is_True_When_ModifiedDate_Is_Late_And_InScope(Private,InScope)
✅ Is_True_When_ModifiedDate_Is_Late_And_InScope(Private,PresumedInScope)
✅ Is_True_When_ModifiedDate_Is_Late_And_InScope(Public,InScope)
✅ Is_True_When_ModifiedDate_Is_Late_And_InScope(Public,PresumedInScope)

✅ GenderPayGap.Database.ReturnTests.IsVoluntarySubmissionTests

✅ IsFalseWhenNotVoluntary(Private,0,InScope)
✅ IsFalseWhenNotVoluntary(Private,0,PresumedInScope)
✅ IsFalseWhenNotVoluntary(Private,0,Unknown)
✅ IsFalseWhenNotVoluntary(Private,19999,InScope)
✅ IsFalseWhenNotVoluntary(Private,19999,PresumedInScope)
✅ IsFalseWhenNotVoluntary(Private,19999,Unknown)
✅ IsFalseWhenNotVoluntary(Private,249,InScope)
✅ IsFalseWhenNotVoluntary(Private,249,PresumedInScope)
✅ IsFalseWhenNotVoluntary(Private,249,Unknown)
✅ IsFalseWhenNotVoluntary(Private,499,InScope)
✅ IsFalseWhenNotVoluntary(Private,499,PresumedInScope)
✅ IsFalseWhenNotVoluntary(Private,499,Unknown)
✅ IsFalseWhenNotVoluntary(Private,4999,InScope)
✅ IsFalseWhenNotVoluntary(Private,4999,PresumedInScope)
✅ IsFalseWhenNotVoluntary(Private,4999,Unknown)
✅ IsFalseWhenNotVoluntary(Private,999,InScope)
✅ IsFalseWhenNotVoluntary(Private,999,PresumedInScope)
✅ IsFalseWhenNotVoluntary(Private,999,Unknown)
✅ IsFalseWhenNotVoluntary(Private,int.MaxValue,InScope)
✅ IsFalseWhenNotVoluntary(Private,int.MaxValue,PresumedInScope)
✅ IsFalseWhenNotVoluntary(Private,int.MaxValue,Unknown)
✅ IsFalseWhenNotVoluntary(Public,0,InScope)
✅ IsFalseWhenNotVoluntary(Public,0,PresumedInScope)
✅ IsFalseWhenNotVoluntary(Public,0,Unknown)
✅ IsFalseWhenNotVoluntary(Public,19999,InScope)
✅ IsFalseWhenNotVoluntary(Public,19999,PresumedInScope)
✅ IsFalseWhenNotVoluntary(Public,19999,Unknown)
✅ IsFalseWhenNotVoluntary(Public,249,InScope)
✅ IsFalseWhenNotVoluntary(Public,249,PresumedInScope)
✅ IsFalseWhenNotVoluntary(Public,249,Unknown)
✅ IsFalseWhenNotVoluntary(Public,499,InScope)
✅ IsFalseWhenNotVoluntary(Public,499,PresumedInScope)
✅ IsFalseWhenNotVoluntary(Public,499,Unknown)
✅ IsFalseWhenNotVoluntary(Public,4999,InScope)
✅ IsFalseWhenNotVoluntary(Public,4999,PresumedInScope)
✅ IsFalseWhenNotVoluntary(Public,4999,Unknown)
✅ IsFalseWhenNotVoluntary(Public,999,InScope)
✅ IsFalseWhenNotVoluntary(Public,999,PresumedInScope)
✅ IsFalseWhenNotVoluntary(Public,999,Unknown)
✅ IsFalseWhenNotVoluntary(Public,int.MaxValue,InScope)
✅ IsFalseWhenNotVoluntary(Public,int.MaxValue,PresumedInScope)
✅ IsFalseWhenNotVoluntary(Public,int.MaxValue,Unknown)
✅ IsTrueWhenVoluntary(Private,249,OutOfScope)
✅ IsTrueWhenVoluntary(Private,249,PresumedOutOfScope)
✅ IsTrueWhenVoluntary(Public,249,OutOfScope)
✅ IsTrueWhenVoluntary(Public,249,PresumedOutOfScope)

✅ GenderPayGap.Extensions.Tests.VirtualDateTimeTests

✅ VirtualDateTime_Now_Returns_DateTime_Now_Plus_Three_Days_And_One_Hour_When_Configured

✅ GenderPayGap.WebUI.Tests.CodeQualityTests.DoNotAllowHtmlDotRawTests

✅ DoNotAllowHtmlDotRawInCode

✅ GenderPayGap.WebUI.Tests.CodeQualityTests.DoNotUseRedirectWithReturnUrls

✅ DoNotAllowRedirectWithReturnUrlInCode

✅ GenderPayGap.WebUI.Tests.CodeQualityTests.EnsureAllPostRequestsRequireAntiForgeryTokenTests

✅ EnsureAllPostRequestsRequireAntiForgeryToken

✅ GenderPayGap.WebUI.Tests.Controllers.Account.AccountCreationTests

✅ GET_Clicking_Link_In_Verification_Email_Confirms_User
✅ POST_Verification_Email_Is_Sent_After_Creating_User_Account

✅ GenderPayGap.WebUI.Tests.Controllers.Account.ChangeEmailTests

✅ POST_Cannot_Update_Email_Address_For_Non_Active_User
✅ POST_Cannot_Update_Email_Address_To_Email_Associated_With_Another_Account
✅ POST_Providing_A_Valid_New_Email_Address_Results_In_A_Verification_Email_Being_Sent
✅ POST_Trying_To_Change_Email_Address_To_Current_Email_Address_Does_Not_Send_Verification_Email
✅ POST_Trying_To_Change_Email_Address_To_Other_Users_Email_Address_Does_Not_Send_Verification_Email
✅ POST_User_Can_Verify_Their_Email_Address_And_Confirm_Password_To_Change_Email_Address

✅ GenderPayGap.WebUI.Tests.Controllers.Account.ChangePasswordControllerTests

✅ POST_Audit_Log_Item_Is_Saved_When_Password_Is_Successfully_Updated
✅ POST_Email_Is_Sent_When_Password_Is_Successfully_Updated
✅ POST_Password_Is_Not_Updated_When_New_Password_Different_To_Confirmation_Password
✅ POST_Password_Is_Not_Updated_When_New_Password_Has_Fewer_Than_8_Characters
✅ POST_Password_Is_Not_Updated_When_New_Password_Missing_Lowercase_Letter
✅ POST_Password_Is_Not_Updated_When_New_Password_Missing_Uppercase_Letter
✅ POST_Password_Is_Not_Updated_When_Old_Password_Is_Incorrect
✅ POST_Password_Is_Updated_As_Expected
✅ POST_User_Is_Logged_Out_If_Failing_To_Change_The_Password_For_Five_Times

✅ GenderPayGap.WebUI.Tests.Controllers.Account.CloseAccountTests

✅ POST_Closing_Account_Removes_User_From_Organisations_And_Emails_GEO_For_Orphans
✅ POST_Closing_Account_Sets_The_Account_To_Retired
✅ POST_Entering_Wrong_Password_Does_Not_Retire_Account

✅ GenderPayGap.WebUI.Tests.Controllers.Administration.AdminDatabaseIntegrityChecksControllerTests

✅ AdminDatabaseIntegrityChecksController_PrivateEmployersReturnsWithoutResponsiblePerson_Success
✅ AdminDatabaseIntegrityChecksController_ReturnsWithFiguresWithMoreThanOneDecimalPlace_Success
✅ AdminDatabaseIntegrityChecksController_ReturnsWithInvalidBonusFigures_Success
✅ AdminDatabaseIntegrityChecksController_ReturnsWithInvalidBonusFiguresGivenNoWomenBonus_Success
✅ AdminDatabaseIntegrityChecksController_ReturnsWithInvalidBonusMeanMedianFigures_Success
✅ AdminDatabaseIntegrityChecksController_ReturnsWithInvalidCompanyLink_Success
✅ AdminDatabaseIntegrityChecksController_ReturnsWithInvalidMeanMedianFigures_Success
✅ AdminDatabaseIntegrityChecksController_ReturnsWithInvalidOptedOutOfReportingPayQuartersValue_Success
✅ AdminDatabaseIntegrityChecksController_ReturnsWithInvalidQuartersFigures_Success
✅ AdminDatabaseIntegrityChecksController_ReturnsWithInvalidTextFieldsValues_Success
✅ AdminDatabaseIntegrityChecksController_ReturnsWithMissingFigures_Success
✅ AdminDatabaseIntegrityChecksController_ReturnsWithQuartersFiguresSumDifferentThan100_Success

✅ GenderPayGap.WebUI.Tests.Controllers.Administration.AdminUnconfirmedPinsControllerTests

✅ AdminUnconfirmedPinsController_POST_When_PIN_has_expired_create_new_PIN_and_send_email
✅ AdminUnconfirmedPinsController_POST_When_PIN_is_still_valid_send_email

✅ GenderPayGap.WebUI.Tests.Controllers.CookieControllerTests

✅ CookieController_CookieConsent_Cookies_Accepted
✅ CookieController_CookieConsent_Cookies_Rejected
✅ CookieController_CookieConsent_Redirect_To_HomePage

✅ GenderPayGap.WebUI.Tests.Controllers.PasswordReset.PasswordResetControllerTests

✅ POST_Not_Providing_Reset_Code_In_URL_Gives_PageNotFoundException
✅ POST_Password_Reset_Email_Is_Not_Sent_When_One_Has_Been_Sent_Within_Last_10_Minutes
✅ POST_Password_Reset_Email_Is_Not_Sent_When_There_Is_No_User_With_Email_Address_Provided
✅ POST_Password_Reset_Email_Is_Sent_When_Valid_Email_Address_Is_Provided
✅ POST_Using_Expired_Reset_Code_Gives_PasswordResetCodeExpiredException
✅ POST_Valid_Reset_Code_In_URL_Allows_User_To_Change_Their_Password

✅ GenderPayGap.WebUI.Tests.Controllers.Scope.ScopeControllerTests

✅ POST_Existing_Scopes_Are_Retired_When_New_Scope_Is_Added

✅ GenderPayGap.WebUI.Tests.Search.SearchRepositoryTests

✅ LoadSearchDataIntoCache_DoesNotInclude_ActiveOrganisationsOutOfScope
✅ LoadSearchDataIntoCache_DoesNotInclude_DeletedOrganisations
✅ LoadSearchDataIntoCache_DoesNotInclude_RetiredOrganisationsInScope
✅ LoadSearchDataIntoCache_DoesNotInclude_RetiredOrganisationsOutOfScope
✅ LoadSearchDataIntoCache_DoesNotInclude_RetiredOrganisationsPresumedInScope
✅ LoadSearchDataIntoCache_DoesNotInclude_RetiredOrganisationsPreviouslyInScope
✅ LoadSearchDataIntoCache_DoesNotInclude_RetiredOrganisationsWithDraftReports
✅ LoadSearchDataIntoCache_DoesNotInclude_RetiredOrganisationsWithNoReports
✅ LoadSearchDataIntoCache_DoesNotIncludes_ActiveOrganisationsPreviouslyInScope
✅ LoadSearchDataIntoCache_Includes_ActiveOrganisationsInScope
✅ LoadSearchDataIntoCache_Includes_ActiveOrganisationsPresumedInScope
✅ LoadSearchDataIntoCache_Includes_ActiveOrganisationsWithDraftReports
✅ LoadSearchDataIntoCache_Includes_ActiveOrganisationsWithSubmittedReports
✅ LoadSearchDataIntoCache_Includes_RetiredOrganisationsWithSubmittedReports

✅ GenderPayGap.WebUI.Tests.Services.PinInThePostServiceTests

✅ FiveLineAddressIsReducedToFourLines
✅ FourLineAddressIsNotShortened
✅ LongLinesAreNotConcatenated
✅ ThreeLineAddressIsNotShortened
✅ UkCountryLineIsRemoved
✅ UnitedKingdomCountryLineIsRemoved

✅ Repositories.RegistrationRepository.RemoveRegistrationTests

✅ UserCanUnregisterAnotherUser
✅ UserCanUnregisterThemselves

✅ Repositories.UserRepository.CheckPasswordTests

✅ CorrectPasswordShouldResetLoginAttempts
✅ IncorrectPasswordShouldIncreaseLoginAttempts

✅ Repositories.UserRepository.FindByEmailTests

✅ FindsMatchingEmailUsingMultipleStatusFilters("[email protected]",New,Retired)
✅ FindsMatchingEmailUsingMultipleStatusFilters("[email protected]",New,Retired)
✅ FindsMatchingEmailUsingSingleStatusFilter("[email protected]",Active,Active)
✅ FindsMatchingEmailUsingSingleStatusFilter("[email protected]",Active)
✅ FindsMatchingEmailUsingSingleStatusFilter("[email protected]",New,New)
✅ FindsMatchingEmailUsingSingleStatusFilter("[email protected]",Retired,Retired)
✅ ReturnsNullWhenEmailDoesNotMatch("[email protected]")

✅ Repositories.UserRepository.RemoveRetiredUserRegistrationsTests

✅ UnregistersAllOrganisationsForUser

✅ Repositories.UserRepository.RetireUserTests

✅ SavesRetiredStatus()
✅ ThrowsErrorWhenArgumentIsNull(null,"Value cannot be null. (Parameter 'userToRetire')")
✅ ThrowsErrorWhenUserStatusIsNotActive("[email protected]",New)
✅ ThrowsErrorWhenUserStatusIsNotActive("[email protected]",Retired)
✅ ThrowsErrorWhenUserStatusIsNotActive("[email protected]",Unknown)

✅ Repositories.UserRepository.UpdateEmailTests

✅ SavesExpectedEmailFields("[email protected]","[email protected]")
✅ ThrowsErrorWhenArgumentIsNull(GenderPayGap.Database.User," ","Value cannot be null. (Parameter 'newEmailAddress')")
✅ ThrowsErrorWhenArgumentIsNull(GenderPayGap.Database.User,"","Value cannot be null. (Parameter 'newEmailAddress')")
✅ ThrowsErrorWhenArgumentIsNull(GenderPayGap.Database.User,null,"Value cannot be null. (Parameter 'newEmailAddress')")
✅ ThrowsErrorWhenArgumentIsNull(null,"[email protected]","Value cannot be null. (Parameter 'userToUpdate')")
✅ ThrowsErrorWhenUserStatusIsNotActive("[email protected]",New)
✅ ThrowsErrorWhenUserStatusIsNotActive("[email protected]",Retired)
✅ ThrowsErrorWhenUserStatusIsNotActive("[email protected]",Unknown)

✅ Repositories.UserRepository.UpdatePasswordTests

✅ SavesNewPasswordHash()
✅ ThrowsErrorWhenArgumentIsNull(GenderPayGap.Database.User," ","Value cannot be null. (Parameter 'newPassword')")
✅ ThrowsErrorWhenArgumentIsNull(GenderPayGap.Database.User,"","Value cannot be null. (Parameter 'newPassword')")
✅ ThrowsErrorWhenArgumentIsNull(GenderPayGap.Database.User,null,"Value cannot be null. (Parameter 'newPassword')")
✅ ThrowsErrorWhenArgumentIsNull(null,"newpassword123","Value cannot be null. (Parameter 'userToUpdate')")
✅ ThrowsErrorWhenUserStatusIsNotActive("[email protected]",New)
✅ ThrowsErrorWhenUserStatusIsNotActive("[email protected]",Retired)
✅ ThrowsErrorWhenUserStatusIsNotActive("[email protected]",Unknown)

✅ Tests.ConfigTests

✅ Config_DefaultDate_Returns_DateTime_Now_Plus_917_Days_When_Configured