📄 group__rcunit__making__assertion.html
字号:
</tr> </table> </td> </tr></table><table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td><p>引发断言并输出用户自定义的信息. <p>一般用来断言某些不可能进入的分支,或者用来确认用例已经被正常注册和执行。 在通常情况下不推荐使用这个ASSERT,应该尽量使用其它的ASSERT,不过可以用它来扩展现有的ASSERT。<p><dl compact><dt><b>参数:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>msg</em> </td><td>用户自定义的信息</td></tr> </table></dl><dl compact><dt><b>使用方法:</b></dt><dd><div class="fragment"><pre class="fragment"> <span class="keywordtype">void</span> TestSomething() { <span class="keywordtype">int</span> nRet = DoSomething(); <span class="comment">// the return value of DoSomething() should be 2</span> <span class="keywordflow">if</span> (2 == nRet) { <span class="comment">// good</span> } <span class="keywordflow">else</span> { <a class="code" href="group__rcunit__making__assertion.html#ga6">CUNIT_ASSERT_FAIL</a>(<span class="stringliteral">"There must be something wrong..."</span>); <span class="comment">// whatever you want to output</span> } }</pre></div></dd></dl><dl compact><dt><b>注解:</b></dt><dd>尽管理论上<code>msg</code> 指向的字符串长度的可以达到近2000,但是为了保证系统运行的正常,请尽量输出较少的信息。 </dd></dl><p>在文件<a class="el" href="rcunit__assert_8h-source.html">rcunit_assert.h</a>第<a class="el" href="rcunit__assert_8h-source.html#l00146">146</a>行定义。 </td> </tr></table><a class="anchor" name="ga5" doxytag="rcunit_assert.h::CUNIT_ASSERT_FALSE"></a><p><table class="mdTable" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">#define CUNIT_ASSERT_FALSE </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">x </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap> CUNIT_ASSERT(!(x))</td> </tr> </table> </td> </tr></table><table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td><p>断言传入值必须为假的宏 <p><dl compact><dt><b>参数:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>x</em> </td><td>期望的比较结果,应该为假,否则会引发断言</td></tr> </table></dl><dl compact><dt><b>使用方法:</b></dt><dd><div class="fragment"><pre class="fragment"> <span class="keywordtype">void</span> TestSomething() { <span class="keywordtype">void</span> * p = DoSomething(); <span class="comment">// the return value of DoSomething() should be a non-zero pointer</span> <a class="code" href="group__rcunit__making__assertion.html#ga5">CUNIT_ASSERT_FALSE</a>(NULL == p); <span class="comment">// this assert will ensure the value of p</span> }</pre></div> </dd></dl><p>在文件<a class="el" href="rcunit__assert_8h-source.html">rcunit_assert.h</a>第<a class="el" href="rcunit__assert_8h-source.html#l00117">117</a>行定义。 </td> </tr></table><a class="anchor" name="ga2" doxytag="rcunit_assert.h::CUNIT_ASSERT_STRINGS_EQUAL"></a><p><table class="mdTable" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">#define CUNIT_ASSERT_STRINGS_EQUAL </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">x, <tr> <td class="md" nowrap align="right"></td> <td class="md"></td> <td class="md" nowrap>y </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap> _CUNIT_ASSERT_STRINGS_EQUAL_INTERNAL(x, y, __FILE__, __LINE__)</td> </tr> </table> </td> </tr></table><table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td><p>断言传入的浮点数必须相等的宏 <p><dl compact><dt><b>参数:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>x</em> </td><td>是期望的字符串,一般把常量放在这里 </td></tr> <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>y</em> </td><td>是实际的字符串,一般把动态获得的值放在这里</td></tr> </table></dl><dl compact><dt><b>使用方法:</b></dt><dd><div class="fragment"><pre class="fragment"> <span class="keywordtype">void</span> TestSomething() { <span class="keywordtype">char</span> szBuf[128] = <span class="stringliteral">""</span>; GetSomeString(szBuf); <span class="comment">// GetSomeString() should store "Hello" into szBuf</span> <a class="code" href="group__rcunit__making__assertion.html#ga2">CUNIT_ASSERT_STRINGS_EQUAL</a>(<span class="stringliteral">"Hello"</span>, szBuf); <span class="comment">// this assert will ensure the value of szBuf</span> }</pre></div> </dd></dl><p>在文件<a class="el" href="rcunit__assert_8h-source.html">rcunit_assert.h</a>第<a class="el" href="rcunit__assert_8h-source.html#l00072">72</a>行定义。 </td> </tr></table><a class="anchor" name="ga4" doxytag="rcunit_assert.h::CUNIT_ASSERT_TRUE"></a><p><table class="mdTable" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">#define CUNIT_ASSERT_TRUE </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">x </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap> CUNIT_ASSERT(x)</td> </tr> </table> </td> </tr></table><table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td><p>断言传入值必须为真的宏 <p><dl compact><dt><b>参数:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>x</em> </td><td>期望的比较结果,应该为真,否则会引发断言</td></tr> </table></dl><dl compact><dt><b>使用方法:</b></dt><dd><div class="fragment"><pre class="fragment"> <span class="keywordtype">void</span> TestSomething() { <span class="keywordtype">int</span> nRet = DoSomething(); <span class="comment">// the return value of DoSomething() should be 2</span> <a class="code" href="group__rcunit__making__assertion.html#ga4">CUNIT_ASSERT_TRUE</a>(2 == nRet); <span class="comment">// this assert will ensure the value of nRet</span> }</pre></div> </dd></dl><p>在文件<a class="el" href="rcunit__assert_8h-source.html">rcunit_assert.h</a>第<a class="el" href="rcunit__assert_8h-source.html#l00102">102</a>行定义。 </td> </tr></table><hr/><table width="100%"> <tr> <td align="right" valign="center"> 如果对 RCUnit 有任何的疑问或建议,请联系realdodo (<a href="mailto:realdodo@163.com">realdodo@163.com</a>)。 </td> </tr></table></body> </html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -