test(series-banner): 시리즈 배너 lazy 회귀 검증을 추가한다

This commit is contained in:
2026-06-29 16:36:19 +09:00
parent 6d371bb356
commit 6b1ac9778e
3 changed files with 226 additions and 36 deletions
@@ -1,11 +1,10 @@
package kr.co.vividnext.sodalive.content.series.main
import kr.co.vividnext.sodalive.admin.content.series.banner.dto.SeriesBannerResponse
import kr.co.vividnext.sodalive.content.ContentType
import kr.co.vividnext.sodalive.content.series.ContentSeriesService
import kr.co.vividnext.sodalive.content.series.GetSeriesListResponse
import kr.co.vividnext.sodalive.content.series.main.banner.ContentSeriesBannerService
import kr.co.vividnext.sodalive.content.series.main.banner.SeriesBanner
import kr.co.vividnext.sodalive.creator.admin.content.series.Series
import kr.co.vividnext.sodalive.i18n.Lang
import kr.co.vividnext.sodalive.i18n.LangContext
import kr.co.vividnext.sodalive.member.Member
@@ -15,7 +14,6 @@ import org.junit.jupiter.api.Assertions.assertEquals
import org.junit.jupiter.api.Assertions.assertTrue
import org.junit.jupiter.api.Test
import org.mockito.Mockito
import org.springframework.data.domain.PageImpl
import org.springframework.data.domain.PageRequest
class SeriesMainControllerTest {
@@ -41,18 +39,16 @@ class SeriesMainControllerTest {
isAdult = true
)
val pageable = PageRequest.of(0, 10)
val japaneseBanner = SeriesBanner(
imagePath = "banner/jp.png",
series = createSeries(id = 10L),
sortOrder = 1,
lang = Lang.JA
).also {
it.id = 100L
}
val japaneseBanner = SeriesBannerResponse(
id = 100L,
imagePath = "https://cdn.test/banner/jp.png",
seriesId = 10L,
seriesTitle = "series-10"
)
Mockito.`when`(memberContentPreferenceService.resolveForQuery(member)).thenReturn(preference)
Mockito.`when`(bannerService.getDisplayBanners(pageable, Lang.JA))
.thenReturn(PageImpl(listOf(japaneseBanner), pageable, 1))
Mockito.`when`(bannerService.getDisplayBannerResponses(pageable, Lang.JA, "https://cdn.test"))
.thenReturn(listOf(japaneseBanner))
Mockito.`when`(
contentSeriesService.getSeriesList(
null,
@@ -79,8 +75,8 @@ class SeriesMainControllerTest {
assertTrue(response.success)
assertEquals(1, response.data?.banners?.size)
assertEquals("series-10", response.data?.banners?.first()?.seriesTitle)
Mockito.verify(bannerService).getDisplayBanners(pageable, Lang.JA)
Mockito.verify(bannerService, Mockito.never()).getActiveBanners(pageable)
Mockito.verify(bannerService).getDisplayBannerResponses(pageable, Lang.JA, "https://cdn.test")
Mockito.verify(bannerService, Mockito.never()).getActiveBanners(pageable, "https://cdn.test")
}
private fun createMember(id: Long): Member {
@@ -92,14 +88,4 @@ class SeriesMainControllerTest {
it.id = id
}
}
private fun createSeries(id: Long): Series {
return Series(
title = "series-$id",
introduction = "introduction-$id",
languageCode = "ja"
).also {
it.id = id
}
}
}