<!-- HTML header for doxygen 1.8.17-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Arm NN: src/armnnTestUtils/UnitTests.hpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/x-mathjax-config">
  MathJax.Hub.Config({
    extensions: ["tex2jax.js"],
    jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <img alt="ArmNN" src="Arm_NN_horizontal_blue.png" style="max-width: 15rem; margin-top: .5rem; margin-left 13px"/>
  <td id="projectalign" style="padding-left: 0.9em;">
   <div id="projectname">
   &#160;<span id="projectnumber">24.02</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('_unit_tests_8hpp.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#define-members">Macros</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">UnitTests.hpp File Reference</div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &quot;armnnTestUtils/TensorHelpers.hpp&quot;</code><br />
<code>#include &lt;<a class="el" href="_logging_8hpp_source.html">armnn/Logging.hpp</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="_utils_8hpp_source.html">armnn/Utils.hpp</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="_ref_workload_factory_8hpp_source.html">reference/RefWorkloadFactory.hpp</a>&gt;</code><br />
<code>#include &lt;reference/test/RefWorkloadFactoryHelper.hpp&gt;</code><br />
<code>#include &lt;backendsCommon/test/WorkloadFactoryHelper.hpp&gt;</code><br />
<code>#include &lt;armnnTestUtils/LayerTestResult.hpp&gt;</code><br />
<code>#include &lt;armnnTestUtils/TensorCopyUtils.hpp&gt;</code><br />
<code>#include &lt;armnnTestUtils/WorkloadTestUtils.hpp&gt;</code><br />
<code>#include &lt;doctest/doctest.h&gt;</code><br />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for UnitTests.hpp:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="_unit_tests_8hpp__incl.svg" width="5199" height="918"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
</div>
</div><div class="textblock"><div class="dynheader">
This graph shows which files directly or indirectly include this file:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="_unit_tests_8hpp__dep__incl.svg" width="154" height="142"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
</div>
</div>
<p><a href="_unit_tests_8hpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:a44ea827d997f1aa0e39d9a6d6675465c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_unit_tests_8hpp.html#a44ea827d997f1aa0e39d9a6d6675465c">ARMNN_SIMPLE_TEST_CASE</a>(TestName,  TestFunction)</td></tr>
<tr class="separator:a44ea827d997f1aa0e39d9a6d6675465c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae6ce9102495fab6e3957f61281238e3d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_unit_tests_8hpp.html#ae6ce9102495fab6e3957f61281238e3d">ARMNN_AUTO_TEST_CASE</a>(TestName,  TestFunction, ...)</td></tr>
<tr class="separator:ae6ce9102495fab6e3957f61281238e3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4628f323c7af33f559cb2642d94f0194"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_unit_tests_8hpp.html#a4628f323c7af33f559cb2642d94f0194">ARMNN_AUTO_TEST_FIXTURE</a>(TestName,  Fixture,  TestFunction, ...)</td></tr>
<tr class="separator:a4628f323c7af33f559cb2642d94f0194"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0ab6cdd4f66de9300527359858cbe5af"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_unit_tests_8hpp.html#a0ab6cdd4f66de9300527359858cbe5af">ARMNN_AUTO_TEST_CASE_WITH_THF</a>(TestName,  TestFunction, ...)</td></tr>
<tr class="separator:a0ab6cdd4f66de9300527359858cbe5af"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aceaf1e66bde6deb47e5243c3d03b8fd4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_unit_tests_8hpp.html#aceaf1e66bde6deb47e5243c3d03b8fd4">ARMNN_AUTO_TEST_FIXTURE_WITH_THF</a>(TestName,  Fixture,  TestFunction, ...)</td></tr>
<tr class="separator:aceaf1e66bde6deb47e5243c3d03b8fd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a07e04849fc0700facf91fecce71ff733"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_unit_tests_8hpp.html#a07e04849fc0700facf91fecce71ff733">ARMNN_COMPARE_REF_AUTO_TEST_CASE</a>(TestName,  TestFunction, ...)</td></tr>
<tr class="separator:a07e04849fc0700facf91fecce71ff733"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2d0f84912baa7b88f72c8df1b904aa20"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_unit_tests_8hpp.html#a2d0f84912baa7b88f72c8df1b904aa20">ARMNN_COMPARE_REF_AUTO_TEST_CASE_WITH_THF</a>(TestName,  TestFunction, ...)</td></tr>
<tr class="separator:a2d0f84912baa7b88f72c8df1b904aa20"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af2016edd458865d471fe1afc82b3c126"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_unit_tests_8hpp.html#af2016edd458865d471fe1afc82b3c126">ARMNN_COMPARE_REF_FIXTURE_TEST_CASE</a>(TestName,  Fixture,  TestFunction, ...)</td></tr>
<tr class="separator:af2016edd458865d471fe1afc82b3c126"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a27949c8e47f407cf0d135c96ed969cf9"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_unit_tests_8hpp.html#a27949c8e47f407cf0d135c96ed969cf9">ARMNN_COMPARE_REF_FIXTURE_TEST_CASE_WITH_THF</a>(TestName,  Fixture,  TestFunction, ...)</td></tr>
<tr class="separator:a27949c8e47f407cf0d135c96ed969cf9"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:af9e4dd62da9266a1364032ada0267f9b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_unit_tests_8hpp.html#af9e4dd62da9266a1364032ada0267f9b">ConfigureLoggingTest</a> ()</td></tr>
<tr class="separator:af9e4dd62da9266a1364032ada0267f9b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acbe506e0365feeed352effe52b1e4852"><td class="memTemplParams" colspan="2">template&lt;typename T , std::size_t n&gt; </td></tr>
<tr class="memitem:acbe506e0365feeed352effe52b1e4852"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="_unit_tests_8hpp.html#acbe506e0365feeed352effe52b1e4852">CompareTestResultIfSupported</a> (const std::string &amp;testName, const LayerTestResult&lt; T, n &gt; &amp;testResult)</td></tr>
<tr class="memdesc:acbe506e0365feeed352effe52b1e4852"><td class="mdescLeft">&#160;</td><td class="mdescRight">Executes CHECK_MESSAGE on CompareTensors() return value so that the predicate_result message is reported.  <a href="_unit_tests_8hpp.html#acbe506e0365feeed352effe52b1e4852">More...</a><br /></td></tr>
<tr class="separator:acbe506e0365feeed352effe52b1e4852"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8d26216e495ef45a749c03e6c6edcd38"><td class="memTemplParams" colspan="2">template&lt;typename T , std::size_t n&gt; </td></tr>
<tr class="memitem:a8d26216e495ef45a749c03e6c6edcd38"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="_unit_tests_8hpp.html#a8d26216e495ef45a749c03e6c6edcd38">CompareTestResultIfSupported</a> (const std::string &amp;testName, const std::vector&lt; LayerTestResult&lt; T, n &gt;&gt; &amp;testResult)</td></tr>
<tr class="separator:a8d26216e495ef45a749c03e6c6edcd38"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a10075eca890bd829a87b914c5aa18cb3"><td class="memTemplParams" colspan="2">template&lt;typename FactoryType , typename TFuncPtr , typename... Args&gt; </td></tr>
<tr class="memitem:a10075eca890bd829a87b914c5aa18cb3"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="_unit_tests_8hpp.html#a10075eca890bd829a87b914c5aa18cb3">RunTestFunction</a> (const char *testName, TFuncPtr testFunction, Args... args)</td></tr>
<tr class="separator:a10075eca890bd829a87b914c5aa18cb3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae9222f9685bc46d77397c262858172c3"><td class="memTemplParams" colspan="2">template&lt;typename FactoryType , typename TFuncPtr , typename... Args&gt; </td></tr>
<tr class="memitem:ae9222f9685bc46d77397c262858172c3"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="_unit_tests_8hpp.html#ae9222f9685bc46d77397c262858172c3">RunTestFunctionUsingTensorHandleFactory</a> (const char *testName, TFuncPtr testFunction, Args... args)</td></tr>
<tr class="separator:ae9222f9685bc46d77397c262858172c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2d8f71b48349370e1d5c0a9b39e3d162"><td class="memTemplParams" colspan="2">template&lt;typename FactoryType , typename TFuncPtr , typename... Args&gt; </td></tr>
<tr class="memitem:a2d8f71b48349370e1d5c0a9b39e3d162"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="_unit_tests_8hpp.html#a2d8f71b48349370e1d5c0a9b39e3d162">CompareRefTestFunction</a> (const char *testName, TFuncPtr testFunction, Args... args)</td></tr>
<tr class="separator:a2d8f71b48349370e1d5c0a9b39e3d162"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a82ab208235e164dca8c02f925e03dc44"><td class="memTemplParams" colspan="2">template&lt;typename FactoryType , typename TFuncPtr , typename... Args&gt; </td></tr>
<tr class="memitem:a82ab208235e164dca8c02f925e03dc44"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="_unit_tests_8hpp.html#a82ab208235e164dca8c02f925e03dc44">CompareRefTestFunctionUsingTensorHandleFactory</a> (const char *testName, TFuncPtr testFunction, Args... args)</td></tr>
<tr class="separator:a82ab208235e164dca8c02f925e03dc44"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a id="ae6ce9102495fab6e3957f61281238e3d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae6ce9102495fab6e3957f61281238e3d">&#9670;&nbsp;</a></span>ARMNN_AUTO_TEST_CASE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define ARMNN_AUTO_TEST_CASE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">TestName, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">TestFunction, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">    TEST_CASE(#TestName) \</div>
<div class="line">    { \</div>
<div class="line">        RunTestFunction&lt;FactoryType&gt;(#TestName, &amp;TestFunction, ##__VA_ARGS__); \</div>
<div class="line">    }</div>
</div><!-- fragment -->
<p class="definition">Definition at line <a class="el" href="_unit_tests_8hpp_source.html#l00117">117</a> of file <a class="el" href="_unit_tests_8hpp_source.html">UnitTests.hpp</a>.</p>

</div>
</div>
<a id="a0ab6cdd4f66de9300527359858cbe5af"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0ab6cdd4f66de9300527359858cbe5af">&#9670;&nbsp;</a></span>ARMNN_AUTO_TEST_CASE_WITH_THF</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define ARMNN_AUTO_TEST_CASE_WITH_THF</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">TestName, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">TestFunction, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">    TEST_CASE(#TestName) \</div>
<div class="line">    { \</div>
<div class="line">        RunTestFunctionUsingTensorHandleFactory&lt;FactoryType&gt;(#TestName, &amp;TestFunction, ##__VA_ARGS__); \</div>
<div class="line">    }</div>
</div><!-- fragment -->
<p class="definition">Definition at line <a class="el" href="_unit_tests_8hpp_source.html#l00129">129</a> of file <a class="el" href="_unit_tests_8hpp_source.html">UnitTests.hpp</a>.</p>

</div>
</div>
<a id="a4628f323c7af33f559cb2642d94f0194"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4628f323c7af33f559cb2642d94f0194">&#9670;&nbsp;</a></span>ARMNN_AUTO_TEST_FIXTURE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define ARMNN_AUTO_TEST_FIXTURE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">TestName, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">Fixture, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">TestFunction, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">    TEST_CASE_FIXTURE(Fixture, #TestName) \</div>
<div class="line">    { \</div>
<div class="line">        RunTestFunction&lt;FactoryType&gt;(#TestName, &amp;TestFunction, ##__VA_ARGS__); \</div>
<div class="line">    }</div>
</div><!-- fragment -->
<p class="definition">Definition at line <a class="el" href="_unit_tests_8hpp_source.html#l00123">123</a> of file <a class="el" href="_unit_tests_8hpp_source.html">UnitTests.hpp</a>.</p>

</div>
</div>
<a id="aceaf1e66bde6deb47e5243c3d03b8fd4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aceaf1e66bde6deb47e5243c3d03b8fd4">&#9670;&nbsp;</a></span>ARMNN_AUTO_TEST_FIXTURE_WITH_THF</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define ARMNN_AUTO_TEST_FIXTURE_WITH_THF</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">TestName, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">Fixture, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">TestFunction, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">    TEST_CASE_FIXTURE(Fixture, #TestName) \</div>
<div class="line">    { \</div>
<div class="line">        RunTestFunctionUsingTensorHandleFactory&lt;FactoryType&gt;(#TestName, &amp;TestFunction, ##__VA_ARGS__); \</div>
<div class="line">    }</div>
</div><!-- fragment -->
<p class="definition">Definition at line <a class="el" href="_unit_tests_8hpp_source.html#l00135">135</a> of file <a class="el" href="_unit_tests_8hpp_source.html">UnitTests.hpp</a>.</p>

</div>
</div>
<a id="a07e04849fc0700facf91fecce71ff733"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a07e04849fc0700facf91fecce71ff733">&#9670;&nbsp;</a></span>ARMNN_COMPARE_REF_AUTO_TEST_CASE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define ARMNN_COMPARE_REF_AUTO_TEST_CASE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">TestName, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">TestFunction, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">    TEST_CASE(#TestName) \</div>
<div class="line">    { \</div>
<div class="line">        CompareRefTestFunction&lt;FactoryType&gt;(#TestName, &amp;TestFunction, ##__VA_ARGS__); \</div>
<div class="line">    }</div>
</div><!-- fragment -->
<p class="definition">Definition at line <a class="el" href="_unit_tests_8hpp_source.html#l00169">169</a> of file <a class="el" href="_unit_tests_8hpp_source.html">UnitTests.hpp</a>.</p>

</div>
</div>
<a id="a2d0f84912baa7b88f72c8df1b904aa20"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2d0f84912baa7b88f72c8df1b904aa20">&#9670;&nbsp;</a></span>ARMNN_COMPARE_REF_AUTO_TEST_CASE_WITH_THF</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define ARMNN_COMPARE_REF_AUTO_TEST_CASE_WITH_THF</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">TestName, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">TestFunction, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">    TEST_CASE(#TestName) \</div>
<div class="line">    { \</div>
<div class="line">        CompareRefTestFunctionUsingTensorHandleFactory&lt;FactoryType&gt;(#TestName, &amp;TestFunction, ##__VA_ARGS__); \</div>
<div class="line">    }</div>
</div><!-- fragment -->
<p class="definition">Definition at line <a class="el" href="_unit_tests_8hpp_source.html#l00175">175</a> of file <a class="el" href="_unit_tests_8hpp_source.html">UnitTests.hpp</a>.</p>

</div>
</div>
<a id="af2016edd458865d471fe1afc82b3c126"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af2016edd458865d471fe1afc82b3c126">&#9670;&nbsp;</a></span>ARMNN_COMPARE_REF_FIXTURE_TEST_CASE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define ARMNN_COMPARE_REF_FIXTURE_TEST_CASE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">TestName, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">Fixture, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">TestFunction, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">    TEST_CASE_FIXTURE(Fixture, #TestName) \</div>
<div class="line">    { \</div>
<div class="line">        CompareRefTestFunction&lt;FactoryType&gt;(#TestName, &amp;TestFunction, ##__VA_ARGS__); \</div>
<div class="line">    }</div>
</div><!-- fragment -->
<p class="definition">Definition at line <a class="el" href="_unit_tests_8hpp_source.html#l00181">181</a> of file <a class="el" href="_unit_tests_8hpp_source.html">UnitTests.hpp</a>.</p>

</div>
</div>
<a id="a27949c8e47f407cf0d135c96ed969cf9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a27949c8e47f407cf0d135c96ed969cf9">&#9670;&nbsp;</a></span>ARMNN_COMPARE_REF_FIXTURE_TEST_CASE_WITH_THF</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define ARMNN_COMPARE_REF_FIXTURE_TEST_CASE_WITH_THF</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">TestName, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">Fixture, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">TestFunction, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">    TEST_CASE_FIXTURE(Fixture, #TestName) \</div>
<div class="line">    { \</div>
<div class="line">        CompareRefTestFunctionUsingTensorHandleFactory&lt;FactoryType&gt;(#TestName, &amp;TestFunction, ##__VA_ARGS__); \</div>
<div class="line">    }</div>
</div><!-- fragment -->
<p class="definition">Definition at line <a class="el" href="_unit_tests_8hpp_source.html#l00187">187</a> of file <a class="el" href="_unit_tests_8hpp_source.html">UnitTests.hpp</a>.</p>

</div>
</div>
<a id="a44ea827d997f1aa0e39d9a6d6675465c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a44ea827d997f1aa0e39d9a6d6675465c">&#9670;&nbsp;</a></span>ARMNN_SIMPLE_TEST_CASE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define ARMNN_SIMPLE_TEST_CASE</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">TestName, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">TestFunction&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">    TEST_CASE(#TestName) \</div>
<div class="line">    { \</div>
<div class="line">        TestFunction(); \</div>
<div class="line">    }</div>
</div><!-- fragment -->
<p class="definition">Definition at line <a class="el" href="_unit_tests_8hpp_source.html#l00111">111</a> of file <a class="el" href="_unit_tests_8hpp_source.html">UnitTests.hpp</a>.</p>

</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="a2d8f71b48349370e1d5c0a9b39e3d162"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2d8f71b48349370e1d5c0a9b39e3d162">&#9670;&nbsp;</a></span>CompareRefTestFunction()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CompareRefTestFunction </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>testName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">TFuncPtr&#160;</td>
          <td class="paramname"><em>testFunction</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">Args...&#160;</td>
          <td class="paramname"><em>args</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_unit_tests_8hpp_source.html#l00142">142</a> of file <a class="el" href="_unit_tests_8hpp_source.html">UnitTests.hpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;{</div>
<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;    <span class="keyword">auto</span> memoryManager = WorkloadFactoryHelper&lt;FactoryType&gt;::GetMemoryManager();</div>
<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;    FactoryType workloadFactory = WorkloadFactoryHelper&lt;FactoryType&gt;::GetFactory(memoryManager);</div>
<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160; </div>
<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;    <a class="code" href="classarmnn_1_1_ref_workload_factory.html">armnn::RefWorkloadFactory</a> refWorkloadFactory;</div>
<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160; </div>
<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;    <span class="keyword">auto</span> testResult = (*testFunction)(workloadFactory, memoryManager, refWorkloadFactory, args...);</div>
<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;    <a class="code" href="_unit_tests_8hpp.html#acbe506e0365feeed352effe52b1e4852">CompareTestResultIfSupported</a>(testName, testResult);</div>
<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">References <a class="el" href="_unit_tests_8hpp_source.html#l00043">CompareTestResultIfSupported()</a>.</p>

</div>
</div>
<a id="a82ab208235e164dca8c02f925e03dc44"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a82ab208235e164dca8c02f925e03dc44">&#9670;&nbsp;</a></span>CompareRefTestFunctionUsingTensorHandleFactory()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CompareRefTestFunctionUsingTensorHandleFactory </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>testName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">TFuncPtr&#160;</td>
          <td class="paramname"><em>testFunction</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">Args...&#160;</td>
          <td class="paramname"><em>args</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_unit_tests_8hpp_source.html#l00154">154</a> of file <a class="el" href="_unit_tests_8hpp_source.html">UnitTests.hpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;{</div>
<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;    <span class="keyword">auto</span> memoryManager = WorkloadFactoryHelper&lt;FactoryType&gt;::GetMemoryManager();</div>
<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;    FactoryType workloadFactory = WorkloadFactoryHelper&lt;FactoryType&gt;::GetFactory(memoryManager);</div>
<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;    <span class="keyword">auto</span> tensorHandleFactory = WorkloadFactoryHelper&lt;FactoryType&gt;::GetTensorHandleFactory(memoryManager);</div>
<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160; </div>
<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;    <a class="code" href="classarmnn_1_1_ref_workload_factory.html">armnn::RefWorkloadFactory</a> refWorkloadFactory;</div>
<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;    <span class="keyword">auto</span> refMemoryManager = WorkloadFactoryHelper&lt;armnn::RefWorkloadFactory&gt;::GetMemoryManager();</div>
<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;    <span class="keyword">auto</span> refTensorHandleFactory = RefWorkloadFactoryHelper::GetTensorHandleFactory(refMemoryManager);</div>
<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160; </div>
<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;    <span class="keyword">auto</span> testResult = (*testFunction)(</div>
<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;        workloadFactory, memoryManager, refWorkloadFactory, tensorHandleFactory, refTensorHandleFactory, args...);</div>
<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;    <a class="code" href="_unit_tests_8hpp.html#acbe506e0365feeed352effe52b1e4852">CompareTestResultIfSupported</a>(testName, testResult);</div>
<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">References <a class="el" href="_unit_tests_8hpp_source.html#l00043">CompareTestResultIfSupported()</a>.</p>

</div>
</div>
<a id="acbe506e0365feeed352effe52b1e4852"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acbe506e0365feeed352effe52b1e4852">&#9670;&nbsp;</a></span>CompareTestResultIfSupported() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CompareTestResultIfSupported </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>testName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const LayerTestResult&lt; T, n &gt; &amp;&#160;</td>
          <td class="paramname"><em>testResult</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Executes CHECK_MESSAGE on CompareTensors() return value so that the predicate_result message is reported. </p>
<p>If the test reports itself as not supported then the tensors are not compared. Additionally this checks that the supportedness reported by the test matches the name of the test. Unsupported tests must be 'tagged' by including "UNSUPPORTED" in their name. This is useful because it clarifies that the feature being tested is not actually supported (a passed test with the name of a feature would imply that feature was supported). If support is added for a feature, the test case will fail because the name incorrectly contains UNSUPPORTED. If support is removed for a feature, the test case will fail because the name doesn't contain UNSUPPORTED. </p>

<p class="definition">Definition at line <a class="el" href="_unit_tests_8hpp_source.html#l00043">43</a> of file <a class="el" href="_unit_tests_8hpp_source.html">UnitTests.hpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;{</div>
<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;    <span class="keywordtype">bool</span> testNameIndicatesUnsupported = testName.find(<span class="stringliteral">&quot;UNSUPPORTED&quot;</span>) != std::string::npos;</div>
<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;    CHECK_MESSAGE(testNameIndicatesUnsupported != testResult.m_Supported,</div>
<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;                  <span class="stringliteral">&quot;The test name does not match the supportedness it is reporting&quot;</span>);</div>
<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    <span class="keywordflow">if</span> (testResult.m_Supported)</div>
<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;    {</div>
<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;        <span class="keyword">auto</span> result = CompareTensors(testResult.m_ActualData,</div>
<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;                                     testResult.m_ExpectedData,</div>
<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;                                     testResult.m_ActualShape,</div>
<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;                                     testResult.m_ExpectedShape,</div>
<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;                                     testResult.m_CompareBoolean);</div>
<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;       CHECK_MESSAGE(result.m_Result, result.m_Message.str());</div>
<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;    }</div>
<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">Referenced by <a class="el" href="_unit_tests_8hpp_source.html#l00142">CompareRefTestFunction()</a>, <a class="el" href="_unit_tests_8hpp_source.html#l00154">CompareRefTestFunctionUsingTensorHandleFactory()</a>, <a class="el" href="_unit_tests_8hpp_source.html#l00079">RunTestFunction()</a>, and <a class="el" href="_unit_tests_8hpp_source.html#l00095">RunTestFunctionUsingTensorHandleFactory()</a>.</p>

</div>
</div>
<a id="a8d26216e495ef45a749c03e6c6edcd38"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8d26216e495ef45a749c03e6c6edcd38">&#9670;&nbsp;</a></span>CompareTestResultIfSupported() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CompareTestResultIfSupported </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>testName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::vector&lt; LayerTestResult&lt; T, n &gt;&gt; &amp;&#160;</td>
          <td class="paramname"><em>testResult</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_unit_tests_8hpp_source.html#l00060">60</a> of file <a class="el" href="_unit_tests_8hpp_source.html">UnitTests.hpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;{</div>
<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;    <span class="keywordtype">bool</span> testNameIndicatesUnsupported = testName.find(<span class="stringliteral">&quot;UNSUPPORTED&quot;</span>) != std::string::npos;</div>
<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; testResult.size(); ++i)</div>
<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;    {</div>
<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;        CHECK_MESSAGE(testNameIndicatesUnsupported != testResult[i].m_Supported,</div>
<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;                      <span class="stringliteral">&quot;The test name does not match the supportedness it is reporting&quot;</span>);</div>
<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;        <span class="keywordflow">if</span> (testResult[i].m_Supported)</div>
<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;        {</div>
<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;            <span class="keyword">auto</span> result = CompareTensors(testResult[i].m_ActualData,</div>
<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;                                         testResult[i].m_ExpectedData,</div>
<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;                                         testResult[i].m_ActualShape,</div>
<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;                                         testResult[i].m_ExpectedShape);</div>
<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;            CHECK_MESSAGE(result.m_Result, result.m_Message.str());</div>
<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;        }</div>
<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;    }</div>
<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="af9e4dd62da9266a1364032ada0267f9b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af9e4dd62da9266a1364032ada0267f9b">&#9670;&nbsp;</a></span>ConfigureLoggingTest()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ConfigureLoggingTest </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_unit_tests_8hpp_source.html#l00022">22</a> of file <a class="el" href="_unit_tests_8hpp_source.html">UnitTests.hpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;{</div>
<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;    <span class="comment">// Configures logging for both the ARMNN library and this test program.</span></div>
<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;    <a class="code" href="namespacearmnn.html#aa59f7a819c3e29d10ffc41e5c0616872">armnn::ConfigureLogging</a>(<span class="keyword">true</span>, <span class="keyword">true</span>, <a class="code" href="namespacearmnn.html#a93a3ba385cad27c4774e5fe64c025d3da882384ec38ce8d9582b57e70861730e4">armnn::LogSeverity::Fatal</a>);</div>
<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">References <a class="el" href="_utils_8cpp_source.html#l00018">armnn::ConfigureLogging()</a>, and <a class="el" href="namespacearmnn.html#a93a3ba385cad27c4774e5fe64c025d3da882384ec38ce8d9582b57e70861730e4">armnn::Fatal</a>.</p>

</div>
</div>
<a id="a10075eca890bd829a87b914c5aa18cb3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a10075eca890bd829a87b914c5aa18cb3">&#9670;&nbsp;</a></span>RunTestFunction()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void RunTestFunction </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>testName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">TFuncPtr&#160;</td>
          <td class="paramname"><em>testFunction</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">Args...&#160;</td>
          <td class="paramname"><em>args</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_unit_tests_8hpp_source.html#l00079">79</a> of file <a class="el" href="_unit_tests_8hpp_source.html">UnitTests.hpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;{</div>
<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;    std::unique_ptr&lt;armnn::IProfiler&gt; profiler = std::make_unique&lt;armnn::IProfiler&gt;();</div>
<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;    <a class="code" href="classarmnn_1_1_profiler_manager.html#a93857080c2523bf3395e7aa7e6024d5c">armnn::ProfilerManager::GetInstance</a>().<a class="code" href="classarmnn_1_1_profiler_manager.html#a7b1e3e5bf386004541be2b5b22443208">RegisterProfiler</a>(profiler.get());</div>
<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160; </div>
<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;    <span class="keyword">auto</span> memoryManager = WorkloadFactoryHelper&lt;FactoryType&gt;::GetMemoryManager();</div>
<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;    FactoryType workloadFactory = WorkloadFactoryHelper&lt;FactoryType&gt;::GetFactory(memoryManager);</div>
<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160; </div>
<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;    <span class="keyword">auto</span> testResult = (*testFunction)(workloadFactory, memoryManager, args...);</div>
<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;    <a class="code" href="_unit_tests_8hpp.html#acbe506e0365feeed352effe52b1e4852">CompareTestResultIfSupported</a>(testName, testResult);</div>
<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160; </div>
<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;    <a class="code" href="classarmnn_1_1_profiler_manager.html#a93857080c2523bf3395e7aa7e6024d5c">armnn::ProfilerManager::GetInstance</a>().<a class="code" href="classarmnn_1_1_profiler_manager.html#a7b1e3e5bf386004541be2b5b22443208">RegisterProfiler</a>(<span class="keyword">nullptr</span>);</div>
<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">References <a class="el" href="_unit_tests_8hpp_source.html#l00043">CompareTestResultIfSupported()</a>, <a class="el" href="_profiling_8cpp_source.html#l00593">ProfilerManager::GetInstance()</a>, and <a class="el" href="_profiling_8cpp_source.html#l00600">ProfilerManager::RegisterProfiler()</a>.</p>

</div>
</div>
<a id="ae9222f9685bc46d77397c262858172c3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae9222f9685bc46d77397c262858172c3">&#9670;&nbsp;</a></span>RunTestFunctionUsingTensorHandleFactory()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void RunTestFunctionUsingTensorHandleFactory </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>testName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">TFuncPtr&#160;</td>
          <td class="paramname"><em>testFunction</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">Args...&#160;</td>
          <td class="paramname"><em>args</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_unit_tests_8hpp_source.html#l00095">95</a> of file <a class="el" href="_unit_tests_8hpp_source.html">UnitTests.hpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;{</div>
<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;    std::unique_ptr&lt;armnn::IProfiler&gt; profiler = std::make_unique&lt;armnn::IProfiler&gt;();</div>
<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;    <a class="code" href="classarmnn_1_1_profiler_manager.html#a93857080c2523bf3395e7aa7e6024d5c">armnn::ProfilerManager::GetInstance</a>().<a class="code" href="classarmnn_1_1_profiler_manager.html#a7b1e3e5bf386004541be2b5b22443208">RegisterProfiler</a>(profiler.get());</div>
<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160; </div>
<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;    <span class="keyword">auto</span> memoryManager = WorkloadFactoryHelper&lt;FactoryType&gt;::GetMemoryManager();</div>
<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;    FactoryType workloadFactory = WorkloadFactoryHelper&lt;FactoryType&gt;::GetFactory(memoryManager);</div>
<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160; </div>
<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;    <span class="keyword">auto</span> tensorHandleFactory = WorkloadFactoryHelper&lt;FactoryType&gt;::GetTensorHandleFactory(memoryManager);</div>
<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160; </div>
<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;    <span class="keyword">auto</span> testResult = (*testFunction)(workloadFactory, memoryManager, tensorHandleFactory, args...);</div>
<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;    <a class="code" href="_unit_tests_8hpp.html#acbe506e0365feeed352effe52b1e4852">CompareTestResultIfSupported</a>(testName, testResult);</div>
<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160; </div>
<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;    <a class="code" href="classarmnn_1_1_profiler_manager.html#a93857080c2523bf3395e7aa7e6024d5c">armnn::ProfilerManager::GetInstance</a>().<a class="code" href="classarmnn_1_1_profiler_manager.html#a7b1e3e5bf386004541be2b5b22443208">RegisterProfiler</a>(<span class="keyword">nullptr</span>);</div>
<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">References <a class="el" href="_unit_tests_8hpp_source.html#l00043">CompareTestResultIfSupported()</a>, <a class="el" href="_profiling_8cpp_source.html#l00593">ProfilerManager::GetInstance()</a>, and <a class="el" href="_profiling_8cpp_source.html#l00600">ProfilerManager::RegisterProfiler()</a>.</p>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="aclassarmnn_1_1_profiler_manager_html_a7b1e3e5bf386004541be2b5b22443208"><div class="ttname"><a href="classarmnn_1_1_profiler_manager.html#a7b1e3e5bf386004541be2b5b22443208">armnn::ProfilerManager::RegisterProfiler</a></div><div class="ttdeci">void RegisterProfiler(IProfiler *profiler)</div><div class="ttdef"><b>Definition:</b> <a href="_profiling_8cpp_source.html#l00600">Profiling.cpp:600</a></div></div>
<div class="ttc" id="anamespacearmnn_html_aa59f7a819c3e29d10ffc41e5c0616872"><div class="ttname"><a href="namespacearmnn.html#aa59f7a819c3e29d10ffc41e5c0616872">armnn::ConfigureLogging</a></div><div class="ttdeci">void ConfigureLogging(bool printToStandardOutput, bool printToDebugOutput, LogSeverity severity)</div><div class="ttdoc">Configures the logging behaviour of the ARMNN library.</div><div class="ttdef"><b>Definition:</b> <a href="_utils_8cpp_source.html#l00018">Utils.cpp:18</a></div></div>
<div class="ttc" id="aclassarmnn_1_1_ref_workload_factory_html"><div class="ttname"><a href="classarmnn_1_1_ref_workload_factory.html">armnn::RefWorkloadFactory</a></div><div class="ttdef"><b>Definition:</b> <a href="_ref_workload_factory_8hpp_source.html#l00027">RefWorkloadFactory.hpp:27</a></div></div>
<div class="ttc" id="anamespacearmnn_html_a93a3ba385cad27c4774e5fe64c025d3da882384ec38ce8d9582b57e70861730e4"><div class="ttname"><a href="namespacearmnn.html#a93a3ba385cad27c4774e5fe64c025d3da882384ec38ce8d9582b57e70861730e4">armnn::LogSeverity::Fatal</a></div><div class="ttdeci">@ Fatal</div></div>
<div class="ttc" id="aclassarmnn_1_1_profiler_manager_html_a93857080c2523bf3395e7aa7e6024d5c"><div class="ttname"><a href="classarmnn_1_1_profiler_manager.html#a93857080c2523bf3395e7aa7e6024d5c">armnn::ProfilerManager::GetInstance</a></div><div class="ttdeci">static ProfilerManager &amp; GetInstance()</div><div class="ttdef"><b>Definition:</b> <a href="_profiling_8cpp_source.html#l00593">Profiling.cpp:593</a></div></div>
<div class="ttc" id="a_unit_tests_8hpp_html_acbe506e0365feeed352effe52b1e4852"><div class="ttname"><a href="_unit_tests_8hpp.html#acbe506e0365feeed352effe52b1e4852">CompareTestResultIfSupported</a></div><div class="ttdeci">void CompareTestResultIfSupported(const std::string &amp;testName, const LayerTestResult&lt; T, n &gt; &amp;testResult)</div><div class="ttdoc">Executes CHECK_MESSAGE on CompareTensors() return value so that the predicate_result message is repor...</div><div class="ttdef"><b>Definition:</b> <a href="_unit_tests_8hpp_source.html#l00043">UnitTests.hpp:43</a></div></div>
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_f574f3650e467f7ec35d628d20229555.html">armnnTestUtils</a></li><li class="navelem"><a class="el" href="_unit_tests_8hpp.html">UnitTests.hpp</a></li>
    <li class="footer">Generated on Wed Feb 14 2024 16:36:18 for Arm NN by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
  </ul>
</div>
</body>
</html>
