From 935deee193c1a7597e358ebbe50a9aeff14dcb3d Mon Sep 17 00:00:00 2001 From: Giorgio Arena Date: Wed, 14 Jun 2017 13:40:36 +0100 Subject: COMPMID-378 CLMinMaxLocation testing completed. Change-Id: I3d35544fab22ab2aa99d9250db3df2f88af8196c Reviewed-on: http://mpd-gerrit.cambridge.arm.com/77670 Tested-by: Kaizen Reviewed-by: Steven Niu --- tests/validation/Validation.cpp | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) (limited to 'tests/validation/Validation.cpp') diff --git a/tests/validation/Validation.cpp b/tests/validation/Validation.cpp index e949e3c4f5..14ee98a96b 100644 --- a/tests/validation/Validation.cpp +++ b/tests/validation/Validation.cpp @@ -411,7 +411,7 @@ void validate(float target, float ref, float tolerance_abs_error, float toleranc } void validate_min_max_loc(int32_t min, int32_t ref_min, int32_t max, int32_t ref_max, - Coordinates2DArray &min_loc, Coordinates2DArray &ref_min_loc, Coordinates2DArray &max_loc, Coordinates2DArray &ref_max_loc, + IArray &min_loc, IArray &ref_min_loc, IArray &max_loc, IArray &ref_max_loc, uint32_t min_count, uint32_t ref_min_count, uint32_t max_count, uint32_t ref_max_count) { BOOST_TEST(min == ref_min); @@ -427,14 +427,22 @@ void validate_min_max_loc(int32_t min, int32_t ref_min, int32_t max, int32_t ref for(uint32_t i = 0; i < min_count; i++) { - BOOST_TEST(min_loc.at(i).x == ref_min_loc.at(i).x); - BOOST_TEST(min_loc.at(i).y == ref_min_loc.at(i).y); + Coordinates2D *same_coords = std::find_if(ref_min_loc.buffer(), ref_min_loc.buffer() + min_count, [&min_loc, i](Coordinates2D coord) + { + return coord.x == min_loc.at(i).x && coord.y == min_loc.at(i).y; + }); + + BOOST_TEST(same_coords != ref_min_loc.buffer() + min_count); } for(uint32_t i = 0; i < max_count; i++) { - BOOST_TEST(max_loc.at(i).x == ref_max_loc.at(i).x); - BOOST_TEST(max_loc.at(i).y == ref_max_loc.at(i).y); + Coordinates2D *same_coords = std::find_if(ref_max_loc.buffer(), ref_max_loc.buffer() + max_count, [&max_loc, i](Coordinates2D coord) + { + return coord.x == max_loc.at(i).x && coord.y == max_loc.at(i).y; + }); + + BOOST_TEST(same_coords != ref_max_loc.buffer() + max_count); } } -- cgit v1.2.1