refactor: 테스트용 예약 데이터 삽입 시 발생할 수 있는 일정 / 테마 충돌 문제 수정

This commit is contained in:
이상진 2025-09-13 15:38:53 +09:00
parent e4a18d0c79
commit c3b736b81f

View File

@ -94,16 +94,26 @@ class DummyInitializer(
scheduleRequest: ScheduleCreateRequest = ScheduleFixture.createRequest, scheduleRequest: ScheduleCreateRequest = ScheduleFixture.createRequest,
reservationRequest: PendingReservationCreateRequest = ReservationFixture.pendingCreateRequest, reservationRequest: PendingReservationCreateRequest = ReservationFixture.pendingCreateRequest,
): ReservationEntity { ): ReservationEntity {
val themeId: Long = createTheme( val themeId: Long = if (scheduleRequest.themeId > 1) {
scheduleRequest.themeId
} else if (reservationRequest.scheduleId > 1) {
scheduleRepository.findByIdOrNull(reservationRequest.scheduleId)!!.themeId
} else {
createTheme(
adminToken = adminToken, adminToken = adminToken,
request = themeRequest request = themeRequest
).id ).id
}
val scheduleId: Long = createSchedule( val scheduleId: Long = if (reservationRequest.scheduleId > 1) {
reservationRequest.scheduleId
} else {
createSchedule(
adminToken = adminToken, adminToken = adminToken,
request = scheduleRequest.copy(themeId = themeId), request = scheduleRequest.copy(themeId = themeId),
status = ScheduleStatus.HOLD status = ScheduleStatus.HOLD
).id ).id
}
return createPendingReservation( return createPendingReservation(
reserverToken = reserverToken, reserverToken = reserverToken,
@ -118,20 +128,30 @@ class DummyInitializer(
scheduleRequest: ScheduleCreateRequest = ScheduleFixture.createRequest, scheduleRequest: ScheduleCreateRequest = ScheduleFixture.createRequest,
reservationRequest: PendingReservationCreateRequest = ReservationFixture.pendingCreateRequest, reservationRequest: PendingReservationCreateRequest = ReservationFixture.pendingCreateRequest,
): ReservationEntity { ): ReservationEntity {
val themeId: Long = createTheme( val themeId: Long = if (scheduleRequest.themeId > 1) {
scheduleRequest.themeId
} else if (reservationRequest.scheduleId > 1) {
scheduleRepository.findByIdOrNull(reservationRequest.scheduleId)!!.themeId
} else {
createTheme(
adminToken = adminToken, adminToken = adminToken,
request = themeRequest request = themeRequest
).id ).id
}
val schedule: ScheduleEntity = createSchedule( val scheduleId: Long = if (reservationRequest.scheduleId > 1) {
reservationRequest.scheduleId
} else {
createSchedule(
adminToken = adminToken, adminToken = adminToken,
request = scheduleRequest.copy(themeId = themeId), request = scheduleRequest.copy(themeId = themeId),
status = ScheduleStatus.HOLD status = ScheduleStatus.HOLD
) ).id
}
val reservation = createPendingReservation( val reservation = createPendingReservation(
reserverToken = reserverToken, reserverToken = reserverToken,
request = reservationRequest.copy(scheduleId = schedule.id) request = reservationRequest.copy(scheduleId = scheduleId)
) )
Given { Given {