我有一个控制器类,里面有一个命令对象。我有一个方法 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)
}
}
如何处理测试用例中的内部类命令对象。我嘲笑它吗?我尝试过使用 mockCommandObject(?),但不确定我应该如何将内部类命令对象传递给它?