refactor: 회원 엔티티 코틀린 변환

This commit is contained in:
이상진 2025-07-12 19:54:45 +09:00
parent dde9a663ff
commit 1e01e49313
16 changed files with 92 additions and 195 deletions

View File

@ -1,98 +1,23 @@
package roomescape.member.infrastructure.entity;
package roomescape.member.infrastructure.entity
import org.springframework.http.HttpStatus;
import jakarta.persistence.Entity;
import jakarta.persistence.EnumType;
import jakarta.persistence.Enumerated;
import jakarta.persistence.GeneratedValue;
import jakarta.persistence.GenerationType;
import jakarta.persistence.Id;
import roomescape.system.exception.ErrorType;
import roomescape.system.exception.RoomEscapeException;
import jakarta.persistence.*
@Entity
public class Member {
class Member(
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String name;
private String email;
private String password;
var id: Long? = null,
var name: String,
var email: String,
var password: String,
@Enumerated(value = EnumType.STRING)
private Role role;
protected Member() {
}
public Member(
String name,
String email,
String password,
Role role
var role: Role
) {
this(null, name, email, password, role);
fun isAdmin(): Boolean = role == Role.ADMIN
}
public Member(
Long id,
String name,
String email,
String password,
Role role
) {
this.id = id;
this.name = name;
this.email = email;
this.password = password;
this.role = role;
validateRole();
}
private void validateRole() {
if (role == null) {
throw new RoomEscapeException(ErrorType.REQUEST_DATA_BLANK, String.format("[values: %s]", this),
HttpStatus.BAD_REQUEST);
}
}
public boolean isAdmin() {
return this.role == Role.ADMIN;
}
public Long getId() {
return id;
}
public String getName() {
return name;
}
public String getEmail() {
return email;
}
public String getPassword() {
return password;
}
public Role getRole() {
return role;
}
@Override
public String toString() {
return "Member{" +
"id=" + id +
", name=" + name +
", email=" + email +
", password=" + password +
", role=" + role +
'}';
}
enum class Role {
MEMBER,
ADMIN,
}

View File

@ -1,6 +0,0 @@
package roomescape.member.infrastructure.entity;
public enum Role {
MEMBER,
ADMIN
}

View File

@ -1,28 +0,0 @@
package roomescape.member.domain;
import org.assertj.core.api.Assertions;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Test;
import roomescape.member.infrastructure.entity.Member;
import roomescape.member.infrastructure.entity.Role;
import roomescape.system.exception.RoomEscapeException;
class MemberTest {
@Test
@DisplayName("Member 객체를 생성할 때 Role은 반드시 입력되어야 한다.")
void createMemberWithoutRole() {
// given
String name = "name";
String email = "email";
String password = "password";
// when
Role role = null;
// then
Assertions.assertThatThrownBy(() -> new Member(name, email, password, null))
.isInstanceOf(RoomEscapeException.class);
}
}

View File

@ -30,7 +30,7 @@ class PaymentTest {
LocalDate now = LocalDate.now();
ReservationTime reservationTime = new ReservationTime(LocalTime.now());
Theme theme = new Theme("name", "desc", "thumb");
Member member = new Member("name", "email", "password", Role.MEMBER);
Member member = new Member(null, "name", "email", "password", Role.MEMBER);
reservation = new Reservation(now, reservationTime, theme, member, ReservationStatus.CONFIRMED);
}

View File

@ -14,8 +14,8 @@ import org.springframework.test.context.jdbc.Sql;
import org.springframework.test.context.jdbc.Sql.ExecutionPhase;
import roomescape.member.infrastructure.entity.Member;
import roomescape.member.infrastructure.entity.Role;
import roomescape.member.infrastructure.entity.MemberRepository;
import roomescape.member.infrastructure.entity.Role;
import roomescape.payment.domain.repository.CanceledPaymentRepository;
import roomescape.payment.dto.request.PaymentCancelRequest;
import roomescape.payment.dto.response.PaymentResponse;
@ -54,7 +54,7 @@ class PaymentServiceTest {
LocalDateTime localDateTime = LocalDateTime.now().plusHours(1L);
LocalDate date = localDateTime.toLocalDate();
ReservationTime time = reservationTimeRepository.save(new ReservationTime(localDateTime.toLocalTime()));
Member member = memberRepository.save(new Member("member", "email@email.com", "password", Role.MEMBER));
Member member = memberRepository.save(new Member(null, "member", "email@email.com", "password", Role.MEMBER));
Theme theme = themeRepository.save(new Theme("name", "desc", "thumbnail"));
Reservation reservation = reservationRepository.save(new Reservation(date, time, theme, member,
ReservationStatus.CONFIRMED));
@ -75,7 +75,7 @@ class PaymentServiceTest {
LocalDateTime localDateTime = LocalDateTime.now().plusHours(1L);
LocalDate date = localDateTime.toLocalDate();
ReservationTime time = reservationTimeRepository.save(new ReservationTime(localDateTime.toLocalTime()));
Member member = memberRepository.save(new Member("member", "email@email.com", "password", Role.MEMBER));
Member member = memberRepository.save(new Member(null, "member", "email@email.com", "password", Role.MEMBER));
Theme theme = themeRepository.save(new Theme("name", "desc", "thumbnail"));
Reservation reservation = reservationRepository.save(new Reservation(date, time, theme, member,
ReservationStatus.CONFIRMED));
@ -111,7 +111,7 @@ class PaymentServiceTest {
LocalDateTime localDateTime = LocalDateTime.now().plusHours(1L);
LocalDate date = localDateTime.toLocalDate();
ReservationTime time = reservationTimeRepository.save(new ReservationTime(localDateTime.toLocalTime()));
Member member = memberRepository.save(new Member("member", "email@email.com", "password", Role.MEMBER));
Member member = memberRepository.save(new Member(null, "member", "email@email.com", "password", Role.MEMBER));
Theme theme = themeRepository.save(new Theme("name", "desc", "thumbnail"));
Reservation reservation = reservationRepository.save(new Reservation(date, time, theme, member,
ReservationStatus.CONFIRMED));

View File

@ -2,6 +2,7 @@ package roomescape.reservation.controller;
import static org.assertj.core.api.Assertions.*;
import static org.hamcrest.Matchers.*;
import static org.mockito.ArgumentMatchers.*;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.*;
@ -33,8 +34,8 @@ import io.restassured.RestAssured;
import io.restassured.http.ContentType;
import io.restassured.http.Header;
import roomescape.member.infrastructure.entity.Member;
import roomescape.member.infrastructure.entity.Role;
import roomescape.member.infrastructure.entity.MemberRepository;
import roomescape.member.infrastructure.entity.Role;
import roomescape.payment.client.TossPaymentClient;
import roomescape.payment.domain.CanceledPayment;
import roomescape.payment.domain.Payment;
@ -123,12 +124,12 @@ public class ReservationControllerTest {
@DisplayName("대기중인 예약을 취소한다.")
void cancelWaiting() {
// given
Member member = memberRepository.save(new Member("name", "email@email.com", "password", Role.MEMBER));
Member member = memberRepository.save(new Member(null, "name", "email@email.com", "password", Role.MEMBER));
String accessTokenCookie = getAccessTokenCookieByLogin("email@email.com", "password");
ReservationTime reservationTime = reservationTimeRepository.save(new ReservationTime(LocalTime.of(17, 30)));
Theme theme = themeRepository.save(new Theme("테마명", "설명", "썸네일URL"));
Member member1 = memberRepository.save(new Member("name1", "email1r@email.com", "password", Role.MEMBER));
Member member1 = memberRepository.save(new Member(null, "name1", "email1r@email.com", "password", Role.MEMBER));
// when
reservationRepository.save(new Reservation(LocalDate.now().plusDays(1), reservationTime, theme, member1,
@ -150,12 +151,14 @@ public class ReservationControllerTest {
@DisplayName("회원은 자신이 아닌 다른 회원의 예약을 취소할 수 없다.")
void cantCancelOtherMembersWaiting() {
// given
Member confirmedMember = memberRepository.save(new Member("name", "email@email.com", "password", Role.MEMBER));
Member confirmedMember = memberRepository.save(
new Member(null, "name", "email@email.com", "password", Role.MEMBER));
String accessTokenCookie = getAccessTokenCookieByLogin("email@email.com", "password");
ReservationTime reservationTime = reservationTimeRepository.save(new ReservationTime(LocalTime.of(17, 30)));
Theme theme = themeRepository.save(new Theme("테마명", "설명", "썸네일URL"));
Member waitingMember = memberRepository.save(new Member("name1", "email1r@email.com", "password", Role.MEMBER));
Member waitingMember = memberRepository.save(
new Member(null, "name1", "email1r@email.com", "password", Role.MEMBER));
// when
reservationRepository.save(new Reservation(LocalDate.now().plusDays(1), reservationTime, theme, confirmedMember,
@ -181,7 +184,7 @@ public class ReservationControllerTest {
ReservationTime reservationTime = reservationTimeRepository.save(new ReservationTime(LocalTime.of(17, 30)));
Theme theme = themeRepository.save(new Theme("테마명", "설명", "썸네일URL"));
Member member = memberRepository.save(new Member("name", "email@email.com", "password", Role.MEMBER));
Member member = memberRepository.save(new Member(null, "name", "email@email.com", "password", Role.MEMBER));
// when
reservationRepository.save(
@ -205,7 +208,7 @@ public class ReservationControllerTest {
@DisplayName("예약 취소는 관리자만 할 수 있다.")
void canRemoveMyReservation() {
// given
Member member = memberRepository.save(new Member("name", "email@email.com", "password", Role.MEMBER));
Member member = memberRepository.save(new Member(null, "name", "email@email.com", "password", Role.MEMBER));
String accessTokenCookie = getAccessTokenCookieByLogin(member.getEmail(), member.getPassword());
ReservationTime reservationTime = reservationTimeRepository.save(new ReservationTime(LocalTime.of(17, 30)));
@ -230,8 +233,10 @@ public class ReservationControllerTest {
ReservationTime reservationTime = reservationTimeRepository.save(new ReservationTime(LocalTime.of(17, 30)));
Theme theme = themeRepository.save(new Theme("테마명", "설명", "썸네일URL"));
Member confirmedMember = memberRepository.save(new Member("name1", "email@email.com", "password", Role.MEMBER));
Member waitingMember = memberRepository.save(new Member("name1", "email1@email.com", "password", Role.MEMBER));
Member confirmedMember = memberRepository.save(
new Member(null, "name1", "email@email.com", "password", Role.MEMBER));
Member waitingMember = memberRepository.save(
new Member(null, "name1", "email1@email.com", "password", Role.MEMBER));
reservationRepository.save(
new Reservation(LocalDate.now(), reservationTime, theme, confirmedMember, ReservationStatus.CONFIRMED));
@ -251,12 +256,13 @@ public class ReservationControllerTest {
@DisplayName("본인의 예약이 아니더라도 관리자 권한이 있으면 예약 정보를 삭제할 수 있다.")
void readReservationsSizeAfterPostAndDelete() {
// given
Member member = memberRepository.save(new Member("name", "admin@admin.com", "password", Role.ADMIN));
Member member = memberRepository.save(new Member(null, "name", "admin@admin.com", "password", Role.ADMIN));
String accessTokenCookie = getAccessTokenCookieByLogin(member.getEmail(), member.getPassword());
ReservationTime reservationTime = reservationTimeRepository.save(new ReservationTime(LocalTime.of(17, 30)));
Theme theme = themeRepository.save(new Theme("테마명", "설명", "썸네일URL"));
Member anotherMember = memberRepository.save(new Member("name", "email@email.com", "password", Role.MEMBER));
Member anotherMember = memberRepository.save(
new Member(null, "name", "email@email.com", "password", Role.MEMBER));
Reservation reservation = reservationRepository.save(
new Reservation(LocalDate.now(), reservationTime, theme, anotherMember, ReservationStatus.CONFIRMED));
@ -340,7 +346,7 @@ public class ReservationControllerTest {
ReservationTime time1 = reservationTimeRepository.save(new ReservationTime(LocalTime.of(18, 30)));
ReservationTime time2 = reservationTimeRepository.save(new ReservationTime(LocalTime.of(19, 30)));
Member member = memberRepository.save(new Member("name", "email@email.com", "password", Role.ADMIN));
Member member = memberRepository.save(new Member(null, "name", "email@email.com", "password", Role.ADMIN));
String accessToken = getAccessTokenCookieByLogin("email@email.com", "password");
// when : 예약은 2개, 예약 대기는 1개 조회되어야 한다.
@ -370,7 +376,7 @@ public class ReservationControllerTest {
// when
Reservation saved = reservationRepository.save(new Reservation(date, time, theme,
memberRepository.save(new Member("name", "email@email.com", "password", Role.MEMBER)),
memberRepository.save(new Member(null, "name", "email@email.com", "password", Role.MEMBER)),
ReservationStatus.CONFIRMED_PAYMENT_REQUIRED));
// then
@ -390,7 +396,7 @@ public class ReservationControllerTest {
LocalDate date = LocalDate.now().plusDays(1);
Theme theme = themeRepository.save(new Theme("테마명", "설명", "썸네일URL"));
ReservationTime time = reservationTimeRepository.save(new ReservationTime(LocalTime.of(17, 30)));
Member member = memberRepository.save(new Member("name", "email@email.com", "password", Role.MEMBER));
Member member = memberRepository.save(new Member(null, "name", "email@email.com", "password", Role.MEMBER));
Reservation saved = reservationRepository.save(
new Reservation(date, time, theme, member, ReservationStatus.CONFIRMED));
@ -420,7 +426,7 @@ public class ReservationControllerTest {
LocalDate date = localDateTime.toLocalDate();
ReservationTime time = reservationTimeRepository.save(new ReservationTime(localDateTime.toLocalTime()));
Theme theme = themeRepository.save(new Theme("테마명", "설명", "썸네일URL"));
Member member = memberRepository.save(new Member("name", "email@email.com", "password", Role.MEMBER));
Member member = memberRepository.save(new Member(null, "name", "email@email.com", "password", Role.MEMBER));
String accessToken = getAccessTokenCookieByLogin(member.getEmail(), member.getPassword());
// when : 이전 날짜의 예약을 추가하여 결제 승인 이후 DB 저장 과정에서 예외를 발생시킨다.
@ -513,8 +519,8 @@ public class ReservationControllerTest {
LocalDate date = localDateTime.toLocalDate();
ReservationTime time = reservationTimeRepository.save(new ReservationTime(localDateTime.toLocalTime()));
Theme theme = themeRepository.save(new Theme("테마명", "설명", "썸네일URL"));
Member member = memberRepository.save(new Member("name", "email@email.com", "password", Role.MEMBER));
Member member1 = memberRepository.save(new Member("name1", "email1@email.com", "password", Role.MEMBER));
Member member = memberRepository.save(new Member(null, "name", "email@email.com", "password", Role.MEMBER));
Member member1 = memberRepository.save(new Member(null, "name1", "email1@email.com", "password", Role.MEMBER));
String accessToken = getAccessTokenCookieByLogin(member.getEmail(), member.getPassword());
reservationRepository.save(new Reservation(date, time, theme, member1, ReservationStatus.CONFIRMED));
@ -539,7 +545,7 @@ public class ReservationControllerTest {
LocalDate date = localDateTime.toLocalDate();
ReservationTime time = reservationTimeRepository.save(new ReservationTime(localDateTime.toLocalTime()));
Theme theme = themeRepository.save(new Theme("테마명", "설명", "썸네일URL"));
Member member = memberRepository.save(new Member("name", "email@email.com", "password", Role.MEMBER));
Member member = memberRepository.save(new Member(null, "name", "email@email.com", "password", Role.MEMBER));
String accessToken = getAdminAccessTokenCookieByLogin("admin@email.com", "password");
Reservation waiting = reservationRepository.save(
@ -584,7 +590,7 @@ public class ReservationControllerTest {
LocalDate date = localDateTime.toLocalDate();
ReservationTime time = reservationTimeRepository.save(new ReservationTime(localDateTime.toLocalTime()));
Theme theme = themeRepository.save(new Theme("테마명", "설명", "썸네일URL"));
Member member = memberRepository.save(new Member("name", "email@email.com", "password", Role.MEMBER));
Member member = memberRepository.save(new Member(null, "name", "email@email.com", "password", Role.MEMBER));
String adminAccessToken = getAdminAccessTokenCookieByLogin("admin@email.com", "password");
@ -600,7 +606,7 @@ public class ReservationControllerTest {
}
private String getAdminAccessTokenCookieByLogin(final String email, final String password) {
memberRepository.save(new Member("이름", email, password, Role.ADMIN));
memberRepository.save(new Member(null, "이름", email, password, Role.ADMIN));
Map<String, String> loginParams = Map.of(
"email", email,

View File

@ -22,8 +22,8 @@ import io.restassured.RestAssured;
import io.restassured.http.ContentType;
import io.restassured.http.Header;
import roomescape.member.infrastructure.entity.Member;
import roomescape.member.infrastructure.entity.Role;
import roomescape.member.infrastructure.entity.MemberRepository;
import roomescape.member.infrastructure.entity.Role;
import roomescape.reservation.domain.Reservation;
import roomescape.reservation.domain.ReservationStatus;
import roomescape.reservation.domain.ReservationTime;
@ -199,7 +199,7 @@ public class ReservationTimeControllerTest {
}
private String getAdminAccessTokenCookieByLogin(String email, String password) {
memberRepository.save(new Member("이름", email, password, Role.ADMIN));
memberRepository.save(new Member(null, "이름", email, password, Role.ADMIN));
Map<String, String> loginParams = Map.of(
"email", email,
@ -225,7 +225,7 @@ public class ReservationTimeControllerTest {
ReservationTime reservationTime2 = reservationTimeRepository.save(new ReservationTime(LocalTime.of(17, 30)));
ReservationTime reservationTime3 = reservationTimeRepository.save(new ReservationTime(LocalTime.of(18, 30)));
Theme theme = themeRepository.save(new Theme("테마명1", "설명", "썸네일URL"));
Member member = memberRepository.save(new Member("name", "email@email.com", "password", Role.MEMBER));
Member member = memberRepository.save(new Member(null, "name", "email@email.com", "password", Role.MEMBER));
reservationRepository.save(
new Reservation(today.plusDays(1), reservationTime1, theme, member, ReservationStatus.CONFIRMED));

View File

@ -34,17 +34,17 @@ public class ReservationTest {
Arguments.of(null,
new ReservationTime(LocalTime.now().plusHours(1)),
new Theme("테마명", "설명", "썸네일URI"),
new Member("name", "email@email.com", "password", Role.MEMBER)),
new Member(null, "name", "email@email.com", "password", Role.MEMBER)),
Arguments.of(
LocalDate.now(),
null,
new Theme("테마명", "설명", "썸네일URI"),
new Member("name", "email@email.com", "password", Role.MEMBER)),
new Member(null, "name", "email@email.com", "password", Role.MEMBER)),
Arguments.of(
LocalDate.now(),
new ReservationTime(LocalTime.now().plusHours(1)),
null,
new Member("name", "email@email.com", "password", Role.MEMBER)),
new Member(null, "name", "email@email.com", "password", Role.MEMBER)),
Arguments.of(
LocalDate.now(),
new ReservationTime(LocalTime.now().plusHours(1)),

View File

@ -14,8 +14,8 @@ import org.springframework.boot.test.autoconfigure.orm.jpa.DataJpaTest;
import org.springframework.data.jpa.domain.Specification;
import roomescape.member.infrastructure.entity.Member;
import roomescape.member.infrastructure.entity.Role;
import roomescape.member.infrastructure.entity.MemberRepository;
import roomescape.member.infrastructure.entity.Role;
import roomescape.reservation.domain.Reservation;
import roomescape.reservation.domain.ReservationStatus;
import roomescape.reservation.domain.ReservationTime;
@ -50,7 +50,7 @@ class ReservationSearchSpecificationTest {
@BeforeEach
void setUp() {
LocalDateTime dateTime = LocalDateTime.now();
Member member = memberRepository.save(new Member("name", "email@email.com", "password", Role.MEMBER));
Member member = memberRepository.save(new Member(null, "name", "email@email.com", "password", Role.MEMBER));
ReservationTime time = timeRepository.save(new ReservationTime(dateTime.toLocalTime()));
Theme theme = themeRepository.save(new Theme("name", "description", "thumbnail"));

View File

@ -14,10 +14,10 @@ import org.springframework.context.annotation.Import;
import org.springframework.test.context.jdbc.Sql;
import org.springframework.test.context.jdbc.Sql.ExecutionPhase;
import roomescape.member.infrastructure.entity.Member;
import roomescape.member.infrastructure.entity.Role;
import roomescape.member.infrastructure.entity.MemberRepository;
import roomescape.member.business.MemberService;
import roomescape.member.infrastructure.entity.Member;
import roomescape.member.infrastructure.entity.MemberRepository;
import roomescape.member.infrastructure.entity.Role;
import roomescape.reservation.domain.Reservation;
import roomescape.reservation.domain.ReservationStatus;
import roomescape.reservation.domain.ReservationTime;
@ -53,8 +53,8 @@ class ReservationServiceTest {
// given
ReservationTime reservationTime = reservationTimeRepository.save(new ReservationTime(LocalTime.of(12, 30)));
Theme theme = themeRepository.save(new Theme("테마명", "설명", "썸네일URL"));
Member member1 = memberRepository.save(new Member("name", "email@email.com", "password", Role.MEMBER));
Member member2 = memberRepository.save(new Member("name2", "email2@email.com", "password", Role.MEMBER));
Member member1 = memberRepository.save(new Member(null, "name", "email@email.com", "password", Role.MEMBER));
Member member2 = memberRepository.save(new Member(null, "name2", "email2@email.com", "password", Role.MEMBER));
LocalDate date = LocalDate.now().plusDays(1L);
// when
@ -75,7 +75,7 @@ class ReservationServiceTest {
// given
ReservationTime reservationTime = reservationTimeRepository.save(new ReservationTime(LocalTime.of(12, 30)));
Theme theme = themeRepository.save(new Theme("테마명", "설명", "썸네일URL"));
Member member = memberRepository.save(new Member("name", "email@email.com", "password", Role.MEMBER));
Member member = memberRepository.save(new Member(null, "name", "email@email.com", "password", Role.MEMBER));
LocalDate date = LocalDate.now().plusDays(1L);
// when
@ -95,8 +95,8 @@ class ReservationServiceTest {
// given
ReservationTime reservationTime = reservationTimeRepository.save(new ReservationTime(LocalTime.of(12, 30)));
Theme theme = themeRepository.save(new Theme("테마명", "설명", "썸네일URL"));
Member member = memberRepository.save(new Member("name", "email@email.com", "password", Role.MEMBER));
Member member1 = memberRepository.save(new Member("name1", "email1@email.com", "password", Role.MEMBER));
Member member = memberRepository.save(new Member(null, "name", "email@email.com", "password", Role.MEMBER));
Member member1 = memberRepository.save(new Member(null, "name1", "email1@email.com", "password", Role.MEMBER));
LocalDate date = LocalDate.now().plusDays(1L);
// when
@ -119,7 +119,7 @@ class ReservationServiceTest {
// given
ReservationTime reservationTime = reservationTimeRepository.save(new ReservationTime(LocalTime.of(12, 30)));
Theme theme = themeRepository.save(new Theme("테마명", "설명", "썸네일URL"));
Member member = memberRepository.save(new Member("name", "email@email.com", "password", Role.MEMBER));
Member member = memberRepository.save(new Member(null, "name", "email@email.com", "password", Role.MEMBER));
LocalDate beforeDate = LocalDate.now().minusDays(1L);
// when & then
@ -136,7 +136,7 @@ class ReservationServiceTest {
LocalDateTime beforeTime = LocalDateTime.now().minusHours(1L).withNano(0);
ReservationTime reservationTime = reservationTimeRepository.save(new ReservationTime(beforeTime.toLocalTime()));
Theme theme = themeRepository.save(new Theme("테마명", "설명", "썸네일URL"));
Member member = memberRepository.save(new Member("name", "email@email.com", "password", Role.MEMBER));
Member member = memberRepository.save(new Member(null, "name", "email@email.com", "password", Role.MEMBER));
// when & then
assertThatThrownBy(() -> reservationService.addReservation(
@ -180,9 +180,9 @@ class ReservationServiceTest {
// given
ReservationTime reservationTime = reservationTimeRepository.save(new ReservationTime(LocalTime.of(12, 30)));
Theme theme = themeRepository.save(new Theme("테마명", "설명", "썸네일URL"));
Member admin = memberRepository.save(new Member("admin", "admin@email.com", "password", Role.ADMIN));
Member member = memberRepository.save(new Member("name", "email@email.com", "password", Role.MEMBER));
Member member1 = memberRepository.save(new Member("name1", "email1@email.com", "password", Role.MEMBER));
Member admin = memberRepository.save(new Member(null, "admin", "admin@email.com", "password", Role.ADMIN));
Member member = memberRepository.save(new Member(null, "name", "email@email.com", "password", Role.MEMBER));
Member member1 = memberRepository.save(new Member(null, "name1", "email1@email.com", "password", Role.MEMBER));
reservationService.addReservation(
new ReservationRequest(LocalDate.now().plusDays(1L), reservationTime.getId(), theme.getId(),
@ -203,8 +203,8 @@ class ReservationServiceTest {
// given
ReservationTime reservationTime = reservationTimeRepository.save(new ReservationTime(LocalTime.of(12, 30)));
Theme theme = themeRepository.save(new Theme("테마명", "설명", "썸네일URL"));
Member admin = memberRepository.save(new Member("admin", "admin@email.com", "password", Role.ADMIN));
Member member = memberRepository.save(new Member("name", "email@email.com", "password", Role.MEMBER));
Member admin = memberRepository.save(new Member(null, "admin", "admin@email.com", "password", Role.ADMIN));
Member member = memberRepository.save(new Member(null, "name", "email@email.com", "password", Role.MEMBER));
// when
ReservationResponse waiting = reservationService.addWaiting(

View File

@ -14,8 +14,8 @@ import org.springframework.test.context.jdbc.Sql;
import org.springframework.test.context.jdbc.Sql.ExecutionPhase;
import roomescape.member.infrastructure.entity.Member;
import roomescape.member.infrastructure.entity.Role;
import roomescape.member.infrastructure.entity.MemberRepository;
import roomescape.member.infrastructure.entity.Role;
import roomescape.reservation.domain.Reservation;
import roomescape.reservation.domain.ReservationStatus;
import roomescape.reservation.domain.ReservationTime;
@ -75,7 +75,7 @@ class ReservationTimeServiceTest {
ReservationTime reservationTime = reservationTimeRepository.save(
new ReservationTime(localDateTime.toLocalTime()));
Theme theme = themeRepository.save(new Theme("테마명", "설명", "썸네일URL"));
Member member = memberRepository.save(new Member("name", "email@email.com", "password", Role.MEMBER));
Member member = memberRepository.save(new Member(null, "name", "email@email.com", "password", Role.MEMBER));
// when
reservationRepository.save(new Reservation(localDateTime.toLocalDate(), reservationTime, theme, member,

View File

@ -14,8 +14,8 @@ import org.springframework.test.context.jdbc.Sql;
import org.springframework.test.context.jdbc.Sql.ExecutionPhase;
import roomescape.member.infrastructure.entity.Member;
import roomescape.member.infrastructure.entity.Role;
import roomescape.member.infrastructure.entity.MemberRepository;
import roomescape.member.infrastructure.entity.Role;
import roomescape.payment.domain.repository.CanceledPaymentRepository;
import roomescape.payment.domain.repository.PaymentRepository;
import roomescape.payment.dto.request.PaymentCancelRequest;
@ -57,7 +57,7 @@ class ReservationWithPaymentServiceTest {
LocalDateTime localDateTime = LocalDateTime.now().plusDays(1L).withNano(0);
LocalDate date = localDateTime.toLocalDate();
ReservationTime time = reservationTimeRepository.save(new ReservationTime(localDateTime.toLocalTime()));
Member member = memberRepository.save(new Member("member", "email@email.com", "password", Role.MEMBER));
Member member = memberRepository.save(new Member(null, "member", "email@email.com", "password", Role.MEMBER));
Theme theme = themeRepository.save(new Theme("name", "desc", "thumbnail"));
ReservationRequest reservationRequest = new ReservationRequest(date, time.getId(), theme.getId(), "payment-key",
"order-id", 10000L, "NORMAL");
@ -92,7 +92,7 @@ class ReservationWithPaymentServiceTest {
LocalDateTime localDateTime = LocalDateTime.now().plusDays(1L).withNano(0);
LocalDate date = localDateTime.toLocalDate();
ReservationTime time = reservationTimeRepository.save(new ReservationTime(localDateTime.toLocalTime()));
Member member = memberRepository.save(new Member("member", "admin@email.com", "password", Role.ADMIN));
Member member = memberRepository.save(new Member(null, "member", "admin@email.com", "password", Role.ADMIN));
Theme theme = themeRepository.save(new Theme("name", "desc", "thumbnail"));
ReservationRequest reservationRequest = new ReservationRequest(date, time.getId(), theme.getId(), "payment-key",
"order-id", 10000L, "NORMAL");
@ -119,7 +119,7 @@ class ReservationWithPaymentServiceTest {
LocalDateTime localDateTime = LocalDateTime.now().plusHours(1L);
LocalDate date = localDateTime.toLocalDate();
ReservationTime time = reservationTimeRepository.save(new ReservationTime(localDateTime.toLocalTime()));
Member member = memberRepository.save(new Member("member", "admin@email.com", "password", Role.ADMIN));
Member member = memberRepository.save(new Member(null, "member", "admin@email.com", "password", Role.ADMIN));
Theme theme = themeRepository.save(new Theme("name", "desc", "thumbnail"));
Reservation saved = reservationRepository.save(
@ -140,7 +140,7 @@ class ReservationWithPaymentServiceTest {
LocalDateTime localDateTime = LocalDateTime.now().plusDays(1L).withNano(0);
LocalDate date = localDateTime.toLocalDate();
ReservationTime time = reservationTimeRepository.save(new ReservationTime(localDateTime.toLocalTime()));
Member member = memberRepository.save(new Member("member", "admin@email.com", "password", Role.ADMIN));
Member member = memberRepository.save(new Member(null, "member", "admin@email.com", "password", Role.ADMIN));
Theme theme = themeRepository.save(new Theme("name", "desc", "thumbnail"));
ReservationRequest reservationRequest = new ReservationRequest(date, time.getId(), theme.getId(), "payment-key",
"order-id", 10000L, "NORMAL");

View File

@ -15,8 +15,8 @@ import org.springframework.test.context.jdbc.Sql;
import io.restassured.RestAssured;
import io.restassured.http.ContentType;
import roomescape.member.infrastructure.entity.Member;
import roomescape.member.infrastructure.entity.Role;
import roomescape.member.infrastructure.entity.MemberRepository;
import roomescape.member.infrastructure.entity.Role;
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
@Sql(scripts = "/truncate.sql", executionPhase = Sql.ExecutionPhase.BEFORE_TEST_METHOD)
@ -34,7 +34,7 @@ class AuthControllerTest {
// given
String email = "test@email.com";
String password = "12341234";
memberRepository.save(new Member("이름", email, password, Role.MEMBER));
memberRepository.save(new Member(null, "이름", email, password, Role.MEMBER));
Map<String, String> loginParams = Map.of(
"email", email,
@ -99,7 +99,7 @@ class AuthControllerTest {
}
private String getAccessTokenCookieByLogin(final String email, final String password) {
memberRepository.save(new Member("이름", email, password, Role.ADMIN));
memberRepository.save(new Member(null, "이름", email, password, Role.ADMIN));
Map<String, String> loginParams = Map.of(
"email", email,

View File

@ -9,10 +9,10 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.context.annotation.Import;
import roomescape.member.infrastructure.entity.Member;
import roomescape.member.infrastructure.entity.Role;
import roomescape.member.infrastructure.entity.MemberRepository;
import roomescape.member.business.MemberService;
import roomescape.member.infrastructure.entity.Member;
import roomescape.member.infrastructure.entity.MemberRepository;
import roomescape.member.infrastructure.entity.Role;
import roomescape.system.auth.dto.LoginRequest;
import roomescape.system.auth.jwt.JwtHandler;
import roomescape.system.auth.jwt.dto.TokenDto;
@ -31,7 +31,7 @@ class AuthServiceTest {
@DisplayName("로그인 성공시 JWT accessToken 을 반환한다.")
void loginSuccess() {
// given
Member member = memberRepository.save(new Member("이름", "test@test.com", "12341234", Role.MEMBER));
Member member = memberRepository.save(new Member(null, "이름", "test@test.com", "12341234", Role.MEMBER));
// when
TokenDto response = authService.login(new LoginRequest(member.getEmail(), member.getPassword()));

View File

@ -19,8 +19,8 @@ import io.restassured.RestAssured;
import io.restassured.http.ContentType;
import io.restassured.http.Header;
import roomescape.member.infrastructure.entity.Member;
import roomescape.member.infrastructure.entity.Role;
import roomescape.member.infrastructure.entity.MemberRepository;
import roomescape.member.infrastructure.entity.Role;
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
@Sql(scripts = "/truncate.sql", executionPhase = ExecutionPhase.BEFORE_TEST_METHOD)
@ -165,7 +165,7 @@ class ThemeControllerTest {
}
private String getAdminAccessTokenCookieByLogin(final String email, final String password) {
memberRepository.save(new Member("이름", email, password, Role.ADMIN));
memberRepository.save(new Member(null, "이름", email, password, Role.ADMIN));
Map<String, String> loginParams = Map.of(
"email", email,

View File

@ -13,10 +13,10 @@ import org.springframework.boot.test.autoconfigure.orm.jpa.DataJpaTest;
import org.springframework.context.annotation.Import;
import org.springframework.test.context.jdbc.Sql;
import roomescape.member.infrastructure.entity.Member;
import roomescape.member.infrastructure.entity.Role;
import roomescape.member.infrastructure.entity.MemberRepository;
import roomescape.member.business.MemberService;
import roomescape.member.infrastructure.entity.Member;
import roomescape.member.infrastructure.entity.MemberRepository;
import roomescape.member.infrastructure.entity.Role;
import roomescape.reservation.dto.request.ReservationRequest;
import roomescape.reservation.dto.request.ReservationTimeRequest;
import roomescape.reservation.dto.response.ReservationTimeResponse;
@ -152,7 +152,7 @@ class ThemeServiceTest {
ReservationTimeResponse time = reservationTimeService.addTime(
new ReservationTimeRequest(dateTime.toLocalTime()));
Theme theme = themeRepository.save(new Theme("name", "description", "thumbnail"));
Member member = memberRepository.save(new Member("member", "password", "name", Role.MEMBER));
Member member = memberRepository.save(new Member(null, "member", "password", "name", Role.MEMBER));
reservationService.addReservation(
new ReservationRequest(dateTime.toLocalDate(), time.id(), theme.getId(), "paymentKey", "orderId", 1000L,
"NORMAL"), member.getId());