NSObject 类方法在单元测试目标中返回指针而不是类



我注意到,当我进行单元测试时,+(Class)class方法只为我的一个类返回正确的值。

Class class1 = [DiscoverCell class];//(Class) 0xd264d60
Class class2 = NSClassFromString(@"DiscoverCell");//(Class) DiscoverCell
STAssertEquals(class1, class2, nil);

这是 .h

#import <UIKit/UIKit.h>
@class DiscoverItem;
@interface DiscoverCell : UITableViewCell
+ (CGFloat)getHeightWithItem:(DiscoverItem *)item;
- (void)setupWithItem:(DiscoverItem *)item;
@end

我已经尝试过其他子类,它们都工作正常。好像就是这个类。

知道为什么会发生这种情况吗?

我想出了问题。DiscoverCell 目标成员资格包括我的应用目标和测试目标。因此,有一个直接链接的 AND 一个来自 OCMock 的动态生成的类。通过仅为我的应用目标设置目标成员身份来修复此问题。

无法在 Xcode 5.0 中使用 OCMock 2.1+ 存根类方法

最新更新