这是我在StackOverflow上提的问题:
https://stackoverflow.com/q/44304596/8090137
使用微软的VC,用gtest+mockcpp,可以正常的进行单元测试和mock
但是使用gcc编译出来的mockcpp的lib,和gtest一起编,用例中的mock没有生效,还是进入原函数了。
下面是我写的例子:
#include <gtest/gtest.h>
#include <mockcpp/mokc.h>
int add_num(int a, int b)
{
return a + b;
}
int mult_num(int a, int b)
{
return a * b;
}
int add_mult(int a, int b)
{
int sum = add_num(a,b);
if (sum == mult_num(a,b))
{
return 0;
}
else
{
return 1;
}
}
TEST(add_mult, test001)
{
int ret;
MOCKER(mult_num)
.expects(once())
.will(returnValue(-1));
ret = add_mult(2, 2);
EXPECT_EQ(1, ret);
}