> The situation is that I have a consice description of test cases (a
> vector of
> C structures) and a function which iterates over that vector, doing
> BOOST_CHECK in some places. If I place a breakpoint on the failed
> BOOST_CHECK,
> then that breakpoint will trigger many times before the actua
Rozental, Gennadiy wrote:
I've a similiar problem with BOOST_CHECK family, but I think
the solution
can be different: provide a means to convert failed test into
assertion
failure. This way I can conveniently debug. Currently, I have to
replace BOOST_CHECK with assert manually, to find where the
> Gennadiy,
>
> I had to set the log level from the command line recently,
> and had a hard time finding out how.
>
> I did eventually find an explanation in the docs, but it is
> buried so deep that it took me quite a while to find it.
The was a request couple month ago (by David Held if I am
At 12:54 PM 2/3/2003, Rozental, Gennadiy wrote:
>P.S. Don't forget to set log level to "messages" would you decide to
choose
>the second solution.
Gennadiy,
I had to set the log level from the command line recently, and had a hard
time finding out how.
I did eventually find an explanation in
> I've a similiar problem with BOOST_CHECK family, but I think
> the solution
> can be different: provide a means to convert failed test into
> assertion
> failure. This way I can conveniently debug. Currently, I have to
> replace BOOST_CHECK with assert manually, to find where the
> failure hap
> void checkMyObject(MyObject* my, int context, int a, int b, int c)
> {
> BOOST_CHECK_EQUAL_MESSAGE(my->getA(), a, context);
> BOOST_CHECK_EQUAL_MESSAGE(my->getB(), b, context);
> BOOST_CHECK_EQUAL_MESSAGE(my->getC(), c, context);
> }
>
> MyObject* my1 = new MyObject(1, 2
[EMAIL PROTECTED] wrote:
--- SNIP Example ---
MyObject* my1 = new MyObject(1, 2, 3);
BOOST_CHECK_EQUAL(my1->getA(), 1);
BOOST_CHECK_EQUAL(my1->getB(), 2);
BOOST_CHECK_EQUAL(my1->getC(), 3);
MyObject* my2 = new MyObject(4, 5, 6);
BOOST_CHECK_EQUAL(my2->getA(), 4);
BOOST_CHECK_EQUAL(my2->getB(), 5
I suggest adding the following (or a similar) macro to test_tools.hpp:
#define BOOST_CHECK_EQUAL_MESSAGE(left_, right_, message_) \
boost::test_toolbox::detail::equal_and_continue_impl((left_),
(right_), \
boost::test_toolbox::detail::wrapstrstream() << #left_ " == "
#right_ << " ("