blob: 72c90ca5457e9befba6a37636f712812f1ed2ab4 [file] [log] [blame]
//
// Copyright © 2017 Arm Ltd. All rights reserved.
// SPDX-License-Identifier: MIT
//
#include "../DriverTestHelpers.hpp"
#include "../../1.0/FullyConnected.hpp"
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_SUITE(FullyConnectedReshapeTests)
BOOST_AUTO_TEST_CASE(TestFlattenFullyConnectedInput)
{
using armnn::TensorShape;
// Pass through 2d input
BOOST_TEST(FlattenFullyConnectedInput(TensorShape({2,2048}), TensorShape({512, 2048})) ==
TensorShape({2, 2048}));
// Trivial flattening of batched channels
BOOST_TEST(FlattenFullyConnectedInput(TensorShape({97,1,1,2048}), TensorShape({512, 2048})) ==
TensorShape({97, 2048}));
// Flatten single batch of rows
BOOST_TEST(FlattenFullyConnectedInput(TensorShape({1,97,1,2048}), TensorShape({512, 2048})) ==
TensorShape({97, 2048}));
// Flatten single batch of columns
BOOST_TEST(FlattenFullyConnectedInput(TensorShape({1,1,97,2048}), TensorShape({512, 2048})) ==
TensorShape({97, 2048}));
// Move batches into input dimension
BOOST_TEST(FlattenFullyConnectedInput(TensorShape({50,1,1,10}), TensorShape({512, 20})) ==
TensorShape({25, 20}));
// Flatten single batch of 3D data (e.g. convolution output)
BOOST_TEST(FlattenFullyConnectedInput(TensorShape({1,16,16,10}), TensorShape({512, 2560})) ==
TensorShape({1, 2560}));
}
BOOST_AUTO_TEST_SUITE_END()