refactor(home-recommendation): 추천 배너 응답을 공통화한다

This commit is contained in:
2026-06-23 16:11:26 +09:00
parent 2dbe339245
commit d387030a38
5 changed files with 58 additions and 14 deletions
@@ -1,6 +1,7 @@
package kr.co.vividnext.sodalive.v2.api.home.dto.recommendation
import com.fasterxml.jackson.module.kotlin.jacksonObjectMapper
import kr.co.vividnext.sodalive.v2.api.common.dto.RecommendationBannerResponse
import org.junit.jupiter.api.Assertions.assertEquals
import org.junit.jupiter.api.Assertions.assertFalse
import org.junit.jupiter.api.Test
@@ -12,7 +13,15 @@ class HomeRecommendationResponseTest {
fun shouldSerializeNewHomeRecommendationFields() {
val response = HomeRecommendationResponse(
lives = emptyList(),
banners = emptyList(),
banners = listOf(
RecommendationBannerResponse(
imageUrl = "https://cdn.test/banner.png",
eventItem = null,
creatorId = 11L,
seriesId = 12L,
link = "https://banner.test"
)
),
recentlyActiveCreators = emptyList(),
recentDebutCreators = emptyList(),
firstAudioContents = listOf(
@@ -83,6 +92,12 @@ class HomeRecommendationResponseTest {
val json = objectMapper.readTree(objectMapper.writeValueAsString(response))
assertEquals("https://cdn.test/banner.png", json["banners"][0]["imageUrl"].asText())
assertEquals(true, json["banners"][0]["eventItem"].isNull)
assertEquals(11L, json["banners"][0]["creatorId"].asLong())
assertEquals(12L, json["banners"][0]["seriesId"].asLong())
assertEquals("https://banner.test", json["banners"][0]["link"].asText())
assertEquals(5, json["banners"][0].size())
assertEquals(9, json["firstAudioContents"][0]["price"].asInt())
assertEquals(true, json["firstAudioContents"][0]["isPointAvailable"].asBoolean())
assertFalse(json["firstAudioContents"][0].has("pointAvailable"))