generated from pricelees/issue-pr-template
refactor: 테스트간 격리를 위한 데이터베이스 로직 beforeSpec -> beforeTest 변경
This commit is contained in:
parent
f517752e44
commit
6165d173ce
@ -5,24 +5,18 @@ import io.kotest.matchers.collections.shouldContainInOrder
|
||||
import io.kotest.matchers.shouldBe
|
||||
import jakarta.persistence.EntityManager
|
||||
import org.springframework.boot.test.autoconfigure.orm.jpa.DataJpaTest
|
||||
import org.springframework.transaction.support.TransactionTemplate
|
||||
import roomescape.theme.util.TestThemeCreateUtil
|
||||
import java.time.LocalDate
|
||||
|
||||
@DataJpaTest
|
||||
class ThemeRepositoryTest(
|
||||
val themeRepository: ThemeRepository,
|
||||
val transactionTemplate: TransactionTemplate,
|
||||
val entityManager: EntityManager
|
||||
) : FunSpec() {
|
||||
|
||||
init {
|
||||
beforeSpec {
|
||||
/**
|
||||
* 테마 10개를 생성한다.
|
||||
* 이름: "테마N", 예약 수: N, 날짜: 오늘 기준으로 N일 전
|
||||
*/
|
||||
transactionTemplate.executeWithoutResult {
|
||||
context("findTopNThemeBetweenStartDateAndEndDate") {
|
||||
beforeTest {
|
||||
for (i in 1..10) {
|
||||
TestThemeCreateUtil.createThemeWithReservations(
|
||||
entityManager = entityManager,
|
||||
@ -32,9 +26,7 @@ class ThemeRepositoryTest(
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
context("findTopNThemeBetweenStartDateAndEndDate") {
|
||||
test("지난 10일간 예약 수가 가장 많은 테마 5개를 조회한다.") {
|
||||
themeRepository.findTopNThemeBetweenStartDateAndEndDate(
|
||||
LocalDate.now().minusDays(10),
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user