// // Copyright © 2022-2023 Arm Ltd and Contributors. All rights reserved. // SPDX-License-Identifier: MIT // #include "SliceTestHelper.hpp" #include #include #include namespace armnnDelegate { void SliceFixtureSimpleTest(std::vector& backends) { std::vector inputShape { 3, 2, 3 }; std::vector outputShape { 2, 1, 3 }; std::vector beginShape { 3 }; std::vector sizeShape { 3 }; std::vector beginData { 1, 0, 0 }; std::vector sizeData { 2, 1, 3 }; std::vector inputData { 1.0f, 1.0f, 1.0f, 2.0f, 2.0f, 2.0f, 3.0f, 3.0f, 3.0f, 4.0f, 4.0f, 4.0f, 5.0f, 5.0f, 5.0f, 6.0f, 6.0f, 6.0f }; std::vector outputData { 3.0f, 3.0f, 3.0f, 5.0f, 5.0f, 5.0f }; SliceTestImpl( backends, inputData, outputData, beginData, sizeData, inputShape, beginShape, sizeShape, outputShape); } void SliceFixtureSizeTest(std::vector& backends) { std::vector inputShape { 3, 2, 3 }; std::vector outputShape { 2, 1, 3 }; std::vector beginShape { 3 }; std::vector sizeShape { 3 }; std::vector beginData { 1, 0, 0 }; std::vector sizeData { 2, 1, -1 }; std::vector inputData { 1.0f, 1.0f, 1.0f, 2.0f, 2.0f, 2.0f, 3.0f, 3.0f, 3.0f, 4.0f, 4.0f, 4.0f, 5.0f, 5.0f, 5.0f, 6.0f, 6.0f, 6.0f }; std::vector outputData { 3.0f, 3.0f, 3.0f, 5.0f, 5.0f, 5.0f }; SliceTestImpl( backends, inputData, outputData, beginData, sizeData, inputShape, beginShape, sizeShape, outputShape); } TEST_SUITE("Slice_CpuRefTests") { TEST_CASE ("Slice_Simple_CpuRef_Test") { std::vector backends = {armnn::Compute::CpuRef}; SliceFixtureSimpleTest(backends); } TEST_CASE ("Slice_Size_CpuRef_Test") { std::vector backends = {armnn::Compute::CpuRef}; SliceFixtureSizeTest(backends); } } // Slice_CpuRefTests TestSuite TEST_SUITE("Slice_CpuAccTests") { TEST_CASE ("Slice_Simple_CpuAcc_Test") { std::vector backends = {armnn::Compute::CpuAcc}; SliceFixtureSimpleTest(backends); } TEST_CASE ("Slice_Size_CpuAcc_Test") { std::vector backends = {armnn::Compute::CpuAcc}; SliceFixtureSizeTest(backends); } } // Slice_CpuAccTests TestSuite TEST_SUITE("StridedSlice_GpuAccTests") { TEST_CASE ("Slice_Simple_GpuAcc_Test") { std::vector backends = {armnn::Compute::GpuAcc}; SliceFixtureSimpleTest(backends); } TEST_CASE ("Slice_Size_GpuAcc_Test") { std::vector backends = {armnn::Compute::GpuAcc}; SliceFixtureSizeTest(backends); } } // Slice_GpuAccTests TestSuite } // namespace armnnDelegate