Вы издеваетесь над методом + imageMightThrowWithData: error:, но затем пытаетесь вызвать проверяемый метод как часть проверяемой реализации. Я не уверен, каков будет результат, но меня не удивит, если это просто не получится и вернет ноль. Вы используете OCMStrictClassMock, что означает, что вы больше не можете вызывать какие-либо методы класса в UIImage, включая ваши собственные.
Однако, поскольку imageData уже предоставляется в качестве аргумента, вам вообще не нужно его высмеивать - просто передайте аргумент, с которым вы хотите проверить. На самом деле, вам не нужно высмеивать + imageWithData: либо. Просто передайте imageData, который у вас уже есть. Я мог бы видеть mocking + imageWithData: бросать с нестрогой насмешкой, чтобы протестировать этот случай (если вы не можете легко получить NSData, который вначале вызовет метод Apple), но для этого тест Я не вижу необходимости использовать OCMock вообще. Так что просто удалите OCMStrictClassMock и два вызова OCMStub, и я думаю, что это должно работать.
Если вы хотите смоделировать метод imageWithData: так, чтобы он возвращался быстрее, я думаю, это должно сработать, но используйте OCMClassMock, а не строгий, так что вы все еще можете протестировать свой собственный метод класса, а затем не OCMStub метод, который вы пытаетесь проверить.