diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/v2/creator/channel/home/application/CreatorChannelHomeQueryService.kt b/src/main/kotlin/kr/co/vividnext/sodalive/v2/creator/channel/home/application/CreatorChannelHomeQueryService.kt index 2321a24b..6869fa6d 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/v2/creator/channel/home/application/CreatorChannelHomeQueryService.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/v2/creator/channel/home/application/CreatorChannelHomeQueryService.kt @@ -220,7 +220,7 @@ class CreatorChannelHomeQueryService( message }, createdAt = createdAt, - isSecret = isSecret + isSecret = isMasked ) } diff --git a/src/test/kotlin/kr/co/vividnext/sodalive/v2/api/creator/channel/home/CreatorChannelHomeEndToEndTest.kt b/src/test/kotlin/kr/co/vividnext/sodalive/v2/api/creator/channel/home/CreatorChannelHomeEndToEndTest.kt index cc17e8e1..8e43ff02 100644 --- a/src/test/kotlin/kr/co/vividnext/sodalive/v2/api/creator/channel/home/CreatorChannelHomeEndToEndTest.kt +++ b/src/test/kotlin/kr/co/vividnext/sodalive/v2/api/creator/channel/home/CreatorChannelHomeEndToEndTest.kt @@ -173,7 +173,6 @@ class CreatorChannelHomeEndToEndTest @Autowired constructor( ).getValue(language) fixture.donations.sortedByDescending { it.can }.zip(donations).forEach { (stored, item) -> assertTrue(item.path("isSecret").isBoolean) - assertEquals(stored.isSecret, item["isSecret"].asBoolean()) assertEquals(stored.can, item["can"].asInt()) assertEquals( requireNotNull(stored.createdAt).atOffset(ZoneOffset.UTC).toInstant().toString(), @@ -187,6 +186,7 @@ class CreatorChannelHomeEndToEndTest @Autowired constructor( if (viewerRole == "creator") assertEquals(stored.id, item["donationId"]?.asLong()) assertFalse(item.has("memberId")) val masked = stored.isSecret && fixture.viewer.id != fixture.creatorId && fixture.viewer.id != stored.member?.id + assertEquals(masked, item["isSecret"].asBoolean()) if (masked) { assertEquals(anonymousNickname, item["nickname"].asText()) assertEquals(anonymousMessage, item["message"].asText()) @@ -207,6 +207,12 @@ class CreatorChannelHomeEndToEndTest @Autowired constructor( assertEquals("https://cdn.test/$profile", item["profileImageUrl"].asText()) } } + transactionTemplate.execute { + entityManager.clear() + fixture.donations.forEach { stored -> + assertEquals(stored.isSecret, entityManager.find(ChannelDonationMessage::class.java, stored.id).isSecret) + } + } } @Test diff --git a/src/test/kotlin/kr/co/vividnext/sodalive/v2/creator/channel/home/application/CreatorChannelHomeQueryServiceTest.kt b/src/test/kotlin/kr/co/vividnext/sodalive/v2/creator/channel/home/application/CreatorChannelHomeQueryServiceTest.kt index 9eba480a..2627f0d6 100644 --- a/src/test/kotlin/kr/co/vividnext/sodalive/v2/creator/channel/home/application/CreatorChannelHomeQueryServiceTest.kt +++ b/src/test/kotlin/kr/co/vividnext/sodalive/v2/creator/channel/home/application/CreatorChannelHomeQueryServiceTest.kt @@ -237,7 +237,7 @@ class CreatorChannelHomeQueryServiceTest { val originalProfile = profilePath ?: "profile/default-profile.png" val expectedProfile = if (masked) "profile/anonymous-profile.png" else originalProfile assertEquals("https://cdn.test/$expectedProfile", donation.profileImageUrl) - assertEquals(isSecret, donation.isSecret) + assertEquals(masked, donation.isSecret) assertEquals(30, donation.can) assertEquals(LocalDateTime.of(2026, 6, 13, 8, 0), donation.createdAt) assertEquals(if (role == MemberRole.CREATOR && viewerId == 1L) 101L else null, donation.donationId)