[#52] 만료 예약 / 일정 스케쥴링 작업 추가 및 동시성 처리를 위한 일부 코드 수정 #53

Merged
pricelees merged 18 commits from refactor/#52 into main 2025-10-04 08:40:37 +00:00
Showing only changes of commit 86a2459d8b - Show all commits

View File

@ -95,7 +95,7 @@ class AdminScheduleApiTest(
},
expect = {
statusCode(HttpStatus.OK.value())
body("data.schedules.size()", equalTo(schedules.filter { it.date == LocalDate.now() }.size))
body("data.schedules.size()", equalTo(schedules.filter { it.date.isEqual(LocalDate.now()) }.size))
assertProperties(
props = setOf("id", "themeName", "startFrom", "endAt", "status"),
propsNameIfList = "schedules"
@ -114,7 +114,7 @@ class AdminScheduleApiTest(
},
expect = {
statusCode(HttpStatus.OK.value())
body("data.schedules.size()", equalTo(schedules.filter { it.date == date }.size))
body("data.schedules.size()", equalTo(schedules.filter { it.date.isEqual(date) }.size))
assertProperties(
props = setOf("id", "themeName", "startFrom", "endAt", "status"),
propsNameIfList = "schedules"
@ -153,7 +153,7 @@ class AdminScheduleApiTest(
statusCode(HttpStatus.OK.value())
body(
"data.schedules.size()",
equalTo(schedules.filter { it.date == date && it.themeId == themeId }.size)
equalTo(schedules.filter { it.date.isEqual(date) && it.themeId == themeId }.size)
)
assertProperties(
props = setOf("id", "themeName", "startFrom", "endAt", "status"),
@ -390,7 +390,7 @@ class AdminScheduleApiTest(
val time = LocalTime.now().minusMinutes(1)
val theme = dummyInitializer.createTheme()
val request = ScheduleFixture.createRequest.copy(date, time, theme.id)
val request = ScheduleFixture.createRequest.copy(date = date, time = time, themeId = theme.id)
runExceptionTest(
token = token,
@ -412,18 +412,18 @@ class AdminScheduleApiTest(
dummyInitializer.createSchedule(
storeId = admin.storeId!!,
request = ScheduleFixture.createRequest.copy(
tomorrow,
LocalTime.of(14, 0),
theme.id
date = tomorrow,
time = LocalTime.of(14, 0),
themeId = theme.id
)
)
}
val request = initialize("내일 14:30에 시작하는 요청 객체") {
ScheduleFixture.createRequest.copy(
tomorrow,
LocalTime.of(14, 30),
theme.id
date = tomorrow,
time = LocalTime.of(14, 30),
themeId = theme.id
)
}
@ -636,7 +636,7 @@ class AdminScheduleApiTest(
}
}
(ScheduleStatus.entries - listOf(ScheduleStatus.AVAILABLE, ScheduleStatus.BLOCKED)).forEach {
(ScheduleStatus.entries - listOf(ScheduleStatus.AVAILABLE, ScheduleStatus.BLOCKED).toSet()).forEach {
test("상태가 ${it}인 일정은 삭제할 수 없다.") {
val (admin, token) = testAuthUtil.defaultStoreAdminLogin()
val schedule = initialize("삭제를 위한 일정 생성") {