fix(content): 무료 콘텐츠 포인트 사용 조건을 보정한다
This commit is contained in:
+5
-3
@@ -52,6 +52,7 @@ class DefaultMainContentAllQueryRepositoryTest @Autowired constructor(
|
||||
val inactiveTheme = saveTheme("inactive-audio-theme", isActive = false)
|
||||
val free = saveAudioContent(creator, theme, now.minusDays(3), isAdult = false, price = 0)
|
||||
val point = saveAudioContent(creator, theme, now.minusDays(2), isAdult = false, price = 100, isPointAvailable = true)
|
||||
val freePoint = saveAudioContent(creator, theme, now.minusHours(12), isAdult = false, price = 0, isPointAvailable = true)
|
||||
saveAudioContent(creator, theme, now.minusDays(1), isAdult = true, price = 200)
|
||||
saveAudioContent(blockedCreator, theme, now.minusDays(1), isAdult = false, price = 100)
|
||||
saveAudioContent(inactiveCreator, theme, now.minusDays(1), isAdult = false, price = 100)
|
||||
@@ -66,11 +67,12 @@ class DefaultMainContentAllQueryRepositoryTest @Autowired constructor(
|
||||
val freeAudios = repository.findAudios(null, false, now, ContentSort.LATEST, 0, 20, onlyFree = true)
|
||||
val pointAudios = repository.findAudios(null, false, now, ContentSort.LATEST, 0, 20, onlyPointAvailable = true)
|
||||
|
||||
assertEquals(2, repository.countAudios(viewer.id, canViewAdultContent = false, now))
|
||||
assertEquals(3, repository.countAudios(viewer.id, canViewAdultContent = false, now))
|
||||
assertEquals(1, repository.countAudios(viewer.id, false, now, onlyPaid = true))
|
||||
assertEquals(listOf(point.id, free.id), visible.map { it.audioContentId })
|
||||
assertEquals(1, repository.countAudios(null, false, now, onlyPointAvailable = true))
|
||||
assertEquals(listOf(freePoint.id, point.id, free.id), visible.map { it.audioContentId })
|
||||
assertEquals(listOf(point.id), paidAudios.map { it.audioContentId })
|
||||
assertEquals(listOf(free.id), freeAudios.map { it.audioContentId })
|
||||
assertEquals(listOf(freePoint.id, free.id), freeAudios.map { it.audioContentId })
|
||||
assertEquals(listOf(point.id), pointAudios.map { it.audioContentId })
|
||||
assertEquals("https://cdn.test/audio.png", visible.first().imageUrl)
|
||||
}
|
||||
|
||||
+15
-6
@@ -90,7 +90,7 @@ class DefaultAudioRecommendationQueryRepositoryTest @Autowired constructor(
|
||||
val now = LocalDateTime.of(2026, 6, 23, 12, 0)
|
||||
val creator = saveMember("audio-creator", MemberRole.CREATOR)
|
||||
val theme = saveTheme()
|
||||
val first = saveAudio(
|
||||
saveAudio(
|
||||
creator = creator,
|
||||
theme = theme,
|
||||
title = "first",
|
||||
@@ -108,6 +108,15 @@ class DefaultAudioRecommendationQueryRepositoryTest @Autowired constructor(
|
||||
isPointAvailable = false,
|
||||
coverImage = "latest.png"
|
||||
)
|
||||
val paidPoint = saveAudio(
|
||||
creator = creator,
|
||||
theme = theme,
|
||||
title = "paid-point",
|
||||
releaseDate = now.minusDays(2),
|
||||
price = 20,
|
||||
isPointAvailable = true,
|
||||
coverImage = "paid-point.png"
|
||||
)
|
||||
saveAudio(creator, theme, "adult", now.minusHours(1), isAdult = true)
|
||||
saveAudio(creator, theme, "future", now.plusDays(1))
|
||||
saveAudio(creator, theme, "inactive", now.minusHours(2)).isActive = false
|
||||
@@ -139,11 +148,11 @@ class DefaultAudioRecommendationQueryRepositoryTest @Autowired constructor(
|
||||
val pointAudios = repository.findPointAudios(10, viewer.id, canViewAdultContent = false, now = now)
|
||||
|
||||
assertEquals(12, latestAudios.size)
|
||||
assertEquals(listOf(latest.id, first.id), latestAudios.take(2).map { it.audioContentId })
|
||||
assertEquals(listOf(latest.id, paidPoint.id), latestAudios.take(2).map { it.audioContentId })
|
||||
assertEquals(10, freeAudios.size)
|
||||
assertEquals(true, freeAudios.all { it.price == 0 })
|
||||
assertEquals(10, pointAudios.size)
|
||||
assertEquals(true, pointAudios.all { it.isPointAvailable })
|
||||
assertEquals(listOf(paidPoint.id), pointAudios.map { it.audioContentId })
|
||||
assertEquals(true, pointAudios.all { it.isPointAvailable && it.price > 0 })
|
||||
val latestCard = latestAudios.first()
|
||||
assertEquals("latest", latestCard.title)
|
||||
assertEquals("00:01", latestCard.duration)
|
||||
@@ -154,8 +163,8 @@ class DefaultAudioRecommendationQueryRepositoryTest @Autowired constructor(
|
||||
assertEquals(false, latestCard.isFirstContent)
|
||||
assertEquals(true, latestCard.isOriginalSeries)
|
||||
assertEquals(creator.nickname, latestCard.creatorNickname)
|
||||
assertEquals(true, latestAudios[1].isFirstContent)
|
||||
assertEquals(false, latestAudios[1].isOriginalSeries)
|
||||
assertEquals(true, latestAudios[2].isFirstContent)
|
||||
assertEquals(false, latestAudios[2].isOriginalSeries)
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
Reference in New Issue
Block a user