generated from pricelees/issue-pr-template
feat: 관리자 생성시 type, storeId 충돌 해결 및 반환 타입 수정
This commit is contained in:
parent
522d64cc8a
commit
4a30cc8c14
@ -9,6 +9,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.admin.infrastructure.persistence.AdminType
|
||||
import roomescape.auth.web.LoginRequest
|
||||
import roomescape.common.dto.PrincipalType
|
||||
import roomescape.store.infrastructure.persistence.StoreRepository
|
||||
@ -24,16 +25,23 @@ class TestAuthUtil(
|
||||
fun createAdmin(admin: AdminEntity): AdminEntity {
|
||||
println("[TestAuthUtil] 관리자 생성 시작. id=${admin.id}")
|
||||
|
||||
if (adminRepository.findByIdOrNull(admin.id) != null) {
|
||||
println("[TestAuthUtil] 관리자 존재. 생성 종료: id=${admin.id}")
|
||||
return admin
|
||||
}
|
||||
|
||||
val storeId = admin.storeId
|
||||
if (storeId != null && storeRepository.findByIdOrNull(storeId) == null) {
|
||||
println("[TestAuthUtil] 매장 정보 없음. 매장 생성 시작. storeId=${storeId} adminId=${admin.id}")
|
||||
storeRepository.save(
|
||||
StoreFixture.create(
|
||||
id = storeId,
|
||||
businessRegNum = randomBusinessRegNum(),
|
||||
)
|
||||
).also {
|
||||
println("[TestAuthUtil] 매장 생성 완료. storeId=${storeId} adminId=${admin.id}")
|
||||
if (admin.type == AdminType.STORE) {
|
||||
if (storeRepository.findByIdOrNull(storeId!!) == null) {
|
||||
println("[TestAuthUtil] 매장 정보 없음. 매장 생성 시작. storeId=${storeId} adminId=${admin.id}")
|
||||
storeRepository.save(
|
||||
StoreFixture.create(
|
||||
id = storeId,
|
||||
businessRegNum = randomBusinessRegNum(),
|
||||
)
|
||||
).also {
|
||||
println("[TestAuthUtil] 매장 생성 완료. storeId=${storeId} adminId=${admin.id}")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -60,10 +68,11 @@ class TestAuthUtil(
|
||||
?: throw AssertionError("Unexpected Exception Occurred.")
|
||||
}
|
||||
|
||||
fun adminLogin(admin: AdminEntity): String {
|
||||
fun adminLogin(admin: AdminEntity): Pair<AdminEntity, String> {
|
||||
println("[TestAuthUtil] 관리자 로그인 시작. id=${admin.id}, account=${admin.account}")
|
||||
val saved = createAdmin(admin)
|
||||
val requestBody = LoginRequest(saved.account, saved.password, PrincipalType.ADMIN)
|
||||
createAdmin(admin)
|
||||
|
||||
val requestBody = LoginRequest(admin.account, admin.password, PrincipalType.ADMIN)
|
||||
|
||||
val token: String = Given {
|
||||
contentType(MediaType.APPLICATION_JSON_VALUE)
|
||||
@ -76,11 +85,11 @@ class TestAuthUtil(
|
||||
path("data.accessToken")
|
||||
}
|
||||
|
||||
return token.also { println("[TestAuthUtil] 관리자 로그인 완료. id=${admin.id}, account=${admin.account}") }
|
||||
return admin to token.also { println("[TestAuthUtil] 관리자 로그인 완료. id=${admin.id}, account=${admin.account}") }
|
||||
}
|
||||
|
||||
fun defaultStoreAdminLogin(): String = adminLogin(AdminFixture.storeDefault)
|
||||
fun defaultHqAdminLogin(): String = adminLogin(AdminFixture.hqDefault)
|
||||
fun defaultStoreAdminLogin(): Pair<AdminEntity, String> = adminLogin(AdminFixture.storeDefault)
|
||||
fun defaultHqAdminLogin(): Pair<AdminEntity, String> = adminLogin(AdminFixture.hqDefault)
|
||||
|
||||
fun userLogin(user: UserEntity): String {
|
||||
println("[TestAuthUtil] 회원 로그인 시작. id=${user.id}, email=${user.email}")
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user