From 284547ba566633338d9d6249511fd5f34da178b6 Mon Sep 17 00:00:00 2001 From: "gman@google.com" Date: Tue, 25 Aug 2009 21:52:00 +0000 Subject: Fix for osx Lanzcos scale test. Apparently it's off by like 1 bit. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@24337 0039d316-1c4b-4281-b951-d872f2087c98 --- o3d/core/cross/image_utils_test.cc | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'o3d/core') diff --git a/o3d/core/cross/image_utils_test.cc b/o3d/core/cross/image_utils_test.cc index 2944302..6745043 100644 --- a/o3d/core/cross/image_utils_test.cc +++ b/o3d/core/cross/image_utils_test.cc @@ -47,6 +47,18 @@ void ConvertToHalf(const float* src, size_t count, uint16* dst) { } } +bool CompareFloats(const float* src_1, const float* src_2, size_t num_floats) { + const float kEpsilon = 0.000001f; + for (; num_floats != 0; --num_floats) { + if (fabs(*src_1 - *src_2) > kEpsilon) { + return false; + } + ++src_1; + ++src_2; + } + return true; +} + } // anonymous namespace. class ImageTest : public testing::Test { @@ -452,7 +464,7 @@ TEST_F(ImageTest, LanczosScaleFloat) { 0, 0, 1, 1, 1); // Check the result. - EXPECT_EQ(0, memcmp(mip1, expected_mip1, sizeof(expected_mip1))); + EXPECT_TRUE(CompareFloats(mip1, expected_mip1, arraysize(expected_mip1))); EXPECT_EQ(0, memcmp(mip2, expected_mip2, sizeof(expected_mip2))); EXPECT_EQ(mip1[2], kSentinel); EXPECT_EQ(mip2[1], kSentinel); -- cgit v1.1