Я очень расстроен, пытаясь получить Boost-тест
используйте argc и argv. Основываясь на других ответах от переполнения стека,
следующий код (с Boost 1.67.0) - самый близкий, который я получил. Тем не мение,
он не скомпилируется, потому что ожидает дополнительного}. Я положил дополнительный}
в разных местах, и перепробовал много других вещей, но я не могу для
жизнь меня заставить это работать. РЕДАКТИРОВАТЬ: код сбалансирован {}. Я подозреваю некоторую тонкость, связанную с макросами Boost, но я не могу сказать, что это такое.
Кто-нибудь подскажет, пожалуйста, какие конкретно изменения вносятся в этот код?
компилировать и делать то, что он должен делать. Прямо сейчас я очень высоко
разочарование.
#define BOOST_TEST_MODULE how_to
#define BOOST_TEST_DYN_LINK
#include <boost/test/unit_test.hpp>
#include <iostream>
#include <vector>
#include <string>
using std::cout;
using std::endl;
using std::vector;
using std::string;
struct F_ArgsFixture {
F_ArgsFixture()
: argc(boost::unit_test::framework::master_test_suite().argc),
argv(boost::unit_test::framework::master_test_suite().argv)
{
}
~F_ArgsFixture() {}
int argc;
char **argv;
};
BOOST_FIXTURE_TEST_SUITE( how_to, F_ArgsFixture )
BOOST_FIXTURE_TEST_CASE( test_name1, F_ArgsFixture )
{
F_ArgsFixture FF;
string x = FF.argv[1];
cout << "1 " << x << endl;
}
BOOST_FIXTURE_TEST_CASE( test_name2, F_ArgsFixture )
{
F_ArgsFixture FF;
string x = FF.argv[1];
cout << "2 " << x << endl;
}