Подтвердить что ты не робот

Тесты Boost.Test в статической библиотеке

Я использую Boost.Test для модульного тестирования.

Из-за нескольких причин я хотел бы написать случаи unit test для разных статических библиотек.

Проблема заключается в том, что когда я это делаю, автоматический регистратор не работает.

Например, если у меня есть что-то вроде:

// foo_tests.cpp
#define BOOST_TEST_MODULE "Foo"
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE( Bar )
{
    BOOST_CHECK( false );
}
// used to generate libFooTests.a

// main.cpp
#define BOOST_TEST_DYN_LINK
#define BOOST_TEST_MAIN
#include <boost/test/unit_test.hpp>
// used to generate main.o

Затем, если я связываю main.o с libFooTests.a и выполняю окончательный двоичный файл, он говорит:

Test setup error: test tree is empty

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

Могу ли я достичь этого?

Есть ли какой-то макрос, который мне нужно определить? Некоторый символ, который мне нужно экспортировать из libFooTests.a?

Спасибо!

4b9b3361