#include <test/util/setup_common.h>
#include <boost/test/unit_test.hpp>
#include <util/trace.h>
TRACEPOINT_SEMAPHORE(test, zero_args);
TRACEPOINT_SEMAPHORE(test, one_arg);
TRACEPOINT_SEMAPHORE(test, six_args);
TRACEPOINT_SEMAPHORE(test, twelve_args);
TRACEPOINT_SEMAPHORE(test, check_if_attached);
TRACEPOINT_SEMAPHORE(test, expensive_section);
BOOST_FIXTURE_TEST_SUITE(util_trace_tests, BasicTestingSetup)
BOOST_AUTO_TEST_CASE(test_tracepoints)
{
TRACEPOINT(test, zero_args);
TRACEPOINT(test, one_arg, 1);
TRACEPOINT(test, six_args, 1, 2, 3, 4, 5, 6);
TRACEPOINT(test, twelve_args, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12);
BOOST_CHECK(true);
}
int fail_test_if_executed()
{
BOOST_CHECK(false);
return 0;
}
BOOST_AUTO_TEST_CASE(test_tracepoint_check_if_attached)
{
TRACEPOINT(test, check_if_attached, fail_test_if_executed());
BOOST_CHECK(true);
}
BOOST_AUTO_TEST_CASE(test_tracepoint_manual_tracepoint_active_check)
{
if (TRACEPOINT_ACTIVE(test, expensive_section)) {
BOOST_CHECK(false); TRACEPOINT(test, expensive_section);
}
BOOST_CHECK(true);
}
BOOST_AUTO_TEST_SUITE_END()