feat: 테스트용 AuthUtil에 관리자 & 회원 생성 기능 추가

This commit is contained in:
이상진 2025-09-12 20:57:11 +09:00
parent 3f74206985
commit 2e52785f7a

View File

@ -7,6 +7,8 @@ import io.restassured.module.kotlin.extensions.When
import io.restassured.response.Response
import io.restassured.response.ValidatableResponse
import io.restassured.specification.RequestSpecification
import org.springframework.data.repository.findByIdOrNull
import org.springframework.http.HttpStatus
import org.springframework.http.MediaType
import roomescape.admin.infrastructure.persistence.AdminEntity
import roomescape.admin.infrastructure.persistence.AdminRepository
@ -15,6 +17,8 @@ import roomescape.auth.web.LoginRequestV2
import roomescape.common.config.next
import roomescape.common.dto.PrincipalType
import roomescape.member.infrastructure.persistence.*
import roomescape.member.web.UserCreateRequest
import roomescape.member.web.toEntity
class AuthUtil(
private val memberRepository: MemberRepository,
@ -59,7 +63,25 @@ class AuthUtil(
MemberFixture.user.password
) ?: throw AssertionError("Unexpected Exception Occurred.")
fun createAdmin(admin: AdminEntity): AdminEntity {
return adminRepository.save(admin)
}
fun signup(request: UserCreateRequest): UserEntity {
val userId: Long = Given {
contentType(MediaType.APPLICATION_JSON_VALUE)
body(request)
} When {
post("/users")
} Then {
statusCode(HttpStatus.OK.value())
} Extract {
path("data.id")
}
return userRepository.findByIdOrNull(userId)
?: throw AssertionError("Unexpected Exception Occurred.")
}
fun adminLogin(admin: AdminEntity): String {
if (adminRepository.findByAccount(admin.account) == null) {