Можно ли делать ожидания в Google Mock?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Можно ли делать ожидания в Google Mock?

Сообщение Anonymous »

Можно ли охватить ожидание, используя Google Mock? Другими словами, допустим, у меня есть следующий тестовый прибор: < /p>

Код: Выделить всё

class Fixture : public testing::Test
{
public:
void SetUp();

void TearDown();

ObjectUnderTest testObject;
MockObject mock;
};
< /code>

Теперь, в функции setup () < /code> я хочу разрешить вызов издевательской функции столько раз, сколько необходимо во время инициализации: < /p>

void Fixture::SetUp()
{
EXPECT_CALL(mock.DoStuff(_)).Times(Any());
testObject.Initialise(mock);
}
< /code>

После этого я хочу, чтобы это особое ожидание было выходить из строя и любые вызовы в dostuff () < /code>, чтобы сгенерировать сбой. Я не могу использовать retiressOnaturation () < /code>, потому что он никогда не будет насыщенным!TEST_F(Fixture, DoesWhatItsSupposedTo)
{
EXPECT_CALL(mock, DoStuff(Eq(3)));
testObject.DoSomething(mock);
}
Я хотел бы, чтобы это не удалось, если dosomething () вызовы Dostuff (4) в Mockebe. С поведением по умолчанию Gmock (которое подходит для большинства сценариев), он сначала проверит второе ожидание, которое не будет соответствовать; Затем он проверит ожидание в setup () , которое будет соответствовать и пройти.

Кто -нибудь знает, что это возможно?>

Подробнее здесь: https://stackoverflow.com/questions/290 ... oogle-mock
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»