Skip to content

Commit

Permalink
#29-CustomPasswordEncoder util 클래스로 변경으로 인한 테스트코드 수정
Browse files Browse the repository at this point in the history
  • Loading branch information
reasonSun committed Nov 19, 2022
1 parent 76d0a4b commit 8a295a2
Showing 1 changed file with 22 additions and 17 deletions.
39 changes: 22 additions & 17 deletions src/test/java/flab/quing/user/UserServiceImplTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -4,18 +4,21 @@
import flab.quing.user.dto.StoreManagerResponse;
import flab.quing.user.dto.UserRequest;
import flab.quing.user.dto.UserResponse;
import flab.quing.util.PasswordEncoder;
import flab.quing.util.CustomPasswordEncoder;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.InjectMocks;
import org.mockito.Mock;
import org.mockito.MockedStatic;
import org.mockito.junit.jupiter.MockitoExtension;

import java.util.Optional;

import static org.assertj.core.api.Assertions.assertThat;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.Mockito.mockStatic;
import static org.mockito.Mockito.when;

@ExtendWith(MockitoExtension.class)
Expand All @@ -30,9 +33,6 @@ class UserServiceImplTest {
@Mock
StoreManagerRepository storeManagerRepository;

@Mock
PasswordEncoder passwordEncoder;

final static String HASHED_PASSWORD = "hashedPassword";

@Test
Expand Down Expand Up @@ -77,14 +77,17 @@ void signUp_StoreManager_Success() {
.name("홍길동")
.phoneNumber("010-1234-5678")
.build();
when(passwordEncoder.hashPassword(storeManagerRequest.getPassword())).thenReturn(storeManager.getEncryptedPassword());
when(storeManagerRepository.save(any(StoreManager.class))).thenReturn(storeManager);

//when
StoreManagerResponse result = userService.storeSignUp(storeManagerRequest);
try(MockedStatic mocked = mockStatic(CustomPasswordEncoder.class)) {
mocked.when(() -> CustomPasswordEncoder.hashPassword(storeManagerRequest.getPassword())).thenReturn(storeManager.getEncryptedPassword());
when(storeManagerRepository.save(any(StoreManager.class))).thenReturn(storeManager);

//then
assertThat(result.getLoginId()).isEqualTo("yuseon");
//when
StoreManagerResponse result = userService.storeSignUp(storeManagerRequest);

//then
assertThat(result.getLoginId()).isEqualTo("yuseon");
}
}

@Test
Expand All @@ -98,14 +101,16 @@ void signIn_StoreManager_Success() {
.phoneNumber("010-1234-5678")
.build();
storeManager.setId(1L);
when(storeManagerRepository.findByLoginId("yuseon")).thenReturn(Optional.of(storeManager));
when(passwordEncoder.isMatched("1234", HASHED_PASSWORD)).thenReturn(true);

//when
StoreManagerResponse result = userService.storeSignIn("yuseon", "1234");
try(MockedStatic mocked = mockStatic(CustomPasswordEncoder.class)){
when(storeManagerRepository.findByLoginId("yuseon")).thenReturn(Optional.of(storeManager));
mocked.when(() -> CustomPasswordEncoder.isMatched(anyString(),anyString())).thenReturn(true);
//when
StoreManagerResponse result = userService.storeSignIn("yuseon", "1234");

//then
assertThat(result.getLoginId()).isEqualTo(storeManager.getLoginId());
assertThat(result.getName()).isEqualTo(storeManager.getName());
//then
assertThat(result.getLoginId()).isEqualTo(storeManager.getLoginId());
assertThat(result.getName()).isEqualTo(storeManager.getName());
}
}
}

0 comments on commit 8a295a2

Please sign in to comment.