我正在使用OCMock
来验证某些委托方法是否被正确调用但是即使我从我的测试代码中明确地调用它们它也无法正常工作
id protocolMock = OCMProtocolMock(@protocol(NMARouteManagerDelegate));
sut.delegate = protocolMock;
[sut.delegate routeManager:sut skippedRouteForTransportMode:1];
OCMExpect([protocolMock routeManager:sut skippedRouteForTransportMode:1]);
OCMVerifyAllWithDelay(protocolMock, 1);
此操作失败并显示错误
未调用预期方法:routeManager:skippedRouteForTransportMode:1
如果我使用同步验证,它可以正常工作:
OCMVerify([protocolMock routeManager:sut skippedRouteForTransportMode:1]);
在我的真实测试中,我需要与OCMVerifyAllWithDelay