Насмешливая глобальная функция с использованием gmock-global - PullRequest
0 голосов
/ 29 октября 2018

В настоящее время я изучаю, как использовать Google Test и Google Mock Framework для создания модульных тестов. Я нашел этот фреймворк - gmock-global, с помощью которого я могу высмеивать глобальные функции Я читаю файл README в репозитории github (https://github.com/apriorit/gmock-global). Моя проблема в том, что когда я пытаюсь использовать макрос

MOCK_GLOBAL_FUNC2(sum2(int a, int b), int(int, int)) 

компилятор выдаёт мне эту ошибку:

Неправильная инициализация неконстантной ссылки типа 'testing :: internal :: MockSpec &' из значения типа 'testing :: internal :: MockSpec' UniGener001, строка 98, внешнее расположение:

У вас есть идеи, как решить эту проблему?

1 Ответ

0 голосов
/ 06 ноября 2018

Я пишу: MOCK_GLOBAL_FUNC2 (sum2 (int a, int b), int (int, int));

Возможно, это проблема. Взгляните на readme: Если int sum2(int a, int b) является сигнатурой функции, которую вы хотите смоделировать, то вы должны написать MOCK_GLOBAL_FUNC2(sum2, int(int, int))

Первый параметр макроса - это (только!) Имя функции, а второй параметр - сигнатура функции.

...