部分类模拟

时间:2017-11-27 22:14:50

标签: c++ hippomocks

我想用hippomocks来模拟一个类中的方法。该方法由同一个类中的另一个方法调用。如... ...

class Foo {
public:
Foo() {}
  virtual ~Foo() {}

  virtual string getName() {
    return "Joe";
  }

  virtual void print() {
    std::cout<<"Name is "<<getName()<<std::endl;
  }
};

int main() {
  std::cout<<"test mocking classes()..."<<std::endl;

  MockRepository mocks;
  Foo* pFoo = mocks.Mock<Foo>();
  mocks.ExpectCall(pFoo, Foo::getName).Return("John");
  pFoo->print();

  return 0;
}

测试模拟类()......

在抛出'HippoMocks :: NotImplementedException'的实例后终止调用   what():函数调用没有期望!

知道为什么我不能嘲笑这样的方法吗?

http://hippomocks.com/Main_Page上的示例与我的几乎相同,所以我认为这应该得到支持?

谢谢, ģ

1 个答案:

答案 0 :(得分:0)

我对hippomocks如何工作的理解是它覆盖了你班级中的所有虚函数,所以异常可能是由于调用了意外的print()