From 2100c259c206980cc102fc86ae8f189b5eb17b0a Mon Sep 17 00:00:00 2001 From: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com> Date: Fri, 31 Jul 2026 02:10:04 +0800 Subject: [PATCH] test(auth): use sealed provider handle fixture Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com> --- .../ResolvedProviderHandleTestFixture.java | 15 +++++++++++++++ .../auth/oauth/CustomOidcUserServiceTest.java | 5 +++-- .../auth/oauth/OAuthLoginFlowServiceTest.java | 3 ++- 3 files changed, 20 insertions(+), 3 deletions(-) create mode 100644 server/skillhub-auth/src/test/java/com/iflytek/skillhub/auth/identity/ResolvedProviderHandleTestFixture.java diff --git a/server/skillhub-auth/src/test/java/com/iflytek/skillhub/auth/identity/ResolvedProviderHandleTestFixture.java b/server/skillhub-auth/src/test/java/com/iflytek/skillhub/auth/identity/ResolvedProviderHandleTestFixture.java new file mode 100644 index 00000000..f8ac527a --- /dev/null +++ b/server/skillhub-auth/src/test/java/com/iflytek/skillhub/auth/identity/ResolvedProviderHandleTestFixture.java @@ -0,0 +1,15 @@ +package com.iflytek.skillhub.auth.identity; + +/** + * Test-only factory for the sealed provider handle. + */ +public final class ResolvedProviderHandleTestFixture { + + private ResolvedProviderHandleTestFixture() { + } + + public static ResolvedProviderHandle handle( + String providerCode) { + return new DefaultResolvedProviderHandle(providerCode); + } +} diff --git a/server/skillhub-auth/src/test/java/com/iflytek/skillhub/auth/oauth/CustomOidcUserServiceTest.java b/server/skillhub-auth/src/test/java/com/iflytek/skillhub/auth/oauth/CustomOidcUserServiceTest.java index b8cb2827..2f7a27d6 100644 --- a/server/skillhub-auth/src/test/java/com/iflytek/skillhub/auth/oauth/CustomOidcUserServiceTest.java +++ b/server/skillhub-auth/src/test/java/com/iflytek/skillhub/auth/oauth/CustomOidcUserServiceTest.java @@ -13,6 +13,7 @@ import com.iflytek.skillhub.auth.identity.IdentityLoginContext; import com.iflytek.skillhub.auth.identity.ProviderAttributeTrust; import com.iflytek.skillhub.auth.identity.ProviderAuthenticationResult; import com.iflytek.skillhub.auth.identity.ResolvedProviderHandle; +import com.iflytek.skillhub.auth.identity.ResolvedProviderHandleTestFixture; import com.iflytek.skillhub.auth.rbac.PlatformPrincipal; import java.time.Instant; import java.util.List; @@ -64,7 +65,7 @@ class CustomOidcUserServiceTest { "okta", Set.of("USER", "SUPER_ADMIN")); ResolvedProviderHandle provider = - mock(ResolvedProviderHandle.class); + ResolvedProviderHandleTestFixture.handle("okta"); when(loginFlowService.requireReadyProvider( request.getClientRegistration())) .thenReturn(provider); @@ -230,7 +231,7 @@ class CustomOidcUserServiceTest { "email_verified", false, "preferred_username", "unverified-user")); ResolvedProviderHandle provider = - mock(ResolvedProviderHandle.class); + ResolvedProviderHandleTestFixture.handle("okta"); when(loginFlowService.requireReadyProvider( request.getClientRegistration())) .thenReturn(provider); diff --git a/server/skillhub-auth/src/test/java/com/iflytek/skillhub/auth/oauth/OAuthLoginFlowServiceTest.java b/server/skillhub-auth/src/test/java/com/iflytek/skillhub/auth/oauth/OAuthLoginFlowServiceTest.java index 94d9ad05..e65a5206 100644 --- a/server/skillhub-auth/src/test/java/com/iflytek/skillhub/auth/oauth/OAuthLoginFlowServiceTest.java +++ b/server/skillhub-auth/src/test/java/com/iflytek/skillhub/auth/oauth/OAuthLoginFlowServiceTest.java @@ -20,6 +20,7 @@ import com.iflytek.skillhub.auth.identity.IdentityLoginOutcome; import com.iflytek.skillhub.auth.identity.ProtocolAuthenticationEvidence; import com.iflytek.skillhub.auth.identity.ProviderAuthenticationResult; import com.iflytek.skillhub.auth.identity.ResolvedProviderHandle; +import com.iflytek.skillhub.auth.identity.ResolvedProviderHandleTestFixture; import com.iflytek.skillhub.auth.identity.SubjectCandidate; import com.iflytek.skillhub.auth.identity.TrustedProviderRouteResolver; import com.iflytek.skillhub.auth.rbac.PlatformPrincipal; @@ -54,7 +55,7 @@ class OAuthLoginFlowServiceTest { OAuth2UserRequest request = mock(OAuth2UserRequest.class); OAuth2User upstreamUser = mock(OAuth2User.class); ResolvedProviderHandle provider = - mock(ResolvedProviderHandle.class); + ResolvedProviderHandleTestFixture.handle("github"); ClientRegistration registration = registration(); when(request.getClientRegistration()).thenReturn(registration); when(resolver.resolve(registration)).thenReturn(provider);