From be47f41f5daccfb0f8aa8208c349387ae81de02c Mon Sep 17 00:00:00 2001 From: Alan Conway Date: Thu, 7 May 2015 18:07:02 +0000 Subject: NO-JIRA: Fix floating point FieldValue tests to work on older compilers/boost versions. This fixes compile errors seen on gcc-c++-4.1.2-55.el5, boost-devel-1.33.1-16.el5_9 Float/double conversion and template matching issues. Probably down to boost, but might be gcc related. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1678246 13f79535-47bb-0310-9956-ffa450edef68 --- qpid/cpp/src/tests/FieldValue.cpp | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'qpid/cpp/src/tests') diff --git a/qpid/cpp/src/tests/FieldValue.cpp b/qpid/cpp/src/tests/FieldValue.cpp index 2182a43e35..c70736962c 100644 --- a/qpid/cpp/src/tests/FieldValue.cpp +++ b/qpid/cpp/src/tests/FieldValue.cpp @@ -62,11 +62,11 @@ QPID_AUTO_TEST_CASE(testIntegerValueEquals) QPID_AUTO_TEST_CASE(testFloatValueEquals) { BOOST_CHECK(f.convertsTo() == true); - BOOST_CHECK_EQUAL(FloatValue(42.42), f); - BOOST_CHECK_CLOSE(f.get(), 42.42, 0.001); + BOOST_CHECK(FloatValue(42.42) == f); + BOOST_CHECK_CLOSE(double(f.get()), 42.42, 0.001); // Check twice, regression test for QPID-6470 where the value was corrupted during get. - BOOST_CHECK_EQUAL(FloatValue(42.42), f); - BOOST_CHECK_CLOSE(f.get(), 42.42, 0.001); + BOOST_CHECK(FloatValue(42.42) == f); + BOOST_CHECK_CLOSE(f.get(), 42.42, 0.001); // Float to double conversion BOOST_CHECK(f.convertsTo() == true); @@ -75,7 +75,7 @@ QPID_AUTO_TEST_CASE(testFloatValueEquals) // Double value BOOST_CHECK(f.convertsTo() == true); BOOST_CHECK(f.convertsTo() == true); - BOOST_CHECK_CLOSE(df.get(), 123.123, 0.001); + BOOST_CHECK_CLOSE(double(df.get()), 123.123, 0.001); BOOST_CHECK_CLOSE(df.get(), 123.123, 0.001); // Invalid conversions should fail. @@ -85,12 +85,12 @@ QPID_AUTO_TEST_CASE(testFloatValueEquals) BOOST_CHECK_THROW(f.get(), InvalidConversionException); // getFloatingPointValue: check twice, regression test for QPID-6470 - BOOST_CHECK_CLOSE((f.getFloatingPointValue()), 42.42, 0.001); - BOOST_CHECK_CLOSE((f.getFloatingPointValue()), 42.42, 0.001); + BOOST_CHECK_CLOSE((double(f.getFloatingPointValue())), 42.42, 0.001); + BOOST_CHECK_CLOSE((double(f.getFloatingPointValue())), 42.42, 0.001); BOOST_CHECK_CLOSE((df.getFloatingPointValue()), 123.123, 0.001); // getFloatingPointValue should *not* convert float/double, require exact type. BOOST_CHECK_THROW((f.getFloatingPointValue()), InvalidConversionException); - BOOST_CHECK_THROW((df.getFloatingPointValue()), InvalidConversionException); + BOOST_CHECK_THROW((double(df.getFloatingPointValue())), InvalidConversionException); } QPID_AUTO_TEST_SUITE_END() -- cgit v1.2.1