- (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