我正在寻找一个传递给模拟对象的 block 。这是被模拟的类的具体功能:
[self.imageFetcher fetchImageWithURL:url success:^(NSURL *successUrl, UIImage *image) {
//Implementation Details here
}];
这是我 try catch 该 block 的尝试:
OCMExpect([imageFetcher fetchImageWithURL:urlForSuccess success:[OCMArg checkWithBlock:^(void(^myBlock)(NSURL *,UIImage *)){
myBlock(urlForSuccess,[UIImage new]);
return YES;
}]]);
但是,这似乎不起作用。如何使用 checkWithBlock
捕获 block 并能够使用我选择的参数调用该 block ?
最佳答案
如果您想调用传递给模拟的 block ,那么您应该使用[OCMArg invokeBlock]
。有关详细信息,请参阅文档中的第 2.6 节:http://ocmock.org/reference/#stubing-methods
关于ios - 使用 OCMock 时捕获传递到方法中的 block ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45844900/