【发布时间】:2012-02-12 11:56:48
【问题描述】:
我知道这个问题的第一部分是asked before,但那是很久以前的事了:)。我想知道在模拟非虚拟方法和 C 函数方面是否有任何开源模拟框架赶上了 Typemock Isolator++。我最感兴趣的是Linux下的gcc。到目前为止,我对模拟访问器(以便我可以模拟模拟对象中的状态 - 见下文)和从其他库(select、pcap_* 等)替换 C 函数感兴趣。
class Foo {
public:
...
bool IsCondition() { return condition; };
...
private:
bool condition;
}
// I want a framework that allows me to do something like this:
TEST(TestFoo) {
MOCK_INTERFACE(Foo) mock_foo;
EXPECT_CALL(mock_foo, IsCondition).returns(true);
EXPECT(mock_foo.IsCondition());
}
【问题讨论】:
-
有了 C++11 的可变参数模板和完美的转发,看起来实现你正在寻找的东西应该比以前容易很多。
标签: c++ linux unit-testing gcc mocking