1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<HTML>
<HEAD>
<TITLE>The Test Tools</TITLE>
<LINK rel="stylesheet" type="text/css" href="../../../style/btl.css" media="screen">
<LINK rel="stylesheet" type="text/css" href="../../../style/btl-print.css" media="print">
<META http-equiv="Content-Language" content="en-us">
<META http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<STYLE type="text/css">
H4
{
margin: 0px;
}
</STYLE>
</HEAD>
<BODY>
<DIV class="body">
<H3>BOOST_WARN_SMALL( val, tolerance )<BR>
BOOST_CHECK_SMALL( val, tolerance )<BR>
BOOST_REQUIRE_SMALL( val, tolerance )</H3>
<P class="first-line-indented">These tools are used to check that supplied
values is small enough. The "smallness" is defined by absolute
value of the tolerance supplied as a second argument. Note that to use these
tools you need to include additional header<A href="../../../../../../boost/test/floating_point_comparison.hpp">
floating_point_comparison.hpp</A>. Use these tools with caution. To compare
to values on closeness it's preferable to use <A href="BOOST_CHECK_CLOSE.html">BOOST_<level>_CLOSE</A> tools. </P>
<P class="first-line-indented">The first parameter is the value to check. The
second parameter is the tolerance .</P>
<H4>Example: test.cpp</H4>
<PRE class="code">#<SPAN class="reserv-word">define</SPAN> BOOST_TEST_MAIN<BR>#<SPAN class="reserv-word">include</SPAN> <<SPAN class="literal">boost/test/unit_test.hpp</SPAN>><BR>#<SPAN class="reserv-word">include</SPAN> <<SPAN class="literal">boost/test/floating_point_comparison.hpp</SPAN>>
BOOST_AUTO_TEST_CASE( test )
{
<SPAN class="cpp-type">double</SPAN> v = -<SPAN class="literal">1.23456e-3</SPAN>;
BOOST_CHECK_SMALL( v, <SPAN class="literal">0.000001</SPAN> );
}</PRE>
<H4>Output:</H4>
<P class="test-output">Running 1 test case...<BR>
test.cpp(9): error in "test": absolute value of v{-0.00123456}
exceeds 1e-06<BR>
<BR>
*** 1 failure detected in test suite "Master
Test Suite"</P>
<DIV class="see_also">
<H4>See Also</H4>
<P class="see-also-content"><A href="BOOST_CHECK_CLOSE.html" target="descr">BOOST_CHECK_CLOSE</A>,
<A href="BOOST_CHECK_CLOSE_FRACTION.html" target="descr">BOOST_CHECK_CLOSE_FRACTION</A>,
<A href="../floating_point_comparison.html" target="_top">Floating point comparison algorithms</A></P>
</DIV>
</DIV>
</BODY>
</HTML>
<!-- Copyright Gennadiy Rozental 2001-2006.
Distributed under the Boost Software License, Version 1.0.
(See accompanying file LICENSE_1_0.txt or copy at www.boost.org/LICENSE_1_0.txt) -->
|