Фильтр вызова MOCK_METHOD-а по значению аргумента с типом строки C-style

108
16 июня 2021, 04:40

Использую библиотеку Google Mock в тестировании. Описываю mock метод класса:

MOCK_METHOD1(methodName, void(const char *param));

Задаю правило:

char expectedParam[] = "exp_value";
EXPECT_CALL(mockObject, methodName(expectedParam));

В результате получаю fail из-за сравнения C-style строк. Есть ли способ это обойти без изменения типа param на std::string?

Answer 1

Используйте матчер StrEq.

using ::testing::StrEq;
EXPECT_CALL(mockObject, methodName(StrEq(expectedParam)));
READ ALSO
работа с файлами на c++

работа с файлами на c++

по задумке я хотел чтобы было 4 файла

92
Как использовать классы из одного проекта в другом в Visual studio с++ 2017

Как использовать классы из одного проекта в другом в Visual studio с++ 2017

пытаюсь использовать в своем с++ проекте код из другого проектаНа ресурсах говорят, что достаточно добавить ссылку на другой проект, но это...

87
Как правильно указать путь сохранения к файлу?

Как правильно указать путь сохранения к файлу?

Интересует правильная возможность назначения пути к папки, в релизной версии программы

121
Почему C++ может преобразовать int* в const int*, но с ** так же не может?

Почему C++ может преобразовать int* в const int*, но с ** так же не может?

Есть такой код (ничего не делает, приведён просто для примера):

95