diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/v2/creator/channel/audio/application/CreatorChannelAudioQueryService.kt b/src/main/kotlin/kr/co/vividnext/sodalive/v2/creator/channel/audio/application/CreatorChannelAudioQueryService.kt index e768b334..0dd90f21 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/v2/creator/channel/audio/application/CreatorChannelAudioQueryService.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/v2/creator/channel/audio/application/CreatorChannelAudioQueryService.kt @@ -97,7 +97,12 @@ class CreatorChannelAudioQueryService( paidAudioContentCount = paidAudioContentCount, purchasedAudioContentCount = purchasedAudioContentCount, purchasedAudioContentRate = queryPolicy.purchaseRate(paidAudioContentCount, purchasedAudioContentCount), - themes = queryPort.findAudioThemes(locale).map { it.toDomain() }, + themes = queryPort.findAudioThemes( + creatorId = creatorId, + now = now, + canViewAdultContent = canViewAdultContent, + locale = locale + ).map { it.toDomain() }, audioContents = queryPolicy.limitItems(fetchedContents, audioPage).map { it.toDomain() }, sort = resolvedSort, themeId = resolvedThemeId, diff --git a/src/test/kotlin/kr/co/vividnext/sodalive/v2/creator/channel/audio/application/CreatorChannelAudioQueryServiceTest.kt b/src/test/kotlin/kr/co/vividnext/sodalive/v2/creator/channel/audio/application/CreatorChannelAudioQueryServiceTest.kt index ee70bced..38fc6860 100644 --- a/src/test/kotlin/kr/co/vividnext/sodalive/v2/creator/channel/audio/application/CreatorChannelAudioQueryServiceTest.kt +++ b/src/test/kotlin/kr/co/vividnext/sodalive/v2/creator/channel/audio/application/CreatorChannelAudioQueryServiceTest.kt @@ -60,6 +60,10 @@ class CreatorChannelAudioQueryServiceTest { assertNull(port.listThemeId) assertEquals("en", port.listLocale) assertEquals(false, port.listCanViewAdultContent) + assertEquals(1L, port.themeCreatorId) + assertEquals(now, port.themeNow) + assertEquals(false, port.themeCanViewAdultContent) + assertEquals("en", port.themeLocale) assertEquals(75.0, tab.purchasedAudioContentRate) assertEquals(50, tab.audioContents.size) assertTrue(tab.hasNext) @@ -191,6 +195,10 @@ private class FakeCreatorChannelAudioQueryPort : CreatorChannelAudioQueryPort { var listOffset: Long? = null var listLimit: Int? = null var listCanViewAdultContent: Boolean? = null + var themeCreatorId: Long? = null + var themeNow: LocalDateTime? = null + var themeCanViewAdultContent: Boolean? = null + var themeLocale: String? = null override fun findCreator(creatorId: Long, viewerId: Long?): CreatorChannelAudioCreatorRecord? = creator @@ -198,7 +206,16 @@ private class FakeCreatorChannelAudioQueryPort : CreatorChannelAudioQueryPort { override fun findActiveThemeId(themeId: Long): Long? = activeThemeId - override fun findAudioThemes(locale: String): List { + override fun findAudioThemes( + creatorId: Long, + now: LocalDateTime, + canViewAdultContent: Boolean, + locale: String + ): List { + themeCreatorId = creatorId + themeNow = now + themeCanViewAdultContent = canViewAdultContent + themeLocale = locale return listOf(CreatorChannelAudioThemeRecord(themeId = 10L, themeName = locale)) }