diff --git a/24.02/_unit_tests_8hpp.html b/24.02/_unit_tests_8hpp.html
new file mode 100644
index 0000000..c274576
--- /dev/null
+++ b/24.02/_unit_tests_8hpp.html
@@ -0,0 +1,898 @@
+<!-- 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>
