модульное тестирование — Как настроить библиотеку c ++ turtle mock с boost :: test?

Я пытаюсь настроить черепаха издеваться библиотека с фреймворком boost :: test.

Я не знаю, как это сделать, об этом ничего не сказано ни в документации …

Я попытался просто скопировать исходный код библиотеки в boost / include.
Я также попытался скопировать директорию Turtle в свой проект, а затем добавить директиву CMake INCLUDE_DIRECTORIES, указывающую на папку Turtle.

Я просто попытался включить черепаху …

#define BOOST_TEST_MAIN
#define BOOST_TEST_DYN_LINK
#include <boost/test/unit_test.hpp>
#include <boost/turtle/mock.hpp>

Тогда я получил эту ошибку:

In file included from /home/ferdi/boost/include/boost/turtle/detail/function.hpp:97:0,
from /home/ferdi/boost/include/boost/turtle/detail/functor.hpp:13,
from /home/ferdi/boost/include/boost/turtle/reset.hpp:15,
from /home/ferdi/boost/include/boost/turtle/mock.hpp:14,
from /home/ferdi/inesm/test/Test.hpp:7,
from /home/ferdi/inesm/test/lib/inesm/component/note/TestNote.cpp:6:
/home/ferdi/boost/include/boost/preprocessor/iteration/detail/iter/forward1.hpp:52:37: fatal error: turtle/detail/function_iterate.hpp: Aucun fichier ou dossier de ce type
#        include BOOST_PP_FILENAME_1

Aucun fichier ou dossier de ce type» средства «Нет файла или каталога этого типа«)

Что это значит ?
Как я мог сделать?

Спасибо !

2

Решение

От документация типичное использование будет

#define BOOST_AUTO_TEST_MAIN
#include <boost/test/auto_unit_test.hpp>
#include <turtle/mock.hpp>

или адаптировано к вашему варианту использования

#define BOOST_TEST_MAIN
#define BOOST_TEST_DYN_LINK
#include <boost/test/unit_test.hpp>
#include <turtle/mock.hpp>

так что без буста / при включении черепахи.

Я не думаю, что вы должны переместить Turtle в Boost, а держите его отдельно и добавьте каталог включения CMake, к которому вы обращались (но в родительский каталог Turtle).

Если вы настаиваете на слиянии черепахи с бустом, вы можете попробовать вместо этого «усиленную» версию черепахи. Boost.Mock.

1

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


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