title: gmock multiple in-out parameters SetArgReferee
body: <p>I have an interface Itest:</p>
  
  <pre><code>class Itest {
      bool testfunction(vector&lt;int&gt;&amp; v, int&amp; id);
  }
  </code></pre>
  
  <p>I can mock it with:</p>
  
  <pre><code>MOCK_METHOD2(testfunction, bool(vector&lt;int&gt;&amp;, int&amp;))
  </code></pre>
  
  <p>but how can I set the return values?</p>
  
  <p>I tried:</p>
  
  <pre><code>vector&lt;int&gt; v;
  int i;
  EXPECT_CALL(testobject, testfunction(_,_, _))
              .WillOnce(testing::SetArgReferee&lt;0&gt;(v))
              .WillOnce(testing::SetArgReferee&lt;1&gt;(i))
              .WillOnce(Return(true));
  </code></pre>
  
  <p>but then it is called three times..</p>
  
  <p>How do I set these <code>argReferees</code> and the return value one time?</p>