Quiero probar que el controlador llama al método de servicio con los argumentos correctos. ¿Cuál es la mejor manera de hacer eso?Grails mockFor y cómo es mejor que probar El método se llama con argumentos correctos
Mi plan actual es usar mockFor y luego a través de la verificación de cierre el valor pasó. ¿Hay una mejor manera de hacer la prueba a través de mockito o el objeto burlado similar a lo que puedo hacer con mockito para realizar este mismo método llamada prueba valor argumento?
class HappyControllerTests extends ControllerUnitTestCase {
:
void testSomeValue() {
def mockControl = mockFor(HappyService)
def givenSomeItem = null
mockControl.demand.serviceMethod(1..99) { String someItem -> givenSomeItem = someItem; }
controller.happyService = mockControl.createMock()
controller.someAction()
mockControl.verify()
assertEquals("specific value", givenSomeItem)
}
}
Gracias!
me gusta la respuesta de "Ted Naleid". Sin embargo, las grandes tiendas de mensajería instantánea deberían usar mockFor (..) Ver http://grails.org/doc/latest/guide/9.%20Testing.html#9.2 Pruebas de integración "... el uso de estos métodos garantiza que cualquier cambio que realice a las clases dadas no se filtran en otras pruebas ... " – finneycanhelp