1 // Generated from svdf.mod.py
2 // DO NOT EDIT
3 // clang-format off
4 #include "TestHarness.h"
5 using namespace test_helper;
6 
7 namespace generated_tests::svdf {
8 
get_test_model()9 const TestModel& get_test_model() {
10     static TestModel model = {
11         .expectFailure = false,
12         .expectedMultinomialDistributionTolerance = 0,
13         .isRelaxed = false,
14         .main = {
15                 .inputIndexes = {0, 1, 2, 3, 4},
16                 .operands = {{ // input
17                             .channelQuant = {},
18                             .data = TestBuffer::createFromVector<float>({0.12609188f, -0.46347019f, -0.89598465f, 0.12609188f, -0.46347019f, -0.89598465f}),
19                             .dimensions = {2, 3},
20                             .isIgnored = false,
21                             .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT,
22                             .numberOfConsumers = 1,
23                             .scale = 0.0f,
24                             .type = TestOperandType::TENSOR_FLOAT32,
25                             .zeroPoint = 0
26                         }, { // weights_feature
27                             .channelQuant = {},
28                             .data = TestBuffer::createFromVector<float>({-0.31930989f, -0.36118156f, 0.0079667f, 0.37613347f, 0.22197971f, 0.12416199f, 0.27901134f, 0.27557442f, 0.3905206f, -0.36137494f, -0.06634006f, -0.10640851f}),
29                             .dimensions = {4, 3},
30                             .isIgnored = false,
31                             .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT,
32                             .numberOfConsumers = 1,
33                             .scale = 0.0f,
34                             .type = TestOperandType::TENSOR_FLOAT32,
35                             .zeroPoint = 0
36                         }, { // weights_time
37                             .channelQuant = {},
38                             .data = TestBuffer::createFromVector<float>({-0.31930989f, 0.37613347f, 0.27901134f, -0.36137494f, -0.36118156f, 0.22197971f, 0.27557442f, -0.06634006f, 0.0079667f, 0.12416199f, 0.3905206f, -0.10640851f, -0.0976817f, 0.15294972f, 0.39635518f, -0.02702999f, 0.39296314f, 0.15785322f, 0.21931258f, 0.31053296f, -0.36916667f, 0.38031587f, -0.21580373f, 0.27072677f, 0.23622236f, 0.34936687f, 0.18174365f, 0.35907319f, -0.17493086f, 0.324846f, -0.10781813f, 0.27201805f, 0.14324132f, -0.23681851f, -0.27115166f, -0.01580888f, -0.14943552f, 0.15465137f, 0.09784451f, -0.0337657f}),
39                             .dimensions = {4, 10},
40                             .isIgnored = false,
41                             .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT,
42                             .numberOfConsumers = 1,
43                             .scale = 0.0f,
44                             .type = TestOperandType::TENSOR_FLOAT32,
45                             .zeroPoint = 0
46                         }, { // bias
47                             .channelQuant = {},
48                             .data = TestBuffer::createFromVector<float>({}),
49                             .dimensions = {4},
50                             .isIgnored = false,
51                             .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT,
52                             .numberOfConsumers = 1,
53                             .scale = 0.0f,
54                             .type = TestOperandType::TENSOR_FLOAT32,
55                             .zeroPoint = 0
56                         }, { // state_in
57                             .channelQuant = {},
58                             .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}),
59                             .dimensions = {2, 40},
60                             .isIgnored = false,
61                             .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT,
62                             .numberOfConsumers = 1,
63                             .scale = 0.0f,
64                             .type = TestOperandType::TENSOR_FLOAT32,
65                             .zeroPoint = 0
66                         }, { // rank_param
67                             .channelQuant = {},
68                             .data = TestBuffer::createFromVector<int32_t>({1}),
69                             .dimensions = {},
70                             .isIgnored = false,
71                             .lifetime = TestOperandLifeTime::CONSTANT_COPY,
72                             .numberOfConsumers = 1,
73                             .scale = 0.0f,
74                             .type = TestOperandType::INT32,
75                             .zeroPoint = 0
76                         }, { // activation_param
77                             .channelQuant = {},
78                             .data = TestBuffer::createFromVector<int32_t>({0}),
79                             .dimensions = {},
80                             .isIgnored = false,
81                             .lifetime = TestOperandLifeTime::CONSTANT_COPY,
82                             .numberOfConsumers = 1,
83                             .scale = 0.0f,
84                             .type = TestOperandType::INT32,
85                             .zeroPoint = 0
86                         }, { // state_out
87                             .channelQuant = {},
88                             .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}),
89                             .dimensions = {2, 40},
90                             .isIgnored = true,
91                             .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT,
92                             .numberOfConsumers = 0,
93                             .scale = 0.0f,
94                             .type = TestOperandType::TENSOR_FLOAT32,
95                             .zeroPoint = 0
96                         }, { // output
97                             .channelQuant = {},
98                             .data = TestBuffer::createFromVector<float>({0.014899f, -0.0517661f, -0.143725f, -0.00271883f, 0.014899f, -0.0517661f, -0.143725f, -0.00271883f}),
99                             .dimensions = {2, 4},
100                             .isIgnored = false,
101                             .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT,
102                             .numberOfConsumers = 0,
103                             .scale = 0.0f,
104                             .type = TestOperandType::TENSOR_FLOAT32,
105                             .zeroPoint = 0
106                         }},
107                 .operations = {{
108                             .inputs = {0, 1, 2, 3, 4, 5, 6},
109                             .outputs = {7, 8},
110                             .type = TestOperationType::SVDF
111                         }},
112                 .outputIndexes = {7, 8}
113             },
114         .minSupportedVersion = TestHalVersion::V1_0,
115         .referenced = {}
116     };
117     return model;
118 }
119 
120 const auto dummy_test_model = TestModelManager::get().add("svdf", get_test_model());
121 
122 }  // namespace generated_tests::svdf
123 
124 namespace generated_tests::svdf {
125 
get_test_model_all_inputs_as_internal()126 const TestModel& get_test_model_all_inputs_as_internal() {
127     static TestModel model = {
128         .expectFailure = false,
129         .expectedMultinomialDistributionTolerance = 0,
130         .isRelaxed = false,
131         .main = {
132                 .inputIndexes = {3, 9, 12, 15, 18},
133                 .operands = {{ // input
134                             .channelQuant = {},
135                             .data = TestBuffer::createFromVector<float>({}),
136                             .dimensions = {2, 3},
137                             .isIgnored = false,
138                             .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE,
139                             .numberOfConsumers = 1,
140                             .scale = 0.0f,
141                             .type = TestOperandType::TENSOR_FLOAT32,
142                             .zeroPoint = 0
143                         }, { // weights_feature
144                             .channelQuant = {},
145                             .data = TestBuffer::createFromVector<float>({}),
146                             .dimensions = {4, 3},
147                             .isIgnored = false,
148                             .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE,
149                             .numberOfConsumers = 1,
150                             .scale = 0.0f,
151                             .type = TestOperandType::TENSOR_FLOAT32,
152                             .zeroPoint = 0
153                         }, { // weights_time
154                             .channelQuant = {},
155                             .data = TestBuffer::createFromVector<float>({}),
156                             .dimensions = {4, 10},
157                             .isIgnored = false,
158                             .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE,
159                             .numberOfConsumers = 1,
160                             .scale = 0.0f,
161                             .type = TestOperandType::TENSOR_FLOAT32,
162                             .zeroPoint = 0
163                         }, { // bias
164                             .channelQuant = {},
165                             .data = TestBuffer::createFromVector<float>({}),
166                             .dimensions = {4},
167                             .isIgnored = false,
168                             .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT,
169                             .numberOfConsumers = 1,
170                             .scale = 0.0f,
171                             .type = TestOperandType::TENSOR_FLOAT32,
172                             .zeroPoint = 0
173                         }, { // state_in
174                             .channelQuant = {},
175                             .data = TestBuffer::createFromVector<float>({}),
176                             .dimensions = {2, 40},
177                             .isIgnored = false,
178                             .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE,
179                             .numberOfConsumers = 1,
180                             .scale = 0.0f,
181                             .type = TestOperandType::TENSOR_FLOAT32,
182                             .zeroPoint = 0
183                         }, { // rank_param
184                             .channelQuant = {},
185                             .data = TestBuffer::createFromVector<int32_t>({1}),
186                             .dimensions = {},
187                             .isIgnored = false,
188                             .lifetime = TestOperandLifeTime::CONSTANT_COPY,
189                             .numberOfConsumers = 1,
190                             .scale = 0.0f,
191                             .type = TestOperandType::INT32,
192                             .zeroPoint = 0
193                         }, { // activation_param
194                             .channelQuant = {},
195                             .data = TestBuffer::createFromVector<int32_t>({0}),
196                             .dimensions = {},
197                             .isIgnored = false,
198                             .lifetime = TestOperandLifeTime::CONSTANT_COPY,
199                             .numberOfConsumers = 1,
200                             .scale = 0.0f,
201                             .type = TestOperandType::INT32,
202                             .zeroPoint = 0
203                         }, { // state_out
204                             .channelQuant = {},
205                             .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}),
206                             .dimensions = {2, 40},
207                             .isIgnored = true,
208                             .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT,
209                             .numberOfConsumers = 0,
210                             .scale = 0.0f,
211                             .type = TestOperandType::TENSOR_FLOAT32,
212                             .zeroPoint = 0
213                         }, { // output
214                             .channelQuant = {},
215                             .data = TestBuffer::createFromVector<float>({0.014899f, -0.0517661f, -0.143725f, -0.00271883f, 0.014899f, -0.0517661f, -0.143725f, -0.00271883f}),
216                             .dimensions = {2, 4},
217                             .isIgnored = false,
218                             .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT,
219                             .numberOfConsumers = 0,
220                             .scale = 0.0f,
221                             .type = TestOperandType::TENSOR_FLOAT32,
222                             .zeroPoint = 0
223                         }, { // input_new
224                             .channelQuant = {},
225                             .data = TestBuffer::createFromVector<float>({0.12609188f, -0.46347019f, -0.89598465f, 0.12609188f, -0.46347019f, -0.89598465f}),
226                             .dimensions = {2, 3},
227                             .isIgnored = false,
228                             .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT,
229                             .numberOfConsumers = 1,
230                             .scale = 0.0f,
231                             .type = TestOperandType::TENSOR_FLOAT32,
232                             .zeroPoint = 0
233                         }, { // placeholder
234                             .channelQuant = {},
235                             .data = TestBuffer::createFromVector<float>({0.0f}),
236                             .dimensions = {1},
237                             .isIgnored = false,
238                             .lifetime = TestOperandLifeTime::CONSTANT_COPY,
239                             .numberOfConsumers = 1,
240                             .scale = 0.0f,
241                             .type = TestOperandType::TENSOR_FLOAT32,
242                             .zeroPoint = 0
243                         }, { // param
244                             .channelQuant = {},
245                             .data = TestBuffer::createFromVector<int32_t>({0}),
246                             .dimensions = {},
247                             .isIgnored = false,
248                             .lifetime = TestOperandLifeTime::CONSTANT_COPY,
249                             .numberOfConsumers = 1,
250                             .scale = 0.0f,
251                             .type = TestOperandType::INT32,
252                             .zeroPoint = 0
253                         }, { // weights_feature_new
254                             .channelQuant = {},
255                             .data = TestBuffer::createFromVector<float>({-0.31930989f, -0.36118156f, 0.0079667f, 0.37613347f, 0.22197971f, 0.12416199f, 0.27901134f, 0.27557442f, 0.3905206f, -0.36137494f, -0.06634006f, -0.10640851f}),
256                             .dimensions = {4, 3},
257                             .isIgnored = false,
258                             .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT,
259                             .numberOfConsumers = 1,
260                             .scale = 0.0f,
261                             .type = TestOperandType::TENSOR_FLOAT32,
262                             .zeroPoint = 0
263                         }, { // placeholder1
264                             .channelQuant = {},
265                             .data = TestBuffer::createFromVector<float>({0.0f}),
266                             .dimensions = {1},
267                             .isIgnored = false,
268                             .lifetime = TestOperandLifeTime::CONSTANT_COPY,
269                             .numberOfConsumers = 1,
270                             .scale = 0.0f,
271                             .type = TestOperandType::TENSOR_FLOAT32,
272                             .zeroPoint = 0
273                         }, { // param1
274                             .channelQuant = {},
275                             .data = TestBuffer::createFromVector<int32_t>({0}),
276                             .dimensions = {},
277                             .isIgnored = false,
278                             .lifetime = TestOperandLifeTime::CONSTANT_COPY,
279                             .numberOfConsumers = 1,
280                             .scale = 0.0f,
281                             .type = TestOperandType::INT32,
282                             .zeroPoint = 0
283                         }, { // weights_time_new
284                             .channelQuant = {},
285                             .data = TestBuffer::createFromVector<float>({-0.31930989f, 0.37613347f, 0.27901134f, -0.36137494f, -0.36118156f, 0.22197971f, 0.27557442f, -0.06634006f, 0.0079667f, 0.12416199f, 0.3905206f, -0.10640851f, -0.0976817f, 0.15294972f, 0.39635518f, -0.02702999f, 0.39296314f, 0.15785322f, 0.21931258f, 0.31053296f, -0.36916667f, 0.38031587f, -0.21580373f, 0.27072677f, 0.23622236f, 0.34936687f, 0.18174365f, 0.35907319f, -0.17493086f, 0.324846f, -0.10781813f, 0.27201805f, 0.14324132f, -0.23681851f, -0.27115166f, -0.01580888f, -0.14943552f, 0.15465137f, 0.09784451f, -0.0337657f}),
286                             .dimensions = {4, 10},
287                             .isIgnored = false,
288                             .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT,
289                             .numberOfConsumers = 1,
290                             .scale = 0.0f,
291                             .type = TestOperandType::TENSOR_FLOAT32,
292                             .zeroPoint = 0
293                         }, { // placeholder2
294                             .channelQuant = {},
295                             .data = TestBuffer::createFromVector<float>({0.0f}),
296                             .dimensions = {1},
297                             .isIgnored = false,
298                             .lifetime = TestOperandLifeTime::CONSTANT_COPY,
299                             .numberOfConsumers = 1,
300                             .scale = 0.0f,
301                             .type = TestOperandType::TENSOR_FLOAT32,
302                             .zeroPoint = 0
303                         }, { // param2
304                             .channelQuant = {},
305                             .data = TestBuffer::createFromVector<int32_t>({0}),
306                             .dimensions = {},
307                             .isIgnored = false,
308                             .lifetime = TestOperandLifeTime::CONSTANT_COPY,
309                             .numberOfConsumers = 1,
310                             .scale = 0.0f,
311                             .type = TestOperandType::INT32,
312                             .zeroPoint = 0
313                         }, { // state_in_new
314                             .channelQuant = {},
315                             .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}),
316                             .dimensions = {2, 40},
317                             .isIgnored = false,
318                             .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT,
319                             .numberOfConsumers = 1,
320                             .scale = 0.0f,
321                             .type = TestOperandType::TENSOR_FLOAT32,
322                             .zeroPoint = 0
323                         }, { // placeholder3
324                             .channelQuant = {},
325                             .data = TestBuffer::createFromVector<float>({0.0f}),
326                             .dimensions = {1},
327                             .isIgnored = false,
328                             .lifetime = TestOperandLifeTime::CONSTANT_COPY,
329                             .numberOfConsumers = 1,
330                             .scale = 0.0f,
331                             .type = TestOperandType::TENSOR_FLOAT32,
332                             .zeroPoint = 0
333                         }, { // param3
334                             .channelQuant = {},
335                             .data = TestBuffer::createFromVector<int32_t>({0}),
336                             .dimensions = {},
337                             .isIgnored = false,
338                             .lifetime = TestOperandLifeTime::CONSTANT_COPY,
339                             .numberOfConsumers = 1,
340                             .scale = 0.0f,
341                             .type = TestOperandType::INT32,
342                             .zeroPoint = 0
343                         }},
344                 .operations = {{
345                             .inputs = {9, 10, 11},
346                             .outputs = {0},
347                             .type = TestOperationType::ADD
348                         }, {
349                             .inputs = {12, 13, 14},
350                             .outputs = {1},
351                             .type = TestOperationType::ADD
352                         }, {
353                             .inputs = {15, 16, 17},
354                             .outputs = {2},
355                             .type = TestOperationType::ADD
356                         }, {
357                             .inputs = {18, 19, 20},
358                             .outputs = {4},
359                             .type = TestOperationType::ADD
360                         }, {
361                             .inputs = {0, 1, 2, 3, 4, 5, 6},
362                             .outputs = {7, 8},
363                             .type = TestOperationType::SVDF
364                         }},
365                 .outputIndexes = {7, 8}
366             },
367         .minSupportedVersion = TestHalVersion::V1_0,
368         .referenced = {}
369     };
370     return model;
371 }
372 
373 const auto dummy_test_model_all_inputs_as_internal = TestModelManager::get().add("svdf_all_inputs_as_internal", get_test_model_all_inputs_as_internal());
374 
375 }  // namespace generated_tests::svdf
376 
377