Мне нужно было протестировать функцию, аналогичную foo () :
class A{
.....
void foo(int a)
{
if( nullptr != m_member_name)
m_member_mane->another_function();
else Logger << "some message";
}
.....
Member_name *m_member_name;
}//end class A
Чтобы получить покрытие ветви, я думаю, что я должен сделать один тест для m_member_name! = nullptr и один для m_member_name == nullptr .
Для первого легко, потому что я ожидаю, что another_function () вызывается один раз, используя
EXPECT_CALL(MOCK_Member_name, another_function())
.Times(1); // I created a mock for Member_name before
Где MOCK_Member_name - это макет для Member_name
Но как мне проверить, что для m_member_name == nullptr происходит в другой ветви?
Я знаю, что это глупо вопрос, но я изучаю gmock с короткого времени.