From fe8bf73e6e57dc9e89aedcd62229983c5bf5d59d Mon Sep 17 00:00:00 2001 From: Klaus Date: Fri, 19 Jun 2026 05:34:35 +0900 Subject: [PATCH] =?UTF-8?q?fix(audition):=20=EC=84=B1=EC=9D=B8=20=EC=97=AC?= =?UTF-8?q?=EB=B6=80=20=EC=A1=B0=ED=9A=8C=20=EA=B8=B0=EC=A4=80=EC=9D=84=20?= =?UTF-8?q?=EC=9D=B8=EC=A6=9D=20=EC=A0=80=EC=9E=A5=EC=86=8C=EB=A1=9C=20?= =?UTF-8?q?=EB=B3=80=EA=B2=BD=ED=95=9C=EB=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sodalive/audition/AuditionController.kt | 2 +- .../sodalive/audition/AuditionService.kt | 9 +++++- .../sodalive/audition/AuditionServiceTest.kt | 28 +++++++++++++++++++ 3 files changed, 37 insertions(+), 2 deletions(-) create mode 100644 src/test/kotlin/kr/co/vividnext/sodalive/audition/AuditionServiceTest.kt diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/audition/AuditionController.kt b/src/main/kotlin/kr/co/vividnext/sodalive/audition/AuditionController.kt index f1579d74..790b588b 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/audition/AuditionController.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/audition/AuditionController.kt @@ -22,7 +22,7 @@ class AuditionController(private val service: AuditionService) { service.getAuditionList( offset = pageable.offset, limit = pageable.pageSize.toLong(), - isAdult = member?.auth != null + memberId = member?.id ) ) } diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/audition/AuditionService.kt b/src/main/kotlin/kr/co/vividnext/sodalive/audition/AuditionService.kt index 7871bcd0..ff9bef94 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/audition/AuditionService.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/audition/AuditionService.kt @@ -1,12 +1,14 @@ package kr.co.vividnext.sodalive.audition import kr.co.vividnext.sodalive.audition.role.AuditionRoleRepository +import kr.co.vividnext.sodalive.member.auth.AuthRepository import org.springframework.stereotype.Service @Service class AuditionService( private val repository: AuditionRepository, - private val roleRepository: AuditionRoleRepository + private val roleRepository: AuditionRoleRepository, + private val authRepository: AuthRepository ) { fun getAuditionList(offset: Long, limit: Long, isAdult: Boolean): GetAuditionListResponse { val inProgressCount = repository.getInProgressAuditionCount(isAdult = isAdult) @@ -16,6 +18,11 @@ class AuditionService( return GetAuditionListResponse(inProgressCount, completedCount, items) } + fun getAuditionList(offset: Long, limit: Long, memberId: Long?): GetAuditionListResponse { + val isAdult = memberId?.let { authRepository.getAuthIdByMemberId(it) != null } ?: false + return getAuditionList(offset = offset, limit = limit, isAdult = isAdult) + } + fun getAuditionDetail(auditionId: Long): GetAuditionDetailResponse { val auditionDetail = repository.getAuditionDetail(auditionId = auditionId) val roleList = roleRepository.getAuditionRoleListByAuditionId(auditionId = auditionId) diff --git a/src/test/kotlin/kr/co/vividnext/sodalive/audition/AuditionServiceTest.kt b/src/test/kotlin/kr/co/vividnext/sodalive/audition/AuditionServiceTest.kt new file mode 100644 index 00000000..d46adf00 --- /dev/null +++ b/src/test/kotlin/kr/co/vividnext/sodalive/audition/AuditionServiceTest.kt @@ -0,0 +1,28 @@ +package kr.co.vividnext.sodalive.audition + +import kr.co.vividnext.sodalive.audition.role.AuditionRoleRepository +import kr.co.vividnext.sodalive.member.auth.AuthRepository +import org.junit.jupiter.api.Test +import org.mockito.Mockito + +class AuditionServiceTest { + private val repository = Mockito.mock(AuditionRepository::class.java) + private val authRepository = Mockito.mock(AuthRepository::class.java) + private val service = AuditionService( + repository = repository, + roleRepository = Mockito.mock(AuditionRoleRepository::class.java), + authRepository = authRepository + ) + + @Test + fun shouldResolveAdultFlagFromAuthRepositoryForAuditionList() { + Mockito.`when`(authRepository.getAuthIdByMemberId(10L)).thenReturn(100L) + Mockito.`when`(repository.getInProgressAuditionCount(true)).thenReturn(1) + Mockito.`when`(repository.getCompletedAuditionCount(true)).thenReturn(2) + Mockito.`when`(repository.getAuditionList(0L, 20L, true)).thenReturn(emptyList()) + + service.getAuditionList(offset = 0L, limit = 20L, memberId = 10L) + + Mockito.verify(repository).getAuditionList(0L, 20L, true) + } +}