Простой способ проверить вызов деструктора:
class MockFoo : public Foo {
...
// Add the following two lines to the mock class.
MOCK_METHOD0(Die, void());
virtual ~MockFoo() { Die(); }
};
В вашей тестовой функции:
MockFoo* foo = new MockFoo;
...
{
EXPECT_CALL(*foo, Die());
}
Более подробную информацию можно найти здесь: Насмешливые деструкторы