AbstractSecurityTest.java 文件源码

java
阅读 28 收藏 0 点赞 0 评论 0

项目:bootstrap 作者:
/**
 * Initialize {@link SecurityContextHolder} for given user.
 * 
 * @param user
 *            the user to set in the context.
 * @param authorities
 *            the optional authorities name
 * @return The configured {@link SecurityContext}.
 */
@SuppressWarnings("unchecked")
protected SecurityContext initSpringSecurityContext(final String user, final GrantedAuthority... authorities) {
    SecurityContextHolder.clearContext();
    final SecurityContext context = Mockito.mock(SecurityContext.class);
    final Authentication authentication = Mockito.mock(Authentication.class);
    final List<GrantedAuthority> authoritiesAsList = Arrays.asList(authorities);
    final User userDetails = new User(user, USER_DETAILS_NA, authoritiesAsList);
    Mockito.when((List<GrantedAuthority>) authentication.getAuthorities()).thenReturn(authoritiesAsList);
    Mockito.when(context.getAuthentication()).thenReturn(authentication);
    Mockito.when(authentication.getPrincipal()).thenReturn(userDetails);
    Mockito.when(authentication.getName()).thenReturn(user);
    SecurityContextHolder.setContext(context);
    return context;
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号