Como enganar o objeto de comando que está dentro do controlador

Eu tenho uma classe de controlador, dentro da qual eu tenho um objeto de comando. Eu tenho um método find () que usa esse objeto de comando da seguinte maneira:

class itemController{

    //command object
    class SearchCommand{
        String email
        static constraints={
            email blank:false,email:true
        }

def find = {SearchCommand sc ->
    if(!sc.hasErrors()){
     ----- do something---
}

}

Agora, estou escrevendo um caso de teste para testar o método de localização no controlador. Mas o caso de teste falha em

  if(!sc.hasErrors())

como sc ainda é 'nulo'. Não tenho certeza de como lidar com esse objeto de comando de classe interna no caso de teste. O caso de teste que escrevi até agora é:

class itemControllerTests extends ControllerUnitTestCase {

    void testFind(){
    def model = controller.find()
    assertNotNull(model)
    }
}

Como faço para lidar com o objeto de comando de classe interna no caso de teste. Eu zombo disso? Eu tentei usar mockCommandObject (?), Mas não tenho certeza como devo passar o objeto de comando de classe interna para isso?

questionAnswers(1)

yourAnswerToTheQuestion