我正在建立一些猕猴桃测试,并得到警告,我无法解释。我是猕猴桃的新手。

我有一个模拟对象设置:

id conversationMock = [KWMock mockForProtocol:@protocol(Conversation)];
[conversationMock stub:@selector(end)];

在我的 Controller 中,有一个叫做“对话”的属性:
@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]应该]接收]结束];

10-07 12:27