Я пытаюсь написать модульный тест для контроллера. Некоторые зависимости (например, класс обслуживания) я издеваюсь с @MockBean
. Но есть и другие зависимости, которые я хочу, чтобы Spring создавал бины как обычно. Возможно ли это?
@RunWith(SpringRunner.class)
@WebMvcTest(JwtAuthenticationController.class)
public class JwtControllerTests {
@MockBean
private JwtUserDetailsService jwtUserDetailsService;
@MockBean
private AuthenticationManager authenticationManager;
@ ? ? ?
private JwtTokenUtil jwtTokenUtil
public void auth_Success() throws Exception {
when(
jwtUserDetailsService.loadUserByUsername(anyString())
).thenReturn(adminUserDetails);
RequestBuilder request = MockMvcRequestBuilders
.post("/api/v1/authenticate")
.contentType(MediaType.APPLICATION_JSON)
.content(authBody);
}
}
Код контроллера:
public class JwtAuthenticationController {
@Autowired
private AuthenticationManager authenticationManager;
@Autowired
private JwtTokenUtil jwtTokenUtil;
@Autowired
private JwtUserDetailsService jwtUserDetailsService;
}