尝试在 GMock 代码中使用 WithArg;错误说它不存在
Trying to use WithArg in GMock code; error says it doesn't exist
我试图在一些测试代码中使用WithArg
。我试图编译的代码看起来像这样:
using ::testing::_;
using ::testing::Invoke;
using ::testing::WithArg;
EXPECT_CALL(myMock, MockMethodThatTakesAString(_))
.WithArg<0>(Invoke(this, &TestClass::FunctionThatTakesAString))
.Times(4);
当我尝试编译这个时,我得到错误
error: ‘class testing::internal::TypedExpectation<void(const std::basic_string<char>&)>’ has no member named ‘WithArg’
我在这里做错了什么?
WithArg<N>
是一个动作适配器,而不是成员函数。要使用它,请将其设置为WillRepeatedly
子句中的操作:
EXPECT_CALL( myMock, MockMethodThatTakesAString(_) )
.Times(4)
.WillRepeatedly(WithArg<0>(Invoke(this
, &TestClass::FunctionThatTakesAString)));
相关文章:
- 警告处理为错误这里有什么问题
- "error: no matching function for call to"构造函数错误
- boost::进程间消息队列引发错误
- C++,OpenCV,尝试显示图像时"OpenCV(4.3.0) Error: Assertion failed (size.width>0 && size.height>0)"此错误
- 有关插入适配器的错误。[错误]请求从 'back_insert_iterator<vector<>>' 类型转换为非标量类型
- QT在错误的班级中寻找空位
- vector.resize()中的分配错误
- 代码在main()中运行,但在函数中出现错误
- 释放错误后堆使用
- (C++)分析树以计算返回错误值的简单算术表达式
- Project Euler问题4的错误解决方案
- 我的字符计数代码计算错误.为什么
- 从"int*"强制转换为"unsigned int"会丢失精度错误
- 尝试导入pybind-opencv模块时出现libgtk错误
- CMake项目Boost库错误:Boost/config/compiler/gcc.hpp:165:10:致命错误:cs
- 在某些循环内使用vector.push_back时出现分段错误
- MSVC多行宏编译器错误
- 静态数据成员的问题-修复链接错误会导致编译器错误
- 为什么在运行时没有向我们提供有关分段错误的更多信息?
- 尝试在 GMock 代码中使用 WithArg;错误说它不存在