[#34] 회원 / 인증 도메인 재정의 #43

Merged
pricelees merged 73 commits from refactor/#34 into main 2025-09-13 10:13:45 +00:00
7 changed files with 20 additions and 20 deletions
Showing only changes of commit 041e8d157d - Show all commits

View File

@ -9,7 +9,7 @@ import roomescape.auth.exception.AuthErrorCode
import roomescape.auth.exception.AuthException
import roomescape.auth.infrastructure.jwt.JwtUtils
import roomescape.auth.web.LoginContext
import roomescape.auth.web.LoginRequestV2
import roomescape.auth.web.LoginRequest
import roomescape.auth.web.LoginSuccessResponse
import roomescape.common.dto.CurrentUserContext
import roomescape.common.dto.LoginCredentials
@ -30,7 +30,7 @@ class AuthService(
) {
@Transactional(readOnly = true)
fun login(
request: LoginRequestV2,
request: LoginRequest,
context: LoginContext
): LoginSuccessResponse {
log.info { "[AuthService.login] 로그인 시작: account=${request.account}, type=${request.principalType}, context=${context}" }
@ -83,7 +83,7 @@ class AuthService(
}
private fun verifyPasswordOrThrow(
request: LoginRequestV2,
request: LoginRequest,
credentials: LoginCredentials
) {
if (credentials.password != request.password) {
@ -92,7 +92,7 @@ class AuthService(
}
}
private fun getCredentials(request: LoginRequestV2): Pair<LoginCredentials, Map<String, Any>> {
private fun getCredentials(request: LoginRequest): Pair<LoginCredentials, Map<String, Any>> {
val extraClaims: MutableMap<String, Any> = mutableMapOf()
val credentials: LoginCredentials = when (request.principalType) {
PrincipalType.ADMIN -> {

View File

@ -9,7 +9,7 @@ import jakarta.servlet.http.HttpServletResponse
import jakarta.validation.Valid
import org.springframework.http.ResponseEntity
import org.springframework.web.bind.annotation.RequestBody
import roomescape.auth.web.LoginRequestV2
import roomescape.auth.web.LoginRequest
import roomescape.auth.web.LoginSuccessResponse
import roomescape.auth.web.support.CurrentUser
import roomescape.auth.web.support.Public
@ -25,7 +25,7 @@ interface AuthAPI {
ApiResponse(responseCode = "200", description = "로그인 성공시 토큰을 반환합니다."),
)
fun login(
@Valid @RequestBody loginRequest: LoginRequestV2,
@Valid @RequestBody loginRequest: LoginRequest,
servletRequest: HttpServletRequest
): ResponseEntity<CommonApiResponse<LoginSuccessResponse>>

View File

@ -21,7 +21,7 @@ class AuthController(
@PostMapping("/login")
override fun login(
loginRequest: LoginRequestV2,
loginRequest: LoginRequest,
servletRequest: HttpServletRequest
): ResponseEntity<CommonApiResponse<LoginSuccessResponse>> {
val response = authService.login(request = loginRequest, context = servletRequest.toLoginContext())

View File

@ -13,7 +13,7 @@ fun HttpServletRequest.toLoginContext() = LoginContext(
userAgent = this.getHeader("User-Agent")
)
data class LoginRequestV2(
data class LoginRequest(
val account: String,
val password: String,
val principalType: PrincipalType

View File

@ -14,7 +14,7 @@ import roomescape.auth.business.CLAIM_PERMISSION_KEY
import roomescape.auth.exception.AuthErrorCode
import roomescape.auth.infrastructure.jwt.JwtUtils
import roomescape.auth.infrastructure.persistence.LoginHistoryRepository
import roomescape.auth.web.LoginRequestV2
import roomescape.auth.web.LoginRequest
import roomescape.common.dto.PrincipalType
import roomescape.member.exception.UserErrorCode
import roomescape.member.infrastructure.persistence.UserEntity
@ -63,7 +63,7 @@ class AuthApiTest(
context("실패 응답") {
test("비밀번호가 틀린 경우") {
val admin = authUtil.createAdmin(AdminFixture.default)
val request = LoginRequestV2(admin.account, "wrong_password", PrincipalType.ADMIN)
val request = LoginRequest(admin.account, "wrong_password", PrincipalType.ADMIN)
runTest(
using = {
@ -86,7 +86,7 @@ class AuthApiTest(
test("토큰 생성 과정에서 오류가 발생하는 경우") {
val admin = authUtil.createAdmin(AdminFixture.default)
val request = LoginRequestV2(admin.account, admin.password, PrincipalType.ADMIN)
val request = LoginRequest(admin.account, admin.password, PrincipalType.ADMIN)
every {
jwtUtils.createToken(any(), any())
@ -118,7 +118,7 @@ class AuthApiTest(
it shouldNotBe user.email
}
val request = LoginRequestV2(invalidEmail, user.password, PrincipalType.USER)
val request = LoginRequest(invalidEmail, user.password, PrincipalType.USER)
runTest(
using = {
@ -142,7 +142,7 @@ class AuthApiTest(
it shouldNotBe admin.account
}
val request = LoginRequestV2(invalidAccount, admin.password, PrincipalType.ADMIN)
val request = LoginRequest(invalidAccount, admin.password, PrincipalType.ADMIN)
runTest(
using = {
@ -204,7 +204,7 @@ class AuthApiTest(
type: PrincipalType,
extraAssertions: ((ValidatableResponse) -> Unit)? = null
) {
val request = LoginRequestV2(account, password, type)
val request = LoginRequest(account, password, type)
runTest(
using = {

View File

@ -5,7 +5,7 @@ import io.mockk.clearMocks
import io.mockk.every
import org.springframework.http.HttpStatus
import roomescape.auth.infrastructure.persistence.LoginHistoryRepository
import roomescape.auth.web.LoginRequestV2
import roomescape.auth.web.LoginRequest
import roomescape.common.dto.PrincipalType
import roomescape.supports.AdminFixture
import roomescape.supports.FunSpecSpringbootTest
@ -28,7 +28,7 @@ class FailOnSaveLoginHistoryTest(
test("회원") {
val user = authUtil.signup(UserFixture.createRequest)
val request = LoginRequestV2(user.email, user.password, PrincipalType.USER)
val request = LoginRequest(user.email, user.password, PrincipalType.USER)
runTest(
using = {
@ -45,7 +45,7 @@ class FailOnSaveLoginHistoryTest(
test("관리자") {
val admin = authUtil.createAdmin(AdminFixture.default)
val request = LoginRequestV2(admin.account, admin.password, PrincipalType.ADMIN)
val request = LoginRequest(admin.account, admin.password, PrincipalType.ADMIN)
runTest(
using = {

View File

@ -14,7 +14,7 @@ import org.springframework.http.HttpStatus
import org.springframework.http.MediaType
import roomescape.admin.infrastructure.persistence.AdminEntity
import roomescape.admin.infrastructure.persistence.AdminRepository
import roomescape.auth.web.LoginRequestV2
import roomescape.auth.web.LoginRequest
import roomescape.common.dto.PrincipalType
import roomescape.common.exception.ErrorCode
import roomescape.member.infrastructure.persistence.UserEntity
@ -49,7 +49,7 @@ class AuthUtil(
if (adminRepository.findByAccount(admin.account) == null) {
adminRepository.save(admin)
}
val requestBody = LoginRequestV2(admin.account, admin.password, PrincipalType.ADMIN)
val requestBody = LoginRequest(admin.account, admin.password, PrincipalType.ADMIN)
return Given {
contentType(MediaType.APPLICATION_JSON_VALUE)
@ -72,7 +72,7 @@ class AuthUtil(
return Given {
contentType(MediaType.APPLICATION_JSON_VALUE)
body(LoginRequestV2(account = user.email, password = user.password, principalType = PrincipalType.USER))
body(LoginRequest(account = user.email, password = user.password, principalType = PrincipalType.USER))
} When {
post("/auth/login")
} Then {