fix(community): 조회 서비스 트랜잭션을 읽기 전용으로 실행한다

This commit is contained in:
2026-07-07 19:17:07 +09:00
parent 95ffb69911
commit f100e11861
2 changed files with 11 additions and 0 deletions

View File

@@ -41,6 +41,7 @@ import java.time.LocalDateTime
import java.time.ZoneId import java.time.ZoneId
@Service @Service
@Transactional(readOnly = true)
class CreatorCommunityService( class CreatorCommunityService(
private val canPaymentService: CanPaymentService, private val canPaymentService: CanPaymentService,

View File

@@ -35,6 +35,7 @@ import org.junit.jupiter.api.Test
import org.mockito.ArgumentCaptor import org.mockito.ArgumentCaptor
import org.mockito.Mockito import org.mockito.Mockito
import org.springframework.context.ApplicationEventPublisher import org.springframework.context.ApplicationEventPublisher
import org.springframework.transaction.annotation.Transactional
import org.springframework.web.multipart.MultipartFile import org.springframework.web.multipart.MultipartFile
import java.io.InputStream import java.io.InputStream
import java.time.LocalDateTime import java.time.LocalDateTime
@@ -234,6 +235,15 @@ class CreatorCommunityServiceTest {
assertEquals("creator.community.invalid_request_retry", exception.messageKey) assertEquals("creator.community.invalid_request_retry", exception.messageKey)
} }
@Test
@DisplayName("커뮤니티 서비스 조회 메서드는 기본적으로 읽기 전용 트랜잭션으로 실행된다")
fun shouldRunCommunityServiceReadMethodsInReadOnlyTransaction() {
val transactional = CreatorCommunityService::class.java.getAnnotation(Transactional::class.java)
assertNotNull(transactional)
assertTrue(transactional.readOnly)
}
@Test @Test
@DisplayName("고정 게시물이 이미 3개면 추가 고정 시 예외가 발생한다") @DisplayName("고정 게시물이 이미 3개면 추가 고정 시 예외가 발생한다")
fun shouldThrowExceptionWhenPinCountExceedsLimit() { fun shouldThrowExceptionWhenPinCountExceedsLimit() {