Всем привет, столкнулся с такой проблемой, когда запускают приложение всё хорошо и отлично работает, но в тоже время когда пытаюсь сделать тесты - падает ошибка мол падаю null в проверке создания токена и проверки url на регистрацию.
Помимо кода ниже, в пропертях так же установлен флаг server.servlet.contextPath=/api
@AutoConfigureWebMvc
@WebMvcTest(AuthController.class)
@ExtendWith(SpringExtension.class)
class AuthControllerTest {
@Autowired
private MockMvc mockMvc;
@MockBean
@Qualifier("userDetailsServiceImpl")
private UserDetailsService userDetailsService;
@MockBean
private JwtUtil jwtUtil;
@MockBean
private JwtTokenFilter jwtTokenFilter;
@MockBean
private PasswordService passwordService;
@MockBean
private AuthenticationManager authenticationManager;
@MockBean
private UsersService userService;
@MockBean
private BCryptPasswordEncoder passwordEncoder;
@MockBean
private JwtAuthEntryPointJwt jwtAuthEntryPointJwt;
private ObjectMapper objectMapper = new ObjectMapper();
private RegistrationRequest registration = new RegistrationRequest();
@Test
void shouldNotBeNull() {
Assert.notNull(mockMvc);
}
@Test
void shouldCreateToken(){
UserDetailsImpl userDetails = returnUserDetails();
String token = jwtUtil.createToken("userDetails.getEmail()", Collections.singleton(new SimpleGrantedAuthority("ADMIN")));
Assert.notNull(token);
}<img src="https://habrastorage.org/webt/60/c0/82/60c082e769eb4809635868.png" alt="image"/><img src="https://habrastorage.org/webt/60/c0/83/60c08309eb06c424517440.png" alt="image"/>
@Test
void shouldRegisterUsers() throws Exception {
User user = User.builder().username("User Userowski").email("user@gmail.com")
.roles(Collections.singletonList(new Role("1", ERole.CUSTOMER)))
.password("123").enabled(false).activationToken("123qwe").build();
doNothing().when(userService).create(user);
mockMvc.perform(post("/api/register")
.content(objectMapper.writeValueAsBytes(registration))
.contentType(MediaType.APPLICATION_JSON))
.andExpect(status().isOk());
verify(userService, times(1)).create(user);
}