Skip to content

fix: make ServerSideSessionCleanupHost.StopAsync idempotent - #2345

Merged
damianh merged 2 commits into
releases/is/7.4.xfrom
dh/ServerSideSessionCleanupHost
Feb 9, 2026
Merged

fix: make ServerSideSessionCleanupHost.StopAsync idempotent#2345
damianh merged 2 commits into
releases/is/7.4.xfrom
dh/ServerSideSessionCleanupHost

refactor: simplify ExecuteAsync while loop condition

ab200f2
Select commit
Loading
Failed to load commit list.
Sign in for the full log view
GitHub Actions / Test Report - test/IdentityServer.UnitTests succeeded Feb 7, 2026 in 1s

1612 passed, 0 failed and 0 skipped

Tests passed successfully

✅ identity-server/test/IdentityServer.UnitTests/TestResults/test/IdentityServer.UnitTests-tests.trx

1612 tests were completed in 54s with 1612 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
IdentityServer.Endpoints.Token.TokenEndpointTests 1✅ 126ms
IdentityServer.UnitTests.AspNetIdentity.DefaultSessionClaimsFilterTests 4✅ 139ms
IdentityServer.UnitTests.Caches.ResourceStoreCacheTests 3✅ 210ms
IdentityServer.UnitTests.Configuration.CryptoHelperTests 18✅ 22ms
IdentityServer.UnitTests.Infrastructure.RemovePropertyModifierTests 1✅ 43ms
IdentityServer.UnitTests.Licensing.V2.ClientLoadedTrackerTests 12✅ 405ms
IdentityServer.UnitTests.Licensing.V2.DiagnosticEntries.AssemblyInfoDiagnosticEntryTests 6✅ 254ms
IdentityServer.UnitTests.Licensing.V2.DiagnosticEntries.AuthSchemeInfoDiagnosticEntryTests 2✅ 35ms
IdentityServer.UnitTests.Licensing.v2.DiagnosticEntries.BasicServerInfoDiagnosticEntryTests 1✅ 162ms
IdentityServer.UnitTests.Licensing.V2.DiagnosticEntries.ClientInfoDiagnosticEntryTests 3✅ 265ms
IdentityServer.UnitTests.Licensing.V2.DiagnosticEntries.DataProtectionDiagnosticEntryTests 2✅ 4ms
IdentityServer.UnitTests.Licensing.v2.DiagnosticEntries.EndpointUsageDiagnosticEntryTests 4✅ 254ms
IdentityServer.UnitTests.Licensing.V2.DiagnosticEntries.IdentityServerOptionsDiagnosticEntryTests 2✅ 1s
IdentityServer.UnitTests.Licensing.V2.DiagnosticEntries.LicenseUsageDiagnosticEntryTests 5✅ 22ms
IdentityServer.UnitTests.Licensing.V2.DiagnosticEntries.RegisteredImplementationsDiagnosticEntryTests 6✅ 555ms
IdentityServer.UnitTests.Licensing.v2.DiagnosticEntries.ResourceInfoDiagnosticEntryTests 4✅ 96ms
IdentityServer.UnitTests.Licensing.V2.DiagnosticEntries.TokenIssueCountDiagnosticEntryTests 15✅ 131ms
IdentityServer.UnitTests.Licensing.V2.DiagnosticHostedServiceTests 1✅ 168ms
IdentityServer.UnitTests.Licensing.V2.DiagnosticSummaryTests 5✅ 178ms
IdentityServer.UnitTests.Licensing.V2.LicenseAccessorTests 13✅ 108ms
IdentityServer.UnitTests.Licensing.V2.LicenseExpirationCheckerTests 15✅ 168ms
IdentityServer.UnitTests.Licensing.V2.LicenseUsageTests 19✅ 343ms
IdentityServer.UnitTests.Licensing.V2.ProtocolRequestCounterTests 3✅ 54ms
IdentityServer.UnitTests.Licensing.V2.ResourceLoadedTrackerTests 4✅ 88ms
IdentityServer.UnitTests.Logging.LoggingOptionsTests 5✅ 56ms
IdentityServer.UnitTests.Logging.SanitizedLoggerTests 12✅ 109ms
IdentityServer.UnitTests.Mappers.ApiResourceMappersTests 5✅ 117ms
IdentityServer.UnitTests.Mappers.ClientMappersTests 7✅ 256ms
IdentityServer.UnitTests.Mappers.IdentityProviderMappersTests 4✅ 15ms
IdentityServer.UnitTests.Mappers.IdentityResourcesMappersTests 3✅ 53ms
IdentityServer.UnitTests.Mappers.PersistedGrantMappersTests 3✅ 85ms
IdentityServer.UnitTests.Mappers.PushedAuthorizationRequestMappersTests 3✅ 37ms
IdentityServer.UnitTests.Mappers.ScopesMappersTests 4✅ 141ms
IdentityServer.UnitTests.Services.DiagnosticDataServiceTests 12✅ 116ms
IdentityServer.UnitTests.Storage.PersistedGrantFilterTests 2✅ 26ms
IdentityServer.UnitTests.Telemetry.TelemetryTests 5✅ 80ms
UnitTests.Configuration.DependencyInjection.PostConfigureApplicationCookieTicketStoreTests 1✅ 150ms
UnitTests.Cors.PolicyProviderTests 13✅ 157ms
UnitTests.Endpoints.Authorize.AuthorizeCallbackEndpointTests 7✅ 190ms
UnitTests.Endpoints.Authorize.AuthorizeEndpointBaseTests 8✅ 171ms
UnitTests.Endpoints.Authorize.AuthorizeEndpointTests 2✅ 177ms
UnitTests.Endpoints.EndSession.EndSessionCallbackResultTests 2✅ 1ms
UnitTests.Endpoints.Results.AuthorizeResultTests 35✅ 245ms
UnitTests.Endpoints.Results.CheckSessionResultTests 6✅ 152ms
UnitTests.Endpoints.Results.EndSessionCallbackResultTests 5✅ 29ms
UnitTests.Endpoints.Results.EndSessionResultTests 3✅ 184ms
UnitTests.Endpoints.Results.EventTests 1✅ 78ms
UnitTests.Endpoints.Results.ProtectedResourceErrorResultTests 3✅ 49ms
UnitTests.Extensions.ApiResourceSigningAlgorithmSelectionTests 23✅ 37ms
UnitTests.Extensions.ClaimsExtensionsTests 2✅ 418ms
UnitTests.Extensions.EndpointOptionsExtensionsTests 22✅ 68ms
UnitTests.Extensions.HttpContextExtensionsTests 8✅ 132ms
UnitTests.Extensions.HttpRequestExtensionsTests 3✅ 0ms
UnitTests.Extensions.IdentityServerBuilderExtensionsCacheStoreTests 2✅ 33ms
UnitTests.Extensions.IdentityServerBuilderExtensionsCryptoTests 13✅ 765ms
UnitTests.Extensions.IResourceStoreExtensionsTests 9✅ 204ms
UnitTests.Extensions.StringExtensionsTests 21✅ 144ms
UnitTests.Extensions.TokenExtensionsTests 12✅ 437ms
UnitTests.Extensions.ValidatedAuthorizeRequestExtensionsTests 4✅ 47ms
UnitTests.Hosting.EndpointHelpersTests 9✅ 1ms
UnitTests.Hosting.EndpointRouterTests 7✅ 6ms
UnitTests.Hosting.MutualTlsEndpointMiddlewareTests 52✅ 87ms
UnitTests.Infrastructure.ObjectSerializerTests 2✅ 366ms
UnitTests.Licensing.IdentityServerLicenseValidatorTests 11✅ 872ms
UnitTests.ResponseHandling.AuthorizeInteractionResponseGenerator.AuthorizeInteractionResponseGeneratorTests 5✅ 20ms
UnitTests.ResponseHandling.AuthorizeInteractionResponseGenerator.AuthorizeInteractionResponseGeneratorTests_Consent 14✅ 640ms
UnitTests.ResponseHandling.AuthorizeInteractionResponseGenerator.AuthorizeInteractionResponseGeneratorTests_Custom 4✅ 48ms
UnitTests.ResponseHandling.AuthorizeInteractionResponseGenerator.AuthorizeInteractionResponseGeneratorTests_Login 12✅ 94ms
UnitTests.ResponseHandling.DeviceAuthorizationResponseGeneratorTests 9✅ 126ms
UnitTests.ResponseHandling.UserInfoResponseGeneratorTests 7✅ 105ms
UnitTests.Services.Default.DefaultBackchannelAuthenticationInteractionServiceTests 10✅ 409ms
UnitTests.Services.Default.DefaultBackChannelLogoutServiceTests 1✅ 602ms
UnitTests.Services.Default.DefaultClaimsServiceTests 23✅ 434ms
UnitTests.Services.Default.DefaultConsentServiceTests 13✅ 222ms
UnitTests.Services.Default.DefaultCorsPolicyServiceTests 6✅ 92ms
UnitTests.Services.Default.DefaultEventServiceTests 1✅ 35ms
UnitTests.Services.Default.DefaultIdentityServerInteractionServiceTests 9✅ 85ms
UnitTests.Services.Default.DefaultMtlsEndpointGeneratorTests 3✅ 5ms
UnitTests.Services.Default.DefaultPersistedGrantServiceTests 5✅ 288ms
UnitTests.Services.Default.DefaultRefreshTokenServiceTests 18✅ 97ms
UnitTests.Services.Default.DefaultSessionCoordinationServiceTests 1✅ 5ms
UnitTests.Services.Default.DefaultTokenServiceTests 6✅ 166ms
UnitTests.Services.Default.DefaultUiLocalesServiceTests 11✅ 81ms
UnitTests.Services.Default.DefaultUserSessionTests 19✅ 120ms
UnitTests.Services.Default.DistributedDeviceFlowThrottlingServiceTests 4✅ 89ms
UnitTests.Services.Default.KeyManagement.InMemoryKeyStoreCacheTests 2✅ 19ms
UnitTests.Services.Default.KeyManagement.KeyManagerOptionsTests 9✅ 107ms
UnitTests.Services.Default.KeyManagement.KeyManagerTests 54✅ 37s
UnitTests.Services.Default.NumericUserCodeGeneratorTests 1✅ 31ms
UnitTests.Services.Default.OidcReturnUrlParserTests 46✅ 14ms
UnitTests.Services.Default.ParRedirectUriValidatorTests 5✅ 50ms
UnitTests.Services.InMemory.InMemoryCorsPolicyServiceTests 8✅ 69ms
UnitTests.Stores.Default.CachingResourceStoreTests 4✅ 256ms
UnitTests.Stores.Default.DefaultGrantStoreTests 5✅ 7ms
UnitTests.Stores.Default.DefaultPersistedGrantStoreTests 12✅ 95ms
UnitTests.Stores.Default.DistributedCacheAuthorizationParametersMessageStoreTests 1✅ 62ms
UnitTests.Stores.Default.ServerSideSessionCookieEventsTests 4✅ 92ms
UnitTests.Stores.InMemoryClientStoreTests 2✅ 1ms
UnitTests.Stores.InMemoryDeviceFlowStoreTests 4✅ 122ms
UnitTests.Stores.InMemoryPersistedGrantStoreTests 3✅ 91ms
UnitTests.Stores.InMemoryResourcesStoreTests 2✅ 1ms
UnitTests.Validation.AccessTokenValidation 16✅ 789ms
UnitTests.Validation.AuthorizeRequest_Validation.Authorize_ClientValidation_Code 6✅ 69ms
UnitTests.Validation.AuthorizeRequest_Validation.Authorize_ClientValidation_IdToken 1✅ 1s
UnitTests.Validation.AuthorizeRequest_Validation.Authorize_ClientValidation_Invalid 1✅ 8ms
UnitTests.Validation.AuthorizeRequest_Validation.Authorize_ClientValidation_Token 3✅ 55ms
UnitTests.Validation.AuthorizeRequest_Validation.Authorize_ClientValidation_Valid 13✅ 153ms
UnitTests.Validation.AuthorizeRequest_Validation.Authorize_ProtocolValidation_CustomValidator 2✅ 1s
UnitTests.Validation.AuthorizeRequest_Validation.Authorize_ProtocolValidation_Invalid 24✅ 238ms
UnitTests.Validation.AuthorizeRequest_Validation.Authorize_ProtocolValidation_Resources 8✅ 78ms
UnitTests.Validation.AuthorizeRequest_Validation.Authorize_ProtocolValidation_Valid 13✅ 1s
UnitTests.Validation.AuthorizeRequest_Validation.Authorize_ProtocolValidation_Valid_PAR 2✅ 1ms
UnitTests.Validation.AuthorizeRequest_Validation.Authorize_ProtocolValidation_Valid_PKCE 22✅ 157ms
UnitTests.Validation.BearerTokenUsageValidation 10✅ 96ms
UnitTests.Validation.ClientConfigurationValidation 52✅ 339ms
UnitTests.Validation.DefaultIssuerPathValidatorTests 8✅ 14ms
UnitTests.Validation.DeviceAuthorizationRequestValidation 10✅ 99ms
UnitTests.Validation.DeviceCodeValidation 9✅ 73ms
UnitTests.Validation.DPoPProofValidatorTests 41✅ 2s
UnitTests.Validation.EndSessionRequestValidation.EndSessionRequestValidatorTests 7✅ 181ms
UnitTests.Validation.GrantTypesValidation 16✅ 61ms
UnitTests.Validation.IdentityProviderConfigurationValidation 10✅ 98ms
UnitTests.Validation.IdentityTokenValidation 6✅ 687ms
UnitTests.Validation.IntrospectionRequestValidatorTests 7✅ 1s
UnitTests.Validation.IsLocalUrlTests 189✅ 114ms
UnitTests.Validation.ResourceValidation 15✅ 75ms
UnitTests.Validation.ResponseTypeEqualityComparison+MultipleValueStringComparisons 9✅ 18ms
UnitTests.Validation.ResponseTypeEqualityComparison+SingleValueStringComparisons 6✅ 6ms
UnitTests.Validation.RevocationRequestValidation 6✅ 74ms
UnitTests.Validation.Secrets.BasicAuthenticationSecretParsing 42✅ 119ms
UnitTests.Validation.Secrets.ClientAssertionSecretParsing 7✅ 2s
UnitTests.Validation.Secrets.ClientSecretValidation 5✅ 204ms
UnitTests.Validation.Secrets.FormPostCredentialExtraction 7✅ 23ms
UnitTests.Validation.Secrets.HashedSharedSecretValidation 7✅ 653ms
UnitTests.Validation.Secrets.MutualTlsSecretValidation 8✅ 1s
UnitTests.Validation.Secrets.PlainTextClientSecretValidation 7✅ 601ms
UnitTests.Validation.Secrets.PrivateKeyJwtSecretValidation 51✅ 4s
UnitTests.Validation.Secrets.SecretValidation 7✅ 1s
UnitTests.Validation.StrictRedirectUriValidatorAppAuthValidation 27✅ 85ms
UnitTests.Validation.TokenRequest_Validation.TokenRequestValidation_ClientCredentials_Invalid 9✅ 255ms
UnitTests.Validation.TokenRequest_Validation.TokenRequestValidation_Code_Invalid 13✅ 151ms
UnitTests.Validation.TokenRequest_Validation.TokenRequestValidation_DeviceCode_Invalid 6✅ 924ms
UnitTests.Validation.TokenRequest_Validation.TokenRequestValidation_ExtensionGrants_Invalid 4✅ 209ms
UnitTests.Validation.TokenRequest_Validation.TokenRequestValidation_General_Invalid 5✅ 272ms
UnitTests.Validation.TokenRequest_Validation.TokenRequestValidation_Invalid 1✅ 1s
UnitTests.Validation.TokenRequest_Validation.TokenRequestValidation_PKCE 12✅ 168ms
UnitTests.Validation.TokenRequest_Validation.TokenRequestValidation_RefreshToken_Invalid 9✅ 67ms
UnitTests.Validation.TokenRequest_Validation.TokenRequestValidation_ResourceOwner_Invalid 13✅ 316ms
UnitTests.Validation.TokenRequest_Validation.TokenRequestValidation_Valid 14✅ 2s
UnitTests.Validation.UserInfoRequestValidation 3✅ 39ms