aboutsummaryrefslogtreecommitdiff
path: root/src/armnnSerializer/test
diff options
context:
space:
mode:
authorKeith Davis <keith.davis@arm.com>2021-05-21 16:33:48 +0100
committerKeith Davis <keith.davis@arm.com>2021-06-16 17:27:59 +0100
commit3ae3f978cf9ce3174609b7152af87acb410b0fe0 (patch)
tree9c71ea6aafbacfeba6938b5e0e29cdc97a784b70 /src/armnnSerializer/test
parent50de4fa4e7e0dd02a442ba350a1b40f293cb5a01 (diff)
downloadarmnn-3ae3f978cf9ce3174609b7152af87acb410b0fe0.tar.gz
MLCE-510 Add CpuRef Shape Operator to ArmNN
* Add front end * Add reference workload * Serialization/Deserialization * Add unit tests * Update ArmNN Versioning Signed-off-by: Keith Davis <keith.davis@arm.com> Change-Id: I6fcb1fa341d6f08dea4003b13544e6e9f53fefd3
Diffstat (limited to 'src/armnnSerializer/test')
-rw-r--r--src/armnnSerializer/test/SerializerTests.cpp25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/armnnSerializer/test/SerializerTests.cpp b/src/armnnSerializer/test/SerializerTests.cpp
index 8e7ca37cfa..98532d0cec 100644
--- a/src/armnnSerializer/test/SerializerTests.cpp
+++ b/src/armnnSerializer/test/SerializerTests.cpp
@@ -1951,6 +1951,31 @@ TEST_CASE("EnsureResizeBilinearBackwardCompatibility")
deserializedNetwork->ExecuteStrategy(verifier);
}
+TEST_CASE("SerializeShape")
+{
+ const std::string layerName("shape");
+ const armnn::TensorInfo inputInfo({1, 3, 3, 1}, armnn::DataType::Signed32);
+ const armnn::TensorInfo outputInfo({ 4 }, armnn::DataType::Signed32);
+
+ armnn::INetworkPtr network = armnn::INetwork::Create();
+ armnn::IConnectableLayer* const inputLayer = network->AddInputLayer(0);
+ armnn::IConnectableLayer* const shapeLayer = network->AddShapeLayer(layerName.c_str());
+ armnn::IConnectableLayer* const outputLayer = network->AddOutputLayer(0);
+
+ inputLayer->GetOutputSlot(0).Connect(shapeLayer->GetInputSlot(0));
+ shapeLayer->GetOutputSlot(0).Connect(outputLayer->GetInputSlot(0));
+
+ inputLayer->GetOutputSlot(0).SetTensorInfo(inputInfo);
+ shapeLayer->GetOutputSlot(0).SetTensorInfo(outputInfo);
+
+ armnn::INetworkPtr deserializedNetwork = DeserializeNetwork(SerializeNetwork(*network));
+ CHECK(deserializedNetwork);
+
+ LayerVerifierBase verifier(layerName, {inputInfo}, {outputInfo});
+
+ deserializedNetwork->ExecuteStrategy(verifier);
+}
+
TEST_CASE("SerializeSlice")
{
const std::string layerName{"slice"};