Estoy tratando de escribir algunos Unit Tests para probar algunos NSOperations
personalizados que estamos escribiendo. Lo que me gustaría hacer es crear un simulacro de NSOperation
y ponerlo en el NSOperationQueue
, y luego esperar a que termine. Sé que puedo mezclar los métodos y no usar OCMoc
k en absoluto, pero realmente no quiero hacer eso. Me gustaría usar OCMock
. El código que estoy tratando de correr es algo como lo siguiente:OCMock an NSOperation
MYOperation *operation = [MYOperation new];
id mockOperation = [OCMockObject partialMockForObject:operation];
[NSOperationQueue *queue = [NSOperationQueue new];
[queue setMaxConcurrentOperationCount:1];
[queue addOperation:mockOperation];
Cuando la prueba de la unidad llega a esta línea:
[queue addOperation:mockOperation];
recibo una llamada a un objeto excepción desasignado. ¿Alguien tiene alguna sugerencia sobre cómo puedo superar esto?
¿Es este un proyecto de ARC? –
Sí, es un proyecto ARC. –
Existe un problema conocido en el tiempo de ejecución de Apple que afecta a OCMock cuando ARC está habilitado. Más detalles aquí: http://www.mulle-kybernetik.com/forum/viewtopic.php?f=4&t=252 –