?? group___assertions.html
字號:
<html><head><title>CppUnit - The Unit Testing Library</title><link href="doxygen.css" rel="stylesheet" type="text/css"></head><body bgcolor="#ffffff"> <table width="100%"> <tr> <td width="40%" align="left" valign="center"> <a href="http://sourceforge.net/projects/cppunit"> CppUnit project page </a> </td> <td> <a href="FAQ">FAQ</a> </td> <td width="40%" align="right" valign="center"> <a href="http://cppunit.sourceforge.net">CppUnit home page</a> </td> </tr></table><hr><!-- Generated by Doxygen 1.3.7 --><div class="qindex"><a class="qindex" href="index.html">Main Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical List</a> | <a class="qindex" href="annotated.html">Class List</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="namespacemembers.html">Namespace Members</a> | <a class="qindex" href="functions.html">Class Members</a> | <a class="qindex" href="globals.html">File Members</a> | <a class="qindex" href="pages.html">Related Pages</a></div><h1>Making assertions</h1><table border=0 cellpadding=0 cellspacing=0><tr><td></td></tr><tr><td colspan=2><br><h2>Defines</h2></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>#define </td><td class="memItemRight" valign=bottom><a class="el" href="group___assertions.html#ga0">CPPUNIT_ASSERT</a>(condition)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Assertions that a condition is <code>true</code>. <a href="#ga0"></a><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>#define </td><td class="memItemRight" valign=bottom><a class="el" href="group___assertions.html#ga1">CPPUNIT_ASSERT_MESSAGE</a>(message, condition)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Assertion with a user specified message. <a href="#ga1"></a><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>#define </td><td class="memItemRight" valign=bottom><a class="el" href="group___assertions.html#ga2">CPPUNIT_FAIL</a>(message)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Fails with the specified message. <a href="#ga2"></a><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>#define </td><td class="memItemRight" valign=bottom><a class="el" href="group___assertions.html#ga3">CPPUNIT_ASSERT_EQUAL</a>(expected, actual)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Asserts that two values are equals. <a href="#ga3"></a><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>#define </td><td class="memItemRight" valign=bottom><a class="el" href="group___assertions.html#ga4">CPPUNIT_ASSERT_EQUAL_MESSAGE</a>(message, expected, actual)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Asserts that two values are equals, provides additional messafe on failure. <a href="#ga4"></a><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>#define </td><td class="memItemRight" valign=bottom><a class="el" href="group___assertions.html#ga5">CPPUNIT_ASSERT_DOUBLES_EQUAL</a>(expected, actual, delta)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Macro for primitive value comparisons. <a href="#ga5"></a><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>#define </td><td class="memItemRight" valign=bottom><a class="el" href="group___assertions.html#ga6">CPPUNIT_ASSERT_THROW</a>(expression, ExceptionType)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Asserts that the given expression throws an exception of the specified type. <a href="#ga6"></a><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>#define </td><td class="memItemRight" valign=bottom><a class="el" href="group___assertions.html#ga7">CPPUNIT_ASSERT_NO_THROW</a>(expression)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Asserts that the given expression does not throw any exceptions. <a href="#ga7"></a><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>#define </td><td class="memItemRight" valign=bottom><a class="el" href="group___assertions.html#ga8">CPPUNIT_ASSERT_ASSERTION_FAIL</a>(assertion) CPPUNIT_ASSERT_THROW( assertion, CPPUNIT_NS::Exception )</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Asserts that an assertion fail. <a href="#ga8"></a><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>#define </td><td class="memItemRight" valign=bottom><a class="el" href="group___assertions.html#ga9">CPPUNIT_ASSERT_ASSERTION_PASS</a>(assertion) CPPUNIT_ASSERT_NO_THROW( assertion )</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Asserts that an assertion pass. <a href="#ga9"></a><br><br></td></tr></table><hr><h2>Define Documentation</h2><a class="anchor" name="ga0" doxytag="TestAssert.h::CPPUNIT_ASSERT" ></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> #define CPPUNIT_ASSERT </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">condition </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p><b>Value:</b><pre class="fragment"><div>( CPPUNIT_NS::Asserter::failIf( !(condition), \ CPPUNIT_NS::Message( <span class="stringliteral">"assertion failed"</span>, \ <span class="stringliteral">"Expression: "</span> #condition), \ <a class="code" href="group___creating_new_assertions.html#ga0">CPPUNIT_SOURCELINE</a>() ) )</div></pre>Assertions that a condition is <code>true</code>. <p> </td> </tr></table><a class="anchor" name="ga8" doxytag="TestAssert.h::CPPUNIT_ASSERT_ASSERTION_FAIL" ></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> #define CPPUNIT_ASSERT_ASSERTION_FAIL </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">assertion </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap> CPPUNIT_ASSERT_THROW( assertion, CPPUNIT_NS::Exception )</td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p>Asserts that an assertion fail. <p>Use to test assertions. Example of usage: <pre><div class="fragment"> <a class="code" href="group___assertions.html#ga8">CPPUNIT_ASSERT_ASSERTION_FAIL</a>( <a class="code" href="group___assertions.html#ga0">CPPUNIT_ASSERT</a>( 1 == 2 ) );</div></pre> </td> </tr></table><a class="anchor" name="ga9" doxytag="TestAssert.h::CPPUNIT_ASSERT_ASSERTION_PASS" ></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> #define CPPUNIT_ASSERT_ASSERTION_PASS </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">assertion </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap> CPPUNIT_ASSERT_NO_THROW( assertion )</td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p>Asserts that an assertion pass. <p>Use to test assertions. Example of usage: <pre><div class="fragment"> <a class="code" href="group___assertions.html#ga9">CPPUNIT_ASSERT_ASSERTION_PASS</a>( <a class="code" href="group___assertions.html#ga0">CPPUNIT_ASSERT</a>( 1 == 1 ) );</div></pre> </td> </tr></table><a class="anchor" name="ga5" doxytag="TestAssert.h::CPPUNIT_ASSERT_DOUBLES_EQUAL" ></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> #define CPPUNIT_ASSERT_DOUBLES_EQUAL </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">expected, <tr> <td class="md" nowrap align="right"></td> <td></td> <td class="md" nowrap>actual, <tr> <td class="md" nowrap align="right"></td> <td></td> <td class="md" nowrap>delta </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p><b>Value:</b><pre class="fragment"><div>( <a class="code" href="_test_assert_8h.html#a12">CPPUNIT_NS::assertDoubleEquals</a>( (expected), \ (actual), \ (delta), \ <a class="code" href="group___creating_new_assertions.html#ga0">CPPUNIT_SOURCELINE</a>() ) )</div></pre>Macro for primitive value comparisons. <p> </td> </tr></table><a class="anchor" name="ga3" doxytag="TestAssert.h::CPPUNIT_ASSERT_EQUAL" ></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> #define CPPUNIT_ASSERT_EQUAL </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">expected, <tr> <td class="md" nowrap align="right"></td> <td></td> <td class="md" nowrap>actual </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p><b>Value:</b><pre class="fragment"><div>( <a class="code" href="_test_assert_8h.html#a11">CPPUNIT_NS::assertEquals</a>( (expected), \ (actual), \ <a class="code" href="group___creating_new_assertions.html#ga0">CPPUNIT_SOURCELINE</a>(), \ <span class="stringliteral">""</span> ) )</div></pre>Asserts that two values are equals. <p>Equality and string representation can be defined with an appropriate CppUnit::assertion_traits class.<p>A diagnostic is printed if actual and expected values disagree.<p>Requirement for <em>expected</em> and <em>actual</em> parameters:<ul><li>They are exactly of the same type</li><li>They are serializable into a std::strstream using operator <<.</li><li>They can be compared using operator ==.</li></ul><p>The last two requirements (serialization and comparison) can be removed by specializing the CppUnit::assertion_traits. </td> </tr></table><a class="anchor" name="ga4" doxytag="TestAssert.h::CPPUNIT_ASSERT_EQUAL_MESSAGE" ></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr>
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -