1
0
forked from baron/baron-sso
Files
baron-sso/docs/test-plan/backend-test-inventory.md
Lectom C Han 71a006cd7b fix(headless-login): honor public base url for audience checks
- resolve headless audience against BACKEND_PUBLIC_URL first
- keep forwarded header support for https absolute audiences
- add regression tests for https success and http mismatch rejection
- write BACKEND_PUBLIC_URL into staging workflow env generation
2026-04-01 21:05:41 +09:00

17 KiB

Backend 테스트 전수 목록

  • 범위: backend/cmd/server, backend/internal/**
  • 기준: func Test... 패턴으로 수집한 단위/통합 테스트
파일 테스트 역할
backend/cmd/server/error_handler_test.go:23 TestNewErrorHandler_ProductionMasksServerError 오류/예외/거부 경로 검증
backend/cmd/server/error_handler_test.go:48 TestNewErrorHandler_ProductionPassesClientError 오류/예외/거부 경로 검증
backend/cmd/server/error_handler_test.go:73 TestNewErrorHandler_DevelopmentReturnsOriginalServerError 오류/예외/거부 경로 검증
backend/cmd/server/error_handler_test.go:98 TestNewErrorHandler_MapsUnauthorizedCode 오류/예외/거부 경로 검증
backend/cmd/server/headless_login_e2e_test.go:363 TestHeadlessPasswordLogin_E2E_ResponseIncludesDetailedCodeAndLogs 실제 app 경로에서 headless login 401 응답 본문과 구조화 로그를 함께 검증
backend/cmd/server/headless_login_e2e_test.go:407 TestHeadlessPasswordLogin_E2E_DebugLogsIncludeDiagnostics 실제 app 경로에서 debug 레벨일 때만 headless 진단 필드가 로그에 포함되는지 검증
backend/cmd/server/headless_login_e2e_test.go:446 TestHeadlessPasswordLogin_E2E_AcceptsForwardedHTTPSAudience forwarded proto/host가 있는 경우 https absolute audience가 실제 app 경로에서 성공하는지 검증
backend/cmd/server/headless_login_e2e_test.go:491 TestHeadlessPasswordLogin_E2E_AcceptsConfiguredPublicHTTPSAudience BACKEND_PUBLIC_URL 기준으로 internal http 요청에서도 https absolute audience가 성공하는지 검증
backend/internal/handler/api_key_handler_test.go:19 TestApiKeyHandler_CreateApiKey 핵심 CRUD/서비스 동작 검증
backend/internal/handler/api_key_handler_test.go:41 TestApiKeyHandler_Validation 유효성/정책/유틸 검증
backend/internal/handler/auth_handler_async_test.go:198 TestSignup_AsyncDB_Isolation 복구/격리/회복 탄력성 검증
backend/internal/handler/auth_handler_client_test.go:16 TestRevokeLinkedRp_Success 인증/OIDC 플로우 검증
backend/internal/handler/auth_handler_client_test.go:56 TestListRpHistory_Aggregation Hydra/RP 연동 검증
backend/internal/handler/auth_handler_consent_test.go:134 TestAcceptConsentRequest_Normal 인증/OIDC 플로우 검증
backend/internal/handler/auth_handler_consent_test.go:26 TestGetConsentRequest_Normal 인증/OIDC 플로우 검증
backend/internal/handler/auth_handler_consent_test.go:71 TestGetConsentRequest_Skip_AutoAccept 인증/OIDC 플로우 검증
backend/internal/handler/auth_handler_link_test.go:24 TestEnchantedLinkFlow_Email_Success 인증/OIDC 플로우 검증
backend/internal/handler/auth_handler_link_test.go:94 TestEnchantedLinkFlow_Sms_Success 인증/OIDC 플로우 검증
backend/internal/handler/auth_handler_linked_test.go:26 TestListLinkedRps_PriorityAndAggregation 인증/OIDC 플로우 검증
backend/internal/handler/auth_handler_login_test.go:114 TestPasswordLogin_OIDC_Success 인증/OIDC 플로우 검증
backend/internal/handler/auth_handler_login_test.go:201 TestPasswordLogin_OIDC_InactiveClient 오류/예외/거부 경로 검증
backend/internal/handler/auth_handler_login_test.go:255 TestPasswordLogin_NoOIDC_Success 인증/OIDC 플로우 검증
backend/internal/handler/auth_handler_login_test.go:940 TestHeadlessPasswordLogin_InvalidClientAssertionRejected headless 로그인 서명 검증 실패 응답 코드 검증
backend/internal/handler/auth_handler_login_test.go:1033 TestHeadlessPasswordLogin_AudienceMismatchReturnsDetailedCode headless 로그인 audience mismatch 분류 검증
backend/internal/handler/auth_handler_login_test.go:1062 TestHeadlessPasswordLogin_IssSubMismatchReturnsDetailedCode headless 로그인 iss/sub mismatch 분류 검증
backend/internal/handler/auth_handler_login_test.go:1102 TestHeadlessPasswordLogin_ExpiredAssertionReturnsDetailedCode headless 로그인 만료 assertion 분류 검증
backend/internal/handler/auth_handler_login_test.go:1097 TestHeadlessPasswordLogin_AcceptsForwardedHTTPSAudience forwarded proto/host가 있는 경우 https absolute audience가 성공하는지 검증
backend/internal/handler/auth_handler_login_test.go:1132 TestHeadlessPasswordLogin_AcceptsConfiguredPublicHTTPSAudience BACKEND_PUBLIC_URL 기준으로 internal http 요청에서도 https absolute audience가 성공하는지 검증
backend/internal/handler/auth_handler_login_test.go:1166 TestHeadlessPasswordLogin_RejectsHTTPAudienceWhenConfiguredPublicURLIsHTTPS BACKEND_PUBLIC_URL=https일 때 잘못된 http absolute audience는 계속 거부되는지 검증
backend/internal/handler/auth_handler_login_test.go:1280 TestHeadlessPasswordLogin_DebugLogIncludesDiagnostics debug 로그에서만 진단 필드가 노출되는지 검증
backend/internal/handler/auth_handler_login_test.go:1312 TestHeadlessPasswordLogin_InfoLogOmitsDebugDiagnostics 일반 로그에서 debug 진단 필드가 숨겨지는지 검증
backend/internal/handler/auth_handler_login_test.go:1442 TestPasswordLogin_InvalidCredentials_ReturnsCode 비밀번호 불일치 응답 코드 검증
backend/internal/handler/auth_handler_oidc_test.go:106 TestAcceptOidcLoginRequest_TokenFallbackToCookie 복구/격리/회복 탄력성 검증
backend/internal/handler/auth_handler_oidc_test.go:21 TestAcceptOidcLoginRequest_CookieOnly 인증/OIDC 플로우 검증
backend/internal/handler/auth_handler_otp_test.go:14 TestHandleKratosCourierRelay_Email 인증/OIDC 플로우 검증
backend/internal/handler/auth_handler_otp_test.go:43 TestVerifySignupCode_Success 인증/OIDC 플로우 검증
backend/internal/handler/auth_handler_otp_test.go:85 TestVerifySignupCode_Invalid 오류/예외/거부 경로 검증
backend/internal/handler/auth_handler_qr_test.go:107 TestScanQRLogin_Success 인증/OIDC 플로우 검증
backend/internal/handler/auth_handler_qr_test.go:150 TestResolveConsentSubjects_TokenAndCookie 인증/OIDC 플로우 검증
backend/internal/handler/auth_handler_qr_test.go:57 TestQRLoginFlow_Success 인증/OIDC 플로우 검증
backend/internal/handler/auth_handler_test.go:67 TestCompletePasswordReset_MissingLoginID 오류/예외/거부 경로 검증
backend/internal/handler/auth_handler_test.go:97 TestCompletePasswordReset_InvalidPasswordPolicy 오류/예외/거부 경로 검증
backend/internal/handler/auth_handler_test.go:127 TestCompletePasswordReset_NilIDPProvider 오류/예외/거부 경로 검증
backend/internal/handler/auth_handler_test.go:157 TestCompletePasswordReset_TokenValueOverridesLoginIDQuery 비밀번호 재설정 토큰 우선 규칙 검증
backend/internal/handler/auth_handler_test.go:209 TestCompletePasswordReset_InvalidTokenRejectedEvenWhenLoginIDExists 오류/예외/거부 경로 검증
backend/internal/handler/auth_handler_test.go:249 TestProcessPasswordResetToken_EncodesLoginIDInRedirect 리다이렉트/쿼리 보존 규칙 검증
backend/internal/handler/dev_handler_test.go:103 TestCreateClient_Success Hydra/RP 연동 검증
backend/internal/handler/dev_handler_test.go:15 TestListClients_Success Hydra/RP 연동 검증
backend/internal/handler/dev_handler_test.go:49 TestGetClient_Success Hydra/RP 연동 검증
backend/internal/handler/dev_handler_test.go:83 TestGetClient_NotFound 오류/예외/거부 경로 검증
backend/internal/handler/password_policy_test.go:57 TestGeneratePasswordUsesNonAlphanumericRequirement 유효성/정책/유틸 검증
backend/internal/handler/tenant_handler_test.go:101 TestTenantHandler_ApproveTenant 핵심 CRUD/서비스 동작 검증
backend/internal/handler/tenant_handler_test.go:73 TestTenantHandler_CreateTenant 핵심 CRUD/서비스 동작 검증
backend/internal/handler/user_group_handler_test.go:109 TestUserGroupHandler_AddMember 권한/관계 모델 검증
backend/internal/handler/user_group_handler_test.go:128 TestUserGroupHandler_AssignRole 권한/관계 모델 검증
backend/internal/handler/user_group_handler_test.go:71 TestUserGroupHandler_List 권한/관계 모델 검증
backend/internal/handler/user_group_handler_test.go:91 TestUserGroupHandler_Create 권한/관계 모델 검증
backend/internal/idp/factory_test.go:123 TestChainedProviderMetadataUnion 회귀 방지 기본 동작 검증
backend/internal/idp/factory_test.go:139 TestChainedProviderUpdateUserPasswordFallback 복구/격리/회복 탄력성 검증
backend/internal/idp/factory_test.go:152 TestChainedProviderUpdateUserPasswordAllFail 인증/OIDC 플로우 검증
backend/internal/logger/audit_logger_test.go:14 TestAuditLogEntry_RedactsSensitiveFields 감사 로그 민감정보 마스킹/비노출 검증
backend/internal/middleware/audit_middleware_test.go:42 TestAuditMiddleware 회귀 방지 기본 동작 검증
backend/internal/middleware/error_code_enricher_test.go:22 TestErrorCodeEnricher_AddsCodeToLegacyErrorResponse 오류/예외/거부 경로 검증
backend/internal/middleware/error_code_enricher_test.go:50 TestErrorCodeEnricher_DoesNotOverrideExistingCode 오류/예외/거부 경로 검증
backend/internal/middleware/error_code_enricher_test.go:72 TestErrorCodeEnricher_IgnoreSuccessPayload 오류/예외/거부 경로 검증
backend/internal/middleware/rbac_test.go:115 TestRequireKetoPermission_Success 권한/관계 모델 검증
backend/internal/middleware/rbac_test.go:138 TestRequireTenantMatch_SuperAdmin 권한/관계 모델 검증
backend/internal/middleware/rbac_test.go:160 TestRequireTenantMatch_Forbidden 오류/예외/거부 경로 검증
backend/internal/middleware/rbac_test.go:184 TestRequireRole_Unauthorized 오류/예외/거부 경로 검증
backend/internal/middleware/rbac_test.go:69 TestRequireRole_Success 권한/관계 모델 검증
backend/internal/middleware/rbac_test.go:92 TestRequireRole_Forbidden 오류/예외/거부 경로 검증
backend/internal/response/error_response_test.go:22 TestErrorWithDetailsResponseShape 오류/예외/거부 경로 검증
backend/internal/response/error_response_test.go:61 TestStatusCodeMapping 회귀 방지 기본 동작 검증
backend/internal/service/hydra_admin_service_test.go:102 TestHydraAdminService_GetConsentRequest 인증/OIDC 플로우 검증
backend/internal/service/hydra_admin_service_test.go:124 TestHydraAdminService_PatchClientStatus Hydra/RP 연동 검증
backend/internal/service/hydra_admin_service_test.go:13 TestHydraAdminService_ListClients Hydra/RP 연동 검증
backend/internal/service/hydra_admin_service_test.go:148 TestHydraAdminService_UpdateClient Hydra/RP 연동 검증
backend/internal/service/hydra_admin_service_test.go:165 TestHydraAdminService_ListConsentSessions 인증/OIDC 플로우 검증
backend/internal/service/hydra_admin_service_test.go:183 TestHydraAdminService_RevokeConsentSessions 인증/OIDC 플로우 검증
backend/internal/service/hydra_admin_service_test.go:198 TestHydraAdminService_RejectConsentRequest 오류/예외/거부 경로 검증
backend/internal/service/hydra_admin_service_test.go:215 TestHydraAdminService_RejectLoginRequest 오류/예외/거부 경로 검증
backend/internal/service/hydra_admin_service_test.go:232 TestHydraAdminService_GetLoginRequest 인증/OIDC 플로우 검증
backend/internal/service/hydra_admin_service_test.go:249 TestHydraAdminService_AcceptConsentRequest 인증/OIDC 플로우 검증
backend/internal/service/hydra_admin_service_test.go:267 TestHydraAdminService_AcceptLoginRequest 인증/OIDC 플로우 검증
backend/internal/service/hydra_admin_service_test.go:294 TestHydraAdminService_ErrorHandling 오류/예외/거부 경로 검증
backend/internal/service/hydra_admin_service_test.go:319 TestHydraAdminService_NotFound 오류/예외/거부 경로 검증
backend/internal/service/hydra_admin_service_test.go:39 TestHydraAdminService_GetClient Hydra/RP 연동 검증
backend/internal/service/hydra_admin_service_test.go:60 TestHydraAdminService_CreateClient Hydra/RP 연동 검증
backend/internal/service/hydra_admin_service_test.go:86 TestHydraAdminService_DeleteClient Hydra/RP 연동 검증
backend/internal/service/keto_service_test.go:101 TestKetoService_ErrorHandling 오류/예외/거부 경로 검증
backend/internal/service/keto_service_test.go:123 TestKetoService_CheckPermission_Forbidden 오류/예외/거부 경로 검증
backend/internal/service/keto_service_test.go:12 TestKetoService_CheckPermission 권한/관계 모델 검증
backend/internal/service/keto_service_test.go:137 TestKetoService_CreateRelation_Retry 복구/격리/회복 탄력성 검증
backend/internal/service/keto_service_test.go:34 TestKetoService_CreateRelation 권한/관계 모델 검증
backend/internal/service/keto_service_test.go:58 TestKetoService_DeleteRelation 권한/관계 모델 검증
backend/internal/service/keto_service_test.go:79 TestKetoService_ListRelations 권한/관계 모델 검증
backend/internal/service/ory_service_test.go:125 TestFindIdentityID_QueryEncoding 회귀 방지 기본 동작 검증
backend/internal/service/ory_service_test.go:38 TestUpdateUserPassword_Success 인증/OIDC 플로우 검증
backend/internal/service/ory_service_test.go:78 TestUpdateUserPassword_NotFound 오류/예외/거부 경로 검증
backend/internal/service/ory_service_test.go:98 TestUpdateUserPassword_ServerError 오류/예외/거부 경로 검증
backend/internal/service/relying_party_service_test.go:133 TestRelyingPartyService_Create_HydraFail Hydra/RP 연동 검증
backend/internal/service/relying_party_service_test.go:152 TestRelyingPartyService_Create_KetoFail_Rollback 복구/격리/회복 탄력성 검증
backend/internal/service/relying_party_service_test.go:190 TestRelyingPartyService_Get_Success Hydra/RP 연동 검증
backend/internal/service/relying_party_service_test.go:221 TestRelyingPartyService_Update_Success Hydra/RP 연동 검증
backend/internal/service/relying_party_service_test.go:250 TestRelyingPartyService_Delete_Success Hydra/RP 연동 검증
backend/internal/service/relying_party_service_test.go:85 TestRelyingPartyService_Create_Success Hydra/RP 연동 검증
backend/internal/service/tenant_service_test.go:126 TestTenantService_RegisterTenant_AddsDomainsAsVerified 핵심 CRUD/서비스 동작 검증
backend/internal/service/tenant_service_test.go:156 TestTenantService_RequestRegistration_AddsDomainAsUnverified 핵심 CRUD/서비스 동작 검증
backend/internal/service/tenant_service_test.go:187 TestTenantService_RequestRegistration_RejectsDomainMismatch 오류/예외/거부 경로 검증
backend/internal/service/tenant_service_test.go:208 TestTenantService_ApproveTenant_AssignsAdminRelationWhenUserExists 권한/관계 모델 검증
backend/internal/service/tenant_service_test.go:240 TestTenantService_ApproveTenant_DoesNotAssignWhenUserMissing 오류/예외/거부 경로 검증
backend/internal/service/user_group_service_test.go:103 TestUserGroupService_Create 권한/관계 모델 검증
backend/internal/service/user_group_service_test.go:124 TestUserGroupService_AddMember 권한/관계 모델 검증
backend/internal/service/user_group_service_test.go:138 TestUserGroupService_AssignRoleToTenant 권한/관계 모델 검증
backend/internal/service/user_group_service_test.go:154 TestUserGroupService_ListRoles 권한/관계 모델 검증
backend/internal/service/user_group_service_test.go:188 TestUserGroupService_Get_WithKratosFallback 복구/격리/회복 탄력성 검증
backend/internal/utils/masking_test.go:9 TestMaskSensitiveJSON 유효성/정책/유틸 검증
backend/internal/utils/slug_test.go:15 TestValidateSlug_ReservedKeywords 유효성/정책/유틸 검증
backend/internal/utils/slug_test.go:38 TestValidateSlug_LengthRules 유효성/정책/유틸 검증
backend/internal/utils/slug_test.go:60 TestValidateSlug_FormatRules 유효성/정책/유틸 검증
backend/internal/utils/slug_test.go:8 TestValidateSlug_Valid 유효성/정책/유틸 검증
backend/internal/validator/schema_validator_test.go:65 TestValidateIDPCompatibility 유효성/정책/유틸 검증