尝试使用 NSInvocation+OCMAdditions.h 中的 getArgumentAtIndexAsObject

Trying to use getArgumentAtIndexAsObject from NSInvocation+OCMAdditions.h

也许这是一件愚蠢的事情...我正在尝试使用

- (id)getArgumentAtIndexAsObject:(NSInteger)argIndex;

来自 NSInvocation+OCMAdditions.h,但我无法导入类别,如果尝试使用该方法不可用。

我正在使用 cocoaPods 获取 OCMock,我导入了 header class:

#import <OCMock/OCMock.h>

也许是 cocoaPods 中的设置?

感谢任何帮助。

谢谢

这是一个专供 OCMock 内部使用的私有方法。它不会作为 pod 的一部分导出。

原因是我想把OCMock这个必须长期支持的publicAPI尽量小。

如果您想在您的项目中使用 getArgumentAtIndexAsObject:,请将相应的头文件添加到您的项目中。但是,不保证该方法在未来的 OCMock 版本中可用。

最后因为Erick说的不能用那个方法,所以我用了这个方法:

//We mock the methods loginWithUser
[[[controllerMocked stub] andDo:^(NSInvocation *invocation) {

    void (^sucessBlock)(NSString *token);

    [invocation getArgument:&sucessBlock atIndex:4];

    sucessBlock(@"1234567890");


}] loginWithUser:[OCMArg any] andPassword:[OCMArg any] withSuccess:[OCMArg any] withFailure:[OCMArg any]];

然而正确答案是埃里克那个:)