基于参数值的C++伪/模拟返回值
C++ fake/mock return value based on the value of parameter
使用Typemock Isolator++。伪方法的返回值是否可能基于参数的值?
例如:
WHEN_CALLED(student->GradeOfCourse("a")).ReturnVal(70);
WHEN_CALLED(student->GradeOfCourse("b")).ReturnVal(85);
如果参数是("a"),它将返回70。
如果参数是("b"),那么它将返回85。
免责声明我在Typemock 工作
使用DoMemberFunctionInstead
或DoStaticOrGlobalInstead
将您的调用重定向到另一个方法-在那里您可以根据参数的值返回一个不同的值。
添加此方法
int FakeGradeOfCourse(char * name)
{
if (strcmp(name,"a")==0)
{
return 70;
}
return 85;
}
在您的测试电话中:
WHEN_CALLED(student->GradeOfCourse(_)).
DoStaticOrGlobalInstead(FakeGradeOfCourse, NULL);
你可以在我们的文档中找到一个例子。
相关文章:
- 如何使用Google Mock来模拟gettimeofday()
- G锁定铸造到基础上会释放模拟行为
- 有什么好的方法可以让系统调用代理允许在单元测试中进行模拟
- 落砂模拟碰撞检测C++和SFML
- 在gtest.中使用fff.h模拟系统API
- 谷歌模拟和覆盖关键字
- 用C#中的并集模拟C++嵌套结构
- 在同一模拟中使用静脉和静脉_ inet内容时出现运行时错误
- 在模拟器中使用并集来模拟CPU寄存器有多合适
- 我写了一个C++程序来模拟Enigma机器.我没有得到输出
- 如何模拟不同边数的骰子滚动?
- 模拟持久按键
- 使用SIR模型的疾病爆发模拟
- 在 c++ 中模拟输入并在 JAVA 中读取它?
- 转发变量参数列表以模拟 std::thread
- 如何在谷歌模拟中匹配 C 样式数组
- 如何使用兰德随机化模拟点击
- 模拟GPS数据,以便使用Qt与Traccar一起使用
- QKeyPress - 在Qt中模拟按键
- 如何使用不同的谷歌模拟运行相同的谷歌测试用例?