userBO에 대한 JUnit test를 진행할 예정이다
아이디 중복 메소드
UserBO
test 코드
@SpringBootTest
class UserBOTest {
@Autowired
UserBO userBO;
@Test
void 아이디중복확인테스트_중복되지않는경우() {
// Given
String loginId = "uniqueId";
// When
UserEntity userEntity = userBO.getUserEntityByLoginId(loginId);
// Then
Assertions.assertNull(userEntity);
}
@Test
void 아이디중복확인테스트_중복되는경우() {
// Given
String loginId = "existingId";
UserEntity mockUserEntity = UserEntity.builder() //중복된 아이디 가진 가짜user객체 생성
.id(1)
.name("Example User")
.loginId(loginId)
.build();
// When : 중복된 아이디를 사용하여 getUserEntityByLoginId 메서드를 호출
when(userRepository.findByLoginId(loginId)).thenReturn(mockUserEntity); //userRepository.findByLoginId 메서드의 반환 값을 설정
UserEntity userEntity = userBO.getUserEntityByLoginId(loginId);
// Then : 반환된 UserEntity 객체가 null이 아니며, 해당 객체의 로그인 아이디가 "existingId"인지 확인
Assertions.assertNotNull(userEntity);
Assertions.assertEquals(loginId, userEntity.getLoginId());
}
}
회원가입 메소드
UserBO
test 코드
@SpringBootTest
class UserBOTest {
@Autowired
UserBO userBO;
@Test
void 회원가입테스트() {
// Given
String loginId = "test";
String password = "aaaa";
String name = "name";
String email = "test@test";
// When
Integer userId = userBO.addUser(loginId, password, name, email);
// Then
Assertions.assertNotNull(userId);
}
}
UserBO의 addUser 메소드가 주어진 입력에 따라 사용자를 데이터베이스에 추가하고 새로운 userId를 반환하는지를 확인