2013-12-13 59 views
3

此代碼有什麼問題?嘗試使類方法返回@NO,但它返回@YES(NSLog打印「1」)。嘲笑類方法與OCMock不起作用

// Make the test think you don't have any internet 
id mockFunctions = [OCMockObject mockForClass:[Functions class]]; 
[[[mockFunctions stub] andReturnValue:@NO] connectionAvailable]; 


NSLog(@"derp: %hhd", [Functions connectionAvailable]); 

回答

2

我有兩個被嘲笑的類的副本。通過不在測試目標中包含.m文件,一切正常。

+0

很好,我過去也做過類似的事情。 –

1

andReturnValue的建設比你正在做的更復雜一點。

[[[mockFunctions stub] andReturnValue:OCMOCK_VALUE((BOOL){NO})] connectionAvailable]; 

試試看看它是否有效。

+0

我可以看到,我在我的代碼中有這個錯誤,但NSLog仍然給我1,斷點顯示它仍然在調用該類方法。 –