Hippomocks: Как ожидать только некоторые из аргументов, переданных ExpectCall ()?

В насмешливых рамках Hippomocks можно проверить переданные аргументы в ожидании. Например:

void Class::Method(int arg1);
...
m_mockRepository_p->ExpectCall(someObject_p, Class::Method).With(1);

Есть ли возможность проверить только некоторые из переданных аргументов? Что я должен написать вместо ??? в следующем коде?

void Class::Method(int arg1, char* buffer_p);
...
m_mockRepository_p->ExpectCall(someObject_p, Class::Method).With(1,???);

Для вашей информации: Вариант использования: someObjet_p внутренне создает буфер для чтения данных в нем и передает его в Class :: Method. Во-первых, мне все равно, в какой буфер someObject_p хотел бы вставить данные. Во-вторых, у меня нет доступа к внутренним компонентам someObject_p для передачи их в With () — что вполне разумно.

Примечание: я пометил вопрос как C ++, так как я использую ExpectCall, но я предполагаю, что то же самое применимо к ExpectCallFunc для плоских функций.

Второе примечание: Hippomocks предоставляет методы для ожиданий с именами «Match ()», «getArgs ()», «assignArgs ()» и «matchArgs ()», но я не нашел никакой документации по нему и не знаю, предназначены ли они для использоваться (для моего случая использования) или нет.

0

Решение

Передайте в поле Not-Care этот параметр:

m_mockRepository_p->ExpectCall(someObject_p, Class::Method).With(1, _);
2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]