Witam!
Uczę się gTestu i napotkałem na taki problem:
class Calc
{
public:
Calc();
virtual int addition(int x, int y);
virtual int multiply(int x, int y);
virtual int divide(int x, int y);
};
Calc::Calc()
{
}
int Calc::addition(int x, int y)
{
return x + y;
}
int Calc::multiply(int x, int y)
{
return x * y;
}
int Calc::divide(int x, int y)
{
return x / y;
}
class MockSimpleCalc : public Calc
{
public:
MOCK_METHOD2(addition, int(int x, int y));
MOCK_METHOD2(divide, int(int x, int y));
MOCK_METHOD2(multiply, int(int x, int y));
};
TEST(TestSuiteCalc,test1)
{
Calc realCalc;
EXPECT_EQ(6, realCalc.addition(2,4));
}
TEST(TestSuiteCalc,test2)
{
MockSimpleCalc mockCalc;
EXPECT_EQ(6, mockCalc.addition(2,4));
}
Test numer 2 się wywala, zwraca 0 zamiast 6. Co pominąłem ?