いくつかのユニット/統合テストでスプリング セキュリティをモックする方法を探しています。
- グレイル: V2.1.0
- Spring セキュリティ コア: V1.2.7.3
コントローラには次のものがあります。
// some action
def index(){
def user = getLoggedInUser()
render ....
}
...
private getLoggedInUser(){
return User.get(springSecurityService.principal.id)
}
次の方法やその他のさまざまな方法を試しましたが、機能することがわかりません。
void testSomething(){
def dc = new SomeController()
dc.springSecurityService = [
encodePassword: 'password',
reauthenticate: { String u -> true},
loggedIn: true,
principal: [username:"Bob"]]
dc.index()
... assertion....
ユーザーが作成されておらず、principal.id
. 何か提案やより良い代替案はありますか?