pet*_*555 3 c++ istream gmock c++11
我已经模拟了虚方法返回istream&.我想在测试用例中使用它.如何返回一些价值?
问题istream是不可复制.
我尝试这样的事情:
TEST(x, y)
{
MockClass mock;
std::istringstream str("Some text");
EXPECT_CALL(mock, m(_)).WillOnce(Return(str)); // m method returns std::istream&
sut.callMethod();
}
Run Code Online (Sandbox Code Playgroud)
您应该使用ReturnRef()而不是Return().参考gmock备忘单:
https://github.com/google/googlemock/blob/master/googlemock/docs/v1_6/CheatSheet.md