对类类型的测试说,当它们看起来相同时,两个类不一样

时间:2014-01-12 03:26:14

标签: ios objective-c testing

在iOS上,我使用Expecta测试某个对象的属性是否正确。这是我对Expecta的期望:

expect(splashController.reachabilityHUD).to.beKindOf([MBProgressHUD class]);

测试中的代码是:

self.reachabilityHUD = [[MBProgressHUD alloc] initWithView:self.view];

测试返回的错误是:

expected: a kind of MBProgressHUD, got an instance of MBProgressHUD, which is not a kind of MBProgressHUD

正如所料,如果我进入lldb,我会得到以下结果:

(lldb) po [splashController.reachabilityHUD class]
MBProgressHUD
(lldb) po [MBProgressHUD class]
MBProgressHUD

然后我将其投入测试:

Class actualClass = [splashController.reachabilityHUD class];
Class expectedClass = [MBProgressHUD class];

我在lldb打印相同的输出。但是,变量视图现在显示:

expectedClass = (Class) 0x9e58f98
actualClass = (Class) MBProgressHUD

为什么会这样?

0 个答案:

没有答案