在 gmock 中,有没有办法让模拟对象 return 成为用户定义对象的实例?
In gmock, Is there a way to have mock object return an instance of an user defined object?
出于 UT 目的,我正在尝试模拟一个函数,该函数 return 是用户定义结构的向量。
std::vector<myStruct> myClass::foo()
在 gmock 中,有没有办法做这样的事情:
std::vector<myStruct> TestVector;
//code to populate my vector ....
ON_CALL(MockMyClass, foo()).WillByDefault(Return(TestVector))
我在 gmock 说明书中找不到任何内容,看起来 return 值都是原始值。谢谢
我最终使用了 ReturnPointee
https://code.google.com/p/googlemock/wiki/CookBook#Returning_Live_Values_from_Mock_Methods
std::vector * ptr;
//实例化并填充向量...
ON_CALL(MockMyClass, foo()).WillByDefault(ReturnPointee(ptr));
出于 UT 目的,我正在尝试模拟一个函数,该函数 return 是用户定义结构的向量。
std::vector<myStruct> myClass::foo()
在 gmock 中,有没有办法做这样的事情:
std::vector<myStruct> TestVector;
//code to populate my vector ....
ON_CALL(MockMyClass, foo()).WillByDefault(Return(TestVector))
我在 gmock 说明书中找不到任何内容,看起来 return 值都是原始值。谢谢
我最终使用了 ReturnPointee
https://code.google.com/p/googlemock/wiki/CookBook#Returning_Live_Values_from_Mock_Methods
std::vector * ptr;
//实例化并填充向量...
ON_CALL(MockMyClass, foo()).WillByDefault(ReturnPointee(ptr));