OCMockito:验证模拟的方法在将来的某个时候被调用
OCMockito: verify that a method of a mock is called sometime in the future
首先我模拟了一个对象。
然后我做了一些应该调用对象的特定方法的事情。调用是异步的。
所以我想验证的是:最多5秒后,应该调用mock对象的这个方法。
有什么想法吗?
OCMockito 不支持异步验证(目前)。在此之前,我建议改用手卷模型,以及 OCHamcrest 的 assertWithTimeout
.
例如,这是一个手动模拟以确认调用了 fooBar
:
@interface MockFoo : NSObject
@property (nonatomic, assign) BOOL fooBarWasCalled;
- (void)fooBar;
@end
@implementation MockFoo
- (void)fooBar
{
self.fooBarWasCalled = YES;
}
@end
然后与 OCHamcrest:
assertWithTimeout(5, thatEventually(@(myMock.fooBarWasCalled), isTrue());
首先我模拟了一个对象。 然后我做了一些应该调用对象的特定方法的事情。调用是异步的。
所以我想验证的是:最多5秒后,应该调用mock对象的这个方法。
有什么想法吗?
OCMockito 不支持异步验证(目前)。在此之前,我建议改用手卷模型,以及 OCHamcrest 的 assertWithTimeout
.
例如,这是一个手动模拟以确认调用了 fooBar
:
@interface MockFoo : NSObject
@property (nonatomic, assign) BOOL fooBarWasCalled;
- (void)fooBar;
@end
@implementation MockFoo
- (void)fooBar
{
self.fooBarWasCalled = YES;
}
@end
然后与 OCHamcrest:
assertWithTimeout(5, thatEventually(@(myMock.fooBarWasCalled), isTrue());