Publishing 2019 R1 content
[platform/upstream/dldt.git] / inference-engine / tests / unit / builders / relu6_layer_test.cpp
1 // Copyright (C) 2019 Intel Corporation
2 // SPDX-License-Identifier: Apache-2.0
3 //
4
5 #include <gtest/gtest.h>
6 #include <string.h>
7 #include <ie_builders.hpp>
8 #include <builders/ie_relu6_layer.hpp>
9
10 #include "builder_test.hpp"
11
12 using namespace testing;
13 using namespace InferenceEngine;
14
15 class ReLU6LayerBuilderTest : public BuilderTestCommon {};
16
17 TEST_F(ReLU6LayerBuilderTest, getExistsLayerFromNetworkBuilder) {
18     Builder::Network net("network");
19     Builder::ReLU6Layer relu6Layer("relu6layer");
20     relu6Layer.setN(100);
21     size_t ind = net.addLayer(relu6Layer);
22     Builder::ReLU6Layer layerFromNet(net.getLayer(ind));
23     ASSERT_EQ(relu6Layer.getN(), layerFromNet.getN());
24 }
25
26 TEST_F(ReLU6LayerBuilderTest, cannotCreateLayerWithWrongShapes) {
27     Builder::Network net("network");
28     Builder::Layer::Ptr fakeReLU6LayerPtr = std::make_shared<Builder::Layer>("ReLU6", "ReLU6 layer");
29     fakeReLU6LayerPtr->getInputPorts().push_back(Port({1, 1, 1, 1}));
30     fakeReLU6LayerPtr->getOutputPorts().push_back(Port({1, 1, 1, 2}));
31     Builder::ReLU6Layer reLU6Layer(fakeReLU6LayerPtr);
32     reLU6Layer.setN(10);
33     ASSERT_THROW(net.addLayer(reLU6Layer), InferenceEngine::details::InferenceEngineException);
34 }