2

我正在尝试使用 boost::test 框架设置turtle-mock库。

我不知道该怎么做,文档中也没有提及...

我试图简单地将库源复制到 boost/include 中。我还尝试将海龟目录复制到我的项目中,然后添加一个指向海龟文件夹的 CMake INCLUDE_DIRECTORIES 指令。

我只是试图包括乌龟......

#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 ”的意思是“没有这种类型的文件或目录”)

这意味着什么 ?我该怎么办?

谢谢 !

4

1 回答 1

1

文档中,典型用法是

#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的父目录)。

如果您坚持将turtle 与 boost 合并,您可以尝试使用turtle aka Boost.Mock的“增强”版本。

于 2014-10-21T15:57:09.173 回答