• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<html>
2<head>
3<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
4<title>BOOST_&lt;level&gt;</title>
5<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
6<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
7<link rel="home" href="../../../index.html" title="Boost.Test">
8<link rel="up" href="../testing_tool_ref.html" title="Reference API for writing tests">
9<link rel="prev" href="decorator_tolerance.html" title="tolerance (decorator)">
10<link rel="next" href="assertion_boost_level_bitwise_eq.html" title="BOOST_&lt;level&gt;_BITWISE_EQUAL">
11</head>
12<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
13<table cellpadding="2" width="100%"><tr>
14<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
15<td align="center"><a href="../../../../../../../index.html">Home</a></td>
16<td align="center"><a href="../../../../../../../libs/libraries.htm">Libraries</a></td>
17<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
18<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
19<td align="center"><a href="../../../../../../../more/index.htm">More</a></td>
20</tr></table>
21<hr>
22<div class="spirit-nav">
23<a accesskey="p" href="decorator_tolerance.html"><img src="../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../testing_tool_ref.html"><img src="../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="assertion_boost_level_bitwise_eq.html"><img src="../../../../../../../doc/src/images/next.png" alt="Next"></a>
24</div>
25<div class="section">
26<div class="titlepage"><div><div><h4 class="title">
27<a name="boost_test.utf_reference.testing_tool_ref.assertion_boost_level"></a><a name="ref_BOOST_level"></a><a class="link" href="assertion_boost_level.html" title="BOOST_&lt;level&gt;"><code class="computeroutput"><span class="identifier">BOOST_</span><span class="special">&lt;</span><span class="identifier">level</span><span class="special">&gt;</span></code></a>
28</h4></div></div></div>
29<pre class="programlisting"><span class="identifier">BOOST_WARN</span><span class="special">(</span><span class="identifier">predicate</span><span class="special">);</span>
30<span class="identifier">BOOST_CHECK</span><span class="special">(</span><span class="identifier">predicate</span><span class="special">);</span>
31<span class="identifier">BOOST_REQUIRE</span><span class="special">(</span><span class="identifier">predicate</span><span class="special">);</span>
32</pre>
33<p>
34          These tools are used to validate the predicate value. The only parameter
35          for these tools is a boolean predicate value that gets validated. It could
36          be any expression that could be evaluated and converted to boolean value.
37          The expression gets evaluated only once, so it's safe to pass complex expression
38          for validation.
39        </p>
40<h6>
41<a name="boost_test.utf_reference.testing_tool_ref.assertion_boost_level.h0"></a>
42          <span class="phrase"><a name="boost_test.utf_reference.testing_tool_ref.assertion_boost_level.example_descr"></a></span><a class="link" href="assertion_boost_level.html#boost_test.utf_reference.testing_tool_ref.assertion_boost_level.example_descr">Example:
43          BOOST_&lt;level&gt; usage</a>
44        </h6>
45<div class="informaltable"><table class="table">
46<colgroup><col></colgroup>
47<thead><tr><th>
48                  <p>
49                    Code
50                  </p>
51                </th></tr></thead>
52<tbody><tr><td>
53<pre xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="table-programlisting"><span class="preprocessor">#define</span> <span class="identifier">BOOST_TEST_MODULE</span> <span class="identifier">example</span>
54<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">test</span><span class="special">/</span><span class="identifier">included</span><span class="special">/</span><span class="identifier">unit_test</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
55
56<span class="identifier">BOOST_AUTO_TEST_CASE</span><span class="special">(</span> <span class="identifier">test</span> <span class="special">)</span>
57<span class="special">{</span>
58  <span class="keyword">int</span> <span class="identifier">i</span><span class="special">=</span><span class="number">2</span><span class="special">;</span>
59  <span class="identifier">BOOST_WARN</span><span class="special">(</span> <span class="keyword">sizeof</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span> <span class="special">==</span> <span class="keyword">sizeof</span><span class="special">(</span><span class="keyword">short</span><span class="special">)</span> <span class="special">);</span>
60  <span class="identifier">BOOST_CHECK</span><span class="special">(</span> <span class="identifier">i</span> <span class="special">==</span> <span class="number">1</span> <span class="special">);</span>
61  <span class="identifier">BOOST_REQUIRE</span><span class="special">(</span> <span class="identifier">i</span> <span class="special">&gt;</span> <span class="number">5</span> <span class="special">);</span>
62  <span class="identifier">BOOST_CHECK</span><span class="special">(</span> <span class="identifier">i</span> <span class="special">==</span> <span class="number">6</span> <span class="special">);</span>  <span class="comment">// will never reach this check</span>
63<span class="special">}</span>
64</pre>
65                </td></tr></tbody>
66</table></div>
67<div class="informaltable"><table class="table">
68<colgroup><col></colgroup>
69<thead><tr><th>
70                  <p>
71                    Output
72                  </p>
73                </th></tr></thead>
74<tbody><tr><td>
75<pre xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="table-programlisting"><span class="special">&gt;</span> <span class="identifier">example</span> <span class="special">--</span><span class="identifier">log_level</span><span class="special">=</span><span class="identifier">warning</span>
76<span class="identifier">Running</span> <span class="number">1</span> <span class="identifier">test</span> <span class="keyword">case</span><span class="special">...</span>
77<span class="identifier">test</span><span class="special">.</span><span class="identifier">cpp</span><span class="special">(</span><span class="number">9</span><span class="special">):</span> <span class="identifier">warning</span> <span class="identifier">in</span> <span class="string">"test"</span><span class="special">:</span> <span class="identifier">condition</span> <span class="keyword">sizeof</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span> <span class="special">==</span> <span class="keyword">sizeof</span><span class="special">(</span><span class="keyword">short</span><span class="special">)</span> <span class="identifier">is</span> <span class="keyword">not</span> <span class="identifier">satisfied</span>
78<span class="identifier">test</span><span class="special">.</span><span class="identifier">cpp</span><span class="special">(</span><span class="number">10</span><span class="special">):</span> <span class="identifier">error</span> <span class="identifier">in</span> <span class="string">"test"</span><span class="special">:</span> <span class="identifier">check</span> <span class="identifier">i</span> <span class="special">==</span> <span class="number">1</span> <span class="identifier">has</span> <span class="identifier">failed</span>
79<span class="identifier">test</span><span class="special">.</span><span class="identifier">cpp</span><span class="special">(</span><span class="number">11</span><span class="special">):</span> <span class="identifier">fatal</span> <span class="identifier">error</span> <span class="identifier">in</span> <span class="string">"test"</span><span class="special">:</span> <span class="identifier">critical</span> <span class="identifier">check</span> <span class="identifier">i</span> <span class="special">&gt;</span> <span class="number">5</span> <span class="identifier">has</span> <span class="identifier">failed</span>
80
81<span class="special">***</span> <span class="number">2</span> <span class="identifier">failures</span> <span class="identifier">are</span> <span class="identifier">detected</span> <span class="identifier">in</span> <span class="identifier">test</span> <span class="identifier">suite</span> <span class="string">"example"</span>
82</pre>
83                </td></tr></tbody>
84</table></div>
85<p>
86          See also:
87        </p>
88<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
89              <a class="link" href="assertion_boost_level_message.html" title="BOOST_&lt;level&gt;_MESSAGE"><code class="computeroutput"><span class="identifier">BOOST_</span><span class="special">&lt;</span><span class="identifier">level</span><span class="special">&gt;</span><span class="identifier">_MESSAGE</span></code></a>
90            </li></ul></div>
91</div>
92<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
93<td align="left"></td>
94<td align="right"><div class="copyright-footer">Copyright © 2001-2020 Boost.Test contributors<p>
95        Distributed under the Boost Software License, Version 1.0. (See accompanying
96        file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
97      </p>
98</div></td>
99</tr></table>
100<hr>
101<div class="spirit-nav">
102<a accesskey="p" href="decorator_tolerance.html"><img src="../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../testing_tool_ref.html"><img src="../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="assertion_boost_level_bitwise_eq.html"><img src="../../../../../../../doc/src/images/next.png" alt="Next"></a>
103</div>
104</body>
105</html>
106