1

条件をチェックするコントローラーアクションがあり、条件の結果に基づいて、フィールドをセッション変数に設定します

コントローラ:

def checkUser={
    if(condition: true){
       session.user = id
    }else{
       session.user=null
    }
}

さて、私のテストケースでは、このセッションのユーザー値を主張する必要がある場合、どうすればよいですか?

私はこのように試しましたが、うまくいきませんでした:

void testSomething(){
    controller.checkUser()
    assertNull(session.user)
}

コントローラに設定されているセッション変数をアサートする方法について何かアイデアはありますか?

4

1 に答える 1

0

テストクラスがControllerUnitTestCaseを拡張しているか、テストMixinを使用していることを確認してください。

CUTCは、コントローラーのテストを容易にするためにいくつかのモックを提供しています。これがあなたがすることです:

void testSomething(){
    controller.checkUser()
    assertNull(mockSession.user)
}
于 2012-07-31T01:16:59.770 に答える