c++ - 模拟:无趣的模拟函数调用 vi 对象返回
问题描述
我正在编写程序来测试我的 c++ 函数,但我不能使用必须返回另一个对象的模拟函数。我不知道如何解决它。
所以如果有人可以帮助我。
每次,我都会在结果测试中收到以下消息:
GMOCK WARNING:
Uninteresting mock function call - returning default value.
Function call: getEventFree()
Returns: NULL
模拟功能:
class MockXF : iXF
{
public:
MOCK_METHOD(Event *, getEventFree, (), (override));
};
按钮功能:
class Button
{
public:
init(*iXF theXF){ixf = theXF}
start(){ixf->getEventFree(); //Use the event ...}
private:
iXF* ixf;
};
测试:
Event event;
MockXF mockxf;
// will create a segmentation fault which break the test
TEST_F(ButtonTest, Start)
{
Button button(&mockxf);
EXPECT_CALL(mockxf, getEventFree()).WillOnce(Return(&event));
button.start(); //This function called mockxf.getEventFree()
}
解决方案
推荐阅读
- reactjs - Next JS 中的相对路由
- sql - 表上的 SQL 视图以将行组合成附加列
- python - 在 traitlets 5.0 中不推荐支持围绕 Unicode 的额外引号
- office365 - 访问动态数据 api 需要哪些访问权限?
- javascript - 手动更新 Form.Item 值
- android - Android 11 中的 adb 推送 shared_prefs 文件权限
- python - 如何修复 AttributeError:模块 'werkzeug' 没有属性 'redirect'
- c - What are the rules about using an underscore in a C identifier?
- c# - HostClient 无法跟随重定向到不同的协议,请改用 Client - 15000
- android - EventBus postSticky() 的 Android/Kotlin 替代品