blob: be9123a5ffb9c95aa8c7b079f3412175ed3d073a [file] [log] [blame]
Teresa Charlin98427a12020-11-25 18:22:57 +00001//
Colm Donelan7bcae3c2024-01-22 10:07:14 +00002// Copyright © 2020, 2023-2024 Arm Ltd and Contributors. All rights reserved.
Teresa Charlin98427a12020-11-25 18:22:57 +00003// SPDX-License-Identifier: MIT
4//
5
6#include "GatherTestHelper.hpp"
7
Teresa Charlin98427a12020-11-25 18:22:57 +00008#include <doctest/doctest.h>
9
10namespace armnnDelegate
11{
12
Colm Donelan7bcae3c2024-01-22 10:07:14 +000013// Gather Operator
14void GatherUint8Test()
Teresa Charlin98427a12020-11-25 18:22:57 +000015{
16
17 std::vector<int32_t> paramsShape{8};
18 std::vector<int32_t> indicesShape{3};
19 std::vector<int32_t> expectedOutputShape{3};
20
21 int32_t axis = 0;
22 std::vector<uint8_t> paramsValues{1, 2, 3, 4, 5, 6, 7, 8};
23 std::vector<int32_t> indicesValues{7, 6, 5};
24 std::vector<uint8_t> expectedOutputValues{8, 7, 6};
25
26 GatherTest<uint8_t>(::tflite::TensorType_UINT8,
Teresa Charlin98427a12020-11-25 18:22:57 +000027 paramsShape,
28 indicesShape,
29 expectedOutputShape,
30 axis,
31 paramsValues,
32 indicesValues,
33 expectedOutputValues);
34}
35
Colm Donelan7bcae3c2024-01-22 10:07:14 +000036void GatherFp32Test()
Teresa Charlin98427a12020-11-25 18:22:57 +000037{
38 std::vector<int32_t> paramsShape{8};
39 std::vector<int32_t> indicesShape{3};
40 std::vector<int32_t> expectedOutputShape{3};
41
42 int32_t axis = 0;
43 std::vector<float> paramsValues{1.1f, 2.2f, 3.3f, 4.4f, 5.5f, 6.6f, 7.7f, 8.8f};
44 std::vector<int32_t> indicesValues{7, 6, 5};
45 std::vector<float> expectedOutputValues{8.8f, 7.7f, 6.6f};
46
47 GatherTest<float>(::tflite::TensorType_FLOAT32,
Teresa Charlin98427a12020-11-25 18:22:57 +000048 paramsShape,
49 indicesShape,
50 expectedOutputShape,
51 axis,
52 paramsValues,
53 indicesValues,
54 expectedOutputValues);
55}
56
Colm Donelan7bcae3c2024-01-22 10:07:14 +000057// Gather Test Suite
58TEST_SUITE("GatherTests")
Teresa Charlin98427a12020-11-25 18:22:57 +000059{
60
Colm Donelan7bcae3c2024-01-22 10:07:14 +000061TEST_CASE ("Gather_Uint8_Test")
Teresa Charlin98427a12020-11-25 18:22:57 +000062{
Colm Donelan7bcae3c2024-01-22 10:07:14 +000063 GatherUint8Test();
Teresa Charlin98427a12020-11-25 18:22:57 +000064}
65
Colm Donelan7bcae3c2024-01-22 10:07:14 +000066TEST_CASE ("Gather_Fp32_Test")
Teresa Charlin98427a12020-11-25 18:22:57 +000067{
Colm Donelan7bcae3c2024-01-22 10:07:14 +000068 GatherFp32Test();
Teresa Charlin98427a12020-11-25 18:22:57 +000069}
70
71}
Colm Donelan7bcae3c2024-01-22 10:07:14 +000072// End of Gather Test Suite
Teresa Charlin98427a12020-11-25 18:22:57 +000073
74} // namespace armnnDelegate