コントローラー クラスがあり、その中にコマンド オブジェクトがあります。次のように、このコマンド オブジェクトを使用するメソッド find() があります。
class itemController{
//command object
class SearchCommand{
String email
static constraints={
email blank:false,email:true
}
def find = {SearchCommand sc ->
if(!sc.hasErrors()){
----- do something---
}
}
現在、コントローラーの find メソッドをテストするテスト ケースを作成しています。しかし、テストケースは失敗します
if(!sc.hasErrors())
sc はまだ「null」であるためです。テスト ケースでこの内部クラス コマンド オブジェクトを処理する方法がわかりません。これまでに書いたテストケースは次のとおりです。
class itemControllerTests extends ControllerUnitTestCase {
void testFind(){
def model = controller.find()
assertNotNull(model)
}
}
テスト ケースで内部クラス Command Object を処理するにはどうすればよいですか。私はそれを嘲笑しますか?mockCommandObject(?) を使用してみましたが、内部クラスのコマンド オブジェクトをこれに渡す方法がわかりません。