title: Using block expectations with OCMock
body: <p>I am using GHUnit &amp; OCMock to do some testing work in my iOS app.</p>
  
  <p>So I have some trouble integrating them.</p>
  
  <p>The following code works well.</p>
  
  <pre><code>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];
  </code></pre>
  
  <p>But when I change [[[mock stub] andReturn:@"255"] capitalizedString]; into </p>
  
  <pre><code>[[[mock stub] andDo:^(NSInvocation *invocation) {
      [invocation setReturnValue:@"255"];
  }] capitalizedString];
  </code></pre>
  
  <p>I got an error which says "Reason: 'NSCFString' should be equal to '255'. Should be equal"</p>
  
  <p>I think the two statements should do exactly the same thing. Am I wrong?</p>