[Tmpl test] MaxPool: enable whole Tensor comparison (#23995)

### Details:
 - Added shapes for expected outputs.

### Tickets:
 - CVS-137178
This commit is contained in:
Tomasz Jankowski 2024-04-16 06:44:52 +02:00 committed by GitHub
parent 1496229908
commit 85dc6a5f76
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 55 additions and 8 deletions

View File

@ -16,6 +16,7 @@ struct MaxPoolParams {
MaxPoolParams(const Shape& input_shape,
const element::Type& input_type,
const std::vector<Input_t>& input_data,
const Shape& expected_shape,
const std::vector<Input_t>& expected_values,
const element::Type& indices_type,
const std::vector<Indices_t>& expected_indices,
@ -31,8 +32,8 @@ struct MaxPoolParams {
m_input_type(input_type),
m_indices_type(indices_type),
m_input_data(CreateTensor(input_type, input_data)),
m_expected_values(CreateTensor(input_type, expected_values)),
m_expected_indices(CreateTensor(indices_type, expected_indices)),
m_expected_values(CreateTensor(expected_shape, input_type, expected_values)),
m_expected_indices(CreateTensor(expected_shape, indices_type, expected_indices)),
m_strides(strides),
m_dilations(dilations),
m_pads_begin(pads_begin),
@ -60,14 +61,13 @@ struct MaxPoolParams {
class ReferenceMaxPoolLayerTestV8 : public testing::TestWithParam<MaxPoolParams>, public CommonReferenceTest {
public:
void SetUp() override {
legacy_compare = true;
const auto params = GetParam();
const auto& params = GetParam();
function = CreateFunction(params);
inputData = {params.m_input_data};
refOutData = {params.m_expected_values, params.m_expected_indices};
}
static std::string getTestCaseName(const testing::TestParamInfo<MaxPoolParams>& obj) {
const auto p = obj.param;
const auto& p = obj.param;
std::ostringstream result;
result << p.m_input_shape.size() - 2 << "D/";
result << "input_shape=" << p.m_input_shape << ";";
@ -112,6 +112,7 @@ INSTANTIATE_TEST_SUITE_P(
MaxPoolParams(Shape{1, 1, 9},
element::i32,
std::vector<int32_t>{1, 2, 3, 4, 5, 6, 7, 8, 9},
Shape{1, 1, 8},
std::vector<int32_t>{2, 3, 4, 5, 6, 7, 8, 9},
element::i64,
std::vector<int64_t>{1, 2, 3, 4, 5, 6, 7, 8},
@ -124,6 +125,7 @@ INSTANTIATE_TEST_SUITE_P(
MaxPoolParams(Shape{1, 1, 9},
element::i32,
std::vector<int32_t>{1, 2, 3, 4, 5, 6, 7, 8, 9},
Shape{1, 1, 4},
std::vector<int32_t>{2, 4, 6, 8},
element::i64,
std::vector<int64_t>{1, 3, 5, 7},
@ -136,6 +138,7 @@ INSTANTIATE_TEST_SUITE_P(
MaxPoolParams(Shape{1, 1, 9},
element::i32,
std::vector<int32_t>{1, 2, 3, 4, 5, 6, 7, 8, 9},
Shape{1, 1, 5},
std::vector<int32_t>{1, 3, 5, 7, 9},
element::i64,
std::vector<int64_t>{0, 2, 4, 6, 8},
@ -149,6 +152,7 @@ INSTANTIATE_TEST_SUITE_P(
MaxPoolParams(Shape{1, 1, 9},
element::i32,
std::vector<int32_t>{1, 2, 3, 4, 5, 6, 7, 8, 9},
Shape{1, 1, 5},
std::vector<int32_t>{2, 4, 6, 8, 9},
element::i64,
std::vector<int64_t>{1, 3, 5, 7, 8},
@ -162,6 +166,7 @@ INSTANTIATE_TEST_SUITE_P(
MaxPoolParams(Shape{1, 1, 9},
element::i32,
std::vector<int32_t>{1, 2, 3, 4, 5, 6, 7, 8, 9},
Shape{1, 1, 4},
std::vector<int32_t>{3, 5, 7, 9},
element::i32,
std::vector<int32_t>{2, 4, 6, 8},
@ -174,6 +179,7 @@ INSTANTIATE_TEST_SUITE_P(
MaxPoolParams(Shape{1, 2, 4},
element::f32,
std::vector<float>{1.0f, 2.0f, 3.0f, 4.0f, 0.0f, -3.14f, -2.71f, 5.0f},
Shape{1, 2, 2},
std::vector<float>{3.0f, 4.0f, 0.0f, 5.0f},
element::i32,
std::vector<int32_t>{2, 3, 4, 7},
@ -186,6 +192,7 @@ INSTANTIATE_TEST_SUITE_P(
MaxPoolParams(Shape{1, 2, 4},
element::f32,
std::vector<float>{1.0f, 2.0f, 3.0f, 4.0f, 0.0f, -3.14f, -2.71f, 5.0f},
Shape{1, 2, 2},
std::vector<float>{3.0f, 4.0f, 0.0f, 5.0f},
element::i32,
std::vector<int32_t>{2, 3, 0, 3},
@ -200,6 +207,7 @@ INSTANTIATE_TEST_SUITE_P(
MaxPoolParams(Shape{1, 1, 9},
element::i32,
std::vector<int32_t>{1, 9, 3, 8, 5, 2, 6, 4, 7},
Shape{1, 1, 4},
std::vector<int32_t>{1, 9, 6, 7},
element::i32,
std::vector<int32_t>{0, 1, 6, 8},
@ -215,6 +223,7 @@ INSTANTIATE_TEST_SUITE_P(
MaxPoolParams(Shape{1, 1, 3, 3},
element::i32,
std::vector<int32_t>{3, 9, 10, 5, 7, 2, 18, 8, -2},
Shape{1, 1, 2, 2},
std::vector<int32_t>{9, 10, 18, 8},
element::i32,
std::vector<int32_t>{1, 2, 6, 7},
@ -227,6 +236,7 @@ INSTANTIATE_TEST_SUITE_P(
MaxPoolParams(Shape{1, 1, 4, 4}, // simple 4x4 input test
element::i32,
std::vector<int32_t>{8, -9, 1, -16, -14, 15, -17, 19, -13, 3, 10, 17, 16, -11, -15, 20},
Shape{1, 1, 3, 3},
std::vector<int32_t>{15, 15, 19, 15, 15, 19, 16, 10, 20},
element::i32,
std::vector<int32_t>{5, 5, 7, 5, 5, 7, 12, 10, 15},
@ -239,6 +249,7 @@ INSTANTIATE_TEST_SUITE_P(
MaxPoolParams(Shape{1, 1, 4, 4},
element::i32,
std::vector<int32_t>{8, -9, 1, -16, -14, 15, -17, 19, -13, 3, 10, 17, 16, -11, -15, 20},
Shape{1, 1, 2, 2},
std::vector<int32_t>{15, 19, 16, 20},
element::i32,
std::vector<int32_t>{5, 7, 12, 15},
@ -251,6 +262,7 @@ INSTANTIATE_TEST_SUITE_P(
MaxPoolParams(Shape{1, 1, 4, 4},
element::i32,
std::vector<int32_t>{8, -9, 1, -16, -14, 15, -17, 19, -13, 3, 10, 17, 16, -11, -15, 20},
Shape{1, 1, 2, 2},
std::vector<int32_t>{10, 17, 16, 20},
element::i32,
std::vector<int32_t>{10, 11, 12, 15},
@ -263,6 +275,7 @@ INSTANTIATE_TEST_SUITE_P(
MaxPoolParams(Shape{1, 1, 4, 4},
element::i32,
std::vector<int32_t>{8, -9, 1, -16, -14, 15, -17, 19, -13, 3, 10, 17, 16, -11, -15, 20},
Shape{1, 1, 2, 2},
std::vector<int32_t>{15, 19, 16, 20},
element::i32,
std::vector<int32_t>{5, 7, 12, 15},
@ -276,6 +289,7 @@ INSTANTIATE_TEST_SUITE_P(
element::i32,
std::vector<int32_t>{0, -2, 24, 13, 7, -5, -4, 4, 21, -18, 81, 20, -15,
37, 23, 41, 18, 42, 8, 32, 9, 57, 58, 29, 3},
Shape{1, 1, 2, 2},
std::vector<int32_t>{0, 21, 81, 37},
element::i32,
std::vector<int32_t>{0, 8, 10, 13},
@ -289,6 +303,7 @@ INSTANTIATE_TEST_SUITE_P(
element::i32,
std::vector<int32_t>{0, -2, 24, 13, 7, -5, -4, 4, 21, -18, 81, 20, -15,
37, 23, 41, 18, 42, 8, 32, 9, 57, 58, 29, 3},
Shape{1, 1, 2, 2},
std::vector<int32_t>{0, 24, 57, 58},
element::i32,
std::vector<int32_t>{0, 2, 21, 22},
@ -302,6 +317,7 @@ INSTANTIATE_TEST_SUITE_P(
element::i32,
std::vector<int32_t>{0, -2, 24, 13, 7, -5, -4, 4, 21, -18, 81, 20, -15,
37, 23, 41, 18, 42, 8, 32, 9, 57, 58, 29, 3},
Shape{1, 1, 2, 2},
std::vector<int32_t>{81, 24, 81, 58},
element::i32,
std::vector<int32_t>{10, 2, 10, 22},
@ -315,6 +331,7 @@ INSTANTIATE_TEST_SUITE_P(
element::i32,
std::vector<int32_t>{0, -2, 24, 13, 7, -5, -4, 4, 21, -18, 81, 20, -15,
37, 23, 41, 18, 42, 8, 32, 9, 57, 58, 29, 3},
Shape{1, 1, 3, 3},
std::vector<int32_t>{0, 24, 21, 81, 42, 37, 57, 58, 32},
element::i32,
std::vector<int32_t>{0, 2, 8, 10, 17, 13, 21, 22, 19},
@ -328,6 +345,7 @@ INSTANTIATE_TEST_SUITE_P(
element::i32,
std::vector<int32_t>{0, -2, 24, 13, 7, -5, -4, 4, 21, -18, 81, 20, -15,
37, 23, 41, 18, 42, 8, 32, 9, 57, 58, 29, 3},
Shape{1, 1, 3, 2},
std::vector<int32_t>{81, 37, 81, 58, 58, 58},
element::i32,
std::vector<int32_t>{10, 13, 10, 22, 22, 22},
@ -340,6 +358,7 @@ INSTANTIATE_TEST_SUITE_P(
MaxPoolParams(Shape{1, 2, 3, 3},
element::i64,
std::vector<int64_t>{0, -2, 24, 13, 7, -5, -4, 4, 21, -18, 81, 20, -15, 37, 23, 41, 18, 42},
Shape{1, 2, 2, 2},
std::vector<int64_t>{13, 24, 13, 21, 81, 81, 41, 42},
element::i64,
std::vector<int64_t>{3, 2, 3, 8, 1, 1, 6, 8},
@ -354,6 +373,7 @@ INSTANTIATE_TEST_SUITE_P(
MaxPoolParams(Shape{1, 1, 2, 2},
element::i32,
std::vector<int32_t>{1, 2, 3, 4},
Shape{1, 1, 2, 2},
std::vector<int32_t>{1, 2, 3, 4},
element::i32,
std::vector<int32_t>{0, 1, 2, 3},
@ -370,6 +390,7 @@ INSTANTIATE_TEST_SUITE_P(
element::i32,
std::vector<int32_t>{0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 20, 30, 40, -20,
60, 70, 80, 50, 50, 1, 2, 3, -15, -10, 50, 30, 81},
Shape{1, 1, 2, 2, 2},
std::vector<int32_t>{40, 60, 80, 80, 50, 60, 80, 81},
element::i32,
std::vector<int32_t>{12, 14, 16, 16, 18, 14, 16, 26},
@ -383,6 +404,7 @@ INSTANTIATE_TEST_SUITE_P(
element::i32,
std::vector<int32_t>{0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 20, 30, 40, -20,
60, 70, 80, 50, 50, 1, 2, 3, -15, -10, 50, 30, 81},
Shape{1, 1, 2, 2, 2},
std::vector<int32_t>{-20, -20, -20, -20, -20, -20, -20, -20},
element::i32,
std::vector<int32_t>{13, 13, 13, 13, 13, 13, 13, 13},
@ -396,6 +418,7 @@ INSTANTIATE_TEST_SUITE_P(
element::i32,
std::vector<int32_t>{0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 20, 30, 40, -20,
60, 70, 80, 50, 50, 1, 2, 3, -15, -10, 50, 30, 81},
Shape{1, 1, 3, 1, 1},
std::vector<int32_t>{8, 80, 81},
element::i32,
std::vector<int32_t>{8, 16, 26},
@ -409,6 +432,7 @@ INSTANTIATE_TEST_SUITE_P(
element::i32,
std::vector<int32_t>{0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 20, 30, 40, -20,
60, 70, 80, 50, 50, 1, 2, 3, -15, -10, 50, 30, 81},
Shape{1, 1, 3, 2, 2},
std::vector<int32_t>{4, 5, 7, 8, 40, 60, 80, 80, 50, 2, 50, 81},
element::i32,
std::vector<int32_t>{4, 5, 7, 8, 3, 5, 7, 7, 0, 2, 6, 8},
@ -426,14 +450,13 @@ INSTANTIATE_TEST_SUITE_P(
class ReferenceMaxPoolLayerTestV14 : public testing::TestWithParam<MaxPoolParams>, public CommonReferenceTest {
public:
void SetUp() override {
legacy_compare = true;
const auto params = GetParam();
const auto& params = GetParam();
function = CreateFunction(params);
inputData = {params.m_input_data};
refOutData = {params.m_expected_values, params.m_expected_indices};
}
static std::string getTestCaseName(const testing::TestParamInfo<MaxPoolParams>& obj) {
const auto p = obj.param;
const auto& p = obj.param;
std::ostringstream result;
result << p.m_input_shape.size() - 2 << "D/";
result << "input_shape=" << p.m_input_shape << ";";
@ -478,6 +501,7 @@ INSTANTIATE_TEST_SUITE_P(
MaxPoolParams(Shape{1, 1, 9},
element::i32,
std::vector<int32_t>{1, 2, 3, 4, 5, 6, 7, 8, 9},
Shape{1, 1, 8},
std::vector<int32_t>{2, 3, 4, 5, 6, 7, 8, 9},
element::i64,
std::vector<int64_t>{1, 2, 3, 4, 5, 6, 7, 8},
@ -490,6 +514,7 @@ INSTANTIATE_TEST_SUITE_P(
MaxPoolParams(Shape{1, 1, 9},
element::i32,
std::vector<int32_t>{1, 2, 3, 4, 5, 6, 7, 8, 9},
Shape{1, 1, 4},
std::vector<int32_t>{2, 4, 6, 8},
element::i64,
std::vector<int64_t>{1, 3, 5, 7},
@ -502,6 +527,7 @@ INSTANTIATE_TEST_SUITE_P(
MaxPoolParams(Shape{1, 1, 9},
element::i32,
std::vector<int32_t>{1, 2, 3, 4, 5, 6, 7, 8, 9},
Shape{1, 1, 5},
std::vector<int32_t>{1, 3, 5, 7, 9},
element::i64,
std::vector<int64_t>{0, 2, 4, 6, 8},
@ -515,6 +541,7 @@ INSTANTIATE_TEST_SUITE_P(
MaxPoolParams(Shape{1, 1, 9},
element::i32,
std::vector<int32_t>{1, 2, 3, 4, 5, 6, 7, 8, 9},
Shape{1, 1, 5},
std::vector<int32_t>{2, 4, 6, 8, 9},
element::i64,
std::vector<int64_t>{1, 3, 5, 7, 8},
@ -528,6 +555,7 @@ INSTANTIATE_TEST_SUITE_P(
MaxPoolParams(Shape{1, 1, 9},
element::i32,
std::vector<int32_t>{1, 2, 3, 4, 5, 6, 7, 8, 9},
Shape{1, 1, 4},
std::vector<int32_t>{3, 5, 7, 9},
element::i32,
std::vector<int32_t>{2, 4, 6, 8},
@ -540,6 +568,7 @@ INSTANTIATE_TEST_SUITE_P(
MaxPoolParams(Shape{1, 2, 4},
element::f32,
std::vector<float>{1.0f, 2.0f, 3.0f, 4.0f, 0.0f, -3.14f, -2.71f, 5.0f},
Shape{1, 2, 2},
std::vector<float>{3.0f, 4.0f, 0.0f, 5.0f},
element::i32,
std::vector<int32_t>{2, 3, 4, 7},
@ -552,6 +581,7 @@ INSTANTIATE_TEST_SUITE_P(
MaxPoolParams(Shape{1, 2, 4},
element::f32,
std::vector<float>{1.0f, 2.0f, 3.0f, 4.0f, 0.0f, -3.14f, -2.71f, 5.0f},
Shape{1, 2, 2},
std::vector<float>{3.0f, 4.0f, 0.0f, 5.0f},
element::i32,
std::vector<int32_t>{2, 3, 0, 3},
@ -566,6 +596,7 @@ INSTANTIATE_TEST_SUITE_P(
MaxPoolParams(Shape{1, 1, 9},
element::i32,
std::vector<int32_t>{1, 9, 3, 8, 5, 2, 6, 4, 7},
Shape{1, 1, 4},
std::vector<int32_t>{1, 9, 6, 7},
element::i32,
std::vector<int32_t>{0, 1, 6, 8},
@ -581,6 +612,7 @@ INSTANTIATE_TEST_SUITE_P(
MaxPoolParams(Shape{1, 1, 3, 3},
element::i32,
std::vector<int32_t>{3, 9, 10, 5, 7, 2, 18, 8, -2},
Shape{1, 1, 2, 2},
std::vector<int32_t>{9, 10, 18, 8},
element::i32,
std::vector<int32_t>{1, 2, 6, 7},
@ -593,6 +625,7 @@ INSTANTIATE_TEST_SUITE_P(
MaxPoolParams(Shape{1, 1, 4, 4}, // simple 4x4 input test
element::i32,
std::vector<int32_t>{8, -9, 1, -16, -14, 15, -17, 19, -13, 3, 10, 17, 16, -11, -15, 20},
Shape{1, 1, 3, 3},
std::vector<int32_t>{15, 15, 19, 15, 15, 19, 16, 10, 20},
element::i32,
std::vector<int32_t>{5, 5, 7, 5, 5, 7, 12, 10, 15},
@ -605,6 +638,7 @@ INSTANTIATE_TEST_SUITE_P(
MaxPoolParams(Shape{1, 1, 4, 4},
element::i32,
std::vector<int32_t>{8, -9, 1, -16, -14, 15, -17, 19, -13, 3, 10, 17, 16, -11, -15, 20},
Shape{1, 1, 2, 2},
std::vector<int32_t>{15, 19, 16, 20},
element::i32,
std::vector<int32_t>{5, 7, 12, 15},
@ -617,6 +651,7 @@ INSTANTIATE_TEST_SUITE_P(
MaxPoolParams(Shape{1, 1, 4, 4},
element::i32,
std::vector<int32_t>{8, -9, 1, -16, -14, 15, -17, 19, -13, 3, 10, 17, 16, -11, -15, 20},
Shape{1, 1, 2, 2},
std::vector<int32_t>{10, 17, 16, 20},
element::i32,
std::vector<int32_t>{10, 11, 12, 15},
@ -629,6 +664,7 @@ INSTANTIATE_TEST_SUITE_P(
MaxPoolParams(Shape{1, 1, 4, 4},
element::i32,
std::vector<int32_t>{8, -9, 1, -16, -14, 15, -17, 19, -13, 3, 10, 17, 16, -11, -15, 20},
Shape{1, 1, 2, 2},
std::vector<int32_t>{15, 19, 16, 20},
element::i32,
std::vector<int32_t>{5, 7, 12, 15},
@ -642,6 +678,7 @@ INSTANTIATE_TEST_SUITE_P(
element::i32,
std::vector<int32_t>{0, -2, 24, 13, 7, -5, -4, 4, 21, -18, 81, 20, -15,
37, 23, 41, 18, 42, 8, 32, 9, 57, 58, 29, 3},
Shape{1, 1, 2, 2},
std::vector<int32_t>{0, 21, 81, 37},
element::i32,
std::vector<int32_t>{0, 8, 10, 13},
@ -655,6 +692,7 @@ INSTANTIATE_TEST_SUITE_P(
element::i32,
std::vector<int32_t>{0, -2, 24, 13, 7, -5, -4, 4, 21, -18, 81, 20, -15,
37, 23, 41, 18, 42, 8, 32, 9, 57, 58, 29, 3},
Shape{1, 1, 2, 2},
std::vector<int32_t>{0, 24, 57, 58},
element::i32,
std::vector<int32_t>{0, 2, 21, 22},
@ -668,6 +706,7 @@ INSTANTIATE_TEST_SUITE_P(
element::i32,
std::vector<int32_t>{0, -2, 24, 13, 7, -5, -4, 4, 21, -18, 81, 20, -15,
37, 23, 41, 18, 42, 8, 32, 9, 57, 58, 29, 3},
Shape{1, 1, 2, 2},
std::vector<int32_t>{81, 24, 81, 58},
element::i32,
std::vector<int32_t>{10, 2, 10, 22},
@ -681,6 +720,7 @@ INSTANTIATE_TEST_SUITE_P(
element::i32,
std::vector<int32_t>{0, -2, 24, 13, 7, -5, -4, 4, 21, -18, 81, 20, -15,
37, 23, 41, 18, 42, 8, 32, 9, 57, 58, 29, 3},
Shape{1, 1, 3, 2},
std::vector<int32_t>{81, 37, 81, 58, 58, 58},
element::i32,
std::vector<int32_t>{10, 13, 10, 22, 22, 22},
@ -694,6 +734,7 @@ INSTANTIATE_TEST_SUITE_P(
element::i32,
std::vector<int32_t>{0, -2, 24, 13, 7, -5, -4, 4, 21, -18, 81, 20, -15,
37, 23, 41, 18, 42, 8, 32, 9, 57, 58, 29, 3},
Shape{1, 1, 3, 3},
std::vector<int32_t>{0, 24, 21, 81, 42, 37, 57, 58, 32},
element::i32,
std::vector<int32_t>{0, 2, 8, 10, 17, 13, 21, 22, 19},
@ -706,6 +747,7 @@ INSTANTIATE_TEST_SUITE_P(
MaxPoolParams(Shape{1, 2, 3, 3},
element::i64,
std::vector<int64_t>{0, -2, 24, 13, 7, -5, -4, 4, 21, -18, 81, 20, -15, 37, 23, 41, 18, 42},
Shape{1, 2, 2, 2},
std::vector<int64_t>{13, 24, 13, 21, 81, 81, 41, 42},
element::i64,
std::vector<int64_t>{3, 2, 3, 8, 1, 1, 6, 8},
@ -720,6 +762,7 @@ INSTANTIATE_TEST_SUITE_P(
MaxPoolParams(Shape{1, 1, 2, 2},
element::i32,
std::vector<int32_t>{1, 2, 3, 4},
Shape{1, 1, 2, 2},
std::vector<int32_t>{1, 2, 3, 4},
element::i32,
std::vector<int32_t>{0, 1, 2, 3},
@ -736,6 +779,7 @@ INSTANTIATE_TEST_SUITE_P(
element::i32,
std::vector<int32_t>{0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 20, 30, 40, -20,
60, 70, 80, 50, 50, 1, 2, 3, -15, -10, 50, 30, 81},
Shape{1, 1, 2, 2, 2},
std::vector<int32_t>{40, 60, 80, 80, 50, 60, 80, 81},
element::i32,
std::vector<int32_t>{12, 14, 16, 16, 18, 14, 16, 26},
@ -749,6 +793,7 @@ INSTANTIATE_TEST_SUITE_P(
element::i32,
std::vector<int32_t>{0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 20, 30, 40, -20,
60, 70, 80, 50, 50, 1, 2, 3, -15, -10, 50, 30, 81},
Shape{1, 1, 2, 2, 2},
std::vector<int32_t>{-20, -20, -20, -20, -20, -20, -20, -20},
element::i32,
std::vector<int32_t>{13, 13, 13, 13, 13, 13, 13, 13},
@ -762,6 +807,7 @@ INSTANTIATE_TEST_SUITE_P(
element::i32,
std::vector<int32_t>{0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 20, 30, 40, -20,
60, 70, 80, 50, 50, 1, 2, 3, -15, -10, 50, 30, 81},
Shape{1, 1, 3, 1, 1},
std::vector<int32_t>{8, 80, 81},
element::i32,
std::vector<int32_t>{8, 16, 26},
@ -775,6 +821,7 @@ INSTANTIATE_TEST_SUITE_P(
element::i32,
std::vector<int32_t>{0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 20, 30, 40, -20,
60, 70, 80, 50, 50, 1, 2, 3, -15, -10, 50, 30, 81},
Shape{1, 1, 3, 2, 2},
std::vector<int32_t>{4, 5, 7, 8, 40, 60, 80, 80, 50, 2, 50, 81},
element::i32,
std::vector<int32_t>{4, 5, 7, 8, 3, 5, 7, 7, 0, 2, 6, 8},