diff --git a/backend/user-service/src/test/java/org/egovframe/cloud/userservice/api/UserApiControllerTest.java b/backend/user-service/src/test/java/org/egovframe/cloud/userservice/api/UserApiControllerTest.java deleted file mode 100644 index 5613f0b..0000000 --- a/backend/user-service/src/test/java/org/egovframe/cloud/userservice/api/UserApiControllerTest.java +++ /dev/null @@ -1,143 +0,0 @@ -package org.egovframe.cloud.userservice.api; - -import static org.assertj.core.api.Assertions.assertThat; - -import java.util.List; - -import org.egovframe.cloud.common.domain.Role; -import org.egovframe.cloud.userservice.api.user.dto.UserResponseDto; -import org.egovframe.cloud.userservice.api.user.dto.UserSaveRequestDto; -import org.egovframe.cloud.userservice.api.user.dto.UserUpdateRequestDto; -import org.egovframe.cloud.userservice.domain.user.User; -import org.egovframe.cloud.userservice.domain.user.UserRepository; -import org.egovframe.cloud.userservice.service.user.UserService; -import org.json.JSONObject; -import org.junit.jupiter.api.Assertions; -import org.junit.jupiter.api.MethodOrderer; -import org.junit.jupiter.api.Order; -import org.junit.jupiter.api.Test; -import org.junit.jupiter.api.TestMethodOrder; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.context.properties.EnableConfigurationProperties; -import org.springframework.boot.test.context.SpringBootTest; -import org.springframework.boot.test.web.client.TestRestTemplate; -import org.springframework.http.ResponseEntity; -import org.springframework.test.context.ActiveProfiles; -import org.springframework.test.context.TestPropertySource; -import org.springframework.web.client.RestClientException; - -@TestMethodOrder(MethodOrderer.OrderAnnotation.class) -@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) -@EnableConfigurationProperties -@TestPropertySource(properties = {"spring.config.location=classpath:application-test.yml"}) -@ActiveProfiles(profiles = "test") -class UserApiControllerTest { - - @Autowired - private UserRepository userRepository; - - @Autowired - private UserService userService; - - @Autowired - private TestRestTemplate restTemplate; - -// private static final String USER_SERVICE_URL = "http://localhost:8000/user-service"; - private static final String TEST_COM = "@test.com"; - private static final String TEST_EMAIL = System.currentTimeMillis() + TEST_COM; - private static final String TEST_PASSWORD = "test1234!"; - - @Test - @Order(Integer.MAX_VALUE) - public void cleanup() throws Exception { - // 테스트 후 데이터 삭제 - List users = userRepository.findByEmailContains("test.com"); - users.forEach(user -> userRepository.deleteById(user.getId())); - } - - @Test - @Order(Integer.MIN_VALUE) - public void 사용자_등록된다() throws Exception { - // given - UserSaveRequestDto userSaveRequestDto = UserSaveRequestDto.builder() - .userName("사용자") - .email(TEST_EMAIL) - .password(TEST_PASSWORD) - .roleId(Role.USER.getKey()) - .userStateCode("01") - .build(); - userService.save(userSaveRequestDto); - - // when - UserResponseDto findUser = userService.findByEmail(TEST_EMAIL); - - // then - assertThat(findUser.getEmail()).isEqualTo(TEST_EMAIL); - } - - @Test - @Order(2) - public void 사용자_수정된다() throws Exception { - // given - UserResponseDto findUser = userService.findByEmail(TEST_EMAIL); - UserUpdateRequestDto userUpdateRequestDto = UserUpdateRequestDto.builder() - .userName("사용자수정") - .email(TEST_EMAIL) - .roleId(Role.USER.getKey()) - .userStateCode("01") - .build(); - - // when - userService.update(findUser.getUserId(), userUpdateRequestDto); - UserResponseDto updatedUser = userService.findByEmail(TEST_EMAIL); - - // then - assertThat(updatedUser.getUserName()).isEqualTo("사용자수정"); - } - - @Test - public void 사용자_등록오류() throws Exception { - // given - UserSaveRequestDto userSaveRequestDto = UserSaveRequestDto.builder() - .userName("사용자") - .email("email") - .password("test") - .build(); - - String url = "/api/v1/users"; - - RestClientException restClientException = Assertions.assertThrows(RestClientException.class, () -> { - restTemplate.postForEntity(url, userSaveRequestDto, Long.class); - }); - System.out.println("restClientException.getMessage() = " + restClientException.getMessage()); - } - - @Test - public void 사용자_로그인된다() throws Exception { - // given - JSONObject loginJson = new JSONObject(); - loginJson.put("email", TEST_EMAIL); - loginJson.put("password", TEST_PASSWORD); - - String url = "/login"; - - ResponseEntity responseEntity = restTemplate.postForEntity(url, loginJson.toString(), String.class); - responseEntity.getHeaders().entrySet().forEach(System.out::println); - assertThat(responseEntity.getHeaders().containsKey("access-token")).isTrue(); - } - - @Test - public void 사용자_로그인_오류발생한다() throws Exception { - // given - JSONObject loginJson = new JSONObject(); - loginJson.put("email", TEST_EMAIL); - loginJson.put("password", "test"); - - String url = "/login"; - - ResponseEntity responseEntity = restTemplate.postForEntity(url, loginJson.toString(), String.class); - System.out.println("responseEntity = " + responseEntity); - assertThat(responseEntity.getHeaders().containsKey("access-token")).isFalse(); - } - -} \ No newline at end of file