From ebd80352a69db1717ebe2b62ff848b75c4ca5f22 Mon Sep 17 00:00:00 2001 From: "Rafael H. Schloming" Date: Tue, 11 Nov 2008 20:49:46 +0000 Subject: fixed encoding of 64 bit types and added additional tests for 64 bit integers git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@713160 13f79535-47bb-0310-9956-ffa450edef68 --- cpp/src/tests/FieldTable.cpp | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'cpp/src/tests/FieldTable.cpp') diff --git a/cpp/src/tests/FieldTable.cpp b/cpp/src/tests/FieldTable.cpp index bf95cee85a..6b364723cf 100644 --- a/cpp/src/tests/FieldTable.cpp +++ b/cpp/src/tests/FieldTable.cpp @@ -161,12 +161,17 @@ QPID_AUTO_TEST_CASE(test64GetAndSetConverts) { FieldTable args; args.setInt64("a",100); + args.setInt64("b",-(int64_t) ((int64_t) 1<<34)); - args.setUInt64("b",1u); - BOOST_CHECK_EQUAL(1u, args.getAsUInt64("b")); + args.setUInt64("c",1u); + args.setUInt64("d",(uint64_t) ((uint64_t) 1<<34)); + BOOST_CHECK_EQUAL(1u, args.getAsUInt64("c")); BOOST_CHECK_EQUAL(100u, args.getAsUInt64("a")); - BOOST_CHECK_EQUAL(1, args.getAsInt64("b")); + BOOST_CHECK_EQUAL(1, args.getAsInt64("c")); BOOST_CHECK_EQUAL(100, args.getAsInt64("a")); + BOOST_CHECK_EQUAL(-(int64_t) ((int64_t) 1<<34), args.getAsInt64("b")); + BOOST_CHECK_EQUAL((uint64_t) ((uint64_t) 1<<34), args.getAsUInt64("d")); + BOOST_CHECK_EQUAL((int64_t) ((int64_t) 1<<34), args.getAsInt64("d")); } -- cgit v1.2.1