在我的日常工作中,我非常喜欢Mockito's never()
verification,它可以确认从未调用过模拟方法。
有什么方法可以使用Objective-C和OCMock完成同一件事?我一直在使用下面的代码,该代码可以正常工作,但感觉就像是黑客。我希望有更好的方法...
- (void)testSomeMethodIsNeverCalled {
id mock = [OCMockObject mockForClass:[MyObject class]];
[[[mock stub] andCall:@selector(fail) onObject:self] forbiddenMethod];
// more test things here, which hopefully
// never call [mock forbiddenMethod]...
}
- (void)fail {
STFail(@"This method is forbidden!");
}
最佳答案
从OCMock的r69开始,可以拒绝方法调用http://svn.mulle-kybernetik.com/OCMock/trunk/Source/Changes.txt
引用自:http://www.mulle-kybernetik.com/software/OCMock/#features