diff options
Diffstat (limited to 'src/armnn/test')
-rw-r--r-- | src/armnn/test/TestInputOutputLayerVisitor.cpp | 53 | ||||
-rw-r--r-- | src/armnn/test/TestInputOutputLayerVisitor.hpp | 61 |
2 files changed, 114 insertions, 0 deletions
diff --git a/src/armnn/test/TestInputOutputLayerVisitor.cpp b/src/armnn/test/TestInputOutputLayerVisitor.cpp new file mode 100644 index 0000000000..35ffc55e55 --- /dev/null +++ b/src/armnn/test/TestInputOutputLayerVisitor.cpp @@ -0,0 +1,53 @@ +// +// Copyright © 2017 Arm Ltd. All rights reserved. +// SPDX-License-Identifier: MIT +// +#include "TestInputOutputLayerVisitor.hpp" +#include "Network.hpp" + +namespace armnn +{ + +BOOST_AUTO_TEST_SUITE(TestInputOutputLayerVisitor) + +BOOST_AUTO_TEST_CASE(CheckInputLayerVisitorBindingIdAndName) +{ + const char* layerName = "InputLayer"; + TestInputLayerVisitor visitor(1, layerName); + Network net; + + IConnectableLayer *const layer = net.AddInputLayer(1, layerName); + layer->Accept(visitor); +} + +BOOST_AUTO_TEST_CASE(CheckInputLayerVisitorBindingIdAndNameNull) +{ + TestInputLayerVisitor visitor(1); + Network net; + + IConnectableLayer *const layer = net.AddInputLayer(1); + layer->Accept(visitor); +} + +BOOST_AUTO_TEST_CASE(CheckOutputLayerVisitorBindingIdAndName) +{ + const char* layerName = "OutputLayer"; + TestOutputLayerVisitor visitor(1, layerName); + Network net; + + IConnectableLayer *const layer = net.AddOutputLayer(1, layerName); + layer->Accept(visitor); +} + +BOOST_AUTO_TEST_CASE(CheckOutputLayerVisitorBindingIdAndNameNull) +{ + TestOutputLayerVisitor visitor(1); + Network net; + + IConnectableLayer *const layer = net.AddOutputLayer(1); + layer->Accept(visitor); +} + +BOOST_AUTO_TEST_SUITE_END() + +} //namespace armnn
\ No newline at end of file diff --git a/src/armnn/test/TestInputOutputLayerVisitor.hpp b/src/armnn/test/TestInputOutputLayerVisitor.hpp new file mode 100644 index 0000000000..f67a65cd09 --- /dev/null +++ b/src/armnn/test/TestInputOutputLayerVisitor.hpp @@ -0,0 +1,61 @@ +// +// Copyright © 2017 Arm Ltd. All rights reserved. +// SPDX-License-Identifier: MIT +// +#pragma once + +#include "TestLayerVisitor.hpp" +#include <boost/test/unit_test.hpp> + +namespace armnn +{ + +void CheckLayerBindingId(LayerBindingId visitorId, LayerBindingId id) +{ + BOOST_CHECK_EQUAL(visitorId, id); +} + +// Concrete TestLayerVisitor subclasses for layers taking LayerBindingId argument with overridden VisitLayer methods +class TestInputLayerVisitor : public TestLayerVisitor +{ +private: + LayerBindingId visitorId; + +public: + explicit TestInputLayerVisitor(LayerBindingId id, const char* name = nullptr) + : TestLayerVisitor(name) + , visitorId(id) + {}; + + void VisitInputLayer(const IConnectableLayer* layer, + LayerBindingId id, + const char* name = nullptr) override + { + CheckLayerPointer(layer); + CheckLayerBindingId(visitorId, id); + CheckLayerName(name); + }; +}; + +class TestOutputLayerVisitor : public TestLayerVisitor +{ +private: + LayerBindingId visitorId; + +public: + explicit TestOutputLayerVisitor(LayerBindingId id, const char* name = nullptr) + : TestLayerVisitor(name) + , visitorId(id) + {}; + + void VisitOutputLayer(const IConnectableLayer* layer, + LayerBindingId id, + const char* name = nullptr) override + { + CheckLayerPointer(layer); + CheckLayerBindingId(visitorId, id); + CheckLayerName(name); + }; +}; + +} //namespace armnn |