IVGCVSW-5962 Remove boost::multi_array

 * Replaced all instances of boost::multi_array with flat vectors.
 * Updated LayerTestResult struct with new member variables.
 * Updated CompareTensor function to compare flat vectors and the shape.
 * Removed MakeTensor function from TensorHelpers.hpp.
 * Removed GetTensorShapeAsArray function from LayerTestResult.hpp.
 * Removed boost::array usage.
 * Removed boost::extents usages.
 * Removed boost::random usages.

Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: Iccde9d6640b534940292ff048fb80c00b38c4743
diff --git a/src/backends/backendsCommon/test/layerTests/GatherTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/GatherTestImpl.cpp
index 7fabff6..51df1eb 100644
--- a/src/backends/backendsCommon/test/layerTests/GatherTestImpl.cpp
+++ b/src/backends/backendsCommon/test/layerTests/GatherTestImpl.cpp
@@ -33,11 +33,8 @@
     const std::vector<T>& outputData)
 {
     IgnoreUnused(memoryManager);
-    auto params  = MakeTensor<T, ParamsDim>(paramsInfo, paramsData);
-    auto indices = MakeTensor<int32_t, IndicesDim>(indicesInfo, indicesData);
 
-    LayerTestResult<T, OutputDim> result(outputInfo);
-    result.outputExpected = MakeTensor<T, OutputDim>(outputInfo, outputData);
+    std::vector<T> actualOutput(outputInfo.GetNumElements());
 
     std::unique_ptr<armnn::ITensorHandle> paramsHandle = tensorHandleFactory.CreateTensorHandle(paramsInfo);
     std::unique_ptr<armnn::ITensorHandle> indicesHandle = tensorHandleFactory.CreateTensorHandle(indicesInfo);
@@ -55,14 +52,17 @@
     indicesHandle->Allocate();
     outputHandle->Allocate();
 
-    CopyDataToITensorHandle(paramsHandle.get(), params.origin());
-    CopyDataToITensorHandle(indicesHandle.get(), indices.origin());
+    CopyDataToITensorHandle(paramsHandle.get(), paramsData.data());
+    CopyDataToITensorHandle(indicesHandle.get(), indicesData.data());
 
     workload->Execute();
 
-    CopyDataFromITensorHandle(result.output.origin(), outputHandle.get());
+    CopyDataFromITensorHandle(actualOutput.data(), outputHandle.get());
 
-    return result;
+    return LayerTestResult<T, OutputDim>(actualOutput,
+                                         outputData,
+                                         outputHandle->GetShape(),
+                                         outputInfo.GetShape());
 }
 
 template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>