-
Notifications
You must be signed in to change notification settings - Fork 4
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Member 저장 시 save 메서드 사용 및 패스워드 암호화 로직 수정 (#41)
* chore(BE): MemberRepository 인터페이스 수정 save 메서드 사용하기 위해 기존에 구현했던 insert 메서드 삭제 * feat(BE): Member 도메인 클래스 수정 생성자 대신 정적 팩토리 메서드 사용하여 생성하도록 수정 createdAt, updatedAt, isDeleted 멤버 변수에는 생성 시 항상 같은 값이 들어가므로 인자로 따로 받지 않고 생성자에서 직접 저장 빈 생성자 구현 * feat(BE): MemberRepositoryTest 수정 Member 클래스의 정적 팩토리 메서드로 객체 생성 부분 수정 기존에 사용하던 insert 메서드 대신 saveAll 메서드를 통해 Member 저장 * feat(BE): MemberServiceImpl 수정 Member 클래스의 정적 팩토리 메서드로 Member 생성 기존에 사용하던 insert 메서드 대신 save 메서드로 Member 저장 * chore(BE): MemberSignUpValidatorTest 수정 메서드명의 통일을 위해 일부 메서드명 수정 * chore(BE): 프론트엔드와 협의를 통해 이메일, 패스워드 정규식 변경 TODO 삭제 * chore(BE): Member 도메인 클래스 수정 멤버 변수로 salt 추가 of 메서드에 salt 추가 salt getter 추가 * chore(BE): MemberRepositoryTest 수정 insertMembers 메서드에서 Member 생성하는 부분에 salt 추가 * chore(BE): PasswordEncryptor 인터페이스에 getSalt 메서드 추가 * feat(BE): PasswordEncryptorImpl 클래스 수정 salt 값 사용해서 encrypt 메서드 로직 수정 salt 값 생성하는 getSalt 메서드 구현 * chore(BE): PasswordEncryptorImplTest 수정 변경된 encrypt 메서드와 match 메서드에 맞게 테스트 코드 수정 * chore(BE): MemberServiceImpl 클래스 수정 PasswordEncryptor의 getSalt 메서드를 통해 salt 생성 생성한 salt를 사용하여 비밀번호 암호화 암호화된 비밀번호와 salt 값을 사용하여 Member 객체 생성하도록 수정
- Loading branch information
Showing
14 changed files
with
92 additions
and
113 deletions.
There are no files selected for viewing
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
18 changes: 1 addition & 17 deletions
18
backend/src/main/java/dev/be/dorothy/member/repository/MemberRepository.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
7 changes: 5 additions & 2 deletions
7
backend/src/main/java/dev/be/dorothy/member/service/PasswordEncryptor.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,9 @@ | ||
package dev.be.dorothy.member.service; | ||
|
||
public interface PasswordEncryptor { | ||
String encrypt(String password); | ||
void match(String password, String hashedPassword); | ||
String encrypt(String password, String salt); | ||
|
||
void match(String password, String hashedPassword, String salt); | ||
|
||
String getSalt(); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -7,7 +7,6 @@ | |
import org.springframework.boot.test.autoconfigure.data.jdbc.DataJdbcTest; | ||
import org.springframework.boot.test.autoconfigure.jdbc.AutoConfigureTestDatabase; | ||
|
||
import java.time.LocalDateTime; | ||
import java.util.List; | ||
import java.util.Optional; | ||
|
||
|
@@ -22,57 +21,36 @@ public class MemberRepositoryTest { | |
|
||
@BeforeAll | ||
void insertMembers() { | ||
Member member1 = new Member( | ||
Member member1 = Member.of( | ||
"dorothy", | ||
"abcd1234", | ||
"2p7VxertGPCkNfnr", | ||
"dorothy", | ||
"[email protected]", | ||
"", | ||
LocalDateTime.now(), | ||
LocalDateTime.now(), | ||
false, | ||
MemberRole.MEMBER | ||
); | ||
|
||
Member member2 = new Member( | ||
Member member2 = Member.of( | ||
"lucas", | ||
"abcd1234", | ||
"RCDlu97BoefSufzH", | ||
"lucas", | ||
"[email protected]", | ||
"", | ||
LocalDateTime.now(), | ||
LocalDateTime.now(), | ||
false, | ||
MemberRole.MEMBER | ||
); | ||
|
||
Member member3 = new Member( | ||
Member member3 = Member.of( | ||
"skywalker", | ||
"abcd1234", | ||
"N27TS6t8Vj9JrzAz", | ||
"skywalker", | ||
"[email protected]", | ||
"", | ||
LocalDateTime.now(), | ||
LocalDateTime.now(), | ||
false, | ||
MemberRole.MEMBER | ||
); | ||
|
||
List<Member> members = List.of(member1, member2, member3); | ||
|
||
for (Member member: members) { | ||
memberRepository.insert( | ||
member.getMemberId(), | ||
member.getPassword(), | ||
member.getName(), | ||
member.getEmail(), | ||
member.getImage(), | ||
member.getCreatedAt().toString(), | ||
member.getUpdatedAt().toString(), | ||
member.isDeleted(), | ||
member.getRole().name() | ||
); | ||
} | ||
memberRepository.saveAll(members); | ||
} | ||
|
||
@AfterAll | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -25,7 +25,7 @@ public class MemberSignUpValidatorTest { | |
|
||
@Test | ||
@DisplayName("이메일이 정규식에 부합하는지 테스트 - 실패 케이스") | ||
void emailRegexValidateFailTest() { | ||
void validateEmailRegexFailTest() { | ||
String case1 = ""; | ||
String case2 = "example"; | ||
String case3 = "@"; | ||
|
@@ -43,15 +43,15 @@ void emailRegexValidateFailTest() { | |
|
||
@Test | ||
@DisplayName("이메일이 정규식에 부합하는지 테스트 - 성공 케이스") | ||
void emailRegexValidateSuccessTest() { | ||
void validateEmailRegexSuccessTest() { | ||
String case1 = "[email protected]"; | ||
|
||
assertDoesNotThrow(() -> memberSignUpValidatorImpl.validateEmailRegex(case1)); | ||
} | ||
|
||
@Test | ||
@DisplayName("ID 중복 체크 - 중복인 경우") | ||
void idDuplicateValidate() { | ||
void validateDuplicatedId() { | ||
String case1 = "abcd1234"; | ||
given(memberRepository.countByMemberId(case1)).willReturn(1); | ||
|
||
|
@@ -64,7 +64,7 @@ void idDuplicateValidate() { | |
|
||
@Test | ||
@DisplayName("ID가 정규식에 부합하는지 테스트 - 실패 케이스") | ||
void idRegexValidate() { | ||
void validateIdRegex() { | ||
String case1 = ""; | ||
String case2 = "한글"; | ||
String case3 = "???"; | ||
|
Oops, something went wrong.