7 iphone cocoa cocoa-touch objective-c ios
我想用OCMock测试一些代码.
代码的内部是调用[NSObject isKindOfClass]
我提供给代码的模拟对象,如下所示:
if ([object isKindOfClass:[FancyClass class]]) { ...}
Run Code Online (Sandbox Code Playgroud)
但是,当我提供如下所示的基于OCMockObject的模拟时:
mock = [OCMockObject mockForClass:[FancyClass class]];
Run Code Online (Sandbox Code Playgroud)
它似乎没有通过isKindOfClass
测试.
有什么建议?
一般规则是,如果你正在调用isKindOfClass:
并且你没有通过其中一个plist类(例如,NSString或NSNumber),那么你就是在做错了.
如果该方法根据其参数所在的类执行两个或更多不同的操作,则将其复制到多个方法中,并分别测试每个方法.
如果该方法只做一件事,但必须根据对象的不同而与对象进行不同的交互,那么:
isKindOfClass:
检查. 归档时间: |
|
查看次数: |
1500 次 |
最近记录: |