2 // Copyright © 2017 Arm Ltd. All rights reserved.
3 // See LICENSE file in the project root for full license information.
6 #include <boost/test/unit_test.hpp>
7 #include "armnnTfParser/ITfParser.hpp"
8 #include "ParserPrototxtFixture.hpp"
10 BOOST_AUTO_TEST_SUITE(TensorflowParser)
12 struct MultiplicationFixture : public ParserPrototxtFixture<armnnTfParser::ITfParser>
14 MultiplicationFixture()
16 m_Prototext = "node { \n"
17 " name: \"graphInput\" \n"
18 " op: \"Placeholder\" \n"
34 " name: \"softmax1\" \n"
36 " input: \"graphInput\" \n"
45 " name: \"softmax2\"\n"
47 " input: \"graphInput\"\n"
56 " name: \"multiplication\"\n"
58 " input: \"softmax1\"\n"
59 " input: \"softmax2\"\n"
68 SetupSingleInputSingleOutput({ 1, 7 }, "graphInput", "multiplication");
72 BOOST_FIXTURE_TEST_CASE(ParseMultiplication, MultiplicationFixture)
74 RunTest<2>({ 0, 0, 10000, 0, 0, 0, 0 }, { 0, 0, 1, 0, 0, 0, 0 });
77 struct MultiplicationBroadcastFixture : public ParserPrototxtFixture<armnnTfParser::ITfParser>
79 MultiplicationBroadcastFixture(const armnn::TensorShape& inputShape0, const armnn::TensorShape& inputShape1)
130 Setup({ { "input0", inputShape0 },
131 { "input1", inputShape1 } },
136 struct MultiplicationBroadcastFixture4D1D : public MultiplicationBroadcastFixture
138 MultiplicationBroadcastFixture4D1D() : MultiplicationBroadcastFixture({ 1, 2, 2, 3 }, { 1 }) {}
141 BOOST_FIXTURE_TEST_CASE(ParseMultiplicationBroadcast4D1D, MultiplicationBroadcastFixture4D1D)
143 RunTest<4>({ { "input0", { 0.0f, 1.0f, 2.0f,
146 9.0f, 10.0f, 11.0f } },
147 { "input1", { 5.0f } } },
148 { { "output", { 0.0f, 5.0f, 10.0f,
151 45.0f, 50.0f, 55.0f } } });
154 struct MultiplicationBroadcastFixture1D4D : public MultiplicationBroadcastFixture
156 MultiplicationBroadcastFixture1D4D() : MultiplicationBroadcastFixture({ 1 }, { 1, 2, 2, 3 }) {}
159 BOOST_FIXTURE_TEST_CASE(ParseMultiplicationBroadcast1D4D, MultiplicationBroadcastFixture1D4D)
161 RunTest<4>({ { "input0", { 3.0f } },
162 { "input1", { 0.0f, 1.0f, 2.0f,
165 9.0f, 10.0f, 11.0f } } },
166 { { "output", { 0.0f, 3.0f, 6.0f,
169 27.0f, 30.0f, 33.0f } } });
172 BOOST_AUTO_TEST_SUITE_END()