feat(creator): 채널 홈 응답 계약을 보정한다
This commit is contained in:
@@ -21,6 +21,7 @@ data class CreatorChannelHome(
|
|||||||
|
|
||||||
data class CreatorChannelCreator(
|
data class CreatorChannelCreator(
|
||||||
val creatorId: Long,
|
val creatorId: Long,
|
||||||
|
val characterId: Long?,
|
||||||
val nickname: String,
|
val nickname: String,
|
||||||
val profileImageUrl: String,
|
val profileImageUrl: String,
|
||||||
val followerCount: Int,
|
val followerCount: Int,
|
||||||
@@ -54,12 +55,9 @@ data class CreatorChannelAudioContent(
|
|||||||
)
|
)
|
||||||
|
|
||||||
data class CreatorChannelDonation(
|
data class CreatorChannelDonation(
|
||||||
val donationId: Long,
|
|
||||||
val memberId: Long,
|
|
||||||
val nickname: String,
|
val nickname: String,
|
||||||
val profileImageUrl: String,
|
val profileImageUrl: String,
|
||||||
val can: Int,
|
val can: Int,
|
||||||
val isSecret: Boolean,
|
|
||||||
val message: String,
|
val message: String,
|
||||||
val createdAt: LocalDateTime
|
val createdAt: LocalDateTime
|
||||||
)
|
)
|
||||||
@@ -76,11 +74,8 @@ data class CreatorChannelSeries(
|
|||||||
val seriesId: Long,
|
val seriesId: Long,
|
||||||
val title: String,
|
val title: String,
|
||||||
val coverImageUrl: String,
|
val coverImageUrl: String,
|
||||||
val publishedDaysOfWeek: String,
|
|
||||||
val isComplete: Boolean,
|
|
||||||
val numberOfContent: Int,
|
val numberOfContent: Int,
|
||||||
val isNew: Boolean,
|
val isNew: Boolean,
|
||||||
val isPopular: Boolean,
|
|
||||||
val isOriginal: Boolean
|
val isOriginal: Boolean
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
@@ -55,6 +55,7 @@ data class CreatorChannelHomeResponse(
|
|||||||
|
|
||||||
data class CreatorChannelCreatorResponse(
|
data class CreatorChannelCreatorResponse(
|
||||||
val creatorId: Long,
|
val creatorId: Long,
|
||||||
|
val characterId: Long?,
|
||||||
val nickname: String,
|
val nickname: String,
|
||||||
val profileImageUrl: String,
|
val profileImageUrl: String,
|
||||||
val followerCount: Int,
|
val followerCount: Int,
|
||||||
@@ -71,6 +72,7 @@ data class CreatorChannelCreatorResponse(
|
|||||||
fun from(creator: CreatorChannelCreator): CreatorChannelCreatorResponse {
|
fun from(creator: CreatorChannelCreator): CreatorChannelCreatorResponse {
|
||||||
return CreatorChannelCreatorResponse(
|
return CreatorChannelCreatorResponse(
|
||||||
creatorId = creator.creatorId,
|
creatorId = creator.creatorId,
|
||||||
|
characterId = creator.characterId,
|
||||||
nickname = creator.nickname,
|
nickname = creator.nickname,
|
||||||
profileImageUrl = creator.profileImageUrl,
|
profileImageUrl = creator.profileImageUrl,
|
||||||
followerCount = creator.followerCount,
|
followerCount = creator.followerCount,
|
||||||
@@ -141,25 +143,18 @@ data class CreatorChannelAudioContentResponse(
|
|||||||
}
|
}
|
||||||
|
|
||||||
data class CreatorChannelDonationResponse(
|
data class CreatorChannelDonationResponse(
|
||||||
val donationId: Long,
|
|
||||||
val memberId: Long,
|
|
||||||
val nickname: String,
|
val nickname: String,
|
||||||
val profileImageUrl: String,
|
val profileImageUrl: String,
|
||||||
val can: Int,
|
val can: Int,
|
||||||
@JsonProperty("isSecret")
|
|
||||||
val isSecret: Boolean,
|
|
||||||
val message: String,
|
val message: String,
|
||||||
val createdAtUtc: String
|
val createdAtUtc: String
|
||||||
) {
|
) {
|
||||||
companion object {
|
companion object {
|
||||||
fun from(donation: CreatorChannelDonation): CreatorChannelDonationResponse {
|
fun from(donation: CreatorChannelDonation): CreatorChannelDonationResponse {
|
||||||
return CreatorChannelDonationResponse(
|
return CreatorChannelDonationResponse(
|
||||||
donationId = donation.donationId,
|
|
||||||
memberId = donation.memberId,
|
|
||||||
nickname = donation.nickname,
|
nickname = donation.nickname,
|
||||||
profileImageUrl = donation.profileImageUrl,
|
profileImageUrl = donation.profileImageUrl,
|
||||||
can = donation.can,
|
can = donation.can,
|
||||||
isSecret = donation.isSecret,
|
|
||||||
message = donation.message,
|
message = donation.message,
|
||||||
createdAtUtc = donation.createdAt.toUtcIso()
|
createdAtUtc = donation.createdAt.toUtcIso()
|
||||||
)
|
)
|
||||||
@@ -189,14 +184,9 @@ data class CreatorChannelSeriesResponse(
|
|||||||
val seriesId: Long,
|
val seriesId: Long,
|
||||||
val title: String,
|
val title: String,
|
||||||
val coverImageUrl: String,
|
val coverImageUrl: String,
|
||||||
val publishedDaysOfWeek: String,
|
|
||||||
@JsonProperty("isComplete")
|
|
||||||
val isComplete: Boolean,
|
|
||||||
val numberOfContent: Int,
|
val numberOfContent: Int,
|
||||||
@JsonProperty("isNew")
|
@JsonProperty("isNew")
|
||||||
val isNew: Boolean,
|
val isNew: Boolean,
|
||||||
@JsonProperty("isPopular")
|
|
||||||
val isPopular: Boolean,
|
|
||||||
@JsonProperty("isOriginal")
|
@JsonProperty("isOriginal")
|
||||||
val isOriginal: Boolean
|
val isOriginal: Boolean
|
||||||
) {
|
) {
|
||||||
@@ -206,11 +196,8 @@ data class CreatorChannelSeriesResponse(
|
|||||||
seriesId = series.seriesId,
|
seriesId = series.seriesId,
|
||||||
title = series.title,
|
title = series.title,
|
||||||
coverImageUrl = series.coverImageUrl,
|
coverImageUrl = series.coverImageUrl,
|
||||||
publishedDaysOfWeek = series.publishedDaysOfWeek,
|
|
||||||
isComplete = series.isComplete,
|
|
||||||
numberOfContent = series.numberOfContent,
|
numberOfContent = series.numberOfContent,
|
||||||
isNew = series.isNew,
|
isNew = series.isNew,
|
||||||
isPopular = series.isPopular,
|
|
||||||
isOriginal = series.isOriginal
|
isOriginal = series.isOriginal
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -34,9 +34,10 @@ class CreatorChannelHomeQueryServiceTest {
|
|||||||
val response = CreatorChannelHomeResponse.from(home)
|
val response = CreatorChannelHomeResponse.from(home)
|
||||||
|
|
||||||
assertEquals(home.creator.creatorId, response.creator.creatorId)
|
assertEquals(home.creator.creatorId, response.creator.creatorId)
|
||||||
|
assertEquals(home.creator.characterId, response.creator.characterId)
|
||||||
assertEquals(home.currentLive?.liveId, response.currentLive?.liveId)
|
assertEquals(home.currentLive?.liveId, response.currentLive?.liveId)
|
||||||
assertEquals(home.latestAudioContent?.audioContentId, response.latestAudioContent?.audioContentId)
|
assertEquals(home.latestAudioContent?.audioContentId, response.latestAudioContent?.audioContentId)
|
||||||
assertEquals(home.channelDonations.first().donationId, response.channelDonations.first().donationId)
|
assertEquals(home.channelDonations.first().message, response.channelDonations.first().message)
|
||||||
assertEquals(home.notices.first().postId, response.notices.first().postId)
|
assertEquals(home.notices.first().postId, response.notices.first().postId)
|
||||||
assertEquals(home.schedules.first().targetId, response.schedules.first().targetId)
|
assertEquals(home.schedules.first().targetId, response.schedules.first().targetId)
|
||||||
assertEquals(home.audioContents.first().audioContentId, response.audioContents.first().audioContentId)
|
assertEquals(home.audioContents.first().audioContentId, response.audioContents.first().audioContentId)
|
||||||
@@ -89,6 +90,7 @@ class CreatorChannelHomeQueryServiceTest {
|
|||||||
assertFalse(json["creator"].has("aiChatAvailable"))
|
assertFalse(json["creator"].has("aiChatAvailable"))
|
||||||
assertFalse(json["creator"]["isDmAvailable"].asBoolean())
|
assertFalse(json["creator"]["isDmAvailable"].asBoolean())
|
||||||
assertFalse(json["creator"].has("dmAvailable"))
|
assertFalse(json["creator"].has("dmAvailable"))
|
||||||
|
assertEquals(10L, json["creator"]["characterId"].asLong())
|
||||||
assertTrue(json["latestAudioContent"]["isPointAvailable"].asBoolean())
|
assertTrue(json["latestAudioContent"]["isPointAvailable"].asBoolean())
|
||||||
assertFalse(json["latestAudioContent"].has("pointAvailable"))
|
assertFalse(json["latestAudioContent"].has("pointAvailable"))
|
||||||
assertTrue(json["latestAudioContent"]["isFirstContent"].asBoolean())
|
assertTrue(json["latestAudioContent"]["isFirstContent"].asBoolean())
|
||||||
@@ -97,6 +99,13 @@ class CreatorChannelHomeQueryServiceTest {
|
|||||||
assertFalse(json["latestAudioContent"].has("adult"))
|
assertFalse(json["latestAudioContent"].has("adult"))
|
||||||
assertTrue(json["series"][0]["isOriginal"].asBoolean())
|
assertTrue(json["series"][0]["isOriginal"].asBoolean())
|
||||||
assertFalse(json["series"][0].has("original"))
|
assertFalse(json["series"][0].has("original"))
|
||||||
|
assertFalse(json["series"][0].has("published" + "DaysOfWeek"))
|
||||||
|
assertFalse(json["series"][0].has("is" + "Complete"))
|
||||||
|
assertFalse(json["series"][0].has("is" + "Popular"))
|
||||||
|
assertEquals("thanks", json["channelDonations"][0]["message"].asText())
|
||||||
|
assertFalse(json["channelDonations"][0].has("donation" + "Id"))
|
||||||
|
assertFalse(json["channelDonations"][0].has("member" + "Id"))
|
||||||
|
assertFalse(json["channelDonations"][0].has("is" + "Secret"))
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun createHome(): CreatorChannelHome {
|
private fun createHome(): CreatorChannelHome {
|
||||||
@@ -118,6 +127,7 @@ class CreatorChannelHomeQueryServiceTest {
|
|||||||
return CreatorChannelHome(
|
return CreatorChannelHome(
|
||||||
creator = CreatorChannelCreator(
|
creator = CreatorChannelCreator(
|
||||||
creatorId = 1L,
|
creatorId = 1L,
|
||||||
|
characterId = 10L,
|
||||||
nickname = "creator",
|
nickname = "creator",
|
||||||
profileImageUrl = "profile.png",
|
profileImageUrl = "profile.png",
|
||||||
followerCount = 100,
|
followerCount = 100,
|
||||||
@@ -149,12 +159,9 @@ class CreatorChannelHomeQueryServiceTest {
|
|||||||
),
|
),
|
||||||
channelDonations = listOf(
|
channelDonations = listOf(
|
||||||
CreatorChannelDonation(
|
CreatorChannelDonation(
|
||||||
donationId = 401L,
|
|
||||||
memberId = 2L,
|
|
||||||
nickname = "fan",
|
nickname = "fan",
|
||||||
profileImageUrl = "fan.png",
|
profileImageUrl = "fan.png",
|
||||||
can = 50,
|
can = 50,
|
||||||
isSecret = false,
|
|
||||||
message = "thanks",
|
message = "thanks",
|
||||||
createdAt = LocalDateTime.of(2026, 6, 12, 2, 0)
|
createdAt = LocalDateTime.of(2026, 6, 12, 2, 0)
|
||||||
)
|
)
|
||||||
@@ -189,11 +196,8 @@ class CreatorChannelHomeQueryServiceTest {
|
|||||||
seriesId = 601L,
|
seriesId = 601L,
|
||||||
title = "series",
|
title = "series",
|
||||||
coverImageUrl = "series.png",
|
coverImageUrl = "series.png",
|
||||||
publishedDaysOfWeek = "MON",
|
|
||||||
isComplete = false,
|
|
||||||
numberOfContent = 3,
|
numberOfContent = 3,
|
||||||
isNew = true,
|
isNew = true,
|
||||||
isPopular = false,
|
|
||||||
isOriginal = true
|
isOriginal = true
|
||||||
)
|
)
|
||||||
),
|
),
|
||||||
|
|||||||
Reference in New Issue
Block a user