title: Compiler confused about mock object
body: <p>I'm using OCMock to aid in Test Driven Development I am doing for an iPad application using Xcode. I have test code like this:</p>
  <pre><code>id mock = [OCMockObject mockForProtocol:@protocol(SomeProtocol)];
  Vector direction = { 1.0f, 2.0f, 3.0f };
  [[mock expect] setDirection:direction];
  </code></pre>
  <p>When I try to compile, I'm getting warnings and errors like this:</p>
  <blockquote>
  <p>warning: multiple methods named 'setDirection:' found</p>
  <p>error: sending'Vector' to parameter of incompatible type<br />
  'UISwipeGestureRecognizerDirection' (aka 'enum
  UISwipeGestureRecognizerDirection')</p>
  </blockquote>
  <p>Obviously the compiler is not able to determine what type of object the mock is supposed to be. I'm not sure how to specify that it should deal with the setDirection method from the SomeProtocol protocol instead of a setDirection method from another class.</p>
  <p>What can be done to make a test case like this build successfully?</p>