- (void)getData:(SomeParameter*)param
{
// Remotely call out for data returned asynchronously
// returns data via a delegate method
}
- (void)handleDataDelegateMethod:(NSData*)data
{
// Handle returned data
}
我想寫這個單元測試,我該怎麼做更好的東西比
NSData* returnedData = nil;
- (void)handleDataDelegateMethod:(NSData*)data
{
returnedData = data;
}
- (void)test
{
[obj getData:param];
while (!returnedData)
{
[NSThread sleep:1];
}
// Make tests on returnedData
}
Chuck正確 - 調用是異步無關緊要 - 這是其他一些依賴的行爲。對你來說測試的重要之處在於調用getData:調用它的依賴關係,而handleDelegateMethod:處理所有你可以預測的各種條件。 – 2010-07-10 05:27:31