분류 전체보기
-
ControllerTest - Pageable, SearchDTOBackEnd/스프링 2022. 8. 2. 16:21
응답데이터 { "content": [ { "id": 1, "title": "welcome", "content": "hello world", "categoryName": "spring", "email": "seung90@gmail.com", "viewCount": 3 } ], "pageable": { "sort": { "unsorted": true, "sorted": false, "empty": true }, "pageNumber": 0, "pageSize": 20, "offset": 0, "paged": true, "unpaged": false }, "totalPages": 1, "totalElements": 1, "last": true, "numberOfElements": 1, "first": true..
-
-
BDDMokito.given return nullBackEnd/스프링 2022. 7. 29. 16:31
Controller 에서는 BoardRequest 를 받고, 서비스는 Board 를 받아 Mocking 할 때 특정 Board 를 생성해 given 인자로 사용하면 항상 null이 반환된다. 테스트 코드에서 들어가는 request 와 서비스 Mocking 에 인자는 다른 객체이기 때문에 any 로 타입명시를 해줘 해결했다. given(boardService.save(any(Board.class) )).willReturn(board); String body = objectMapper.writeValueAsString(boardRequest); mockMvc.perform(post("/api/boards") .content(body) .contentType(MediaType.APPLICATION_JSON))..
-
-
API Long 반환 > RestDocs > requestFields ClassCastException카테고리 없음 2022. 7. 29. 11:39
API 에서 save 처리 후 Long 타입 ID 만 반환하게 했더니 restdoc 테스트에서 계속 Class Cast 에러가 발생했다. Long 대신 객체를 반환하는 것으로 변경 ava.lang.ClassCastException: class java.lang.Integer cannot be cast to class java.util.List (java.lang.Integer and java.util.List are in module java.base of loader 'bootstrap') https://lannstark.tistory.com/10 Spring REST DOCS를 Spring Boot에 적용하기 (2) 본 포스팅에서는 Spring Boot에 적용된 Spring REST Docs를 보다 ..
-
@AuthenticationPrincipal nullBackEnd/스프링 2022. 7. 28. 19:59
CustomService 에서 반환하는 Class 인 User 클래스로 @AuthenticationPrincipal 어노테이션에 들어온다는 정보가 많은데, 그것은 스프링 기본인 AbstractUserDetailAuthenticationProvider 를 사용하면 UserDetailService 에서 반환한 객체를 principal 로 세팅하기 때문이고, 나는 Provider 를 직접 생성했고 principal 에 username (이메일) 정보만 꺼내서 넣었기 때문에 String 으로 값이 들어온다. @AuthenticationPrincipal 필드 타입을 잘못 지정하면 null 이 들어온다. //AbstractUserDetailAuthenticationProvider.class public Authen..
-