IVGCVSW-7211 Fix float16 operators being wrongly unsupported with android-nn-driver.

!armnn:8862

  * Added float16 mean test cases.
  * Float16 CTS/CTS pass on CpuAcc.

Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: Ibd9021d0ae4a205cc2c91555f3ae00c6dba84609
diff --git a/test/TestHalfTensor.cpp b/test/TestHalfTensor.cpp
new file mode 100644
index 0000000..12cdc42
--- /dev/null
+++ b/test/TestHalfTensor.cpp
@@ -0,0 +1,33 @@
+//
+// Copyright © 2022 Arm Ltd and Contributors. All rights reserved.
+// SPDX-License-Identifier: MIT
+//
+
+#include "TestHalfTensor.hpp"
+
+namespace driverTestHelpers
+{
+
+hidl_vec<uint32_t> TestHalfTensor::GetDimensions() const
+{
+    hidl_vec<uint32_t> dimensions;
+    dimensions.resize(m_Shape.GetNumDimensions());
+    for (uint32_t i=0; i<m_Shape.GetNumDimensions(); ++i)
+    {
+        dimensions[i] = m_Shape[i];
+    }
+    return dimensions;
+}
+
+unsigned int TestHalfTensor::GetNumElements() const
+{
+    return m_Shape.GetNumElements();
+}
+
+const Half * TestHalfTensor::GetData() const
+{
+    DOCTEST_CHECK(m_Data.empty() == false);
+    return &m_Data[0];
+}
+
+} // namespace driverTestHelpers