From a160b245a5c876d3630651e938a7c45ee30645be Mon Sep 17 00:00:00 2001 From: Matteo Martincigh Date: Thu, 18 Oct 2018 10:33:23 +0100 Subject: IVGCVSW-2033 Add unit tests for the newly implemented NHWC support in ref Normalization * Added create workload unit tests for the NHWC data layout Change-Id: Id4813105c027a26e277de64fecea1845fea39fd9 --- .../reference/test/RefCreateWorkloadTests.cpp | 31 +++++++++++++++++----- 1 file changed, 25 insertions(+), 6 deletions(-) (limited to 'src/backends/reference') diff --git a/src/backends/reference/test/RefCreateWorkloadTests.cpp b/src/backends/reference/test/RefCreateWorkloadTests.cpp index 236267c177..1ec7749168 100644 --- a/src/backends/reference/test/RefCreateWorkloadTests.cpp +++ b/src/backends/reference/test/RefCreateWorkloadTests.cpp @@ -231,21 +231,40 @@ BOOST_AUTO_TEST_CASE(CreateFullyConnectedUint8Workload) } template -static void RefCreateNormalizationWorkloadTest() +static void RefCreateNormalizationWorkloadTest(DataLayout dataLayout) { Graph graph; RefWorkloadFactory factory; - auto workload = CreateNormalizationWorkloadTest(factory, graph); + auto workload = CreateNormalizationWorkloadTest(factory, graph, dataLayout); + + TensorShape inputShape; + TensorShape outputShape; + + switch (dataLayout) + { + case DataLayout::NHWC: + inputShape = { 3, 1, 5, 5 }; + outputShape = { 3, 1, 5, 5 }; + break; + case DataLayout::NCHW: + default: + inputShape = { 3, 5, 5, 1 }; + outputShape = { 3, 5, 5, 1 }; + break; + } // Checks that outputs and inputs are as we expect them (see definition of CreateNormalizationWorkloadTest). - CheckInputOutput(std::move(workload), - TensorInfo({3, 5, 5, 1}, DataType), - TensorInfo({3, 5, 5, 1}, DataType)); + CheckInputOutput(std::move(workload), TensorInfo(inputShape, DataType), TensorInfo(outputShape, DataType)); } BOOST_AUTO_TEST_CASE(CreateRefNormalizationNchwWorkload) { - RefCreateNormalizationWorkloadTest(); + RefCreateNormalizationWorkloadTest(DataLayout::NCHW); +} + +BOOST_AUTO_TEST_CASE(CreateRefNormalizationNhwcWorkload) +{ + RefCreateNormalizationWorkloadTest(DataLayout::NHWC); } template -- cgit v1.2.1