Como o @WebMvcTest funciona com o OAuth?

Só tive dificuldade para fazer meus testes de unidade de controladores funcionarem porque, na IMO, o que estáDoc Spring não é suficiente se estiver usando o OAuth. No meu caso, é o Oauth2 com JWT.

Eu tentei usar@WithMockUser, @WithUserDetails e até definir minha própria anotação com@WithSecurityContext e um costumeUserSecurityContextFactory mas sempre obtive usuário anônimo no UserSecurityContext quando a expressão de segurança era avaliada, independentemente do que eu definir o contexto de teste na minha fábrica ...

Proponho a solução que encontrei logo abaixo, mas como não tenho certeza que zombar do TokenService é o caminho mais eficiente / limpo a seguir, sinta-se à vontade para fornecer melhor.

questionAnswers(1)

yourAnswerToTheQuestion