From 59126b39ae15101084a014c753229469fa39cda9 Mon Sep 17 00:00:00 2001 From: Peter Dimov Date: Thu, 6 Dec 2018 17:51:38 +0200 Subject: [PATCH] Add intrinsic_test.cpp to test/Jamfile --- test/Jamfile.v2 | 28 +++++++++------------------- test/intrinsic_test.cpp | 27 ++++++++++++++++----------- 2 files changed, 25 insertions(+), 30 deletions(-) diff --git a/test/Jamfile.v2 b/test/Jamfile.v2 index 16d796a..b0e9e7a 100644 --- a/test/Jamfile.v2 +++ b/test/Jamfile.v2 @@ -1,28 +1,18 @@ # Boost Endian Library test Jamfile # Copyright Beman Dawes 2006, 2013 +# Copyright 2018 Peter Dimov # Distributed under the Boost Software License, Version 1.0. # See http://www.boost.org/LICENSE_1_0.txt # See library home page at http://www.boost.org/libs/endian -project - : requirements - msvc:on - ; - - test-suite "endian" - : - [ run buffer_test.cpp # sources - : # command line - : # input files - : # requirements - : # target name - ] - [ run endian_test.cpp ] - [ run endian_operations_test.cpp ] - [ run endian_in_union_test.cpp ] - [ run conversion_test.cpp ] -# [ run floating_point_test.cpp : : : always_show_run_output ] - ; +import testing ; + +run buffer_test.cpp ; +run endian_test.cpp ; +run endian_operations_test.cpp ; +run endian_in_union_test.cpp ; +run conversion_test.cpp ; +run intrinsic_test.cpp ; diff --git a/test/intrinsic_test.cpp b/test/intrinsic_test.cpp index 4042106..bef06b0 100644 --- a/test/intrinsic_test.cpp +++ b/test/intrinsic_test.cpp @@ -1,11 +1,11 @@ // Copyright Beman Dawes 2013 +// Copyright 2018 Peter Dimov // Distributed under the Boost Software License, Version 1.0. // http://www.boost.org/LICENSE_1_0.txt -#include "test.hpp" -#include -#include +#include +#include typedef unsigned short uint16_t; typedef unsigned int uint32_t; @@ -13,15 +13,20 @@ typedef unsigned long long uint64_t; int main() { - std::cout << "BOOST_ENDIAN_INTRINSIC_MSG: " BOOST_ENDIAN_INTRINSIC_MSG << std::endl; + std::cout << "BOOST_ENDIAN_INTRINSIC_MSG: " BOOST_ENDIAN_INTRINSIC_MSG << std::endl; #ifndef BOOST_ENDIAN_NO_INTRINSICS - uint16_t x2 = 0x1122U; - BOOST_ASSERT(BOOST_ENDIAN_INTRINSIC_BYTE_SWAP_2(x2) == 0x2211U); - uint32_t x4 = 0x11223344UL; - BOOST_ASSERT(BOOST_ENDIAN_INTRINSIC_BYTE_SWAP_4(x4) == 0x44332211UL); - uint64_t x8 = 0x1122334455667788U; - BOOST_ASSERT(BOOST_ENDIAN_INTRINSIC_BYTE_SWAP_8(x8) == 0x8877665544332211ULL); + + uint16_t x2 = 0x1122U; + BOOST_TEST_EQ( BOOST_ENDIAN_INTRINSIC_BYTE_SWAP_2(x2), 0x2211U ); + + uint32_t x4 = 0x11223344UL; + BOOST_TEST_EQ( BOOST_ENDIAN_INTRINSIC_BYTE_SWAP_4(x4), 0x44332211UL ); + + uint64_t x8 = 0x1122334455667788U; + BOOST_TEST_EQ( BOOST_ENDIAN_INTRINSIC_BYTE_SWAP_8(x8), 0x8877665544332211ULL ); + #endif - return 0; + + return boost::report_errors(); }