StridedSliceLayerTest and SqueezeUnsqueezeLayerTest to API2.0 (#19955)

* `StridedSliceLayerTest` to API2.0

* `SqueezeUnsqueezeLayerTest` to API2.0

* Fix CppLint
This commit is contained in:
Vitaliy Urusovskij authored and GitHub committed 2023-09-21 15:08:51 +02:00
1 parent c4adf80ec6
commit 318106d17d
8 files changed
+371 -99

No files matched your search

@@ -4,61 +4,67 @@
#include <vector>
#include "single_layer_tests/squeeze_unsqueeze.hpp"
#include "single_op_tests/squeeze_unsqueeze.hpp"
#include "common_test_utils/test_constants.hpp"
using namespace LayerTestsDefinitions;
using ov::test::SqueezeUnsqueezeLayerTest;
namespace {
std::map<std::vector<size_t>, std::vector<std::vector<int>>> axesVectors = {
{{1, 1, 1, 1}, {{-1}, {0}, {1}, {2}, {3}, {0, 1}, {0, 2}, {0, 3}, {1, 2}, {2, 3}, {0, 1, 2}, {0, 2, 3}, {1, 2, 3}, {0, 1, 2, 3}}},
{{1, 2, 3, 4}, {{0}}},
{{2, 1, 3, 4}, {{1}}},
{{1}, {{-1}, {0}}},
{{1, 2}, {{0}}},
{{2, 1}, {{1}, {-1}}},
std::map<std::vector<ov::Shape>, std::vector<std::vector<int>>> raw_axes = {
{{{1, 1, 1, 1}}, {{-1}, {0}, {1}, {2}, {3}, {0, 1}, {0, 2}, {0, 3}, {1, 2}, {2, 3}, {0, 1, 2}, {0, 2, 3}, {1, 2, 3}, {0, 1, 2, 3}}},
{{{1, 2, 3, 4}}, {{0}}},
{{{2, 1, 3, 4}}, {{1}}},
{{{1}}, {{-1}, {0}}},
{{{1, 2}}, {{0}}},
{{{2, 1}}, {{1}, {-1}}},
};
std::map<std::vector<size_t>, std::vector<std::vector<int>>> emptyAxesVectors = {
{{1, 1, 1, 1}, {{}}},
{{1, 2, 3, 4}, {{}}},
{{2, 1, 3, 4}, {{}}},
{{1}, {{}}},
{{1, 2}, {{}}},
{{2, 1}, {{}}},
std::map<std::vector<ov::Shape>, std::vector<std::vector<int>>> raw_empty_axes = {
{{{1, 1, 1, 1}}, {{}}},
{{{1, 2, 3, 4}}, {{}}},
{{{2, 1, 3, 4}}, {{}}},
{{{1}}, {{}}},
{{{1, 2}}, {{}}},
{{{2, 1}}, {{}}},
};
const std::vector<InferenceEngine::Precision> netPrecisions = {
InferenceEngine::Precision::FP32,
InferenceEngine::Precision::FP16
auto combined_axes = ov::test::utils::combineParams(raw_axes);
auto combined_empty_axes = ov::test::utils::combineParams(raw_empty_axes);
auto prepare_cases = [](const std::vector<std::pair<std::vector<ov::Shape>, std::vector<int>>>& raw_axes) {
std::vector<std::pair<std::vector<ov::test::InputShape>, std::vector<int>>> cases;
for (const auto& raw_case : raw_axes)
cases.emplace_back(ov::test::static_shapes_to_test_representation(raw_case.first),
raw_case.second);
return cases;
};
const std::vector<ngraph::helpers::SqueezeOpType> opTypes = {
ngraph::helpers::SqueezeOpType::SQUEEZE,
ngraph::helpers::SqueezeOpType::UNSQUEEZE
auto axes = prepare_cases(combined_axes);
auto empty_axes = prepare_cases(combined_empty_axes);
const std::vector<ov::element::Type> model_types = {
ov::element::f32,
ov::element::f16
};
const std::vector<ov::test::utils::SqueezeOpType> opTypes = {
ov::test::utils::SqueezeOpType::SQUEEZE,
ov::test::utils::SqueezeOpType::UNSQUEEZE
};
INSTANTIATE_TEST_SUITE_P(smoke_Basic, SqueezeUnsqueezeLayerTest,
::testing::Combine(
::testing::ValuesIn(ov::test::utils::combineParams(axesVectors)),
::testing::ValuesIn(axes),
::testing::ValuesIn(opTypes),
::testing::ValuesIn(netPrecisions),
::testing::Values(InferenceEngine::Precision::UNSPECIFIED),
::testing::Values(InferenceEngine::Precision::UNSPECIFIED),
::testing::Values(InferenceEngine::Layout::ANY),
::testing::Values(InferenceEngine::Layout::ANY),
::testing::ValuesIn(model_types),
::testing::Values(ov::test::utils::DEVICE_CPU)),
SqueezeUnsqueezeLayerTest::getTestCaseName);
INSTANTIATE_TEST_SUITE_P(smoke_Basic_emptyAxes, SqueezeUnsqueezeLayerTest,
::testing::Combine(
::testing::ValuesIn(ov::test::utils::combineParams(emptyAxesVectors)),
::testing::Values(ngraph::helpers::SqueezeOpType::SQUEEZE),
::testing::ValuesIn(netPrecisions),
::testing::Values(InferenceEngine::Precision::UNSPECIFIED),
::testing::Values(InferenceEngine::Precision::UNSPECIFIED),
::testing::Values(InferenceEngine::Layout::ANY),
::testing::Values(InferenceEngine::Layout::ANY),
::testing::ValuesIn(empty_axes),
::testing::Values(ov::test::utils::SqueezeOpType::SQUEEZE),
::testing::ValuesIn(model_types),
::testing::Values(ov::test::utils::DEVICE_CPU)),
SqueezeUnsqueezeLayerTest::getTestCaseName);
} // namespace
@@ -4,119 +4,130 @@
#include <vector>
#include "single_layer_tests/strided_slice.hpp"
#include "single_op_tests/strided_slice.hpp"
#include "common_test_utils/test_constants.hpp"
using namespace LayerTestsDefinitions;
using ov::test::StridedSliceLayerTest;
namespace {
struct RawParams {
std::vector<ov::Shape> input_shape;
std::vector<int64_t> begin;
std::vector<int64_t> end;
std::vector<int64_t> strides;
std::vector<int64_t> begin_mask;
std::vector<int64_t> end_mask;
std::vector<int64_t> new_axis_mask;
std::vector<int64_t> shrink_axis_mask;
std::vector<int64_t> ellipsis_axis_mask;
};
std::vector<StridedSliceSpecificParams> ss_only_test_cases = {
StridedSliceSpecificParams{ { 16 }, { 4 }, { 12 }, { 1 },
std::vector<RawParams> raw_test_cases = {
RawParams{ {{ 16 }}, { 4 }, { 12 }, { 1 },
{ 0 }, { 0 }, { }, { }, { } },
StridedSliceSpecificParams{ { 16 }, { 0 }, { 8 }, { 2 },
RawParams{ {{ 16 }}, { 0 }, { 8 }, { 2 },
{ 1 }, { 0 }, { }, { }, { } },
StridedSliceSpecificParams{ { 128, 1 }, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 },
RawParams{ {{ 128, 1 }}, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 },
{ 0, 1, 1 }, { 0, 1, 1 }, { 1, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } },
StridedSliceSpecificParams{ { 128, 1 }, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1},
RawParams{ {{ 128, 1 }}, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1},
{ 1, 0, 1 }, { 1, 0, 1 }, { 0, 1, 0 }, { 0, 0, 0 }, { 0, 0, 0 } },
StridedSliceSpecificParams{ { 2, 3 }, { 1, 0 }, { 2, 3 }, { 1, 1 },
RawParams{ {{ 2, 3 }}, { 1, 0 }, { 2, 3 }, { 1, 1 },
{ 0, 0 }, { 0, 0 }, { }, { }, { } },
StridedSliceSpecificParams{ { 10, 3 }, { 0, 0 }, { 20, 20 }, { 1, 1 },
RawParams{ {{ 10, 3 }}, { 0, 0 }, { 20, 20 }, { 1, 1 },
{ 0, 1 }, { 0, 1 }, { }, { }, { } },
StridedSliceSpecificParams{ { 1, 12, 100 }, { 0, -1, 0 }, { 0, 0, 0 }, { 1, 1, 1 },
RawParams{ {{ 1, 12, 100 }}, { 0, -1, 0 }, { 0, 0, 0 }, { 1, 1, 1 },
{ 1, 0, 1 }, { 1, 0, 1 }, { 0, 0, 0 }, { 0, 1, 0 }, { 0, 0, 0 } },
StridedSliceSpecificParams{ { 1, 12, 100 }, { 0, 9, 0 }, { 0, 11, 0 }, { 1, 1, 1 },
RawParams{ {{ 1, 12, 100 }}, { 0, 9, 0 }, { 0, 11, 0 }, { 1, 1, 1 },
{ 1, 0, 1 }, { 1, 0, 1 }, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } },
StridedSliceSpecificParams{ { 1, 12, 100 }, { 0, 1, 0 }, { 0, -1, 0 }, { 1, 1, 1 },
RawParams{ {{ 1, 12, 100 }}, { 0, 1, 0 }, { 0, -1, 0 }, { 1, 1, 1 },
{ 1, 0, 1 }, { 1, 0, 1 }, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } },
StridedSliceSpecificParams{ { 2, 12, 100 }, { 0, 9, 0 }, { 0, 7, 0 }, { -1, -1, -1 },
RawParams{ {{ 2, 12, 100 }}, { 0, 9, 0 }, { 0, 7, 0 }, { -1, -1, -1 },
{ 1, 0, 1 }, { 1, 0, 1 }, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } },
StridedSliceSpecificParams{ { 2, 12, 100 }, { 0, 7, 0 }, { 0, 9, 0 }, { -1, 1, -1 },
RawParams{ {{ 2, 12, 100 }}, { 0, 7, 0 }, { 0, 9, 0 }, { -1, 1, -1 },
{ 1, 0, 1 }, { 1, 0, 1 }, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } },
StridedSliceSpecificParams{ { 1, 12, 100 }, { 0, 4, 0 }, { 0, 9, 0 }, { -1, 2, -1 },
RawParams{ {{ 1, 12, 100 }}, { 0, 4, 0 }, { 0, 9, 0 }, { -1, 2, -1 },
{ 1, 0, 1 }, { 1, 0, 1 }, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } },
StridedSliceSpecificParams{ { 1, 12, 100 }, { 0, 4, 0 }, { 0, 10, 0 }, { -1, 2, -1 },
RawParams{ {{ 1, 12, 100 }}, { 0, 4, 0 }, { 0, 10, 0 }, { -1, 2, -1 },
{ 1, 0, 1 }, { 1, 0, 1 }, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } },
StridedSliceSpecificParams{ { 1, 12, 100 }, { 0, 9, 0 }, { 0, 4, 0 }, { -1, -2, -1 },
RawParams{ {{ 1, 12, 100 }}, { 0, 9, 0 }, { 0, 4, 0 }, { -1, -2, -1 },
{ 1, 0, 1 }, { 1, 0, 1 }, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } },
StridedSliceSpecificParams{ { 2, 12, 100 }, { 0, 10, 0 }, { 0, 4, 0 }, { -1, -2, -1 },
RawParams{ {{ 2, 12, 100 }}, { 0, 10, 0 }, { 0, 4, 0 }, { -1, -2, -1 },
{ 1, 0, 1 }, { 1, 0, 1 }, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } },
StridedSliceSpecificParams{ { 1, 12, 100 }, { 0, 11, 0 }, { 0, 0, 0 }, { -1, -2, -1 },
RawParams{ {{ 1, 12, 100 }}, { 0, 11, 0 }, { 0, 0, 0 }, { -1, -2, -1 },
{ 1, 0, 1 }, { 1, 0, 1 }, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } },
StridedSliceSpecificParams{ { 1, 12, 100 }, { 0, -6, 0 }, { 0, -8, 0 }, { -1, -2, -1 },
RawParams{ {{ 1, 12, 100 }}, { 0, -6, 0 }, { 0, -8, 0 }, { -1, -2, -1 },
{ 1, 0, 1 }, { 1, 0, 1 }, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } },
StridedSliceSpecificParams{ { 20, 10, 5 }, { 0, 0, 0 }, { 3, 10, 0 }, { 1, 1, 1 },
RawParams{ {{ 20, 10, 5 }}, { 0, 0, 0 }, { 3, 10, 0 }, { 1, 1, 1 },
{ 0, 0, 1 }, { 0, 0, 1 }, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } },
StridedSliceSpecificParams{ { 1, 10, 20 }, { 0, 0, 2 }, { 0, 0, 1000 }, { 1, 1, 1 },
RawParams{ {{ 1, 10, 20 }}, { 0, 0, 2 }, { 0, 0, 1000 }, { 1, 1, 1 },
{ 1, 1, 0 }, { 1, 1, 0 }, { }, { }, { } },
StridedSliceSpecificParams{ { 1, 10, 10 }, { 0, 1, 0 }, { 0, 1000, 0 }, { 1, 1, 1 },
RawParams{ {{ 1, 10, 10 }}, { 0, 1, 0 }, { 0, 1000, 0 }, { 1, 1, 1 },
{ 1, 0, 1 }, { 1, 0, 1 }, { }, { }, { } },
StridedSliceSpecificParams{ { 1, 10, 4 }, { 0, 0, 0 }, { 0, 0, 2 }, { 1, 1, 1 },
RawParams{ {{ 1, 10, 4 }}, { 0, 0, 0 }, { 0, 0, 2 }, { 1, 1, 1 },
{ 1, 1, 0 }, { 1, 1, 0 }, { }, { }, { } },
StridedSliceSpecificParams{ { 1, 10, 4 }, { 0, 0, 2 }, { 0, 0, 1000 }, { 1, 1, 1 },
RawParams{ {{ 1, 10, 4 }}, { 0, 0, 2 }, { 0, 0, 1000 }, { 1, 1, 1 },
{ 1, 1, 0 }, { 1, 1, 0 }, { }, { }, { } },
StridedSliceSpecificParams{ { 1, 10, 2 }, { 0, 0, 0 }, { 0, 0, 1 }, { 1, 1, 1 },
RawParams{ {{ 1, 10, 2 }}, { 0, 0, 0 }, { 0, 0, 1 }, { 1, 1, 1 },
{ 1, 1, 0 }, { 1, 1, 0 }, { }, { }, { } },
StridedSliceSpecificParams{ { 1, 10, 2 }, { 0, 0, 0 }, { 1000, 0, 0 }, { 1, 1, 1 },
RawParams{ {{ 1, 10, 2 }}, { 0, 0, 0 }, { 1000, 0, 0 }, { 1, 1, 1 },
{ 0, 1, 1 }, { 0, 1, 1 }, { }, { }, { } },
StridedSliceSpecificParams{ { 1, 10, 2 }, { 0, 0, 0 }, { 0, 1000, 0 }, { 1, 1, 1 },
RawParams{ {{ 1, 10, 2 }}, { 0, 0, 0 }, { 0, 1000, 0 }, { 1, 1, 1 },
{ 1, 0, 1 }, { 1, 0, 1 }, { }, { }, { } },
StridedSliceSpecificParams{ { 20, 10, 5 }, { 0, 3 }, { 0, 4 }, { 1, 1 },
RawParams{ {{ 20, 10, 5 }}, { 0, 3 }, { 0, 4 }, { 1, 1 },
{ 1, 0 }, { 1, 0 }, { }, { }, { 1, 0 } },
StridedSliceSpecificParams{ { 20, 10, 5 }, { 0, 0 }, { 0, -1 }, { 1, 1 },
RawParams{ {{ 20, 10, 5 }}, { 0, 0 }, { 0, -1 }, { 1, 1 },
{ 1, 0 }, { 1, 0 }, { }, { }, { 1, 0 } },
StridedSliceSpecificParams{ { 20, 10, 5 }, { 0, 0 }, { 0, -1 }, { 1, 1 },
RawParams{ {{ 20, 10, 5 }}, { 0, 0 }, { 0, -1 }, { 1, 1 },
{ 1, 0 }, { 1, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 } },
StridedSliceSpecificParams{ { 1, 12, 100, 1, 1 }, { 0, -1, 0, 0 }, { 0, 0, 0, 0 }, { 1, 1, 1, 1 },
RawParams{ {{ 1, 12, 100, 1, 1 }}, { 0, -1, 0, 0 }, { 0, 0, 0, 0 }, { 1, 1, 1, 1 },
{ 1, 0, 1, 0 }, { 1, 0, 1, 0 }, { }, { 0, 1, 0, 1 }, {} },
StridedSliceSpecificParams{ { 2, 2, 2, 2 }, { 0, 0, 0, 0 }, { 2, 2, 2, 2 }, { 1, 1, 1, 1 },
RawParams{ {{ 2, 2, 2, 2 }}, { 0, 0, 0, 0 }, { 2, 2, 2, 2 }, { 1, 1, 1, 1 },
{ 1, 1, 1, 1}, { 1, 1, 1, 1}, {}, {}, {} },
StridedSliceSpecificParams{ { 2, 2, 2, 2 }, { 0, 0 }, { 2, 2 }, { 1, 1 },
RawParams{ {{ 2, 2, 2, 2 }}, { 0, 0 }, { 2, 2 }, { 1, 1 },
{ 1, 1 }, { 1, 1 }, {}, {}, {} },
StridedSliceSpecificParams{ { 2, 2, 3, 3 }, { 0, -2, -2 }, { 2, -1, -1 }, { 1, 1, 1 },
RawParams{ {{ 2, 2, 3, 3 }}, { 0, -2, -2 }, { 2, -1, -1 }, { 1, 1, 1 },
{ 1, 0 }, { 1, 0 }, {}, {}, {} },
StridedSliceSpecificParams{ { 2, 2, 2, 2 }, { 1, 1, 1, 1 }, { 2, 2, 2, 2 }, { 1, 1, 1, 1 },
RawParams{ {{ 2, 2, 2, 2 }}, { 1, 1, 1, 1 }, { 2, 2, 2, 2 }, { 1, 1, 1, 1 },
{ 0, 0, 0, 0}, { 1, 1, 1, 1}, {}, {}, {} },
StridedSliceSpecificParams{ { 2, 2, 2, 2 }, { 1, 1, 1, 1 }, { 2, 2, 2, 2 }, { 1, 1, 1, 1 },
RawParams{ {{ 2, 2, 2, 2 }}, { 1, 1, 1, 1 }, { 2, 2, 2, 2 }, { 1, 1, 1, 1 },
{ 0, 0, 0, 0}, { 0, 0, 0, 0}, {}, {}, {} },
StridedSliceSpecificParams{ { 1, 2, 6, 4 }, { 0, 0, 4, 0 }, { 1, 2, 6, 4 }, { 1, 1, 1, 1 },
RawParams{ {{ 1, 2, 6, 4 }}, { 0, 0, 4, 0 }, { 1, 2, 6, 4 }, { 1, 1, 1, 1 },
{ 0, 0, 0, 0 }, { 0, 0, 0, 0 }, {}, {}, {} },
StridedSliceSpecificParams{ { 1, 2, 6, 4 }, { 0, 0, -3, 0 }, { 1, 2, 6, 4 }, { 1, 1, 1, 1 },
RawParams{ {{ 1, 2, 6, 4 }}, { 0, 0, -3, 0 }, { 1, 2, 6, 4 }, { 1, 1, 1, 1 },
{ 0, 0, 0, 0 }, { 0, 0, 0, 0 }, {}, {}, {} },
StridedSliceSpecificParams{ { 1, 2, 6, 4 }, { 0, 0, 4, 0 }, { 1, 2, 6, 4 }, { 1, 1, 1, 1 },
RawParams{ {{ 1, 2, 6, 4 }}, { 0, 0, 4, 0 }, { 1, 2, 6, 4 }, { 1, 1, 1, 1 },
{ 1, 1, 0, 1}, { 1, 1, 1, 1}, {}, {}, {} },
StridedSliceSpecificParams{ { 10, 2, 2, 2 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 2, 1, 1, 1 },
RawParams{ {{ 10, 2, 2, 2 }}, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 2, 1, 1, 1 },
{ 1, 1, 1, 1}, { 1, 1, 1, 1}, {}, {}, {} },
StridedSliceSpecificParams{ { 2, 2, 4, 3 }, { 0, 0, 0, 0 }, { 2, 2, 4, 3 }, { 1, 1, 2, 1 },
RawParams{ {{ 2, 2, 4, 3 }}, { 0, 0, 0, 0 }, { 2, 2, 4, 3 }, { 1, 1, 2, 1 },
{ 1, 1, 1, 1}, { 1, 1, 1, 1}, {}, {}, {} },
StridedSliceSpecificParams{ { 2, 2, 4, 2 }, { 1, 0, 0, 1 }, { 2, 2, 4, 2 }, { 1, 1, 2, 1 },
RawParams{ {{ 2, 2, 4, 2 }}, { 1, 0, 0, 1 }, { 2, 2, 4, 2 }, { 1, 1, 2, 1 },
{ 0, 1, 1, 0}, { 1, 1, 0, 0}, {}, {}, {} },
StridedSliceSpecificParams{ { 1, 2, 4, 2 }, { 1, 0, 0, 0 }, { 1, 2, 4, 2 }, { 1, 1, -2, -1 },
RawParams{ {{ 1, 2, 4, 2 }}, { 1, 0, 0, 0 }, { 1, 2, 4, 2 }, { 1, 1, -2, -1 },
{ 1, 1, 1, 1}, { 1, 1, 1, 1}, {}, {}, {} },
StridedSliceSpecificParams{ { 2, 2, 4, 2 }, { 1, 0, 0, 0 }, { 1, 2, 4, 2 }, { 1, 1, -2, -1 },
RawParams{ {{ 2, 2, 4, 2 }}, { 1, 0, 0, 0 }, { 1, 2, 4, 2 }, { 1, 1, -2, -1 },
{ 0, 1, 1, 1}, { 1, 1, 1, 1}, {}, {}, {} },
StridedSliceSpecificParams{ { 2, 3, 4, 5, 6 }, { 0, 1, 0, 0, 0 }, { 2, 3, 4, 5, 6 }, { 1, 1, 1, 1, 1 },
RawParams{ {{ 2, 3, 4, 5, 6 }}, { 0, 1, 0, 0, 0 }, { 2, 3, 4, 5, 6 }, { 1, 1, 1, 1, 1 },
{ 1, 0, 1, 1, 1}, { 1, 0, 1, 1, 1 }, {}, { 0, 1, 0, 0, 0 }, {} },
StridedSliceSpecificParams{ { 2, 3, 4, 5, 6 }, { 0, 0, 3, 0, 0 }, { 2, 3, 4, 3, 6 }, { 1, 1, 1, 1, 1 },
RawParams{ {{ 2, 3, 4, 5, 6 }}, { 0, 0, 3, 0, 0 }, { 2, 3, 4, 3, 6 }, { 1, 1, 1, 1, 1 },
{ 1, 1, 0, 1, 1}, { 1, 1, 0, 0, 1 }, {}, { 0, 0, 1, 0, 0 }, {} },
StridedSliceSpecificParams{ { 2, 3, 4, 5, 6 }, { 0, 0, 0, 0, 3 }, { 1, 3, 4, 5, 6 }, { 1, 1, 1, 1, 1 },
RawParams{ {{ 2, 3, 4, 5, 6 }}, { 0, 0, 0, 0, 3 }, { 1, 3, 4, 5, 6 }, { 1, 1, 1, 1, 1 },
{ 0, 1, 1, 1, 0}, { 0, 1, 1, 1, 0 }, {}, { 1, 0, 0, 0, 1 }, {} },
StridedSliceSpecificParams{ { 2, 3, 4, 5 }, { 0, 0, 0, 0, 0 }, { 0, 2, 3, 4, 5 }, { 1, 1, 1, 1, 1 },
RawParams{ {{ 2, 3, 4, 5 }}, { 0, 0, 0, 0, 0 }, { 0, 2, 3, 4, 5 }, { 1, 1, 1, 1, 1 },
{ 1, 1, 1, 1, 1 }, { 1, 1, 1, 1, 1 }, { 1, 0, 0, 0, 0 }, {}, {} },
StridedSliceSpecificParams{ { 2, 3, 4, 5 }, { 0, 0, 0, 0, 0 }, { 0, 2, 3, 4, 5 }, { 1, 1, 1, 1, 1 },
RawParams{ {{ 2, 3, 4, 5 }}, { 0, 0, 0, 0, 0 }, { 0, 2, 3, 4, 5 }, { 1, 1, 1, 1, 1 },
{ 1, 1, 1, 1, 1 }, { 1, 1, 1, 1, 1 }, { 0, 0, 1, 0, 0 }, {}, {} },
StridedSliceSpecificParams{ { 10, 12 }, { -1, 1 }, { -9999, 0 }, { -1, 1 },
RawParams{ {{ 10, 12 }}, { -1, 1 }, { -9999, 0 }, { -1, 1 },
{ 0, 1 }, { 0, 1 }, { 0, 0 }, { 0, 0 }, { 0, 0 } },
StridedSliceSpecificParams{ { 5, 5, 5, 5 }, { -1, 0, -1, 0 }, { -50, 0, -60, 0 }, { -1, 1, -1, 1 },
RawParams{ {{ 5, 5, 5, 5 }}, { -1, 0, -1, 0 }, { -50, 0, -60, 0 }, { -1, 1, -1, 1 },
{ 0, 0, 0, 0 }, { 0, 1, 0, 1 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 } },
StridedSliceSpecificParams{ { 1, 2, 4 }, { 0, 2000, 3, 5 }, { 0, 0, 0, 2 }, { 1, 1, 1, 1 },
RawParams{ {{ 1, 2, 4 }}, { 0, 2000, 3, 5 }, { 0, 0, 0, 2 }, { 1, 1, 1, 1 },
{ 1, 0, 1, 1 }, { 1, 0, 1, 0 }, { 0, 1, 0, 0 }, { }, { } },
StridedSliceSpecificParams{ { 2, 2, 4, 4 }, { 0, 0, 0, 1, 0 }, { 0, 0, 0, 2, 0 }, { 1, 1, 1, 1, 1 },
RawParams{ {{ 2, 2, 4, 4 }}, { 0, 0, 0, 1, 0 }, { 0, 0, 0, 2, 0 }, { 1, 1, 1, 1, 1 },
{ 1, 1, 1, 0, 1 }, { 1, 1, 1, 0, 1 }, { 0, 1, 0, 0, 0 }, { }, { } },
StridedSliceSpecificParams{ { 2, 2, 2, 4, 4 }, { 0, 0, 0, 1, 0 }, { 0, 0, 0, 2, 0 }, { 1, 1, 1, 1, 1 },
RawParams{ {{ 2, 2, 2, 4, 4 }}, { 0, 0, 0, 1, 0 }, { 0, 0, 0, 2, 0 }, { 1, 1, 1, 1, 1 },
{ 1, 1, 1, 0, 1 }, { 1, 1, 1, 0, 1 }, { }, { 0, 1, 0, 0, 0 }, { } },
StridedSliceSpecificParams{{1, 6400, 3, 85},
RawParams{ {{1, 6400, 3, 85}},
{0, 0},
{0, 2},
{1, 1},
@@ -127,17 +138,28 @@ std::vector<StridedSliceSpecificParams> ss_only_test_cases = {
{1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}},
};
auto ss_test_cases = [](const std::vector<RawParams>& raw_test_cases) {
std::vector<ov::test::StridedSliceSpecificParams> cases;
for (const auto& raw_case : raw_test_cases)
cases.push_back(ov::test::StridedSliceSpecificParams{
ov::test::static_shapes_to_test_representation(raw_case.input_shape),
raw_case.begin,
raw_case.end,
raw_case.strides,
raw_case.begin_mask,
raw_case.end_mask,
raw_case.new_axis_mask,
raw_case.shrink_axis_mask,
raw_case.ellipsis_axis_mask});
return cases;
}(raw_test_cases);
INSTANTIATE_TEST_SUITE_P(
smoke, StridedSliceLayerTest,
::testing::Combine(
::testing::ValuesIn(ss_only_test_cases),
::testing::Values(InferenceEngine::Precision::FP32),
::testing::Values(InferenceEngine::Precision::UNSPECIFIED),
::testing::Values(InferenceEngine::Precision::UNSPECIFIED),
::testing::Values(InferenceEngine::Layout::ANY),
::testing::Values(InferenceEngine::Layout::ANY),
::testing::Values(ov::test::utils::DEVICE_CPU),
::testing::Values(std::map<std::string, std::string>())),
::testing::ValuesIn(ss_test_cases),
::testing::Values(ov::element::f32),
::testing::Values(ov::test::utils::DEVICE_CPU)),
StridedSliceLayerTest::getTestCaseName);
} // namespace