Jak próbować obiekt poleceń znajdujący się wewnątrz kontrolera

Mam klasę kontrolera, wewnątrz której mam obiekt polecenia. Mam metodę find (), która używa tego obiektu polecenia w następujący sposób:

class itemController{

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

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

}

Teraz piszę przypadek testowy, aby przetestować metodę find w kontrolerze. Ale przypadek testowy kończy się niepowodzeniem

  if(!sc.hasErrors())

ponieważ sc jest nadal „null”. Nie wiem, jak obsługiwać ten obiekt poleceń klasy wewnętrznej w przypadku testowym. Przypadek testowy, który do tej pory napisałem, to:

class itemControllerTests extends ControllerUnitTestCase {

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

Jak obsłużyć klasę wewnętrzną Command Object w przypadku testowym. Czy ja szyję z tego? Próbowałem użyć mockCommandObject (?), Ale nie jestem pewien, jak mam przekazać obiekt polecenia klasy wewnętrznej do tego?

questionAnswers(1)

yourAnswerToTheQuestion