$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Jens Seidel (jensseidel_at_[hidden])
Date: 2007-10-30 16:12:03
On Tue, Oct 30, 2007 at 06:56:36PM +0000, Gennadiy Rozental wrote:
> Jens Seidel <jensseidel <at> users.sf.net> writes:
> > In this case you should probably change the test. To be honest I have
> > the same problem that I need something similar to
> > BOOST_CHECK_EQUAL_COLLECTIONS which checks a range and creates
> > compressed output. I tried using custom predicate support
> >
> (http://www.boost.org/libs/test/doc/components/test_tools/custom_predicate_supp
> ort.html)
> > but it is complicated ...
>
> What problems do you have?
The problem was the not perfect documentation, no (working) example, I
wasn't even sure it is what I need.
> Don;t use the page above.
Can you please explain why you don't update the official documentation
if you even suggest *not* to read docs on http://www.boost.org?
> Try one unser
> http://www.patmedia.net/~rogeeff/html/ and let me know if you still having
> problems (or docs are not clear enough).
Thanks, will do so!
> > Using BOOST_CHECK_CLOSE in a loop sounds just wrong to me.
>
> Hmm. What specifically is wrong with it?
I often need to test large data structures such as vectors or matrices.
Using
for (int i=0; i<n; ++i)
BOOST_CHECK_CLOSE(x[i], expected[i], 1E-12);
the output misses the failing indices and is too long (multiple lines
instead a single one). If such a test happens multiple times it's a good
idea to move the code into a separate compare(x, expected) function. But
if the test fails it will display this function as location and not the
previous callstack. Not optimal.
I even used sometimes BOOST_REQUIRED_CLOSE in the loop just to reduce
the output if the test failed but missed further tests this way ...
Jens