sinojelly / mockcpp

Two C/C++ testing tools, mockcpp and testngpp.
Apache License 2.0
66 stars 39 forks source link

2.7版本删除了以前版本提供的MOCKER_CPP宏? #44

Closed yuanxinkun closed 1 year ago

yuanxinkun commented 1 year ago
int32_t func1Stub(Class1*o, int32_t in, int32_t &out)
{
    if (in >=1) {
        out = 1;
    } else {
        out = 0;
    }
    return 0;
}

MOCKER_CPP(&Class1::func1, int32_t (Class1::*)(int32_t, int32_t&)).defaults().will(invoke(func1Stub));

早期版本可以对类的普通函数这么打桩。在2.7版本中有什么替换方案?

sinojelly commented 1 year ago

我应该没有删掉它。 哪个早期版本可以呢? 可以把老的实现拿过来,提个pull request。

我之前试验过普通函数打桩,大概类似你写的这个,要手动传入函数类型。 但我记得没有把它封装成接口给用户正式使用,因为它使用有点麻烦。

yuanxinkun commented 1 year ago

非常抱歉,MOCKER_CPP是其他个人分支上提供功能。我再学习一个如何方便的为对象函数打桩。