google mock - mock return 调用的(独立)函数的值

google mock - mock return value of a (free-standing) function called

我有一个正在测试的函数,f1()

f1() 调用 g1() 可以 return 几个不同的值。

如何模拟 g1() 以便我可以遍历它 return 的不同值以测试 f1 中的路径()?

int f1()
{
    int res = g1();
    int ret = 0;
    switch(res):
    {
        case 0:
           // ret = something
        case 1:
           // ret = something else
        default:
           // ret = bad result
    }
    return ret;
}

也许您可以尝试 cmocka 工具来完成上述用例。