我正在尝试模拟具有等效于以下签名的方法:
- (NSDictionary *) uploadValues:(BOOL)doSomething error:(NSError **)error
我希望它返回一个小字典,以便我的测试可以确保代码正确使用字典。然而,无论我做什么,OCMock 总是从方法中返回 nil,不管我如何存根。错误在我正在测试的代码中以 nil 开头,这些是我尝试存根的不同方式:
NSError * error = nil;
[[[mock stub] andReturn:someDict] uploadValues:YES error:&error];
[[[mock stub] andReturn:someDict] uploadValues:YES error:nil];
[[[mock stub] andReturn:someDict] uploadValues:YES error:[OCMArg any]];
他们都没有工作。OCMock 是否支持将句柄作为存根消息参数,如果支持,正确的方法是什么?