GHUnit と OCMock を使用して、iOS アプリでいくつかのテスト作業を行っています。
そのため、それらを統合するのに苦労しています。
次のコードはうまく機能します。
NSString *s = [NSString stringWithString:@"122"];
id mock = [OCMockObject partialMockForObject:s];
[[[mock stub] andReturn:@"255"] capitalizedString];
NSString *returnValue = [mock capitalizedString];
GHAssertEqualObjects(returnValue, @"255", @"Should be equal");
[mock verify];
しかし、[[[mock stub] andReturn:@"255"] capitalizedString]; を変更すると、の中へ
[[[mock stub] andDo:^(NSInvocation *invocation) {
[invocation setReturnValue:@"255"];
}] capitalizedString];
「理由: 'NSCFString' は '255' と等しいはずです。等しいはずです」というエラーが表示されました。
2 つのステートメントはまったく同じことを行うべきだと思います。私が間違っている?