Я хотел бы написать метод в моем наборе тестов
следующим образом:
void checkParams(arg1, arg2, arg3)
{
BOOST_REQUIRE(arg1==1);
BOOST_REQUIRE(arg2==2);
BOOST_REQUIRE(arg3==3);
}
Тем не менее, я хочу написать что-то в stderr, если утверждение не удалось. Например,
если первое утверждение не удается, я хочу написать:
Ошибка checkParams с аргументами arg1 = 5, arg2 = 4, arg3 = 3
Напишите теперь сообщение, которое оно генерирует, только что критическая проверка не удалась 5 == 1.
В целом, я хотел бы создать трассировку стека при сбое, чтобы я мог видеть цепочку
звонков, которые привели к этой неудаче. Обратите внимание, что этот метод вызывается всеми моими BOOST_AUTO_TEST_CASE
методы, но сам по себе не является BOOST_AUTO_TEST_CASE.
Как мне это сделать?
Еще один вопрос: я знаю, что могу изменить уровень ведения журнала, предоставив параметры времени выполнения,
./test --log_level=all
Как установить уровень log_level в коде?