我有一个包含注销端点的spring控制器
@PostMapping("/logout")
public ResponseEntity<Void> logout() {
var request = ((ServletRequestAttributes) RequestContextHolder.currentRequestAttributes()).getRequest();
try {
request.logout();
return new ResponseEntity<>(HttpStatus.OK);
} catch (ServletException e) {
log.error("Unable to logout");
return new ResponseEntity<>(HttpStatus.INTERNAL_SERVER_ERROR);
}
}
如何使用mockmvc来测试它?
到目前为止,我只有这段代码,但是我不知道如何测试request.logout()是否被调用(它的效果如何?)。
mvc.perform(MockMvcRequestBuilders.post("/logout").principal(principal)).expect(??)
1条答案
按热度按时间fgw7neuy1#
从这篇文章:
使用spring安全测试包,请尝试以下代码:
或: