我正在构建一些 Kiwi 测试并收到一个我无法解释的警告。我是 Kiwi 的新手。
我有一个模拟对象设置:
id conversationMock = [KWMock mockForProtocol:@protocol(Conversation)];
[conversationMock stub:@selector(end)];
在我的 Controller 中,有一个名为“conversation”的属性:
@interface MyController ()
@property (nonatomic, assign) id<Conversation> conversation;
@end
模拟被分配给属性,然后在规范中我检查是否在对话中调用了方法“end”:
it(@"should end conversation", ^{
[[[myController.conversation] should] receive] end];
[myController stopTalking];
});
编译器 (LLVM 3.0) 显示警告:“未找到实例方法‘-attachToVerifier:verifier:’”
这是什么原因?这是我需要解决的问题吗? (测试运行正常,检查结束工作正常的方法调用)
最佳答案
将 id 类型转换为 NSObject 可以消除警告:
[[(NSObject*)[myController.conversation] 应该] 接收] 结束];
关于objective-c - Kiwi 规范单元测试 : Instance method '-attachToVerifier:verifier:' not found,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8524747/