gpt4 book ai didi

基于参数值的 C++ 假/模拟返回值

转载 作者:行者123 更新时间:2023-11-30 03:55:02 26 4
gpt4 key购买 nike

使用 Typemock Isolator++。假方法的返回值是否可能基于参数值?

例如:

WHEN_CALLED(student->GradeOfCourse("a")).ReturnVal(70);
WHEN_CALLED(student->GradeOfCourse("b")).ReturnVal(85);

那么如果参数是("a"),它将返回70。

如果参数是 ("b") 那么它将返回 85。

最佳答案

免责声明我在 Typemock 工作

使用 DoMemberFunctionInsteadDoStaticOrGlobalInstead 将您的调用重定向到替代方法 - 在那里您可以根据参数值返回不同的值。

添加这个方法

int FakeGradeOfCourse(char * name)
{
if (strcmp(name,"a")==0)
{
return 70;
}
return 85;
}

在你的测试电话中:

WHEN_CALLED(student->GradeOfCourse(_)).
DoStaticOrGlobalInstead(FakeGradeOfCourse, NULL);

您可以在我们的 docs 中找到这方面的示例.

关于基于参数值的 C++ 假/模拟返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29251777/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com