// // Copyright © 2021, 2023-2024 Arm Ltd and Contributors. All rights reserved. // SPDX-License-Identifier: MIT // #include "FillTestHelper.hpp" #include namespace armnnDelegate { void Fill2dTest(tflite::BuiltinOperator fillOperatorCode = tflite::BuiltinOperator_FILL, float fill = 2.0f ) { std::vector inputShape { 2 }; std::vector tensorShape { 2, 2 }; std::vector expectedOutputValues = { fill, fill, fill, fill }; FillTest(fillOperatorCode, ::tflite::TensorType_FLOAT32, inputShape, tensorShape, expectedOutputValues, fill); } void Fill3dTest(tflite::BuiltinOperator fillOperatorCode = tflite::BuiltinOperator_FILL, float fill = 5.0f ) { std::vector inputShape { 3 }; std::vector tensorShape { 3, 3, 3 }; std::vector expectedOutputValues = { fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill }; FillTest(fillOperatorCode, ::tflite::TensorType_FLOAT32, inputShape, tensorShape, expectedOutputValues, fill); } void Fill4dTest(tflite::BuiltinOperator fillOperatorCode = tflite::BuiltinOperator_FILL, float fill = 3.0f ) { std::vector inputShape { 4 }; std::vector tensorShape { 2, 2, 4, 4 }; std::vector expectedOutputValues = { fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill, fill }; FillTest(fillOperatorCode, ::tflite::TensorType_FLOAT32, inputShape, tensorShape, expectedOutputValues, fill); } void FillInt32Test(tflite::BuiltinOperator fillOperatorCode = tflite::BuiltinOperator_FILL, int32_t fill = 2 ) { std::vector inputShape { 2 }; std::vector tensorShape { 2, 2 }; std::vector expectedOutputValues = { fill, fill, fill, fill }; FillTest(fillOperatorCode, ::tflite::TensorType_INT32, inputShape, tensorShape, expectedOutputValues, fill); } TEST_SUITE("FillTests") { TEST_CASE ("Fill2d_Test") { Fill2dTest(); } TEST_CASE ("Fill3d_Test") { Fill3dTest(); } TEST_CASE ("Fill3d_Test") { Fill3dTest(); } TEST_CASE ("Fill4d_Test") { Fill4dTest(); } TEST_CASE ("FillInt32_Test") { FillInt32Test(); } } // End of FillTests suite. } // namespace armnnDelegate