Objective c 在Kiwi中清除类方法上的存根
我想测试一个从Objective c 在Kiwi中清除类方法上的存根,objective-c,unit-testing,kiwi,Objective C,Unit Testing,Kiwi,我想测试一个从NSUserDefaults读取和写入值的方法。下面是read方法的外观: + (NSDate *)initialImportDate { return [[NSUserDefaults standardUserDefaults] objectForKey:STBInitialImportDateKey]; } 我想存根[NSUserDefaults standardUserDefaults],我以前做过,它工作得很好。假设我们是存根类方法,我们有清晰的类存根 当使用Ki
NSUserDefaults
读取和写入值的方法。下面是read方法的外观:
+ (NSDate *)initialImportDate
{
return [[NSUserDefaults standardUserDefaults] objectForKey:STBInitialImportDateKey];
}
我想存根[NSUserDefaults standardUserDefaults]
,我以前做过,它工作得很好。假设我们是存根类方法,我们有清晰的类存根
当使用Kiwi2.2.4时,我在最后一行得到错误,没有类方法,只有实例一。既然我没有存根对象,这样做合法吗
[[NSUserDefaults class] clearStubs];
是的,您可以安全地在类对象上调用
cleartubs
,因为Objective-c运行时会像普通对象一样向类发送消息,当然前提是目标类上存在选择器
[[NSUserDefaults class] clearStubs];