xref: /aosp_15_r20/external/armnn/src/armnnTfLiteParser/test/Comparison.cpp (revision 89c4ff92f2867872bb9e2354d150bf0c8c502810)
1*89c4ff92SAndroid Build Coastguard Worker //
2*89c4ff92SAndroid Build Coastguard Worker // Copyright © 2021 Arm Ltd and Contributors. All rights reserved.
3*89c4ff92SAndroid Build Coastguard Worker // SPDX-License-Identifier: MIT
4*89c4ff92SAndroid Build Coastguard Worker //
5*89c4ff92SAndroid Build Coastguard Worker 
6*89c4ff92SAndroid Build Coastguard Worker #include "ParserFlatbuffersFixture.hpp"
7*89c4ff92SAndroid Build Coastguard Worker #include "../TfLiteParser.hpp"
8*89c4ff92SAndroid Build Coastguard Worker 
9*89c4ff92SAndroid Build Coastguard Worker #include <string>
10*89c4ff92SAndroid Build Coastguard Worker 
11*89c4ff92SAndroid Build Coastguard Worker TEST_SUITE("TensorflowLiteParser_Comparison")
12*89c4ff92SAndroid Build Coastguard Worker {
13*89c4ff92SAndroid Build Coastguard Worker struct ComparisonFixture : public ParserFlatbuffersFixture
14*89c4ff92SAndroid Build Coastguard Worker {
ComparisonFixtureComparisonFixture15*89c4ff92SAndroid Build Coastguard Worker     explicit ComparisonFixture(const std::string& operatorCode,
16*89c4ff92SAndroid Build Coastguard Worker                                      const std::string& dataType,
17*89c4ff92SAndroid Build Coastguard Worker                                      const std::string& inputShape,
18*89c4ff92SAndroid Build Coastguard Worker                                      const std::string& inputShape2,
19*89c4ff92SAndroid Build Coastguard Worker                                      const std::string& outputShape)
20*89c4ff92SAndroid Build Coastguard Worker     {
21*89c4ff92SAndroid Build Coastguard Worker         m_JsonString = R"(
22*89c4ff92SAndroid Build Coastguard Worker             {
23*89c4ff92SAndroid Build Coastguard Worker                 "version": 3,
24*89c4ff92SAndroid Build Coastguard Worker                 "operator_codes": [ { "builtin_code": )" + operatorCode + R"( } ],
25*89c4ff92SAndroid Build Coastguard Worker                 "subgraphs": [ {
26*89c4ff92SAndroid Build Coastguard Worker                     "tensors": [
27*89c4ff92SAndroid Build Coastguard Worker                         {
28*89c4ff92SAndroid Build Coastguard Worker                             "shape": )" + inputShape + R"(,
29*89c4ff92SAndroid Build Coastguard Worker                             "type": )" + dataType + R"( ,
30*89c4ff92SAndroid Build Coastguard Worker                             "buffer": 0,
31*89c4ff92SAndroid Build Coastguard Worker                             "name": "inputTensor",
32*89c4ff92SAndroid Build Coastguard Worker                             "quantization": {
33*89c4ff92SAndroid Build Coastguard Worker                                 "min": [ 0.0 ],
34*89c4ff92SAndroid Build Coastguard Worker                                 "max": [ 255.0 ],
35*89c4ff92SAndroid Build Coastguard Worker                                 "scale": [ 1.0 ],
36*89c4ff92SAndroid Build Coastguard Worker                                 "zero_point": [ 0 ],
37*89c4ff92SAndroid Build Coastguard Worker                             }
38*89c4ff92SAndroid Build Coastguard Worker                         },
39*89c4ff92SAndroid Build Coastguard Worker                         {
40*89c4ff92SAndroid Build Coastguard Worker                             "shape": )" + inputShape2 + R"(,
41*89c4ff92SAndroid Build Coastguard Worker                             "type": )" + dataType + R"( ,
42*89c4ff92SAndroid Build Coastguard Worker                             "buffer": 1,
43*89c4ff92SAndroid Build Coastguard Worker                             "name": "inputTensor2",
44*89c4ff92SAndroid Build Coastguard Worker                             "quantization": {
45*89c4ff92SAndroid Build Coastguard Worker                                 "min": [ 0.0 ],
46*89c4ff92SAndroid Build Coastguard Worker                                 "max": [ 255.0 ],
47*89c4ff92SAndroid Build Coastguard Worker                                 "scale": [ 1.0 ],
48*89c4ff92SAndroid Build Coastguard Worker                                 "zero_point": [ 0 ],
49*89c4ff92SAndroid Build Coastguard Worker                             }
50*89c4ff92SAndroid Build Coastguard Worker                         },
51*89c4ff92SAndroid Build Coastguard Worker                         {
52*89c4ff92SAndroid Build Coastguard Worker                             "shape": )" + outputShape + R"( ,
53*89c4ff92SAndroid Build Coastguard Worker                             "type": "BOOL",
54*89c4ff92SAndroid Build Coastguard Worker                             "buffer": 2,
55*89c4ff92SAndroid Build Coastguard Worker                             "name": "outputTensor",
56*89c4ff92SAndroid Build Coastguard Worker                             "quantization": {
57*89c4ff92SAndroid Build Coastguard Worker                                 "min": [ 0.0 ],
58*89c4ff92SAndroid Build Coastguard Worker                                 "max": [ 255.0 ],
59*89c4ff92SAndroid Build Coastguard Worker                                 "scale": [ 1.0 ],
60*89c4ff92SAndroid Build Coastguard Worker                                 "zero_point": [ 0 ],
61*89c4ff92SAndroid Build Coastguard Worker                             }
62*89c4ff92SAndroid Build Coastguard Worker                         }
63*89c4ff92SAndroid Build Coastguard Worker                     ],
64*89c4ff92SAndroid Build Coastguard Worker                     "inputs": [ 0, 1 ],
65*89c4ff92SAndroid Build Coastguard Worker                     "outputs": [ 2 ],
66*89c4ff92SAndroid Build Coastguard Worker                     "operators": [
67*89c4ff92SAndroid Build Coastguard Worker                         {
68*89c4ff92SAndroid Build Coastguard Worker                             "opcode_index": 0,
69*89c4ff92SAndroid Build Coastguard Worker                             "inputs": [ 0, 1 ],
70*89c4ff92SAndroid Build Coastguard Worker                             "outputs": [ 2 ],
71*89c4ff92SAndroid Build Coastguard Worker                             "custom_options_format": "FLEXBUFFERS"
72*89c4ff92SAndroid Build Coastguard Worker                         }
73*89c4ff92SAndroid Build Coastguard Worker                     ],
74*89c4ff92SAndroid Build Coastguard Worker                 } ],
75*89c4ff92SAndroid Build Coastguard Worker                 "buffers" : [
76*89c4ff92SAndroid Build Coastguard Worker                     { },
77*89c4ff92SAndroid Build Coastguard Worker                     { }
78*89c4ff92SAndroid Build Coastguard Worker                 ]
79*89c4ff92SAndroid Build Coastguard Worker             }
80*89c4ff92SAndroid Build Coastguard Worker         )";
81*89c4ff92SAndroid Build Coastguard Worker         Setup();
82*89c4ff92SAndroid Build Coastguard Worker     }
83*89c4ff92SAndroid Build Coastguard Worker };
84*89c4ff92SAndroid Build Coastguard Worker 
85*89c4ff92SAndroid Build Coastguard Worker struct SimpleEqualFixture : public ComparisonFixture
86*89c4ff92SAndroid Build Coastguard Worker {
SimpleEqualFixtureSimpleEqualFixture87*89c4ff92SAndroid Build Coastguard Worker     SimpleEqualFixture() : ComparisonFixture("EQUAL", "UINT8", "[ 2, 2 ]", "[ 2, 2 ]", "[ 2, 2 ]") {}
88*89c4ff92SAndroid Build Coastguard Worker };
89*89c4ff92SAndroid Build Coastguard Worker 
90*89c4ff92SAndroid Build Coastguard Worker TEST_CASE_FIXTURE(SimpleEqualFixture, "SimpleEqual")
91*89c4ff92SAndroid Build Coastguard Worker {
92*89c4ff92SAndroid Build Coastguard Worker     RunTest<2, armnn::DataType::QAsymmU8,
93*89c4ff92SAndroid Build Coastguard Worker                armnn::DataType::Boolean>(
94*89c4ff92SAndroid Build Coastguard Worker                    0,
95*89c4ff92SAndroid Build Coastguard Worker                    {{"inputTensor",  { 0, 1, 2, 3 }},
96*89c4ff92SAndroid Build Coastguard Worker                     {"inputTensor2", { 0, 1, 5, 6 }}},
97*89c4ff92SAndroid Build Coastguard Worker                    {{"outputTensor", { 1, 1, 0, 0 }}});
98*89c4ff92SAndroid Build Coastguard Worker }
99*89c4ff92SAndroid Build Coastguard Worker 
100*89c4ff92SAndroid Build Coastguard Worker struct BroadcastEqualFixture : public ComparisonFixture
101*89c4ff92SAndroid Build Coastguard Worker {
BroadcastEqualFixtureBroadcastEqualFixture102*89c4ff92SAndroid Build Coastguard Worker     BroadcastEqualFixture() : ComparisonFixture("EQUAL", "UINT8", "[ 2, 2 ]", "[ 1, 2 ]", "[ 2, 2 ]") {}
103*89c4ff92SAndroid Build Coastguard Worker };
104*89c4ff92SAndroid Build Coastguard Worker 
105*89c4ff92SAndroid Build Coastguard Worker TEST_CASE_FIXTURE(BroadcastEqualFixture, "BroadcastEqual")
106*89c4ff92SAndroid Build Coastguard Worker {
107*89c4ff92SAndroid Build Coastguard Worker     RunTest<2, armnn::DataType::QAsymmU8,
108*89c4ff92SAndroid Build Coastguard Worker                armnn::DataType::Boolean>(
109*89c4ff92SAndroid Build Coastguard Worker                    0,
110*89c4ff92SAndroid Build Coastguard Worker                    {{"inputTensor",  { 0, 1, 2, 3 }},
111*89c4ff92SAndroid Build Coastguard Worker                     {"inputTensor2", { 0, 1 }}},
112*89c4ff92SAndroid Build Coastguard Worker                    {{"outputTensor", { 1, 1, 0, 0 }}});
113*89c4ff92SAndroid Build Coastguard Worker }
114*89c4ff92SAndroid Build Coastguard Worker 
115*89c4ff92SAndroid Build Coastguard Worker struct SimpleNotEqualFixture : public ComparisonFixture
116*89c4ff92SAndroid Build Coastguard Worker {
SimpleNotEqualFixtureSimpleNotEqualFixture117*89c4ff92SAndroid Build Coastguard Worker     SimpleNotEqualFixture() : ComparisonFixture("NOT_EQUAL", "UINT8", "[ 2, 2 ]", "[ 2, 2 ]", "[ 2, 2 ]") {}
118*89c4ff92SAndroid Build Coastguard Worker };
119*89c4ff92SAndroid Build Coastguard Worker 
120*89c4ff92SAndroid Build Coastguard Worker TEST_CASE_FIXTURE(SimpleNotEqualFixture, "SimpleNotEqual")
121*89c4ff92SAndroid Build Coastguard Worker {
122*89c4ff92SAndroid Build Coastguard Worker     RunTest<2, armnn::DataType::QAsymmU8,
123*89c4ff92SAndroid Build Coastguard Worker                armnn::DataType::Boolean>(
124*89c4ff92SAndroid Build Coastguard Worker                    0,
125*89c4ff92SAndroid Build Coastguard Worker                    {{"inputTensor",  { 0, 1, 2, 3 }},
126*89c4ff92SAndroid Build Coastguard Worker                     {"inputTensor2", { 0, 1, 5, 6 }}},
127*89c4ff92SAndroid Build Coastguard Worker                    {{"outputTensor", { 0, 0, 1, 1 }}});
128*89c4ff92SAndroid Build Coastguard Worker }
129*89c4ff92SAndroid Build Coastguard Worker 
130*89c4ff92SAndroid Build Coastguard Worker struct BroadcastNotEqualFixture : public ComparisonFixture
131*89c4ff92SAndroid Build Coastguard Worker {
BroadcastNotEqualFixtureBroadcastNotEqualFixture132*89c4ff92SAndroid Build Coastguard Worker     BroadcastNotEqualFixture() : ComparisonFixture("NOT_EQUAL", "UINT8", "[ 2, 2 ]", "[ 1, 2 ]", "[ 2, 2 ]") {}
133*89c4ff92SAndroid Build Coastguard Worker };
134*89c4ff92SAndroid Build Coastguard Worker 
135*89c4ff92SAndroid Build Coastguard Worker TEST_CASE_FIXTURE(BroadcastNotEqualFixture, "BroadcastNotEqual")
136*89c4ff92SAndroid Build Coastguard Worker {
137*89c4ff92SAndroid Build Coastguard Worker     RunTest<2, armnn::DataType::QAsymmU8,
138*89c4ff92SAndroid Build Coastguard Worker                armnn::DataType::Boolean>(
139*89c4ff92SAndroid Build Coastguard Worker                    0,
140*89c4ff92SAndroid Build Coastguard Worker                    {{"inputTensor",  { 0, 1, 2, 3 }},
141*89c4ff92SAndroid Build Coastguard Worker                     {"inputTensor2", { 0, 1 }}},
142*89c4ff92SAndroid Build Coastguard Worker                    {{"outputTensor", { 0, 0, 1, 1 }}});
143*89c4ff92SAndroid Build Coastguard Worker }
144*89c4ff92SAndroid Build Coastguard Worker 
145*89c4ff92SAndroid Build Coastguard Worker struct SimpleGreaterFixture : public ComparisonFixture
146*89c4ff92SAndroid Build Coastguard Worker {
SimpleGreaterFixtureSimpleGreaterFixture147*89c4ff92SAndroid Build Coastguard Worker     SimpleGreaterFixture() : ComparisonFixture("GREATER", "UINT8", "[ 2, 2 ]", "[ 2, 2 ]", "[ 2, 2 ]") {}
148*89c4ff92SAndroid Build Coastguard Worker };
149*89c4ff92SAndroid Build Coastguard Worker 
150*89c4ff92SAndroid Build Coastguard Worker TEST_CASE_FIXTURE(SimpleGreaterFixture, "SimpleGreater")
151*89c4ff92SAndroid Build Coastguard Worker {
152*89c4ff92SAndroid Build Coastguard Worker     RunTest<2, armnn::DataType::QAsymmU8,
153*89c4ff92SAndroid Build Coastguard Worker                armnn::DataType::Boolean>(
154*89c4ff92SAndroid Build Coastguard Worker                    0,
155*89c4ff92SAndroid Build Coastguard Worker                    {{"inputTensor",  { 0, 2, 3, 6 }},
156*89c4ff92SAndroid Build Coastguard Worker                     {"inputTensor2", { 0, 1, 5, 3 }}},
157*89c4ff92SAndroid Build Coastguard Worker                    {{"outputTensor", { 0, 1, 0, 1 }}});
158*89c4ff92SAndroid Build Coastguard Worker }
159*89c4ff92SAndroid Build Coastguard Worker 
160*89c4ff92SAndroid Build Coastguard Worker struct BroadcastGreaterFixture : public ComparisonFixture
161*89c4ff92SAndroid Build Coastguard Worker {
BroadcastGreaterFixtureBroadcastGreaterFixture162*89c4ff92SAndroid Build Coastguard Worker     BroadcastGreaterFixture() : ComparisonFixture("GREATER", "UINT8", "[ 2, 2 ]", "[ 1, 2 ]", "[ 2, 2 ]") {}
163*89c4ff92SAndroid Build Coastguard Worker };
164*89c4ff92SAndroid Build Coastguard Worker 
165*89c4ff92SAndroid Build Coastguard Worker TEST_CASE_FIXTURE(BroadcastGreaterFixture, "BroadcastGreater")
166*89c4ff92SAndroid Build Coastguard Worker {
167*89c4ff92SAndroid Build Coastguard Worker     RunTest<2, armnn::DataType::QAsymmU8,
168*89c4ff92SAndroid Build Coastguard Worker                armnn::DataType::Boolean>(
169*89c4ff92SAndroid Build Coastguard Worker                    0,
170*89c4ff92SAndroid Build Coastguard Worker                    {{"inputTensor",  { 5, 4, 1, 0 }},
171*89c4ff92SAndroid Build Coastguard Worker                     {"inputTensor2", { 2, 3 }}},
172*89c4ff92SAndroid Build Coastguard Worker                    {{"outputTensor", { 1, 1, 0, 0 }}});
173*89c4ff92SAndroid Build Coastguard Worker }
174*89c4ff92SAndroid Build Coastguard Worker 
175*89c4ff92SAndroid Build Coastguard Worker struct SimpleGreaterOrEqualFixture : public ComparisonFixture
176*89c4ff92SAndroid Build Coastguard Worker {
SimpleGreaterOrEqualFixtureSimpleGreaterOrEqualFixture177*89c4ff92SAndroid Build Coastguard Worker     SimpleGreaterOrEqualFixture() : ComparisonFixture("GREATER_EQUAL", "UINT8", "[ 2, 2 ]", "[ 2, 2 ]", "[ 2, 2 ]") {}
178*89c4ff92SAndroid Build Coastguard Worker };
179*89c4ff92SAndroid Build Coastguard Worker 
180*89c4ff92SAndroid Build Coastguard Worker TEST_CASE_FIXTURE(SimpleGreaterOrEqualFixture, "SimpleGreaterOrEqual")
181*89c4ff92SAndroid Build Coastguard Worker {
182*89c4ff92SAndroid Build Coastguard Worker     RunTest<2, armnn::DataType::QAsymmU8,
183*89c4ff92SAndroid Build Coastguard Worker                armnn::DataType::Boolean>(
184*89c4ff92SAndroid Build Coastguard Worker                    0,
185*89c4ff92SAndroid Build Coastguard Worker                    {{"inputTensor",  { 0, 2, 3, 6 }},
186*89c4ff92SAndroid Build Coastguard Worker                     {"inputTensor2", { 0, 1, 5, 3 }}},
187*89c4ff92SAndroid Build Coastguard Worker                    {{"outputTensor", { 1, 1, 0, 1 }}});
188*89c4ff92SAndroid Build Coastguard Worker }
189*89c4ff92SAndroid Build Coastguard Worker 
190*89c4ff92SAndroid Build Coastguard Worker struct BroadcastGreaterOrEqualFixture : public ComparisonFixture
191*89c4ff92SAndroid Build Coastguard Worker {
BroadcastGreaterOrEqualFixtureBroadcastGreaterOrEqualFixture192*89c4ff92SAndroid Build Coastguard Worker     BroadcastGreaterOrEqualFixture() : ComparisonFixture("GREATER_EQUAL", "UINT8",
193*89c4ff92SAndroid Build Coastguard Worker                                                          "[ 2, 2 ]", "[ 1, 2 ]", "[ 2, 2 ]") {}
194*89c4ff92SAndroid Build Coastguard Worker };
195*89c4ff92SAndroid Build Coastguard Worker 
196*89c4ff92SAndroid Build Coastguard Worker TEST_CASE_FIXTURE(BroadcastGreaterOrEqualFixture, "BroadcastGreaterOrEqual")
197*89c4ff92SAndroid Build Coastguard Worker {
198*89c4ff92SAndroid Build Coastguard Worker     RunTest<2, armnn::DataType::QAsymmU8,
199*89c4ff92SAndroid Build Coastguard Worker                armnn::DataType::Boolean>(
200*89c4ff92SAndroid Build Coastguard Worker                    0,
201*89c4ff92SAndroid Build Coastguard Worker                    {{"inputTensor",  { 5, 4, 1, 0 }},
202*89c4ff92SAndroid Build Coastguard Worker                     {"inputTensor2", { 2, 4 }}},
203*89c4ff92SAndroid Build Coastguard Worker                    {{"outputTensor", { 1, 1, 0, 0 }}});
204*89c4ff92SAndroid Build Coastguard Worker }
205*89c4ff92SAndroid Build Coastguard Worker 
206*89c4ff92SAndroid Build Coastguard Worker struct SimpleLessFixture : public ComparisonFixture
207*89c4ff92SAndroid Build Coastguard Worker {
SimpleLessFixtureSimpleLessFixture208*89c4ff92SAndroid Build Coastguard Worker     SimpleLessFixture() : ComparisonFixture("LESS", "UINT8", "[ 2, 2 ]", "[ 2, 2 ]", "[ 2, 2 ]") {}
209*89c4ff92SAndroid Build Coastguard Worker };
210*89c4ff92SAndroid Build Coastguard Worker 
211*89c4ff92SAndroid Build Coastguard Worker TEST_CASE_FIXTURE(SimpleLessFixture, "SimpleLess")
212*89c4ff92SAndroid Build Coastguard Worker {
213*89c4ff92SAndroid Build Coastguard Worker     RunTest<2, armnn::DataType::QAsymmU8,
214*89c4ff92SAndroid Build Coastguard Worker                armnn::DataType::Boolean>(
215*89c4ff92SAndroid Build Coastguard Worker                    0,
216*89c4ff92SAndroid Build Coastguard Worker                    {{"inputTensor",  { 0, 2, 3, 6 }},
217*89c4ff92SAndroid Build Coastguard Worker                     {"inputTensor2", { 0, 1, 5, 3 }}},
218*89c4ff92SAndroid Build Coastguard Worker                    {{"outputTensor", { 0, 0, 1, 0 }}});
219*89c4ff92SAndroid Build Coastguard Worker }
220*89c4ff92SAndroid Build Coastguard Worker 
221*89c4ff92SAndroid Build Coastguard Worker struct BroadcastLessFixture : public ComparisonFixture
222*89c4ff92SAndroid Build Coastguard Worker {
BroadcastLessFixtureBroadcastLessFixture223*89c4ff92SAndroid Build Coastguard Worker     BroadcastLessFixture() : ComparisonFixture("LESS", "UINT8", "[ 2, 2 ]", "[ 1, 2 ]", "[ 2, 2 ]") {}
224*89c4ff92SAndroid Build Coastguard Worker };
225*89c4ff92SAndroid Build Coastguard Worker 
226*89c4ff92SAndroid Build Coastguard Worker TEST_CASE_FIXTURE(BroadcastLessFixture, "BroadcastLess")
227*89c4ff92SAndroid Build Coastguard Worker {
228*89c4ff92SAndroid Build Coastguard Worker     RunTest<2, armnn::DataType::QAsymmU8,
229*89c4ff92SAndroid Build Coastguard Worker                armnn::DataType::Boolean>(
230*89c4ff92SAndroid Build Coastguard Worker                    0,
231*89c4ff92SAndroid Build Coastguard Worker                    {{"inputTensor",  { 5, 4, 1, 0 }},
232*89c4ff92SAndroid Build Coastguard Worker                     {"inputTensor2", { 2, 3 }}},
233*89c4ff92SAndroid Build Coastguard Worker                    {{"outputTensor", { 0, 0, 1, 1 }}});
234*89c4ff92SAndroid Build Coastguard Worker }
235*89c4ff92SAndroid Build Coastguard Worker 
236*89c4ff92SAndroid Build Coastguard Worker struct SimpleLessOrEqualFixture : public ComparisonFixture
237*89c4ff92SAndroid Build Coastguard Worker {
SimpleLessOrEqualFixtureSimpleLessOrEqualFixture238*89c4ff92SAndroid Build Coastguard Worker     SimpleLessOrEqualFixture() : ComparisonFixture("LESS_EQUAL", "UINT8", "[ 2, 2 ]", "[ 2, 2 ]", "[ 2, 2 ]") {}
239*89c4ff92SAndroid Build Coastguard Worker };
240*89c4ff92SAndroid Build Coastguard Worker 
241*89c4ff92SAndroid Build Coastguard Worker TEST_CASE_FIXTURE(SimpleLessOrEqualFixture, "SimpleLessOrEqual")
242*89c4ff92SAndroid Build Coastguard Worker {
243*89c4ff92SAndroid Build Coastguard Worker     RunTest<2, armnn::DataType::QAsymmU8,
244*89c4ff92SAndroid Build Coastguard Worker                armnn::DataType::Boolean>(
245*89c4ff92SAndroid Build Coastguard Worker                    0,
246*89c4ff92SAndroid Build Coastguard Worker                    {{"inputTensor",  { 0, 2, 3, 6 }},
247*89c4ff92SAndroid Build Coastguard Worker                     {"inputTensor2", { 0, 1, 5, 3 }}},
248*89c4ff92SAndroid Build Coastguard Worker                    {{"outputTensor", { 1, 0, 1, 0 }}});
249*89c4ff92SAndroid Build Coastguard Worker }
250*89c4ff92SAndroid Build Coastguard Worker 
251*89c4ff92SAndroid Build Coastguard Worker struct BroadcastLessOrEqualFixture : public ComparisonFixture
252*89c4ff92SAndroid Build Coastguard Worker {
BroadcastLessOrEqualFixtureBroadcastLessOrEqualFixture253*89c4ff92SAndroid Build Coastguard Worker     BroadcastLessOrEqualFixture() : ComparisonFixture("LESS_EQUAL", "UINT8", "[ 2, 2 ]", "[ 1, 2 ]", "[ 2, 2 ]") {}
254*89c4ff92SAndroid Build Coastguard Worker };
255*89c4ff92SAndroid Build Coastguard Worker 
256*89c4ff92SAndroid Build Coastguard Worker TEST_CASE_FIXTURE(BroadcastLessOrEqualFixture, "BroadcastLessOrEqual")
257*89c4ff92SAndroid Build Coastguard Worker {
258*89c4ff92SAndroid Build Coastguard Worker     RunTest<2, armnn::DataType::QAsymmU8,
259*89c4ff92SAndroid Build Coastguard Worker                armnn::DataType::Boolean>(
260*89c4ff92SAndroid Build Coastguard Worker                    0,
261*89c4ff92SAndroid Build Coastguard Worker                    {{"inputTensor",  { 5, 4, 1, 0 }},
262*89c4ff92SAndroid Build Coastguard Worker                     {"inputTensor2", { 1, 3 }}},
263*89c4ff92SAndroid Build Coastguard Worker                    {{"outputTensor", { 0, 0, 1, 1 }}});
264*89c4ff92SAndroid Build Coastguard Worker }
265*89c4ff92SAndroid Build Coastguard Worker 
266*89c4ff92SAndroid Build Coastguard Worker }
267