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