init: 클린 기반 auth 서버 설계
This commit is contained in:
+1802
File diff suppressed because it is too large
Load Diff
+119
@@ -0,0 +1,119 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
|
||||
<meta http-equiv="x-ua-compatible" content="IE=edge"/>
|
||||
<title>Test results - me_auto_registers_internal_user_when_subject_is_not_synchronized()</title>
|
||||
<link href="../css/base-style.css" rel="stylesheet" type="text/css"/>
|
||||
<link href="../css/style.css" rel="stylesheet" type="text/css"/>
|
||||
<script src="../js/report.js" type="text/javascript"></script>
|
||||
</head>
|
||||
<body>
|
||||
<div id="content">
|
||||
<div class="breadcrumbs">
|
||||
<a class="breadcrumb" href="../index.html">all</a> >
|
||||
<a class="breadcrumb" href="index.html">com.project.auth.AuthenticatedUserResourceServerIntegrationTest</a> >
|
||||
<span class="breadcrumb">me_auto_registers_internal_user_when_subject_is_not_synchronized()</span>
|
||||
</div>
|
||||
<div class="tab-container">
|
||||
<ul class="tabLinks">
|
||||
<li>
|
||||
<a class="successGroup" href="#">Gradle Test Run :bootstrap:test</a>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="tab">
|
||||
<h2>Gradle Test Run :bootstrap:test</h2>
|
||||
<h1>me_auto_registers_internal_user_when_subject_is_not_synchronized()</h1>
|
||||
<div class="tab-container">
|
||||
<ul class="tabLinks">
|
||||
<li>
|
||||
<a class="" href="#">summary</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="" href="#">standard output</a>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="tab">
|
||||
<h2>summary</h2>
|
||||
<div>
|
||||
<div class="summary">
|
||||
<table>
|
||||
<tr>
|
||||
<td>
|
||||
<div class="summaryGroup">
|
||||
<table>
|
||||
<tr>
|
||||
<td>
|
||||
<div class="infoBox">
|
||||
<div class="counter">1</div>
|
||||
<p>tests</p>
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox">
|
||||
<div class="counter">0</div>
|
||||
<p>failures</p>
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox">
|
||||
<div class="counter">0</div>
|
||||
<p>skipped</p>
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox duration">
|
||||
<div class="counter">0.027s</div>
|
||||
<p>duration</p>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox success successRate">
|
||||
<div class="percent">100%</div>
|
||||
<p>successful</p>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="tab">
|
||||
<h2>standard output</h2>
|
||||
<span class="code">
|
||||
<pre id="root-0-test-stdout-me_auto_registers_internal_user_when_subject_is_not_synchronized()">2026-05-12T15:59:41.889+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] org.hibernate.SQL : select uje1_0.id,uje1_0.created_at,uje1_0.email,uje1_0.name,uje1_0.provider,uje1_0.provider_subject,uje1_0.updated_at from auth.users uje1_0
|
||||
2026-05-12T15:59:41.891+09:00 INFO 3742337 --- [ Test worker] [traceId=] o.s.b.t.m.w.SpringBootMockServletContext : Initializing Spring TestDispatcherServlet ''
|
||||
2026-05-12T15:59:41.891+09:00 INFO 3742337 --- [ Test worker] [traceId=] o.s.t.web.servlet.TestDispatcherServlet : Initializing Servlet ''
|
||||
2026-05-12T15:59:41.892+09:00 INFO 3742337 --- [ Test worker] [traceId=] o.s.t.web.servlet.TestDispatcherServlet : Completed initialization in 1 ms
|
||||
2026-05-12T15:59:41.895+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped to com.project.auth.presentation.auth.controller.AuthenticatedUserController#me(AuthenticatedUser)
|
||||
2026-05-12T15:59:41.896+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] org.hibernate.SQL : select uje1_0.id,uje1_0.created_at,uje1_0.email,uje1_0.name,uje1_0.provider,uje1_0.provider_subject,uje1_0.updated_at from auth.users uje1_0 where uje1_0.provider=? and uje1_0.provider_subject=?
|
||||
2026-05-12T15:59:41.898+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] org.hibernate.SQL : select uje1_0.id from auth.users uje1_0 where uje1_0.email=? fetch first ? rows only
|
||||
2026-05-12T15:59:41.900+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] org.hibernate.SQL : select uje1_0.id,uje1_0.created_at,uje1_0.email,uje1_0.name,uje1_0.provider,uje1_0.provider_subject,uje1_0.updated_at from auth.users uje1_0 where uje1_0.id=?
|
||||
2026-05-12T15:59:41.903+09:00 INFO 3742337 --- [ Test worker] [traceId=] audit.auth : KEYCLOAK_USER_AUTO_REGISTERED eventType="KEYCLOAK_USER_AUTO_REGISTERED" provider="KEYCLOAK" subject="keycloak-subject-1"
|
||||
2026-05-12T15:59:41.904+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] org.hibernate.SQL : insert into auth.users (created_at,email,name,provider,provider_subject,id) values (?,?,?,?,?,?)
|
||||
2026-05-12T15:59:41.906+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] m.m.a.RequestResponseBodyMethodProcessor : Using 'application/json', given [*/*] and supported [application/json, application/*+json, application/yaml]
|
||||
2026-05-12T15:59:41.906+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] m.m.a.RequestResponseBodyMethodProcessor : Writing [ApiResult[success=true, code=AUTHENTICATED_USER_LOADED, message=현재 사용자 조회가 완료되었습니다., data=Authentica (truncated)...]
|
||||
2026-05-12T15:59:41.909+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] org.hibernate.SQL : select count(*) from auth.users uje1_0
|
||||
</pre>
|
||||
<button class="clipboard-copy-btn" aria-label="Copy to clipboard" data-copy-element-id="root-0-test-stdout-me_auto_registers_internal_user_when_subject_is_not_synchronized()">Copy</button>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="footer">
|
||||
<p>
|
||||
<div>
|
||||
<label class="hidden" id="label-for-line-wrapping-toggle" for="line-wrapping-toggle">Wrap lines
|
||||
<input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/>
|
||||
</label>
|
||||
</div>Generated by
|
||||
<a href="https://www.gradle.org">Gradle 9.3.1</a> at May 12, 2026, 3:59:51 PM</p>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
+120
@@ -0,0 +1,120 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
|
||||
<meta http-equiv="x-ua-compatible" content="IE=edge"/>
|
||||
<title>Test results - me_returns_401_when_no_authentication()</title>
|
||||
<link href="../css/base-style.css" rel="stylesheet" type="text/css"/>
|
||||
<link href="../css/style.css" rel="stylesheet" type="text/css"/>
|
||||
<script src="../js/report.js" type="text/javascript"></script>
|
||||
</head>
|
||||
<body>
|
||||
<div id="content">
|
||||
<div class="breadcrumbs">
|
||||
<a class="breadcrumb" href="../index.html">all</a> >
|
||||
<a class="breadcrumb" href="index.html">com.project.auth.AuthenticatedUserResourceServerIntegrationTest</a> >
|
||||
<span class="breadcrumb">me_returns_401_when_no_authentication()</span>
|
||||
</div>
|
||||
<div class="tab-container">
|
||||
<ul class="tabLinks">
|
||||
<li>
|
||||
<a class="successGroup" href="#">Gradle Test Run :bootstrap:test</a>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="tab">
|
||||
<h2>Gradle Test Run :bootstrap:test</h2>
|
||||
<h1>me_returns_401_when_no_authentication()</h1>
|
||||
<div class="tab-container">
|
||||
<ul class="tabLinks">
|
||||
<li>
|
||||
<a class="" href="#">summary</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="" href="#">standard output</a>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="tab">
|
||||
<h2>summary</h2>
|
||||
<div>
|
||||
<div class="summary">
|
||||
<table>
|
||||
<tr>
|
||||
<td>
|
||||
<div class="summaryGroup">
|
||||
<table>
|
||||
<tr>
|
||||
<td>
|
||||
<div class="infoBox">
|
||||
<div class="counter">1</div>
|
||||
<p>tests</p>
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox">
|
||||
<div class="counter">0</div>
|
||||
<p>failures</p>
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox">
|
||||
<div class="counter">0</div>
|
||||
<p>skipped</p>
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox duration">
|
||||
<div class="counter">0.020s</div>
|
||||
<p>duration</p>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox success successRate">
|
||||
<div class="percent">100%</div>
|
||||
<p>successful</p>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="tab">
|
||||
<h2>standard output</h2>
|
||||
<span class="code">
|
||||
<pre id="root-0-test-stdout-me_returns_401_when_no_authentication()">2026-05-12T15:59:41.868+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] org.hibernate.SQL : select uje1_0.id,uje1_0.created_at,uje1_0.email,uje1_0.name,uje1_0.provider,uje1_0.provider_subject,uje1_0.updated_at from auth.users uje1_0
|
||||
2026-05-12T15:59:41.870+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] org.hibernate.SQL : delete from auth.users where id=?
|
||||
2026-05-12T15:59:41.871+09:00 INFO 3742337 --- [ Test worker] [traceId=] o.s.b.t.m.w.SpringBootMockServletContext : Initializing Spring TestDispatcherServlet ''
|
||||
2026-05-12T15:59:41.871+09:00 INFO 3742337 --- [ Test worker] [traceId=] o.s.t.web.servlet.TestDispatcherServlet : Initializing Servlet ''
|
||||
2026-05-12T15:59:41.872+09:00 INFO 3742337 --- [ Test worker] [traceId=] o.s.t.web.servlet.TestDispatcherServlet : Completed initialization in 1 ms
|
||||
2026-05-12T15:59:41.878+09:00 WARN 3742337 --- [ Test worker] [traceId=] c.p.a.c.a.s.SecurityAuditTrailWriter : Authentication required. actorId=anonymous method=GET requestPath=/api/v1/auth/me
|
||||
2026-05-12T15:59:41.878+09:00 WARN 3742337 --- [ Test worker] [traceId=] audit.auth : AUTHENTICATION_REQUIRED eventType="AUTHENTICATION_REQUIRED" actorId="anonymous" method="GET" requestPath="/api/v1/auth/me"
|
||||
2026-05-12T15:59:41.879+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] .m.m.a.ExceptionHandlerExceptionResolver : Using @ExceptionHandler com.project.auth.config.web.SecurityResponseExceptionHandler#handleAuthenticationException(AuthenticationException, HttpServletRequest)
|
||||
2026-05-12T15:59:41.879+09:00 WARN 3742337 --- [ Test worker] [traceId=] p.a.c.w.SecurityResponseExceptionHandler : Authentication required. exceptionType=InsufficientAuthenticationException method=GET requestPath=/api/v1/auth/me errorCode=AUTH-001
|
||||
2026-05-12T15:59:41.879+09:00 WARN 3742337 --- [ Test worker] [traceId=] c.p.a.c.a.s.SecurityAuditTrailWriter : Authentication required. actorId=anonymous method=GET requestPath=/api/v1/auth/me
|
||||
2026-05-12T15:59:41.879+09:00 WARN 3742337 --- [ Test worker] [traceId=] audit.auth : AUTHENTICATION_REQUIRED eventType="AUTHENTICATION_REQUIRED" actorId="anonymous" method="GET" requestPath="/api/v1/auth/me"
|
||||
2026-05-12T15:59:41.880+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] o.s.w.s.m.m.a.HttpEntityMethodProcessor : Using 'application/json', given [*/*] and supported [application/json, application/*+json, application/yaml]
|
||||
2026-05-12T15:59:41.880+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] o.s.w.s.m.m.a.HttpEntityMethodProcessor : Writing [ApiResult[success=false, code=AUTH-001, message=인증이 필요합니다., data=null, errors=null, traceId=-, times (truncated)...]
|
||||
2026-05-12T15:59:41.880+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] .m.m.a.ExceptionHandlerExceptionResolver : Resolved [org.springframework.security.authentication.InsufficientAuthenticationException: Full authentication is required to access this resource]
|
||||
</pre>
|
||||
<button class="clipboard-copy-btn" aria-label="Copy to clipboard" data-copy-element-id="root-0-test-stdout-me_returns_401_when_no_authentication()">Copy</button>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="footer">
|
||||
<p>
|
||||
<div>
|
||||
<label class="hidden" id="label-for-line-wrapping-toggle" for="line-wrapping-toggle">Wrap lines
|
||||
<input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/>
|
||||
</label>
|
||||
</div>Generated by
|
||||
<a href="https://www.gradle.org">Gradle 9.3.1</a> at May 12, 2026, 3:59:51 PM</p>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
+119
@@ -0,0 +1,119 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
|
||||
<meta http-equiv="x-ua-compatible" content="IE=edge"/>
|
||||
<title>Test results - me_returns_403_when_token_has_no_user_realm_role()</title>
|
||||
<link href="../css/base-style.css" rel="stylesheet" type="text/css"/>
|
||||
<link href="../css/style.css" rel="stylesheet" type="text/css"/>
|
||||
<script src="../js/report.js" type="text/javascript"></script>
|
||||
</head>
|
||||
<body>
|
||||
<div id="content">
|
||||
<div class="breadcrumbs">
|
||||
<a class="breadcrumb" href="../index.html">all</a> >
|
||||
<a class="breadcrumb" href="index.html">com.project.auth.AuthenticatedUserResourceServerIntegrationTest</a> >
|
||||
<span class="breadcrumb">me_returns_403_when_token_has_no_user_realm_role()</span>
|
||||
</div>
|
||||
<div class="tab-container">
|
||||
<ul class="tabLinks">
|
||||
<li>
|
||||
<a class="successGroup" href="#">Gradle Test Run :bootstrap:test</a>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="tab">
|
||||
<h2>Gradle Test Run :bootstrap:test</h2>
|
||||
<h1>me_returns_403_when_token_has_no_user_realm_role()</h1>
|
||||
<div class="tab-container">
|
||||
<ul class="tabLinks">
|
||||
<li>
|
||||
<a class="" href="#">summary</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="" href="#">standard output</a>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="tab">
|
||||
<h2>summary</h2>
|
||||
<div>
|
||||
<div class="summary">
|
||||
<table>
|
||||
<tr>
|
||||
<td>
|
||||
<div class="summaryGroup">
|
||||
<table>
|
||||
<tr>
|
||||
<td>
|
||||
<div class="infoBox">
|
||||
<div class="counter">1</div>
|
||||
<p>tests</p>
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox">
|
||||
<div class="counter">0</div>
|
||||
<p>failures</p>
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox">
|
||||
<div class="counter">0</div>
|
||||
<p>skipped</p>
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox duration">
|
||||
<div class="counter">0.288s</div>
|
||||
<p>duration</p>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox success successRate">
|
||||
<div class="percent">100%</div>
|
||||
<p>successful</p>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="tab">
|
||||
<h2>standard output</h2>
|
||||
<span class="code">
|
||||
<pre id="root-0-test-stdout-me_returns_403_when_token_has_no_user_realm_role()">2026-05-12T15:59:41.103+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] org.hibernate.SQL : select uje1_0.id,uje1_0.created_at,uje1_0.email,uje1_0.name,uje1_0.provider,uje1_0.provider_subject,uje1_0.updated_at from auth.users uje1_0
|
||||
2026-05-12T15:59:41.134+09:00 INFO 3742337 --- [ Test worker] [traceId=] o.s.b.t.m.w.SpringBootMockServletContext : Initializing Spring TestDispatcherServlet ''
|
||||
2026-05-12T15:59:41.135+09:00 INFO 3742337 --- [ Test worker] [traceId=] o.s.t.web.servlet.TestDispatcherServlet : Initializing Servlet ''
|
||||
2026-05-12T15:59:41.136+09:00 INFO 3742337 --- [ Test worker] [traceId=] o.s.t.web.servlet.TestDispatcherServlet : Completed initialization in 1 ms
|
||||
2026-05-12T15:59:41.148+09:00 WARN 3742337 --- [ Test worker] [traceId=] c.p.a.c.a.s.SecurityAuditTrailWriter : Access denied. actorId=sha256:8013ed33ef1dd6f2 method=GET requestPath=/api/v1/auth/me
|
||||
2026-05-12T15:59:41.150+09:00 WARN 3742337 --- [ Test worker] [traceId=] audit.auth : ACCESS_DENIED eventType="ACCESS_DENIED" actorId="sha256:8013ed33ef1dd6f2" method="GET" requestPath="/api/v1/auth/me"
|
||||
2026-05-12T15:59:41.151+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] .m.m.a.ExceptionHandlerExceptionResolver : Using @ExceptionHandler com.project.auth.config.web.SecurityResponseExceptionHandler#handleAccessDeniedException(AccessDeniedException, HttpServletRequest)
|
||||
2026-05-12T15:59:41.151+09:00 WARN 3742337 --- [ Test worker] [traceId=] p.a.c.w.SecurityResponseExceptionHandler : Access denied for authenticated principal. exceptionType=AuthorizationDeniedException method=GET requestPath=/api/v1/auth/me errorCode=AUTH-002
|
||||
2026-05-12T15:59:41.152+09:00 WARN 3742337 --- [ Test worker] [traceId=] c.p.a.c.a.s.SecurityAuditTrailWriter : Access denied. actorId=sha256:8013ed33ef1dd6f2 method=GET requestPath=/api/v1/auth/me
|
||||
2026-05-12T15:59:41.152+09:00 WARN 3742337 --- [ Test worker] [traceId=] audit.auth : ACCESS_DENIED eventType="ACCESS_DENIED" actorId="sha256:8013ed33ef1dd6f2" method="GET" requestPath="/api/v1/auth/me"
|
||||
2026-05-12T15:59:41.159+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] o.s.w.s.m.m.a.HttpEntityMethodProcessor : Using 'application/json', given [*/*] and supported [application/json, application/*+json, application/yaml]
|
||||
2026-05-12T15:59:41.160+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] o.s.w.s.m.m.a.HttpEntityMethodProcessor : Writing [ApiResult[success=false, code=AUTH-002, message=접근 권한이 없습니다., data=null, errors=null, traceId=-, tim (truncated)...]
|
||||
2026-05-12T15:59:41.162+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] .m.m.a.ExceptionHandlerExceptionResolver : Resolved [org.springframework.security.authorization.AuthorizationDeniedException: Access Denied]
|
||||
</pre>
|
||||
<button class="clipboard-copy-btn" aria-label="Copy to clipboard" data-copy-element-id="root-0-test-stdout-me_returns_403_when_token_has_no_user_realm_role()">Copy</button>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="footer">
|
||||
<p>
|
||||
<div>
|
||||
<label class="hidden" id="label-for-line-wrapping-toggle" for="line-wrapping-toggle">Wrap lines
|
||||
<input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/>
|
||||
</label>
|
||||
</div>Generated by
|
||||
<a href="https://www.gradle.org">Gradle 9.3.1</a> at May 12, 2026, 3:59:51 PM</p>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
+121
@@ -0,0 +1,121 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
|
||||
<meta http-equiv="x-ua-compatible" content="IE=edge"/>
|
||||
<title>Test results - me_returns_409_when_subject_is_not_found_but_same_email_exists()</title>
|
||||
<link href="../css/base-style.css" rel="stylesheet" type="text/css"/>
|
||||
<link href="../css/style.css" rel="stylesheet" type="text/css"/>
|
||||
<script src="../js/report.js" type="text/javascript"></script>
|
||||
</head>
|
||||
<body>
|
||||
<div id="content">
|
||||
<div class="breadcrumbs">
|
||||
<a class="breadcrumb" href="../index.html">all</a> >
|
||||
<a class="breadcrumb" href="index.html">com.project.auth.AuthenticatedUserResourceServerIntegrationTest</a> >
|
||||
<span class="breadcrumb">me_returns_409_when_subject_is_not_found_but_same_email_exists()</span>
|
||||
</div>
|
||||
<div class="tab-container">
|
||||
<ul class="tabLinks">
|
||||
<li>
|
||||
<a class="successGroup" href="#">Gradle Test Run :bootstrap:test</a>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="tab">
|
||||
<h2>Gradle Test Run :bootstrap:test</h2>
|
||||
<h1>me_returns_409_when_subject_is_not_found_but_same_email_exists()</h1>
|
||||
<div class="tab-container">
|
||||
<ul class="tabLinks">
|
||||
<li>
|
||||
<a class="" href="#">summary</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="" href="#">standard output</a>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="tab">
|
||||
<h2>summary</h2>
|
||||
<div>
|
||||
<div class="summary">
|
||||
<table>
|
||||
<tr>
|
||||
<td>
|
||||
<div class="summaryGroup">
|
||||
<table>
|
||||
<tr>
|
||||
<td>
|
||||
<div class="infoBox">
|
||||
<div class="counter">1</div>
|
||||
<p>tests</p>
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox">
|
||||
<div class="counter">0</div>
|
||||
<p>failures</p>
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox">
|
||||
<div class="counter">0</div>
|
||||
<p>skipped</p>
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox duration">
|
||||
<div class="counter">0.642s</div>
|
||||
<p>duration</p>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox success successRate">
|
||||
<div class="percent">100%</div>
|
||||
<p>successful</p>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="tab">
|
||||
<h2>standard output</h2>
|
||||
<span class="code">
|
||||
<pre id="root-0-test-stdout-me_returns_409_when_subject_is_not_found_but_same_email_exists()">2026-05-12T15:59:41.170+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] org.hibernate.SQL : select uje1_0.id,uje1_0.created_at,uje1_0.email,uje1_0.name,uje1_0.provider,uje1_0.provider_subject,uje1_0.updated_at from auth.users uje1_0
|
||||
2026-05-12T15:59:41.172+09:00 INFO 3742337 --- [ Test worker] [traceId=] o.s.b.t.m.w.SpringBootMockServletContext : Initializing Spring TestDispatcherServlet ''
|
||||
2026-05-12T15:59:41.172+09:00 INFO 3742337 --- [ Test worker] [traceId=] o.s.t.web.servlet.TestDispatcherServlet : Initializing Servlet ''
|
||||
2026-05-12T15:59:41.173+09:00 INFO 3742337 --- [ Test worker] [traceId=] o.s.t.web.servlet.TestDispatcherServlet : Completed initialization in 1 ms
|
||||
2026-05-12T15:59:41.190+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] org.hibernate.SQL : select uje1_0.id,uje1_0.created_at,uje1_0.email,uje1_0.name,uje1_0.provider,uje1_0.provider_subject,uje1_0.updated_at from auth.users uje1_0 where uje1_0.id=?
|
||||
2026-05-12T15:59:41.230+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] org.hibernate.SQL : insert into auth.users (created_at,email,name,provider,provider_subject,id) values (?,?,?,?,?,?)
|
||||
2026-05-12T15:59:41.240+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped to com.project.auth.presentation.auth.controller.AuthenticatedUserController#me(AuthenticatedUser)
|
||||
2026-05-12T15:59:41.631+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] org.hibernate.SQL : select uje1_0.id,uje1_0.created_at,uje1_0.email,uje1_0.name,uje1_0.provider,uje1_0.provider_subject,uje1_0.updated_at from auth.users uje1_0 where uje1_0.provider=? and uje1_0.provider_subject=?
|
||||
2026-05-12T15:59:41.647+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] org.hibernate.SQL : select uje1_0.id from auth.users uje1_0 where uje1_0.email=? fetch first ? rows only
|
||||
2026-05-12T15:59:41.658+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] .m.m.a.ExceptionHandlerExceptionResolver : Using @ExceptionHandler com.project.auth.presentation.support.exception.ApplicationExceptionHandler#handleBusinessException(BusinessException, HttpServletRequest)
|
||||
2026-05-12T15:59:41.658+09:00 WARN 3742337 --- [ Test worker] [traceId=] c.p.a.p.s.e.ApplicationExceptionHandler : Business exception. exceptionType=KeycloakAccountConflictException errorCode=AUTH-005 method=GET requestPath=/api/v1/auth/me
|
||||
2026-05-12T15:59:41.659+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] o.s.w.s.m.m.a.HttpEntityMethodProcessor : Using 'application/json', given [*/*] and supported [application/json, application/*+json, application/yaml]
|
||||
2026-05-12T15:59:41.660+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] o.s.w.s.m.m.a.HttpEntityMethodProcessor : Writing [ApiResult[success=false, code=AUTH-005, message=Keycloak 계정과 연결할 수 없는 내부 사용자 정보입니다., data=null, erro (truncated)...]
|
||||
2026-05-12T15:59:41.661+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] .m.m.a.ExceptionHandlerExceptionResolver : Resolved [com.project.auth.application.auth.exception.KeycloakAccountConflictException: Keycloak 계정과 연결할 수 없는 내부 사용자 정보입니다.]
|
||||
2026-05-12T15:59:41.691+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] org.hibernate.SQL : select count(*) from auth.users uje1_0
|
||||
</pre>
|
||||
<button class="clipboard-copy-btn" aria-label="Copy to clipboard" data-copy-element-id="root-0-test-stdout-me_returns_409_when_subject_is_not_found_but_same_email_exists()">Copy</button>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="footer">
|
||||
<p>
|
||||
<div>
|
||||
<label class="hidden" id="label-for-line-wrapping-toggle" for="line-wrapping-toggle">Wrap lines
|
||||
<input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/>
|
||||
</label>
|
||||
</div>Generated by
|
||||
<a href="https://www.gradle.org">Gradle 9.3.1</a> at May 12, 2026, 3:59:51 PM</p>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
+118
@@ -0,0 +1,118 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
|
||||
<meta http-equiv="x-ua-compatible" content="IE=edge"/>
|
||||
<title>Test results - me_reuses_existing_internal_user_when_subject_already_synchronized()</title>
|
||||
<link href="../css/base-style.css" rel="stylesheet" type="text/css"/>
|
||||
<link href="../css/style.css" rel="stylesheet" type="text/css"/>
|
||||
<script src="../js/report.js" type="text/javascript"></script>
|
||||
</head>
|
||||
<body>
|
||||
<div id="content">
|
||||
<div class="breadcrumbs">
|
||||
<a class="breadcrumb" href="../index.html">all</a> >
|
||||
<a class="breadcrumb" href="index.html">com.project.auth.AuthenticatedUserResourceServerIntegrationTest</a> >
|
||||
<span class="breadcrumb">me_reuses_existing_internal_user_when_subject_already_synchronized()</span>
|
||||
</div>
|
||||
<div class="tab-container">
|
||||
<ul class="tabLinks">
|
||||
<li>
|
||||
<a class="successGroup" href="#">Gradle Test Run :bootstrap:test</a>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="tab">
|
||||
<h2>Gradle Test Run :bootstrap:test</h2>
|
||||
<h1>me_reuses_existing_internal_user_when_subject_already_synchronized()</h1>
|
||||
<div class="tab-container">
|
||||
<ul class="tabLinks">
|
||||
<li>
|
||||
<a class="" href="#">summary</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="" href="#">standard output</a>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="tab">
|
||||
<h2>summary</h2>
|
||||
<div>
|
||||
<div class="summary">
|
||||
<table>
|
||||
<tr>
|
||||
<td>
|
||||
<div class="summaryGroup">
|
||||
<table>
|
||||
<tr>
|
||||
<td>
|
||||
<div class="infoBox">
|
||||
<div class="counter">1</div>
|
||||
<p>tests</p>
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox">
|
||||
<div class="counter">0</div>
|
||||
<p>failures</p>
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox">
|
||||
<div class="counter">0</div>
|
||||
<p>skipped</p>
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox duration">
|
||||
<div class="counter">0.053s</div>
|
||||
<p>duration</p>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<div class="infoBox success successRate">
|
||||
<div class="percent">100%</div>
|
||||
<p>successful</p>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="tab">
|
||||
<h2>standard output</h2>
|
||||
<span class="code">
|
||||
<pre id="root-0-test-stdout-me_reuses_existing_internal_user_when_subject_already_synchronized()">2026-05-12T15:59:41.814+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] org.hibernate.SQL : select uje1_0.id,uje1_0.created_at,uje1_0.email,uje1_0.name,uje1_0.provider,uje1_0.provider_subject,uje1_0.updated_at from auth.users uje1_0
|
||||
2026-05-12T15:59:41.826+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] org.hibernate.SQL : delete from auth.users where id=?
|
||||
2026-05-12T15:59:41.829+09:00 INFO 3742337 --- [ Test worker] [traceId=] o.s.b.t.m.w.SpringBootMockServletContext : Initializing Spring TestDispatcherServlet ''
|
||||
2026-05-12T15:59:41.829+09:00 INFO 3742337 --- [ Test worker] [traceId=] o.s.t.web.servlet.TestDispatcherServlet : Initializing Servlet ''
|
||||
2026-05-12T15:59:41.830+09:00 INFO 3742337 --- [ Test worker] [traceId=] o.s.t.web.servlet.TestDispatcherServlet : Completed initialization in 1 ms
|
||||
2026-05-12T15:59:41.832+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] org.hibernate.SQL : select uje1_0.id,uje1_0.created_at,uje1_0.email,uje1_0.name,uje1_0.provider,uje1_0.provider_subject,uje1_0.updated_at from auth.users uje1_0 where uje1_0.id=?
|
||||
2026-05-12T15:59:41.833+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] org.hibernate.SQL : insert into auth.users (created_at,email,name,provider,provider_subject,id) values (?,?,?,?,?,?)
|
||||
2026-05-12T15:59:41.837+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped to com.project.auth.presentation.auth.controller.AuthenticatedUserController#me(AuthenticatedUser)
|
||||
2026-05-12T15:59:41.839+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] org.hibernate.SQL : select uje1_0.id,uje1_0.created_at,uje1_0.email,uje1_0.name,uje1_0.provider,uje1_0.provider_subject,uje1_0.updated_at from auth.users uje1_0 where uje1_0.provider=? and uje1_0.provider_subject=?
|
||||
2026-05-12T15:59:41.844+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] m.m.a.RequestResponseBodyMethodProcessor : Using 'application/json', given [*/*] and supported [application/json, application/*+json, application/yaml]
|
||||
2026-05-12T15:59:41.847+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] m.m.a.RequestResponseBodyMethodProcessor : Writing [ApiResult[success=true, code=AUTHENTICATED_USER_LOADED, message=현재 사용자 조회가 완료되었습니다., data=Authentica (truncated)...]
|
||||
2026-05-12T15:59:41.860+09:00 DEBUG 3742337 --- [ Test worker] [traceId=] org.hibernate.SQL : select count(*) from auth.users uje1_0
|
||||
</pre>
|
||||
<button class="clipboard-copy-btn" aria-label="Copy to clipboard" data-copy-element-id="root-0-test-stdout-me_reuses_existing_internal_user_when_subject_already_synchronized()">Copy</button>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="footer">
|
||||
<p>
|
||||
<div>
|
||||
<label class="hidden" id="label-for-line-wrapping-toggle" for="line-wrapping-toggle">Wrap lines
|
||||
<input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/>
|
||||
</label>
|
||||
</div>Generated by
|
||||
<a href="https://www.gradle.org">Gradle 9.3.1</a> at May 12, 2026, 3:59:51 PM</p>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user